1 %global with_doc %{!?_without_doc:1}%{?_without_doc:0}
7 Summary: OpenStack Volume service
9 Group: Applications/System
11 URL: http://www.openstack.org/software/openstack-storage/
12 Source0: cinder-%{version}.tar.gz
14 Source1: cinder-dist.conf
15 Source2: cinder.logrotate
16 Source3: cinder-tgt.conf
18 Source10: openstack-cinder-api.service
19 Source11: openstack-cinder-scheduler.service
20 Source12: openstack-cinder-volume.service
21 Source13: openstack-cinder-backup.service
22 Source20: cinder-sudoers
25 BuildRequires: intltool
26 BuildRequires: python-oslo-sphinx >= 2.5.0
27 BuildRequires: python-pbr >= 1.6
28 BuildRequires: python-sphinx >= 1.1.2
29 BuildRequires: python-setuptools
30 BuildRequires: python-stevedore >= 1.5.0
31 # Required to build cinder.conf
32 BuildRequires: python-glanceclient >= 1:1.2.0
33 BuildRequires: python-google-api-client >= 1.4.2
34 BuildRequires: python-httplib2 >= 0.7.5
35 BuildRequires: python-keystoneclient >= 1:1.6.0
36 BuildRequires: python-keystonemiddleware >= 4.0.0
37 BuildRequires: python-lxml >= 2.3
38 BuildRequires: python-novaclient >= 1:2.29.0
39 BuildRequires: python-oslo-concurrency >= 3.5.0
40 BuildRequires: python-oslo-config >= 2:3.7.0
41 BuildRequires: python-oslo-context >= 0.2.0
42 BuildRequires: python-oslo-db >= 4.1.0
43 BuildRequires: python-oslo-i18n >= 2.1.0
44 BuildRequires: python-oslo-log >= 1.14.0
45 BuildRequires: python-oslo-messaging >= 4.0.0
46 BuildRequires: python-oslo-middleware >= 3.0.0
47 BuildRequires: python-oslo-policy >= 0.5.0
48 BuildRequires: python-oslo-reports >= 0.6.0
49 BuildRequires: python-oslo-rootwrap >= 2.0.0
50 BuildRequires: python-oslo-serialization >= 1.10.0
51 BuildRequires: python-oslo-service >= 1.0.0
52 BuildRequires: python-oslo-utils >= 3.5.0
53 BuildRequires: python-oslo-versionedobjects >= 1.5.0
54 BuildRequires: python-oslo-vmware >= 1.16.0
55 BuildRequires: python-paramiko >= 1.16.0
56 BuildRequires: python-paste
57 BuildRequires: python-suds-jurko >= 0.6
58 BuildRequires: python-swiftclient >= 2.2.0
59 BuildRequires: python-taskflow >= 1.26.0
60 BuildRequires: python-tooz >= 1.28.0
61 BuildRequires: python-webob >= 1.2.3
62 BuildRequires: python2-os-win >= 0.2.1
64 BuildRequires: os-brick >= 1.0.0
66 Requires: python-cinder = %{epoch}:%{version}-%{release}
68 Requires: python-pbr >= 1.6
71 Requires: python-cinderclient
73 Requires(post): systemd
74 Requires(preun): systemd
75 Requires(postun): systemd
76 Requires(pre): shadow-utils
79 Requires: python-osprofiler >= 1.1.0
80 Requires: python-rtslib >= 2.1.fb41
83 OpenStack Volume (codename Cinder) provides services to manage and
84 access block storage volumes for use by Virtual Machine instances.
87 %package -n python-cinder
88 Summary: OpenStack Volume Python libraries
89 Group: Applications/System
95 Requires: os-brick >= 1.0.0
96 Requires: python-paramiko >= 1.16.0
99 Requires: python-kombu >= 3.0.7
100 Requires: python-amqplib
102 Requires: python-eventlet >= 0.18.2
103 Requires: python-greenlet >= 0.3.2
104 Requires: python-iso8601 >= 0.1.9
105 Requires: python-lxml >= 2.3
106 Requires: python-stevedore >= 1.5.0
107 Requires: python-suds-jurko >= 0.6
108 Requires: python-tooz >= 1.28.0
110 Requires: python-sqlalchemy >= 0.9.9
111 Requires: python-migrate >= 0.9.6
113 Requires: python-paste-deploy >= 1.5.0
114 Requires: python-routes >= 1.12.3
115 Requires: python-webob >= 1.2.3
117 Requires: python-glanceclient >= 1:2.0.0
118 Requires: python-swiftclient >= 2.2.0
119 Requires: python-keystoneclient >= 1:1.6.0
120 Requires: python-novaclient >= 1:2.29.0
122 Requires: python-oslo-config >= 2:3.7.0
123 Requires: python-six >= 1.9.0
125 Requires: python-babel >= 1.3
126 Requires: python-google-api-client >= 1.4.2
128 Requires: python-oslo-rootwrap >= 2.0.0
129 Requires: python-oslo-utils >= 3.5.0
130 Requires: python-oslo-serialization >= 1.10.0
131 Requires: python-oslo-db >= 4.1.0
132 Requires: python-oslo-context >= 0.2.0
133 Requires: python-oslo-concurrency >= 3.5.0
134 Requires: python-oslo-middleware >= 3.0.0
135 Requires: python-taskflow >= 1.26.0
136 Requires: python-oslo-messaging >= 4.0.0
137 Requires: python-oslo-policy >= 0.5.0
138 Requires: python-oslo-reports >= 0.6.0
139 Requires: python-oslo-service >= 1.0.0
140 Requires: python-oslo-versionedobjects >= 1.5.0
142 Requires: iscsi-initiator-utils
144 Requires: python-osprofiler >= 1.1.0
146 Requires: MySQL-python
147 Requires: pyparsing >= 2.0.3
148 Requires: python-barbicanclient >= 3.3.0
149 Requires: python-crypto >= 2.6
150 Requires: python-decorator >= 3.4.0
151 Requires: python-enum34
152 Requires: python-httplib2 >= 0.7.5
153 Requires: python-keystonemiddleware >= 4.0.0
154 Requires: python-oauth2client >= 1.5.0
155 Requires: python-oslo-i18n >= 2.1.0
156 Requires: python-oslo-log >= 1.14.0
157 Requires: python-oslo-vmware >= 1.16.0
158 Requires: python-paste
159 Requires: python-pbr >= 1.6
160 Requires: python-requests >= 2.8.1
161 Requires: python-retrying >= 1.2.3
162 Requires: python-rtslib >= 2.1.fb41
163 Requires: python-simplejson >= 2.2.0
164 Requires: python2-os-win >= 0.2.3
165 Requires: pytz >= 2013.6
168 %description -n python-cinder
169 OpenStack Volume (codename Cinder) provides services to manage and
170 access block storage volumes for use by Virtual Machine instances.
172 This package contains the cinder Python library.
176 Summary: Documentation for OpenStack Volume
179 Requires: %{name} = %{epoch}:%{version}-%{release}
181 BuildRequires: graphviz
183 # Required to build module documents
184 BuildRequires: python-eventlet >= 0.18.2
185 BuildRequires: python-routes >= 1.12.3
186 BuildRequires: python-sqlalchemy >= 0.9.9
187 BuildRequires: python-webob >= 1.2.3
188 # while not strictly required, quiets the build down when building docs.
189 BuildRequires: python-migrate >= 0.9.6
190 BuildRequires: python-iso8601 >= 0.1.9
193 OpenStack Volume (codename Cinder) provides services to manage and
194 access block storage volumes for use by Virtual Machine instances.
196 This package contains documentation files for cinder.
200 %autosetup -n cinder-%{version}
202 find . \( -name .gitignore -o -name .placeholder \) -delete
204 find cinder -name \*.py -exec sed -i '/\/usr\/bin\/env python/{d;q}' {} +
206 # Remove the requirements file so that pbr hooks don't add it
207 # to distutils requires_dist config
208 rm -rf {test-,}requirements.txt tools/{pip,test}-requires
212 # Generate config file
213 PYTHONPATH=. tools/config/generate_sample.sh from_tox
215 %{__python2} setup.py build
218 %{__python2} setup.py install -O1 --skip-build --root %{buildroot}
220 # docs generation requires everything to be installed first
221 export PYTHONPATH="$( pwd ):$PYTHONPATH"
226 SPHINX_DEBUG=1 sphinx-build -b html source build/html
227 # Fix hidden-file-or-dir warnings
228 rm -fr build/html/.doctrees build/html/.buildinfo
231 # Create dir link to avoid a sphinx-build exception
232 mkdir -p build/man/.doctrees/
233 ln -s . build/man/.doctrees/man
234 SPHINX_DEBUG=1 sphinx-build -b man -c source source/man build/man
235 mkdir -p %{buildroot}%{_mandir}/man1
236 install -p -D -m 644 build/man/*.1 %{buildroot}%{_mandir}/man1/
241 install -d -m 755 %{buildroot}%{_sharedstatedir}/cinder
242 install -d -m 755 %{buildroot}%{_sharedstatedir}/cinder/tmp
243 install -d -m 755 %{buildroot}%{_localstatedir}/log/cinder
245 # Install config files
246 install -d -m 755 %{buildroot}%{_sysconfdir}/cinder
247 install -p -D -m 640 %{SOURCE1} %{buildroot}%{_datadir}/cinder/cinder-dist.conf
248 install -d -m 755 %{buildroot}%{_sysconfdir}/cinder/volumes
249 install -p -D -m 644 %{SOURCE3} %{buildroot}%{_sysconfdir}/tgt/conf.d/cinder.conf
250 install -p -D -m 640 etc/cinder/rootwrap.conf %{buildroot}%{_sysconfdir}/cinder/rootwrap.conf
251 install -p -D -m 640 etc/cinder/api-paste.ini %{buildroot}%{_sysconfdir}/cinder/api-paste.ini
252 install -p -D -m 640 etc/cinder/policy.json %{buildroot}%{_sysconfdir}/cinder/policy.json
253 install -p -D -m 640 etc/cinder/cinder.conf.sample %{buildroot}%{_sysconfdir}/cinder/cinder.conf
255 # Install initscripts for services
256 install -p -D -m 644 %{SOURCE10} %{buildroot}%{_unitdir}/openstack-cinder-api.service
257 install -p -D -m 644 %{SOURCE11} %{buildroot}%{_unitdir}/openstack-cinder-scheduler.service
258 install -p -D -m 644 %{SOURCE12} %{buildroot}%{_unitdir}/openstack-cinder-volume.service
259 install -p -D -m 644 %{SOURCE13} %{buildroot}%{_unitdir}/openstack-cinder-backup.service
262 install -p -D -m 440 %{SOURCE20} %{buildroot}%{_sysconfdir}/sudoers.d/cinder
265 install -p -D -m 644 %{SOURCE2} %{buildroot}%{_sysconfdir}/logrotate.d/openstack-cinder
267 # Install pid directory
268 install -d -m 755 %{buildroot}%{_localstatedir}/run/cinder
270 # Install rootwrap files in /usr/share/cinder/rootwrap
271 mkdir -p %{buildroot}%{_datarootdir}/cinder/rootwrap/
272 install -p -D -m 644 etc/cinder/rootwrap.d/* %{buildroot}%{_datarootdir}/cinder/rootwrap/
275 # Symlinks to rootwrap config files
276 mkdir -p %{buildroot}%{_sysconfdir}/cinder/rootwrap.d
277 for filter in %{_datarootdir}/os-brick/rootwrap/*.filters; do
278 ln -s $filter %{buildroot}%{_sysconfdir}/cinder/rootwrap.d/
280 # Remove unneeded in production stuff
281 rm -f %{buildroot}%{_bindir}/cinder-all
282 rm -f %{buildroot}%{_bindir}/cinder-debug
283 rm -fr %{buildroot}%{python2_sitelib}/cinder/tests/
284 rm -fr %{buildroot}%{python2_sitelib}/run_tests.*
285 rm -f %{buildroot}/usr/share/doc/cinder/README*
288 getent group cinder >/dev/null || groupadd -r cinder --gid 165
289 if ! getent passwd cinder >/dev/null; then
290 useradd -u 165 -r -g cinder -G cinder,nobody -d %{_sharedstatedir}/cinder -s /sbin/nologin -c "OpenStack Cinder Daemons" cinder
295 %systemd_post openstack-cinder-volume
296 %systemd_post openstack-cinder-api
297 %systemd_post openstack-cinder-scheduler
298 %systemd_post openstack-cinder-backup
301 %systemd_preun openstack-cinder-volume
302 %systemd_preun openstack-cinder-api
303 %systemd_preun openstack-cinder-scheduler
304 %systemd_preun openstack-cinder-backup
307 %systemd_postun_with_restart openstack-cinder-volume
308 %systemd_postun_with_restart openstack-cinder-api
309 %systemd_postun_with_restart openstack-cinder-scheduler
310 %systemd_postun_with_restart openstack-cinder-backup
314 %dir %{_sysconfdir}/cinder
315 %config(noreplace) %attr(-, root, cinder) %{_sysconfdir}/cinder/cinder.conf
316 %config(noreplace) %attr(-, root, cinder) %{_sysconfdir}/cinder/api-paste.ini
317 %config(noreplace) %attr(-, root, cinder) %{_sysconfdir}/cinder/rootwrap.conf
318 %config(noreplace) %attr(-, root, cinder) %{_sysconfdir}/cinder/policy.json
319 %config(noreplace) %{_sysconfdir}/logrotate.d/openstack-cinder
320 %config(noreplace) %{_sysconfdir}/sudoers.d/cinder
321 %config(noreplace) %{_sysconfdir}/tgt/conf.d/cinder.conf
322 %{_sysconfdir}/cinder/rootwrap.d/
323 %attr(-, root, cinder) %{_datadir}/cinder/cinder-dist.conf
325 %dir %attr(0750, cinder, root) %{_localstatedir}/log/cinder
326 %dir %attr(0755, cinder, root) %{_localstatedir}/run/cinder
327 %dir %attr(0755, cinder, root) %{_sysconfdir}/cinder/volumes
330 %{_unitdir}/*.service
331 %{_datarootdir}/cinder
332 %{_mandir}/man1/cinder*.1.gz
334 %defattr(-, cinder, cinder, -)
335 %dir %{_sharedstatedir}/cinder
336 %dir %{_sharedstatedir}/cinder/tmp
338 %files -n python-cinder
339 %{?!_licensedir: %global license %%doc}
341 %{python2_sitelib}/cinder
342 %{python2_sitelib}/cinder-*.egg-info
350 * Wed Mar 09 2016 Alexander Tsamutali <atsamutali@mirantis.com> - 8.0.0.0b2-1
351 - Update to 8.0.0.0b3.
352 - Sync with RDO spec.
354 * Mon Sep 28 2015 Mikhail Ivanov <mivanov@mirantis.com> - 7.0.0.0rc1-1~mos8.0.1
355 - Update to a new upstream version
356 - Update build and runtime dependencies
358 * Wed Jun 11 2014 Eric Harney <eharney@redhat.com> - 2014.1.1-2
359 - Add dependency on iscsi-initiator-utils
361 * Mon Jun 09 2014 Eric Harney <eharney@redhat.com> - 2014.1.1-1
362 - Update to Icehouse stable release 1
364 * Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2014.1-4
365 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
367 * Tue Apr 29 2014 Alan Pevec <apevec@redhat.com> - 2014.1-3
368 - drop crudini build dependency
370 * Mon Apr 21 2014 Eric Harney <eharney@redhat.com> - 2014.1-2
371 - Remove qpid settings from cinder-dist.conf
373 * Thu Apr 17 2014 Eric Harney <eharney@redhat.com> - 2014.1-1
374 - Update to 2014.1 (Icehouse)
376 * Tue Apr 15 2014 Eric Harney <eharney@redhat.com> - 2014.1-0.10.rc3
377 - Add python-oslo-messaging requirement
378 - Add GlusterFS delete patch
379 - Add systemd patches (not used yet)
381 * Tue Apr 15 2014 Eric Harney <eharney@redhat.com> - 2014.1-0.9.rc3
382 - Update to Icehouse RC3
384 * Mon Apr 07 2014 Eric Harney <eharney@redhat.com> - 2014.1-0.8.rc2
385 - Update to Icehouse RC2
386 - Icehouse requires newer version of python-six
388 * Thu Mar 27 2014 Eric Harney <eharney@redhat.com> - 2014.1-0.7.rc1
389 - Update to Icehouse RC1
391 * Tue Mar 25 2014 Pádraig Brady <pbrady@redhat.com> - 2014.1-0.6.b3
392 - Depend on python-rtslib and targetcli rather than scsi-target-utils
394 * Fri Mar 21 2014 Pádraig Brady <pbrady@redhat.com> - 2014.1-0.5.b3
395 - Use lioadm iSCSI helper rather than tgtadm
397 * Sun Mar 16 2014 Eric Harney <eharney@redhat.com> - 2014.1-0.4.b3
398 - Update to Icehouse milestone 3
399 - Add deps on python-oslo-rootwrap, python-taskflow
401 * Mon Jan 27 2014 Eric Harney <eharney@redhat.com> - 2014.1-0.3.b2
402 - Update to Icehouse milestone 2
404 * Mon Jan 06 2014 Pádraig Brady <pbrady@redhat.com> - 2014.1-0.2.b1
405 - Set python-six min version to ensure updated
407 * Thu Dec 19 2013 Eric Harney <eharney@redhat.com> - 2014.1-0.1.b1
408 - Update to Icehouse milestone 1
410 * Mon Oct 28 2013 Eric Harney <eharney@redhat.com> - 2013.2-2
411 - Fix GlusterFS volume driver clone operations
413 * Thu Oct 17 2013 Eric Harney <eharney@redhat.com> - 2013.2-1
414 - Update to 2013.2 (Havana)
415 - Restart/remove cinder-backup service during upgrade/uninstallation
417 * Wed Oct 16 2013 Eric Harney <eharney@redhat.com> - 2013.2-0.13.rc3
418 - Update to Havana RC3
420 * Fri Oct 11 2013 Eric Harney <eharney@redhat.com> - 2013.2-0.12.rc2
421 - Update to Havana RC2
423 * Tue Oct 08 2013 Eric Harney <eharney@redhat.com> - 2013.2-0.11.rc1
424 - Update to Havana RC1
425 - Fix python-novaclient req epoch
427 * Mon Sep 23 2013 Eric Harney <eharney@redhat.com> - 2013.2-0.10.b3
428 - Depend on python-novaclient 2.15
430 * Wed Sep 18 2013 Eric Harney <eharney@redhat.com> - 2013.2-0.9.b3
431 - Add cinder-dist.conf
432 - Tighten permissions on /var/log/cinder
434 * Mon Sep 9 2013 Eric Harney <eharney@redhat.com> - 2013.2-0.8.b3
435 - Update to Havana milestone 3
436 - Add dependency on python-novaclient
438 * Thu Aug 29 2013 Pádraig Brady <pbrady@redhat.com> - 2013.2-0.7.b2
439 - Add dependency on sysfsutils to support the fiber channel driver
441 * Mon Aug 26 2013 Eric Harney <eharney@redhat.com> - 2013.2-0.6.b2
442 - Add cinder-backup service init script
444 * Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2013.2-0.5.b2
445 - Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
447 * Mon Jul 22 2013 Pádraig Brady <pbrady@redhat.com> - 2013.2-0.4.b2
448 - Add dependency on python-suds to support the netapp driver
449 - Add dependency on python-keystoneclient for auth token middleware
450 - Add dependency on qemu-img for volume creation from Glance images
452 * Sun Jul 21 2013 Pádraig Brady <pbrady@redhat.com> - 2013.2-0.3.b2
453 - Update to Havana milestone 2
455 * Thu Jun 13 2013 Eric Harney <eharney@redhat.com> - 2013.2-0.2.b1
456 - Update to Havana milestone 1
458 * Mon May 13 2013 Eric Harney <eharney@redhat.com> - 2013.1.1-1
459 - Update to Grizzly stable release 1, 2013.1.1
461 * Mon Apr 08 2013 Eric Harney <eharney@redhat.com> - 2013.1-2
462 - Backport fix for GlusterFS driver get_volume_stats
464 * Thu Apr 04 2013 Eric Harney <eharney@redhat.com> - 2013.1-1
465 - Update to Grizzly final release
467 * Tue Apr 2 2013 Pádraig Brady <pbrady@redhat.com> - 2013.1-0.6.rc3
468 - Adjust to support sqlalchemy-0.8.0
470 * Wed Mar 27 2013 Eric Harney <eharney@redhat.com> - 2013.1-0.5.rc3
471 - Update to Grizzly RC3 release
473 * Mon Mar 25 2013 Eric Harney <eharney@redhat.com> - 2013.1-0.5.rc2
474 - Update to Grizzly RC2 release
476 * Mon Mar 18 2013 Eric Harney <eharney@redhat.com> - 2013.1-0.5.rc1
477 - Update to Grizzly RC1 release
479 * Tue Mar 05 2013 Pádraig Brady <P@draigBrady.com> - 2013.1-0.4.g3
480 - Add dependency on python-stevedore
482 * Mon Feb 25 2013 Eric Harney <eharney@redhat.com> - 2013.1-0.3.g3
483 - Fix build issues with G-3 update
485 * Mon Feb 25 2013 Eric Harney <eharney@redhat.com> - 2013.1-0.2.g3
486 - Update to Grizzly milestone 3
488 * Thu Feb 14 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2013.1-0.2.g2
489 - Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
491 * Thu Jan 10 2013 Eric Harney <eharney@redhat.com> - 2013.1-0.1.g2
492 - Update to Grizzly milestone 2
494 * Thu Nov 29 2012 Eric Harney <eharney@redhat.com> - 2013.1-0.1.g1
495 - Update to Grizzly milestone 1
497 * Wed Nov 14 2012 Eric Harney <eharney@redhat.com> - 2012.2-2
498 - Remove unused dependency on python-daemon
500 * Thu Sep 27 2012 Pádraig Brady <P@draigBrady.com> - 2012.2-1
501 - Update to Folsom final
503 * Fri Sep 21 2012 Pádraig Brady <P@draigBrady.com> - 2012.2-0.5.rc1
504 - Update to Folsom RC1
506 * Fri Sep 21 2012 Pádraig Brady <P@draigBrady.com> - 2012.2-0.4.f3
507 - Fix to ensure that tgt configuration is honored
509 * Mon Sep 17 2012 Pádraig Brady <P@draigBrady.com> - 2012.2-0.3.f3
510 - Move user config out of /etc/cinder/api-paste.ini
511 - Require python-cinderclient
513 * Mon Sep 3 2012 Pádraig Brady <P@draigBrady.com> - 2012.2-0.2.f3