diff --git a/cinder-17.0.0.tar.gz b/cinder-18.0.0.tar.gz similarity index 43% rename from cinder-17.0.0.tar.gz rename to cinder-18.0.0.tar.gz index 9b9bf709f67c34669c2802df0a27535638cfb75d..25cdaa523d7d7a0cf66bdd44a9a21b888029fbc4 100644 Binary files a/cinder-17.0.0.tar.gz and b/cinder-18.0.0.tar.gz differ diff --git a/openstack-cinder.spec b/openstack-cinder.spec index de1b6aa97704bcc1d2edc403a2075f4979e8c870..61daa181de17579ee6d23078535777cbe63f93ab 100644 --- a/openstack-cinder.spec +++ b/openstack-cinder.spec @@ -1,4 +1,5 @@ %{!?upstream_version: %global upstream_version %{version}%{?milestone}} +# Temporary disable doc until https://bugs.launchpad.net/tripleo/+bug/1838225 is fixed %global with_doc %{!?_without_doc:0}%{?_without_doc:1} %global service cinder @@ -7,12 +8,13 @@ OpenStack Volume (codename Cinder) provides services to manage and \ access block storage volumes for use by Virtual Machine instances. Name: openstack-%{service} -Epoch: 1 -Version: 17.0.0 -Release: 3 +# Liberty semver reset +# https://review.openstack.org/#/q/I6a35fa0dda798fad93b804d00a46af80f08d475c,n,z +Version: 18.0.0 +Release: 1 Summary: OpenStack Volume service -License: Apache-2.0 +License: ASL 2.0 URL: http://www.openstack.org/software/openstack-storage/ Source0: https://tarballs.openstack.org/%{service}/%{service}-%{upstream_version}.tar.gz @@ -26,7 +28,6 @@ Source12: openstack-%{service}-volume.service Source13: openstack-%{service}-backup.service Source20: %{service}-sudoers - BuildArch: noarch BuildRequires: intltool @@ -40,14 +41,15 @@ BuildRequires: python3-os-brick BuildRequires: python3-pyparsing BuildRequires: python3-pytz BuildRequires: openstack-macros +# Required to build cinder.conf BuildRequires: python3-cursive -BuildRequires: python3-google-api-client >= 1.4.2 +BuildRequires: python3-google-api-client BuildRequires: python3-keystonemiddleware -BuildRequires: python3-glanceclient >= 1:2.15.0 -BuildRequires: python3-novaclient >= 9.1.0 -BuildRequires: python3-swiftclient >= 3.2.0 +BuildRequires: python3-glanceclient >= 3.2.2 +BuildRequires: python3-novaclient >= 17.0.0 +BuildRequires: python3-swiftclient >= 3.10.1 BuildRequires: python3-oslo-db -BuildRequires: python3-oslo-config +BuildRequires: python3-oslo-config >= 5.2.0 BuildRequires: python3-oslo-policy BuildRequires: python3-oslo-privsep BuildRequires: python3-oslo-reports @@ -68,10 +70,12 @@ BuildRequires: python3-oslo-i18n BuildRequires: python3-barbicanclient BuildRequires: python3-requests BuildRequires: python3-defusedxml -BuildRequires: python3-pip +BuildRequires: python3-boto3 +# Required to compile translation files BuildRequires: python3-babel +# Needed for unit tests BuildRequires: python3-ddt BuildRequires: python3-fixtures BuildRequires: python3-mock @@ -91,12 +95,19 @@ BuildRequires: python3-rtslib BuildRequires: python3-tenacity -Requires: python3-%{service} = %{epoch}:%{version}-%{release} +Requires: python3-%{service} = %{version}-%{release} -Requires: python3-pbr +# we dropped the patch to remove PBR for Delorean +Requires: python3-pbr >= 5.5.0 +# as convenience Requires: python3-cinderclient +%if 0%{?rhel} && 0%{?rhel} < 8 +%{?systemd_requires} +%else +%{?systemd_ordering} # does not exist on EL7 +%endif Requires(pre): shadow-utils Requires: python3-osprofiler @@ -112,45 +123,45 @@ Summary: OpenStack Volume Python libraries %{?python_provide:%python_provide python3-%{service}} Group: Applications/System -Requires: python3-%{service}-common = %{epoch}:%{version}-%{release} +Requires: python3-%{service}-common = %{version}-%{release} Requires: cryptsetup Requires: cracklib-dicts Requires: qemu-img >= 2.10.0 -Requires: python3-jsonschema >= 2.6.0 +Requires: python3-jsonschema >= 3.2.0 -Requires: python3-castellan >= 1.3.0 -Requires: python3-cursive >= 0.2.1 +Requires: python3-castellan >= 3.6.0 +Requires: python3-cursive >= 0.2.2 Requires: python3-etcd3gw -Requires: python3-routes >= 2.3.1 -Requires: python3-webob >= 1.7.1 +Requires: python3-routes >= 2.4.1 +Requires: python3-webob >= 1.8.6 -Requires: python3-barbicanclient >= 4.9.0 -Requires: python3-glanceclient >= 1:2.15.0 -Requires: python3-keystoneclient >= 1:3.15.0 -Requires: python3-novaclient >= 9.1.0 -Requires: python3-swiftclient >= 3.2.0 +Requires: python3-barbicanclient >= 5.0.1 +Requires: python3-glanceclient >= 3.2.2 +Requires: python3-keystoneclient >= 4.1.1 +Requires: python3-novaclient >= 17.2.1 +Requires: python3-swiftclient >= 3.10.1 -Requires: python3-google-api-client >= 1.4.2 +Requires: python3-google-api-client -Requires: python3-keystonemiddleware >= 4.21.0 -Requires: python3-keystoneauth1 >= 3.14.0 -Requires: python3-osprofiler >= 1.4.0 +Requires: python3-keystonemiddleware >= 9.1.0 +Requires: python3-keystoneauth1 >= 4.2.1 +Requires: python3-osprofiler >= 3.4.0 -Requires: python3-os-win >= 4.2.0 +Requires: python3-os-win >= 5.4.0 -Requires: python3-oslo-middleware >= 3.31.0 -Requires: python3-oslo-messaging >= 6.4.0 -Requires: python3-oslo-policy >= 1.44.1 -Requires: python3-oslo-reports >= 1.18.0 -Requires: python3-oslo-upgradecheck >= 0.1.0 -Requires: python3-oslo-vmware >= 2.35.0 +Requires: python3-oslo-middleware >= 4.1.1 +Requires: python3-oslo-messaging >= 12.5.0 +Requires: python3-oslo-policy >= 3.6.2 +Requires: python3-oslo-reports >= 2.2.0 +Requires: python3-oslo-upgradecheck >= 1.1.1 +Requires: python3-oslo-vmware >= 3.7.0 -Requires: python3-oauth2client >= 1.5.0 -Requires: python3-packaging -Requires: python3-paste -Requires: python3-paste-deploy +Requires: python3-oauth2client >= 4.1.3 +Requires: python3-packaging >= 20.4 +Requires: python3-paste >= 3.4.3 +Requires: python3-paste-deploy >= 2.1.0 %description -n python3-%{service} %{common_desc} @@ -158,61 +169,67 @@ Requires: python3-paste-deploy This package contains the %{service} Python library. %package -n python3-%{service}-common +# This package contains Cinder python code, but does not track dependencies +# for all of Cinder. Dependencies here are intended only to make it possible +# to load and use Cinder drivers and not the Cinder service. Summary: Cinder common code %{?python_provide:%python_provide python3-%{service}-common} Requires: sudo Requires: sysfsutils -Requires: python3-paramiko >= 2.7.1 +Requires: python3-paramiko >= 2.7.2 -Requires: python3-eventlet >= 0.25.0 +Requires: python3-eventlet >= 0.26.1 Requires: python3-greenlet >= 0.4.13 -Requires: python3-iso8601 -Requires: python3-stevedore >= 1.31.0 -Requires: python3-tooz >= 1.58.0 - -Requires: python3-sqlalchemy - -Requires: python3-six >= 1.11.0 -Requires: python3-psutil >= 3.2.2 - -Requires: python3-os-brick >= 4.0.1 -Requires: python3-oslo-config -Requires: python3-oslo-concurrency >= 3.26.0 -Requires: python3-oslo-context >= 2.23.0 -Requires: python3-oslo-db >= 6.0.0 -Requires: python3-oslo-i18n >= 3.24.0 -Requires: python3-oslo-log >= 3.44.0 -Requires: python3-oslo-privsep >= 2.3.0 -Requires: python3-oslo-rootwrap >= 5.8.0 -Requires: python3-oslo-serialization >= 2.25.0 -Requires: python3-oslo-service >= 2.0.0 -Requires: python3-oslo-utils >= 3.40.2 -Requires: python3-oslo-versionedobjects >= 1.31.2 -Requires: python3-zstd >= 1.4.5 -Requires: python3-importlib_metadata - -Requires: python3-taskflow >= 3.8.0 +Requires: python3-iso8601 >= 0.1.12 +Requires: python3-stevedore >= 3.2.2 +Requires: python3-tooz >= 2.7.1 + +Requires: python3-sqlalchemy >= 1.3.0 + +Requires: python3-six >= 1.15.0 +Requires: python3-psutil >= 5.7.2 + +Requires: python3-os-brick >= 4.2.0 +Requires: python3-oslo-config >= 8.3.2 +Requires: python3-oslo-concurrency >= 4.3.0 +Requires: python3-oslo-context >= 3.1.1 +Requires: python3-oslo-db >= 8.4.0 +Requires: python3-oslo-i18n >= 5.0.1 +Requires: python3-oslo-log >= 4.4.0 +Requires: python3-oslo-privsep >= 2.4.0 +Requires: python3-oslo-rootwrap >= 6.2.0 +Requires: python3-oslo-serialization >= 4.1.0 +Requires: python3-oslo-service >= 2.4.0 +Requires: python3-oslo-utils >= 4.7.0 +Requires: python3-oslo-versionedobjects >= 2.3.0 +Requires: python3-zstd >= 1.4.5.1 +Requires: python3-importlib-metadata >= 1.7.0 +Requires: python3-boto3 + +# Required by 3PAR and VNX as well as cinder flows +Requires: python3-taskflow >= 4.5.0 Requires: iscsi-initiator-utils -Requires: python3-requests >= 2.18.0 +Requires: python3-requests >= 2.23.0 Requires: python3-pyparsing >= 2.2.1 Requires: python3-pytz -Requires: python3-tabulate >= 0.8.5 +Requires: python3-tabulate >= 0.8.7 -Requires: python3-cryptography >= 2.1.4 +Requires: python3-cryptography >= 3.1 Requires: python3-lxml >= 4.2.0 -Requires: python3-sqlalchemy-migrate >= 0.13.0 +Requires: python3-migrate >= 0.13.0 Requires: python3-httplib2 >= 0.9.1 -Requires: python3-tenacity +Requires: python3-tenacity >= 6.2.0 Requires: python3-decorator +# Required by LVM-LIO Requires: lvm2 -Requires: python3-rtslib +Requires: python3-rtslib >= 2.1.74 %description -n python3-%{service}-common @@ -221,8 +238,9 @@ Common code for Cinder. %package -n python3-%{service}-tests Summary: Cinder tests %{?python_provide:%python_provide python3-%{service}-tests} -Requires: openstack-%{service} = %{epoch}:%{version}-%{release} +Requires: openstack-%{service} = %{version}-%{release} +# Added test requirements Requires: python3-hacking Requires: python3-ddt Requires: python3-fixtures @@ -246,20 +264,23 @@ This package contains the Cinder test files. Summary: Documentation for OpenStack Volume Group: Documentation -Requires: %{name} = %{epoch}:%{version}-%{release} +Requires: %{name} = %{version}-%{release} BuildRequires: graphviz BuildRequires: python3-sphinx BuildRequires: python3-openstackdocstheme BuildRequires: python3-sphinxcontrib-apidoc BuildRequires: python3-sphinx-feature-classification +# Required to build module documents BuildRequires: python3-eventlet BuildRequires: python3-routes BuildRequires: python3-sqlalchemy BuildRequires: python3-webob +# while not strictly required, quiets the build down when building docs. BuildRequires: python3-iso8601 >= 0.1.9 -BuildRequires: python3-sqlalchemy-migrate +BuildRequires: python3-migrate + %description doc %{common_desc} @@ -268,7 +289,7 @@ This package contains documentation files for %{service}. %endif %prep -%autosetup -n %{service}-%{upstream_version} -p1 +%autosetup -n %{service}-%{upstream_version} find . \( -name .gitignore -o -name .placeholder \) -delete @@ -277,33 +298,45 @@ sed -i 's/\/usr\/bin\/env python/\/usr\/bin\/env python3/' tools/generate_driver sed -i 's/%{version}.%{milestone}/%{version}/' PKG-INFO +# Remove the requirements file so that pbr hooks don't add it +# to distutils requires_dist config %py_req_cleanup %build +# Generate config file PYTHONPATH=. oslo-config-generator --config-file=tools/config/%{service}-config-generator.conf +# Build %{py3_build} +# Generate i18n files +# (amoralej) we can remove '-D cinder' once https://review.openstack.org/#/c/439501/ is merged %{__python3} setup.py compile_catalog -d build/lib/%{service}/locale -D cinder %install %{py3_install} +# docs generation requires everything to be installed first export PYTHONPATH="$( pwd ):$PYTHONPATH" %if 0%{?with_doc} +# FIXME(ykarel) Temporary disable warning as error until https://review.openstack.org/#/c/558263/ merges. sphinx-build -b html doc/source doc/build/html +# Fix hidden-file-or-dir warnings rm -fr doc/build/html/.{doctrees,buildinfo} +# FIXME(ykarel) Temporary disable warning as error until https://review.openstack.org/#/c/558263/ merges. sphinx-build -b man doc/source doc/build/man mkdir -p %{buildroot}%{_mandir}/man1 install -p -D -m 644 doc/build/man/*.1 %{buildroot}%{_mandir}/man1/ %endif +# Setup directories install -d -m 755 %{buildroot}%{_sharedstatedir}/%{service} install -d -m 755 %{buildroot}%{_sharedstatedir}/%{service}/tmp install -d -m 755 %{buildroot}%{_localstatedir}/log/%{service} +# Install config files install -d -m 755 %{buildroot}%{_sysconfdir}/%{service} install -p -D -m 640 %{SOURCE1} %{buildroot}%{_datadir}/%{service}/%{service}-dist.conf install -d -m 755 %{buildroot}%{_sysconfdir}/%{service}/volumes @@ -312,37 +345,49 @@ install -p -D -m 640 etc/%{service}/api-paste.ini %{buildroot}%{_sysconfdir}/%{s install -p -D -m 640 etc/%{service}/resource_filters.json %{buildroot}%{_sysconfdir}/%{service}/resource_filters.json install -p -D -m 640 etc/%{service}/%{service}.conf.sample %{buildroot}%{_sysconfdir}/%{service}/%{service}.conf +# Install initscripts for services install -p -D -m 644 %{SOURCE10} %{buildroot}%{_unitdir}/openstack-%{service}-api.service install -p -D -m 644 %{SOURCE11} %{buildroot}%{_unitdir}/openstack-%{service}-scheduler.service install -p -D -m 644 %{SOURCE12} %{buildroot}%{_unitdir}/openstack-%{service}-volume.service install -p -D -m 644 %{SOURCE13} %{buildroot}%{_unitdir}/openstack-%{service}-backup.service +# Install sudoers install -p -D -m 440 %{SOURCE20} %{buildroot}%{_sysconfdir}/sudoers.d/%{service} +# Install logrotate install -p -D -m 644 %{SOURCE2} %{buildroot}%{_sysconfdir}/logrotate.d/openstack-%{service} +# Install pid directory install -d -m 755 %{buildroot}%{_localstatedir}/run/%{service} +# Install rootwrap files in /usr/share/cinder/rootwrap mkdir -p %{buildroot}%{_datarootdir}/%{service}/rootwrap/ install -p -D -m 644 etc/%{service}/rootwrap.d/* %{buildroot}%{_datarootdir}/%{service}/rootwrap/ +# Symlinks to rootwrap config files mkdir -p %{buildroot}%{_sysconfdir}/%{service}/rootwrap.d for filter in %{_datarootdir}/os-brick/rootwrap/*.filters; do ln -s $filter %{buildroot}%{_sysconfdir}/%{service}/rootwrap.d/ done +# Install i18n .mo files (.po and .pot are not required) install -d -m 755 %{buildroot}%{_datadir} rm -f %{buildroot}%{python3_sitelib}/%{service}/locale/*/LC_*/%{service}*po rm -f %{buildroot}%{python3_sitelib}/%{service}/locale/*pot mv %{buildroot}%{python3_sitelib}/%{service}/locale %{buildroot}%{_datadir}/locale +# Find language files %find_lang %{service} --all-name +# Remove unneeded in production stuff rm -f %{buildroot}/usr/share/doc/%{service}/README* +# Remove duplicate config files under /usr/etc/ rm -rf %{buildroot}%{_prefix}/etc +# FIXME(jpena): unit tests are taking too long in the current DLRN infra +# Until we have a better architecture, let's not run them when under DLRN %if 0%{!?dlrn} %check OS_TEST_PATH=./%{service}/tests/unit ostestr --concurrency=2 @@ -419,11 +464,13 @@ exit 0 %endif %changelog -* Fri Jul 30 2021 chenyanpanHW - 17.0.0-3 -- DESC: delete -S git from %autosetup, and delete BuildRequires git-core +* Tue Jul 20 2021 OpenStack_SIG - 18.0.0-1 +- update to 18.0.0 * Sat Feb 20 2021 yaozc701 - update spec file python3-migrate —> python3-sqlalchemy-migrate * Tue Feb 02 2021 yaozc701 - update spec file + +