%global service cinder %global common_desc \ OpenStack Volume (codename Cinder) provides services to manage and \ access block storage volumes for use by Virtual Machine instances. Name: openstack-%{service} Version: 18.2.0 Release: 2 Summary: OpenStack Volume service License: ASL 2.0 URL: http://www.openstack.org/software/openstack-storage/ BuildArch: noarch Source0: https://tarballs.openstack.org/cinder/cinder-18.2.0.tar.gz Source10: openstack-%{service}-api.service Source11: openstack-%{service}-scheduler.service Source12: openstack-%{service}-volume.service Source13: openstack-%{service}-backup.service Source20: %{service}-sudoers Source21: %{service}.logrotate Patch01: cinder_pyparsing.patch BuildRequires: openstack-macros BuildRequires: python3-os-win BuildRequires: python3-pbr BuildRequires: python3-jsonschema BuildRequires: python3-castellan BuildRequires: python3-cursive BuildRequires: python3-routes BuildRequires: python3-webob BuildRequires: python3-barbicanclient BuildRequires: python3-glanceclient BuildRequires: python3-keystoneclient BuildRequires: python3-novaclient BuildRequires: python3-swiftclient BuildRequires: python3-google-api-client BuildRequires: python3-keystonemiddleware BuildRequires: python3-keystoneauth1 BuildRequires: python3-osprofiler BuildRequires: python3-oslo-middleware BuildRequires: python3-oslo-messaging BuildRequires: python3-oslo-policy BuildRequires: python3-oslo-reports BuildRequires: python3-oslo-vmware BuildRequires: python3-oauth2client BuildRequires: python3-packaging BuildRequires: python3-paste BuildRequires: python3-paste-deploy BuildRequires: python3-paramiko BuildRequires: python3-eventlet BuildRequires: python3-greenlet BuildRequires: python3-iso8601 BuildRequires: python3-stevedore BuildRequires: python3-tooz BuildRequires: python3-sqlalchemy BuildRequires: python3-six BuildRequires: python3-psutil BuildRequires: python3-os-brick BuildRequires: python3-oslo-config BuildRequires: python3-oslo-concurrency BuildRequires: python3-oslo-context BuildRequires: python3-oslo-db BuildRequires: python3-oslo-i18n BuildRequires: python3-oslo-log BuildRequires: python3-oslo-privsep BuildRequires: python3-oslo-rootwrap BuildRequires: python3-oslo-serialization BuildRequires: python3-oslo-service BuildRequires: python3-oslo-utils BuildRequires: python3-oslo-versionedobjects BuildRequires: python3-oslo-upgradecheck BuildRequires: python3-taskflow BuildRequires: python3-requests BuildRequires: python3-pyparsing BuildRequires: python3-pytz BuildRequires: python3-tabulate BuildRequires: python3-cryptography BuildRequires: python3-lxml BuildRequires: python3-sqlalchemy-migrate BuildRequires: python3-httplib2 BuildRequires: python3-tenacity BuildRequires: python3-decorator BuildRequires: python3-rtslib BuildRequires: python3-zstd BuildRequires: python3-importlib_metadata BuildRequires: python3-boto3 # Needed for unit tests BuildRequires: python3-hacking BuildRequires: python3-flake8-import-order BuildRequires: python3-flake8-logging-format BuildRequires: python3-coverage BuildRequires: python3-PyMySQL BuildRequires: python3-psycopg2 BuildRequires: python3-SQLAlchemy-Utils BuildRequires: python3-ddt BuildRequires: python3-fixtures BuildRequires: python3-oslotest BuildRequires: python3-testtools BuildRequires: python3-stestr BuildRequires: python3-bandit BuildRequires: python3-doc8 BuildRequires: python3-mypy BuildRequires: python3-moto Requires: python3-cinderclient Requires: python3-pyudev Requires(pre): shadow-utils Requires: openstack-%{service}-api = %{version}-%{release} Requires: openstack-%{service}-scheduler = %{version}-%{release} Requires: openstack-%{service}-volume = %{version}-%{release} Requires: openstack-%{service}-backup = %{version}-%{release} %description %{common_desc} %package api Summary: OpenStack Volume service (Cinder) - API Requires: %{name}-common = %{version}-%{release} %description api %{common_desc} This package contains the %{name} API server. %package scheduler Summary: OpenStack Volume service (Cinder) - Scheduler Requires: %{name}-common = %{version}-%{release} %description scheduler %{common_desc} This package contains the %{name} Scheduler server. %package volume Summary: OpenStack Volume service (Cinder) - Volume Requires: %{name}-common = %{version}-%{release} %description volume %{common_desc} This package contains the %{name} Volume server. %package backup Summary: OpenStack Volume service (Cinder) - Backup Requires: %{name}-common = %{version}-%{release} Requires: targetcli %description backup %{common_desc} This package contains the %{name} Backup server. %package common Summary: OpenStack Volume service (Cinder) - Common Requires: python3-cinder = %{version}-%{release} %description common %{common_desc} This package contains scripts, config and dependencies shared between all the ${name} services %package -n python3-%{service} Summary: OpenStack Volume Python libraries Requires: python3-os-win Requires: python3-pbr Requires: python3-jsonschema Requires: python3-castellan Requires: python3-cursive Requires: python3-routes Requires: python3-webob Requires: python3-barbicanclient Requires: python3-glanceclient Requires: python3-keystoneclient Requires: python3-novaclient Requires: python3-swiftclient Requires: python3-google-api-client Requires: python3-keystonemiddleware Requires: python3-keystoneauth1 Requires: python3-osprofiler Requires: python3-oslo-middleware Requires: python3-oslo-messaging Requires: python3-oslo-policy Requires: python3-oslo-reports Requires: python3-oslo-vmware Requires: python3-oslo-upgradecheck Requires: python3-oauth2client Requires: python3-packaging Requires: python3-paste Requires: python3-paste-deploy Requires: python3-paramiko Requires: python3-eventlet Requires: python3-greenlet Requires: python3-iso8601 Requires: python3-stevedore Requires: python3-tooz Requires: python3-sqlalchemy Requires: python3-six Requires: python3-psutil Requires: python3-os-brick Requires: python3-oslo-config Requires: python3-oslo-concurrency Requires: python3-oslo-context Requires: python3-oslo-db Requires: python3-oslo-i18n Requires: python3-oslo-log Requires: python3-oslo-privsep Requires: python3-oslo-rootwrap Requires: python3-oslo-serialization Requires: python3-oslo-service Requires: python3-oslo-utils Requires: python3-oslo-versionedobjects Requires: python3-taskflow Requires: python3-requests Requires: python3-pyparsing Requires: python3-pytz Requires: python3-tabulate Requires: python3-cryptography Requires: python3-lxml Requires: python3-sqlalchemy-migrate Requires: python3-httplib2 Requires: python3-tenacity Requires: python3-decorator Requires: python3-rtslib Requires: lvm2 Requires: sudo Requires: sysfsutils Requires: cryptsetup Requires: cracklib-dicts Requires: qemu-img Requires: iscsi-initiator-utils Requires: python3-zstd Requires: python3-importlib_metadata Requires: python3-boto3 %description -n python3-%{service} %{common_desc} This package contains the %{service} Python library. %package -n python3-%{service}-tests Summary: Cinder tests Requires: python3-hacking Requires: python3-flake8-import-order Requires: python3-flake8-logging-format Requires: python3-coverage Requires: python3-PyMySQL Requires: python3-psycopg2 Requires: python3-SQLAlchemy-Utils Requires: python3-ddt Requires: python3-fixtures Requires: python3-oslotest Requires: python3-subunit Requires: python3-testtools Requires: python3-stestr Requires: python3-bandit Requires: python3-doc8 Requires: python3-mypy Requires: python3-moto Requires: python3-%{service} %description -n python3-%{service}-tests %{common_desc} This package contains the Cinder test files. %prep %autosetup -n %{service}-%{version} -p1 %py_req_cleanup %build %{py3_build} oslo-config-generator --config-file=tools/config/%{service}-config-generator.conf %install %{py3_install} install -d -m 755 %{buildroot}%{_sharedstatedir}/%{service} install -d -m 755 %{buildroot}%{_sharedstatedir}/%{service}/tmp install -d -m 755 %{buildroot}%{_sysconfdir}/%{service} install -d -m 755 %{buildroot}%{_sysconfdir}/%{service}/rootwrap.d install -d -m 755 %{buildroot}%{_sysconfdir}/%{service}/volumes install -d -m 755 %{buildroot}%{_localstatedir}/log/%{service} install -d -m 755 %{buildroot}%{_localstatedir}/run/%{service} install -d -m 755 %{buildroot}%{_datarootdir} install -d -m 755 %{buildroot}%{_datarootdir}/%{service} install -d -m 755 %{buildroot}%{_datarootdir}/%{service}/rootwrap/ install -p -D -m 640 %{SOURCE10} %{buildroot}%{_unitdir}/openstack-%{service}-api.service install -p -D -m 640 %{SOURCE11} %{buildroot}%{_unitdir}/openstack-%{service}-scheduler.service install -p -D -m 640 %{SOURCE12} %{buildroot}%{_unitdir}/openstack-%{service}-volume.service install -p -D -m 640 %{SOURCE13} %{buildroot}%{_unitdir}/openstack-%{service}-backup.service install -p -D -m 440 %{SOURCE20} %{buildroot}%{_sysconfdir}/sudoers.d/%{service} install -p -D -m 644 %{SOURCE21} %{buildroot}%{_sysconfdir}/logrotate.d/openstack-%{service} install -p -D -m 640 etc/%{service}/rootwrap.conf %{buildroot}%{_sysconfdir}/%{service}/rootwrap.conf install -p -D -m 640 etc/%{service}/api-paste.ini %{buildroot}%{_sysconfdir}/%{service}/api-paste.ini install -p -D -m 640 etc/%{service}/%{service}.conf.sample %{buildroot}%{_sysconfdir}/%{service}/%{service}.conf install -p -D -m 640 etc/%{service}/resource_filters.json %{buildroot}%{_sysconfdir}/%{service}/resource_filters.json install -p -D -m 640 etc/%{service}/rootwrap.d/* %{buildroot}%{_datarootdir}/%{service}/rootwrap/ 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}%{_datarootdir}/locale rm -rf %{buildroot}%{_prefix}/etc #%check #OS_TEST_PATH=./%{service}/tests/unit ostestr --concurrency=2 %pre common %openstack_pre_user_group_create %{service} %{service} /sbin/nologin exit 0 %post volume %systemd_post openstack-%{service}-volume %post api %systemd_post openstack-%{service}-api %post scheduler %systemd_post openstack-%{service}-scheduler %post backup %systemd_post openstack-%{service}-backup %preun volume %systemd_preun openstack-%{service}-volume %preun api %systemd_preun openstack-%{service}-api %preun scheduler %systemd_preun openstack-%{service}-scheduler %preun backup %systemd_preun openstack-%{service}-backup %postun volume %systemd_postun_with_restart openstack-%{service}-volume %postun api %systemd_postun_with_restart openstack-%{service}-api %postun scheduler %systemd_postun_with_restart openstack-%{service}-scheduler %postun backup %systemd_postun_with_restart openstack-%{service}-backup %files %files api %{_bindir}/cinder-api %{_unitdir}/openstack-cinder-api.service %files scheduler %{_bindir}/cinder-scheduler %{_unitdir}/openstack-cinder-scheduler.service %files volume %{_bindir}/cinder-volume %{_unitdir}/openstack-cinder-volume.service %files backup %{_bindir}/cinder-backup %{_unitdir}/openstack-cinder-backup.service %files common %license LICENSE %dir %attr(0750, %{service}, %{service}) %{_sysconfdir}/%{service} %dir %attr(0750, %{service}, %{service}) %{_sysconfdir}/%{service}/volumes %dir %attr(0750, %{service}, %{service}) %{_localstatedir}/log/%{service} %dir %attr(0750, %{service}, %{service}) %{_localstatedir}/run/%{service} %dir %attr(0750, %{service}, %{service}) %{_sharedstatedir}/%{service} %dir %attr(0750, %{service}, %{service}) %{_sharedstatedir}/%{service}/tmp %attr(-, %{service}, %{service}) %{_sysconfdir}/%{service}/rootwrap.d/ %attr(-, %{service}, %{service}) %{_datarootdir}/%{service} %attr(0640, root, %{service}) %{_sysconfdir}/logrotate.d/openstack-%{service} %attr(0440, root, root) %{_sysconfdir}/sudoers.d/%{service} %config(noreplace) %attr(0640, %{service}, %{service}) %{_sysconfdir}/%{service}/%{service}.conf %config(noreplace) %attr(0640, %{service}, %{service}) %{_sysconfdir}/%{service}/api-paste.ini %config(noreplace) %attr(0640, %{service}, %{service}) %{_sysconfdir}/%{service}/rootwrap.conf %config(noreplace) %attr(0640, %{service}, %{service}) %{_sysconfdir}/%{service}/resource_filters.json %{_bindir}/%{service}-* %exclude %{_bindir}/%{service}-api %exclude %{_bindir}/%{service}-scheduler %exclude %{_bindir}/%{service}-volume %exclude %{_bindir}/%{service}-backup %files -n python3-%{service} %license LICENSE %{python3_sitelib}/%{service} %{python3_sitelib}/%{service}-*.egg-info %{_bindir}/%{service}-rtstool %exclude %{python3_sitelib}/%{service}/tests %files -n python3-%{service}-tests %license LICENSE %{python3_sitelib}/%{service}/tests %changelog * Apr 24 2023 zhengting - 18.2.0-2 - Fix depracted attribute * Apr 24 2023 songchao - 18.2.0-1 - Upgrade to 18.2.0 * Mon Feb 21 2022 wangxiyuan - 18.1.0-1 - Upgrade to 18.1.0 * Thu Aug 12 2021 wangxiyuan - 18.0.0-1 - Upgrade to OpenStack Wallaby version * Fri Aug 06 2021 wangxiyuan - 17.0.0-4 - Remove epoch tag * Fri Jul 30 2021 chenyanpanHW - 17.0.0-3 - DESC: delete -S git from %autosetup, and delete BuildRequires git-core * Sat Feb 20 2021 yaozc701 - update spec file python3-migrate —> python3-sqlalchemy-migrate * Tue Feb 02 2021 yaozc701 - update spec file