Hello community, here is the log from the commit of package openstack-glance for openSUSE:Factory checked in at 2013-01-17 09:52:20 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/openstack-glance (Old) and /work/SRC/openSUSE:Factory/.openstack-glance.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "openstack-glance", Maintainer is "cth...@suse.com" Changes: -------- New Changes file: --- /dev/null 2013-01-09 19:40:42.352580873 +0100 +++ /work/SRC/openSUSE:Factory/.openstack-glance.new/openstack-glance-doc.changes 2013-01-17 09:52:22.000000000 +0100 @@ -0,0 +1,17 @@ +------------------------------------------------------------------- +Wed Dec 19 15:34:45 UTC 2012 - sasc...@suse.de + +- It's a noarch package + +-------------------------------------------------------------------- +Wed Dec 19 12:33:25 UTC 2012 - sasc...@suse.de + +- Move to obs-service-git_tarballs +- Update to version 2012.2.3+git.1355916805.35260a7: + + Bump next version to 2012.2.3 + +------------------------------------------------------------------- +Thu Nov 22 09:29:34 UTC 2012 - sasc...@suse.de + +- Initial version + --- /work/SRC/openSUSE:Factory/openstack-glance/openstack-glance.changes 2012-11-13 11:41:40.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.openstack-glance.new/openstack-glance.changes 2013-01-17 09:52:22.000000000 +0100 @@ -2 +2,114 @@ -Thu Nov 8 13:28:42 UTC 2012 - sasc...@suse.de +Thu Jan 10 12:49:38 UTC 2013 - sasc...@suse.de + +- Add logrotate configuration + +------------------------------------------------------------------- +Thu Jan 10 12:27:50 UTC 2013 - sasc...@suse.de + +- Add glance-default-signing_dir.patch: Currently, if not set, the + default in keystone/middleware/auth_token.py is $HOME/signing_dir + (See https://bugs.launchpad.net/keystone/+bug/1031022) which may + fail depending on the user glance / glanceclient is run and + the home directory set. + +------------------------------------------------------------------- +Tue Jan 8 12:51:06 UTC 2013 - sasc...@suse.de + +- Add glance-test_bin_glance-fail-on-slow-machines.patch: Test randomly + fails because on slow machines, the updated image is still in + 'State: saving'. + +-------------------------------------------------------------------- +Wed Dec 19 12:33:25 UTC 2012 - sasc...@suse.de + +- Move to obs-service-git_tarballs +- Update to version 2012.2.3+git.1355916805.35260a7: + + Bump next version to 2012.2.3 + +------------------------------------------------------------------- +Thu Dec 13 13:54:44 UTC 2012 - sasc...@suse.de + +- Add glance-webob12b1-putrequest.patch: Disable + test_add_image_with_image_data_as_file_with_sendfile with WebOb > + 1.2b1. Only the testsuite fix has an issue, but there is no upstream + solution yet (https://review.openstack.org/#/c/18036/) + +------------------------------------------------------------------- +Wed Dec 12 15:41:22 UTC 2012 - sasc...@suse.de + +- Delete test_interrupt_avoids_respawn_storm, it has a known race + and is failing randomly + +------------------------------------------------------------------- +Wed Dec 12 13:13:51 UTC 2012 - sasc...@suse.de + +- Add glance-webob-requestbodyfileget.patch: Newer WebOb returns + different objects, i.e. io.Bytes vs. io.BufferedReader + +------------------------------------------------------------------- +Wed Dec 12 10:45:48 UTC 2012 - sasc...@suse.de + +- Add glance-lp1083155.patch: Using response.app_iter = ... resets + Content-MD5 + +------------------------------------------------------------------- +Mon Dec 10 19:00:23 UTC 2012 - sasc...@suse.de + +- Add glance-run-testsuite-as-root.patch: Some tests make no sense + when running as root +- Add glance-webob-1_2b1-compat.patch: Forward compatibility with + WebOb-1.2b1 or later + +------------------------------------------------------------------- +Mon Dec 10 10:54:04 UTC 2012 - sasc...@suse.de + +- Update to version 2012.2.1+git.1354224497.199783c: + + Bump next version to 2012.2.2 + + Ensure strings passed to librbd are not unicode + + Make cooperative reader always support read() + + Return 403 when admin deletes a deleted image + + Ensure authorization before deleting from store + + Delete from store after registry delete. + + FakeAuth not always admin + + Pull in a versioning fix from openstack-common. + + Return HTTP 404 for deleted images in v2 + + Disallow updating deleted images. + + pin sqlalchemy to the 0.7.x series + + Add noseopts and replace noseargs where needed to run_test.sh + + Pass empty args to test config parser. + + Set defaultbranch in .gitreview to stable/folsom + +------------------------------------------------------------------- +Wed Dec 5 09:34:08 UTC 2012 - sasc...@suse.de + +- Use @PARENT_TAG@ in _service file to automate versioning + +------------------------------------------------------------------- +Thu Nov 22 09:29:43 UTC 2012 - sasc...@suse.de + +- Split out doc package into seperate spec file +- Drop "glance" binary, we have glanceclient +- Fix smaller rpmlint warnings + +------------------------------------------------------------------- +Tue Nov 20 10:21:28 UTC 2012 - sasc...@suse.de + +- Add more requirements to the test package: + + python-glanceclient + + python-openstack.nose_plugin + +------------------------------------------------------------------- +Thu Nov 15 13:57:50 UTC 2012 - sasc...@suse.de + +- Use openstack-macros + +------------------------------------------------------------------- +Fri Nov 9 10:23:31 UTC 2012 - sasc...@suse.de + +- Add more test requirements for which we have packages now: + + Requires: python-nose-exclude + + Requires: python-nosehtmloutput + + Requires: python-pysendfile + +------------------------------------------------------------------- +Thu Nov 8 11:22:44 UTC 2012 - sasc...@suse.de @@ -7 +120,7 @@ -Tue Nov 6 09:42:31 UTC 2012 - sasc...@suse.de +Tue Oct 30 09:16:56 UTC 2012 - sasc...@suse.de + +- Drop temporary fixes for file permissions and attributes in %post + section. They were necessary only to migrate from pre-1.0 packages. + +------------------------------------------------------------------- +Tue Oct 9 15:58:37 UTC 2012 - vu...@suse.com @@ -9,2 +128,11 @@ -- Add glance-bnc787814_essex.patch: Authentication bypass for - image deletion (bnc#787814) +- Update to version 2012.2 (Folsom): + + See https://github.com/openstack/glance/commits/folsom-3 +- Drop the following upstreamed patches: + + glance-insecure-cmdline-flag-for-auth.patch + + glance-utf8-headers.patch +- Buildrequire python-base instead of python-devel: + + Sufficient for Python-only modules (containing no C/C++ code) +- Move bash-completion file to python-glanceclient +- Move runtime Python module requirements from the base package to + "python-glance" +- Build and install manpages Old: ---- glance-2012.1+git.1344578005.120fcf4.tar.gz glance-bnc787814_essex.patch glance-insecure-cmdline-flag-for-auth.patch glance-utf8-headers.patch openstack-glance.sh New: ---- glance-default-signing_dir.patch glance-lp1083155.patch glance-run-testsuite-as-root.patch glance-stable-folsom.tar.gz glance-test_bin_glance-fail-on-slow-machines.patch glance-webob-1_2b1-compat.patch glance-webob-requestbodyfileget.patch glance-webob12b1-putrequest.patch openstack-glance-doc.changes openstack-glance-doc.spec openstack-glance.logrotate ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ openstack-glance-doc.spec ++++++ # # spec file for package openstack-glance-doc # # Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via http://bugs.opensuse.org/ # %define component glance Name: openstack-%{component}-doc Version: 2012.2.3+git.1355916805.35260a7 Release: 0 License: Apache-2.0 Summary: OpenStack Image Service (Glance) - Documentation Url: https://launchpad.net/glance Group: Documentation/HTML Source: glance-stable-folsom.tar.gz BuildRequires: graphviz BuildRequires: openstack-macros BuildRequires: python-Sphinx BuildRequires: python-base BuildArch: noarch BuildRoot: %{_tmppath}/%{name}-%{version}-build %description The OpenStack Image Service provides discovery, registration and delivery services for disk and server images. The ability to copy or snapshot a server image and immediately store it away is a powerful capability of the OpenStack cloud operating system. Stored images can be used as a template to get new servers up and running quickly—and more consistently if you are provisioning multiple servers—than installing a server operating system and individually configuring additional services. It can also be used to store and catalog an unlimited number of backups. This package contains documentation files for openstack-glance. %prep %setup -q -n glance-2012.2.3 %openstack_cleanup_prep %build python setup.py build_sphinx rm -rf doc/build/html/.buildinfo # Remove unneeded files %install %files %defattr(-,root,root,-) %doc LICENSE doc/build/html %changelog ++++++ openstack-glance.spec ++++++ --- /var/tmp/diff_new_pack.hkU6O5/_old 2013-01-17 09:52:24.000000000 +0100 +++ /var/tmp/diff_new_pack.hkU6O5/_new 2013-01-17 09:52:24.000000000 +0100 @@ -22,52 +22,42 @@ %define username openstack-%{component} Name: openstack-%{component} -Version: 2012.1+git.1344578005.120fcf4 +Version: 2012.2.3+git.1355916805.35260a7 Release: 0 -Summary: OpenStack Image Service (Glance) License: Apache-2.0 -Group: Development/Libraries/Python -Url: http://glance.openstack.org/ -Source0: %{component}-%{version}.tar.gz +Summary: OpenStack Image Service (Glance) +Url: https://launchpad.net/glance +Group: System/Management +Source0: glance-stable-folsom.tar.gz Source1: openstack-glance-api.init Source2: openstack-glance-registry.init -Source3: openstack-glance.sh # WSGI application skeleton for API app (for the SSL proxy): Source4: openstack-glance-api.wsgi -# PATCH-FIX-UPSTREAM: Backport of https://review.openstack.org/#/c/9956 -Patch0: glance-insecure-cmdline-flag-for-auth.patch -# PATCH-FIX-UPSTREAM glance-utf8-headers.patch bnc#776699 vu...@suse.com -- Encode HTTP headers to utf-8, https://review.openstack.org/#/c/11716/ -Patch1: glance-utf8-headers.patch -# PATCH-FIX-UPSTREAM glance-bnc787814_essex.patch sasc...@suse.de -- Authentication bypass for image deletion -Patch2: glance-bnc787814_essex.patch +Source5: %{name}.logrotate +# PATCH-FIX-UPSTREAM: sasc...@suse.de -- Backport of https://review.openstack.org/#/c/17798/ +Patch0: glance-run-testsuite-as-root.patch +# PATCH-FIX-UPSTREAM: sasc...@suse.de -- Backport of https://review.openstack.org/#/c/17794/ +Patch1: glance-webob-1_2b1-compat.patch +# PATCH-FIX-UPSTREAM: sasc...@suse.de -- Backport of https://review.openstack.org/#/c/17926/ +Patch2: glance-lp1083155.patch +# PATCH-FIX-UPSTREAM: sasc...@suse.de -- Backport of https://review.openstack.org/#/c/17932/ +Patch3: glance-webob-requestbodyfileget.patch +# PATCH-FIX-UPSTREAM: sasc...@suse.de -- Backport of https://review.openstack.org/#/c/18036/ +Patch4: glance-webob12b1-putrequest.patch +# PATCH-FIX-UPSTREAM: sasc...@suse.de -- Backport of https://review.openstack.org/#/c/19195/ +Patch5: glance-test_bin_glance-fail-on-slow-machines.patch +# PATCH-FIX-UPSTREAM: sasc...@suse.de -- Backport of https://review.openstack.org/#/c/19380/ +Patch6: glance-default-signing_dir.patch BuildRequires: apache2 BuildRequires: fdupes -BuildRequires: intltool -BuildRequires: python-Sphinx -BuildRequires: python-devel +BuildRequires: openstack-macros +BuildRequires: python-base BuildRequires: python-distribute -BuildRequires: python-distutils-extra -Requires: openstack-swift +# Documentation build requirements: +BuildRequires: python-Sphinx Requires: python >= 2.6.8 -Requires: python-PasteDeploy -Requires: python-SQLAlchemy -Requires: python-WebOb -Requires: python-anyjson -Requires: python-argparse -Requires: python-boto -Requires: python-crypto -Requires: python-eventlet Requires: python-glance = %{version} -Requires: python-greenlet -Requires: python-httplib2 -Requires: python-iso8601 -Requires: python-kombu -Requires: python-routes -Requires: python-sqlalchemy-migrate -Requires: python-wsgiref -Requires: python-xattr -#TODO/FIXME: python-glanceclient (2012.1) also ships /usr/bin/glance: -BuildRoot: %{_tmppath}/%{name}-%{version}-build +Requires: logrotate # To generate a self-signed certificate to be used in demo setups: Requires(post): apache2-utils Requires(post): openssl @@ -77,6 +67,7 @@ %else Requires(pre): shadow-utils %endif +BuildRoot: %{_tmppath}/%{name}-%{version}-build %if 0%{?suse_version} && 0%{?suse_version} <= 1110 %{!?python_sitelib: %global python_sitelib %(python -c "from distutils.sysconfig import get_python_lib; print get_python_lib()")} %else @@ -100,97 +91,125 @@ images and lets clients stream the images to new servers. %package -n python-glance - Summary: OpenStack Image Service (Glance) - Python module Group: Development/Languages/Python Requires: python >= 2.6.8 +Requires: python-Paste +Requires: python-PasteDeploy +Requires: python-SQLAlchemy +Requires: python-WebOb +Requires: python-anyjson +Requires: python-argparse +Requires: python-boto +Requires: python-eventlet +Requires: python-greenlet +Requires: python-httplib2 +Requires: python-iso8601 +Requires: python-jsonschema +Requires: python-kombu +Requires: python-lxml +Requires: python-passlib +Requires: python-pycrypto +Requires: python-routes +Requires: python-sqlalchemy-migrate +Requires: python-swiftclient +Requires: python-wsgiref +Requires: python-xattr %description -n python-glance This package contains the core Python module of OpenStack Glance. %package test - Summary: OpenStack Image Service (Glance) - Testsuite Group: Development/Languages/Python Requires: %{name} = %{version} +Requires: python-coverage Requires: python-mox -# for tests/functional/v2/test_root.py : +Requires: python-nose +Requires: python-nose-exclude +Requires: python-nosehtmloutput +Requires: python-glanceclient +Requires: python-openstack.nose_plugin +Requires: python-pep8 +Requires: python-pysendfile Requires: python-requests +Requires: python-xattr %description test The OpenStack Glance testsuite. It is used to verify the functionality of OpenStack Glance. %prep -%setup -q -n %{component}-%{version} +%setup -q -n glance-2012.2.3 %patch0 -p1 %patch1 -p1 %patch2 -p1 -# Fix non-executable scripts in Python site-arch: -sed -i "s|!/usr/bin/env python||" glance/common/{crypt,config}.py glance/registry/db/migrate_repo/manage.py -rm doc/source/_templates/.placeholder # It's a git placeholder, we don't need that +%patch3 -p1 +%patch4 -p1 +%patch5 -p1 +%patch6 -p1 +%openstack_cleanup_prep +sed -i "s|^#!.*||" tools/migrate_image_owners.py # Fix non-executable script warning +# NOTE(saschpe): The following test contains a pesky (commented) race condition +# that I don't see worth fixing, thus drop it: +rm glance/tests/functional/v1/test_multiprocessing.py %build -# we copy these to where we want them installed, but keep them here for -# the -test subpackage -mkdir etc/glance -cp etc/*.conf etc/glance/ -cp etc/*.ini etc/glance/ -cp etc/*.sample etc/glance/ -cp etc/policy.json etc/glance/ python setup.py build +python setup.py build_sphinx -b man %install -python setup.py install --prefix=%{_prefix} --root=%{buildroot} -mv %{buildroot}%{_bindir}/glance{,.essex} +python setup.py install --skip-build --prefix=%{_prefix} --root=%{buildroot} + +### directories +install -d -m 755 %{buildroot}%{_localstatedir}/lib/glance +install -d -m 755 %{buildroot}%{_localstatedir}/lib/glance/images +install -d -m 755 %{buildroot}%{_localstatedir}/log/glance +install -d -m 755 %{buildroot}%{_localstatedir}/run/glance + +### configuration files +install -d -m 0755 %{buildroot}%{_sysconfdir}/glance +cp etc/*.conf %{buildroot}%{_sysconfdir}/glance +cp etc/*.ini %{buildroot}%{_sysconfdir}/glance +cp etc/*.sample %{buildroot}%{_sysconfdir}/glance +cp etc/policy.json %{buildroot}%{_sysconfdir}/glance +install -p -D -m 644 %{SOURCE5} %{buildroot}%{_sysconfdir}/logrotate.d/%{name} + +### init scripts mkdir -p %{buildroot}%{_initddir} -mkdir -p %{buildroot}%{_sbindir} install -m 755 %{SOURCE1} %{buildroot}%{_initddir}/openstack-glance-api install -m 755 %{SOURCE2} %{buildroot}%{_initddir}/openstack-glance-registry +mkdir -p %{buildroot}%{_sbindir} ln -s ../..%{_initddir}/openstack-glance-api %{buildroot}%{_sbindir}/rcopenstack-glance-api ln -s ../..%{_initddir}/openstack-glance-registry %{buildroot}%{_sbindir}/rcopenstack-glance-registry -install -d -m 755 %{buildroot}%{_localstatedir}/lib/glance -install -d -m 755 %{buildroot}%{_localstatedir}/lib/glance -install -d -m 755 %{buildroot}%{_localstatedir}/lib/glance/images -install -d -m 755 %{buildroot}%{_localstatedir}/log/glance -install -d -m 755 %{buildroot}%{_localstatedir}/run/glance -cp -a etc/glance %{buildroot}%{_sysconfdir} -mkdir -p %{buildroot}%{_sysconfdir}/bash_completion.d/ -cp -a %{SOURCE3} %{buildroot}%{_sysconfdir}/bash_completion.d/ -rm -rf %{buildroot}%{_datadir}/doc/glance - -# for test sub-package -install -d -m 755 %{buildroot}%{_localstatedir}/lib/openstack-glance-test -cp -av * %{buildroot}%{_localstatedir}/lib/openstack-glance-test/ -rm -rf %{buildroot}%{_localstatedir}/lib/openstack-glance-test/glance -ln -s %{python_sitelib}/glance %{buildroot}%{_localstatedir}/lib/openstack-glance-test/glance - -%fdupes %{buildroot}%{python_sitelib} -%fdupes %{buildroot}%{_localstatedir}/lib/openstack-glance-test/ - -# Apache2 SSL certificate stubs (generated in %%post) -install -d %{buildroot}%{_sysconfdir}/apache2/ssl.{crt,csr,key} -install -d %{buildroot}/srv/www/htdocs -touch %{buildroot}%{_sysconfdir}/apache2/ssl.key/openstack-glance-{ca,server}.key -touch %{buildroot}%{_sysconfdir}/apache2/ssl.csr/openstack-glance-server.csr -touch %{buildroot}%{_sysconfdir}/apache2/ssl.crt/openstack-glance-{ca,server}.crt +### documentation +install -d %{buildroot}%{_mandir}/man1 +install -m 644 doc/build/man/*.1 %{buildroot}%{_mandir}/man1 + +### test subpackage +%openstack_test_package_install +%fdupes %{buildroot}%{_localstatedir}/lib/%{name}-test + +### apache/WSGI for SSL +%openstack_apache_ssl_cert_install # Apache2 WSGI apps install -D %{SOURCE4} %{buildroot}%{_localstatedir}/lib/glance/wsgi/glance-api.wsgi +### misc +%fdupes %{buildroot}%{python_sitelib}/%{component} + +# Drop the "glance" binary, there is glanceclient: +rm %{buildroot}%{_bindir}/glance + + %pre getent group %{groupname} >/dev/null || groupadd -r %{groupname} getent passwd %{username} >/dev/null || useradd -r -g %{groupname} -d %{_localstatedir}/lib/glance -s /sbin/nologin -c "OpenStack glance Daemons" %{username} exit 0 %post -if [ ! -s %{_sysconfdir}/apache2/ssl.csr/openstack-glance-server.csr ] ; then - # Generate a self-signed certificate to be used in non-production setups: - (umask 377 ; /usr/bin/gensslcert -C openstack-glance -n glance.example.com) -fi -# Fix owner of glance paster configs manually (it's marked as 'config'): -chown %{username}:root %{_sysconfdir}/glance/glance-*-paste.ini -chown -R %{username}:%{groupname} /var/log/glance /var/lib/glance # for migration - TODO: drop later +%openstack_apache_ssl_cert_post %fillup_and_insserv openstack-glance-api openstack-glance-registry %preun @@ -202,49 +221,60 @@ %files %defattr(-,root,root) -%doc README.rst -%{_initddir}/openstack-glance-api -%{_initddir}/openstack-glance-registry -%{_sbindir}/rcopenstack-glance-api -%{_sbindir}/rcopenstack-glance-registry -%{_sysconfdir}/bash_completion.d/openstack-glance.sh +%doc LICENSE README.rst %dir %{_sysconfdir}/glance %config(noreplace) %{_sysconfdir}/glance/glance-api.conf %config(noreplace) %attr(0600, %{username}, root) %{_sysconfdir}/glance/glance-api-paste.ini %config(noreplace) %{_sysconfdir}/glance/glance-cache.conf -%config(noreplace) %{_sysconfdir}/glance/glance-cache-paste.ini %config(noreplace) %{_sysconfdir}/glance/glance-registry.conf %config(noreplace) %attr(0600, %{username}, root) %{_sysconfdir}/glance/glance-registry-paste.ini %config(noreplace) %{_sysconfdir}/glance/glance-scrubber.conf -%config(noreplace) %{_sysconfdir}/glance/glance-scrubber-paste.ini %config(noreplace) %{_sysconfdir}/glance/logging.cnf.sample %config(noreplace) %{_sysconfdir}/glance/policy.json -%dir %attr(0755, %{username}, root) %{_localstatedir}/lib/glance -%dir %attr(0755, %{username}, root) %{_localstatedir}/lib/glance/images -%dir %attr(0755, %{username}, root) %{_localstatedir}/log/glance +%config(noreplace) %{_sysconfdir}/logrotate.d/%{name} +%dir %attr(0755, %{username}, %{username}) %{_localstatedir}/lib/glance +%dir %attr(0755, %{username}, %{username}) %{_localstatedir}/lib/glance/images +%dir %attr(0755, %{username}, %{username}) %{_localstatedir}/log/glance %ghost %dir %attr(0755, %{username}, root) %{_localstatedir}/run/glance -%{_bindir}/glance.essex +%{_initddir}/openstack-glance-api +%{_initddir}/openstack-glance-registry +%{_sbindir}/rcopenstack-glance-api +%{_sbindir}/rcopenstack-glance-registry %{_bindir}/glance-api -%{_bindir}/glance-cache-prefetcher -%{_bindir}/glance-cache-pruner %{_bindir}/glance-cache-cleaner %{_bindir}/glance-cache-manage +%{_bindir}/glance-cache-prefetcher +%{_bindir}/glance-cache-pruner %{_bindir}/glance-control %{_bindir}/glance-manage %{_bindir}/glance-registry +%{_bindir}/glance-replicator %{_bindir}/glance-scrubber -%ghost %{_sysconfdir}/apache2/ssl.key/openstack-glance-*.key -%ghost %{_sysconfdir}/apache2/ssl.csr/openstack-glance-server.csr -%ghost %{_sysconfdir}/apache2/ssl.crt/openstack-glance-*.crt +%{_mandir}/man1/glance.1%{?ext_man} +%{_mandir}/man1/glance-api.1%{?ext_man} +%{_mandir}/man1/glance-cache-cleaner.1%{?ext_man} +%{_mandir}/man1/glance-cache-manage.1%{?ext_man} +%{_mandir}/man1/glance-cache-prefetcher.1%{?ext_man} +%{_mandir}/man1/glance-cache-pruner.1%{?ext_man} +%{_mandir}/man1/glance-control.1%{?ext_man} +%{_mandir}/man1/glance-manage.1%{?ext_man} +%{_mandir}/man1/glance-registry.1%{?ext_man} +%{_mandir}/man1/glance-scrubber.1%{?ext_man} +%openstack_apache_ssl_cert_files %dir %attr(0755, root, root) %{_localstatedir}/lib/glance/wsgi %attr(0644, root, root) %{_localstatedir}/lib/glance/wsgi/*.wsgi %files -n python-glance %defattr(-,root,root,-) -%{python_sitelib}/* +%doc LICENSE +%{python_sitelib}/%{component}/ +%{python_sitelib}/%{component}-*.egg-info +# Part of test subpackage +%exclude %{python_sitelib}/%{component}/tests/ %files test %defattr(-,root,root) -%{_localstatedir}/lib/openstack-glance-test +%{python_sitelib}/%{component}/tests/ +%{_localstatedir}/lib/%{name}-test/ %changelog ++++++ _service ++++++ --- /var/tmp/diff_new_pack.hkU6O5/_old 2013-01-17 09:52:24.000000000 +0100 +++ /var/tmp/diff_new_pack.hkU6O5/_new 2013-01-17 09:52:24.000000000 +0100 @@ -1,21 +1,6 @@ <services> - <service name="tar_scm" mode="disabled"> - <param name="url">git://github.com/openstack/glance.git</param> - <param name="scm">git</param> - <param name="exclude">.git</param> - <param name="version">git-master</param> - <param name="versionformat">2012.1+git.%ct.%h</param> - - <!-- Use this if you want a specific revision. --> - <param name="revision">stable/essex</param> - </service> - - <service name="recompress" mode="disabled"> - <param name="file">glance-*git*.tar</param> - <param name="compression">gz</param> - </service> - - <service name="set_version" mode="disabled"> - <param name="basename">glance</param> + <service name="git_tarballs" mode="disabled"> + <param name="url">http://tarballs.openstack.org/glance/glance-stable-folsom.tar.gz</param> + <param name="email">cloud-de...@suse.de</param> </service> </services> ++++++ glance-default-signing_dir.patch ++++++ commit fc3a232082a923dcd3e490104500691b1bbd5189 Author: Sascha Peilicke <sasc...@suse.de> Date: Thu Jan 10 13:22:42 2013 +0100 Set default signing_dir in etc/glance-api-paste.ini Currently, if not set, the default in keystone/middleware/auth_token.py is $HOME/signing_dir (See bug 1031022, bug 1031008 bug and bug 1036847) which may fail depending on the user glance / glanceclient is run and the home directory set. /tmp is always writable and the directory name is unique enough Change-Id: I3a8de371ccdf52a8ebe31e6dc1b5f1cc3e95b0ef diff --git a/etc/glance-api-paste.ini b/etc/glance-api-paste.ini index 0b29bc9..8c3631a 100644 --- a/etc/glance-api-paste.ini +++ b/etc/glance-api-paste.ini @@ -57,1 +57,2 @@ paste.filter_factory = glance.api.middleware.context:UnauthenticatedContextMiddl delay_auth_decision = true +signing_dir = /tmp/keystone-signing-glance ++++++ glance-lp1083155.patch ++++++ commit 80ba77ad1db9d77d41e5f11af9be786501456063 Author: Sascha Peilicke <sasc...@suse.de> Date: Wed Dec 12 11:36:14 2012 +0100 Set Content-MD5 after calling webob.Response._app_iter__set. Discussed upstream at https://github.com/Pylons/webob/issues/86 Fixes bug 1083155 Change-Id: I75c634880e7abaacdcd416c27391e9fdc4874049 diff --git a/glance/api/v2/image_data.py b/glance/api/v2/image_data.py index f914e7c..c987f9d 100644 --- a/glance/api/v2/image_data.py +++ b/glance/api/v2/image_data.py @@ -136,10 +136,13 @@ class ResponseSerializer(wsgi.JSONResponseSerializer): checksum = result['meta']['checksum'] response.headers['Content-Length'] = size response.headers['Content-Type'] = 'application/octet-stream' - if checksum: - response.headers['Content-MD5'] = checksum response.app_iter = common.size_checked_iter( response, result['meta'], size, result['data'], self.notifier) + #NOTE(saschpe): "response.app_iter = ..." currently resets Content-MD5 + # (https://github.com/Pylons/webob/issues/86), so it should be set + # afterwards for the time being. + if checksum: + response.headers['Content-MD5'] = checksum def upload(self, response, result): response.status_int = 201 ++++++ glance-run-testsuite-as-root.patch ++++++ commit f993e8d146184496a060aced971e45e9391e8ed1 Author: Sascha Peilicke <sasc...@suse.de> Date: Mon Dec 10 19:46:12 2012 +0100 Allow running testsuite as root user. Some tests don't make sense when running as root. Change-Id: Ic7ee60a1bfda121277e9746728931af8b5d6d481 diff --git a/glance/tests/functional/test_bin_glance_control.py b/glance/tests/functional/test_bin_glance_control.py index e86f241..32438a4 100644 --- a/glance/tests/functional/test_bin_glance_control.py +++ b/glance/tests/functional/test_bin_glance_control.py @@ -25,7 +25,7 @@ import tempfile import time from glance.tests import functional -from glance.tests.utils import skip_if_disabled +from glance.tests.utils import skip_if, skip_if_disabled class TestGlanceControl(functional.FunctionalTest): @@ -83,6 +83,7 @@ class TestGlanceControl(functional.FunctionalTest): self.stop_server(self.api_server, 'API server') @skip_if_disabled + @skip_if(os.getuid() is 0, "User root can always create directories") def test_fallback_pidfile_uncreateable_dir(self): """ We test that glance-control falls back to a temporary pid file @@ -94,6 +95,7 @@ class TestGlanceControl(functional.FunctionalTest): self._do_test_fallback_pidfile(pid_file) @skip_if_disabled + @skip_if(os.getuid() is 0, "User root can always write inside directories") def test_fallback_pidfile_unwriteable_dir(self): """ We test that glance-control falls back to a temporary pid file ++++++ glance-test_bin_glance-fail-on-slow-machines.patch ++++++ commit be7641e785636f5d31a1a1733781530d26b50979 Author: Sascha Peilicke <sasc...@suse.de> Date: Tue Jan 8 13:47:31 2013 +0100 Wait a bit in TestBinGlance.test_update_copying_from Test randomly fails because on slow machines, the updated image is still in 'State: saving'. Change-Id: I908069b35079dcc8ccd25acb3ebc74fe43f9d524 diff --git a/glance/tests/functional/test_bin_glance.py b/glance/tests/functional/test_bin_glance.py index 0eb8538..59b90fc 100644 --- a/glance/tests/functional/test_bin_glance.py +++ b/glance/tests/functional/test_bin_glance.py @@ -291,6 +291,10 @@ class TestBinGlance(functional.FunctionalTest): # 3. Verify image is now active and of the correct size cmd = "bin/glance --port=%d show %s" % (api_port, image_id) + # Yeah. This totally isn't a race condition. Randomly fails + # with 'Status: saving' if we didn't wait long enough + time.sleep(1.0) + exitcode, out, err = execute(cmd) self.assertEqual(0, exitcode) ++++++ glance-webob-1_2b1-compat.patch ++++++ commit d361dfe449111a8ee991112e4289f5b7eba41340 Author: Sascha Peilicke <sasc...@suse.de> Date: Mon Dec 10 19:20:26 2012 +0100 wsgi.Middleware forward-compatibility with webob 1.2b1 or later Response.request is None by default (http://docs.webob.org/en/latest/news.html#b1), but is used in the CacheFilter WSGI middleware. Change-Id: I28f5ca92fe517f4f56af934799db32650e079ba7 diff --git a/glance/common/wsgi.py b/glance/common/wsgi.py index 90f4b1a..d324861 100644 --- a/glance/common/wsgi.py +++ b/glance/common/wsgi.py @@ -324,6 +324,7 @@ class Middleware(object): if response: return response response = req.get_response(self.application) + response.request = req return self.process_response(response) ++++++ glance-webob-requestbodyfileget.patch ++++++ commit c42304f912b2ac97cd78f653bfb66583c2e95a22 Author: Sascha Peilicke <sasc...@suse.de> Date: Wed Dec 12 14:01:49 2012 +0100 Use io.BufferedIOBase.read() instead of io.BytesIO.getvalue(). (Newer) WebOb returns different different objects in Request._body_file__get, i.e. a io.BytesIO if either the HTTP method is PUT or POST or a Content-Length header is set. Otherwise it returns a io.BufferedReader. https://github.com/Pylons/webob/blob/master/webob/request.py#L264 vs https://github.com/Pylons/webob/blob/master/webob/request.py#L278 Unfortunately, both Objects have different sets of methods, i.e. only io.Bytes has getvalue(). However, both objects inherit from io.BufferedIOBase, thus read() is available on both. Change-Id: I4a99fef0e6acbf67d9e86ff884f48f5a1cb1bc78 diff --git a/glance/tests/unit/v2/test_image_data_resource.py b/glance/tests/unit/v2/test_image_data_resource.py index bbd1073..ea66987 100644 --- a/glance/tests/unit/v2/test_image_data_resource.py +++ b/glance/tests/unit/v2/test_image_data_resource.py @@ -134,7 +134,7 @@ class TestImageDataDeserializer(test_utils.BaseTestCase): request.headers['Content-Length'] = 3 output = self.deserializer.upload(request) data = output.pop('data') - self.assertEqual(data.getvalue(), 'YYY') + self.assertEqual(data.read(), 'YYY') expected = {'size': 3} self.assertEqual(expected, output) @@ -146,7 +146,7 @@ class TestImageDataDeserializer(test_utils.BaseTestCase): request.body_file = StringIO.StringIO('YYY') output = self.deserializer.upload(request) data = output.pop('data') - self.assertEqual(data.getvalue(), 'YYY') + self.assertEqual(data.read(), 'YYY') expected = {'size': None} self.assertEqual(expected, output) @@ -159,7 +159,7 @@ class TestImageDataDeserializer(test_utils.BaseTestCase): request.headers['Content-Length'] = 3 output = self.deserializer.upload(request) data = output.pop('data') - self.assertEqual(data.getvalue(), 'YYY') + self.assertEqual(data.read(), 'YYY') expected = {'size': 3} self.assertEqual(expected, output) @@ -173,7 +173,7 @@ class TestImageDataDeserializer(test_utils.BaseTestCase): request.headers['Content-Length'] = 4 output = self.deserializer.upload(request) data = output.pop('data') - self.assertEqual(data.getvalue(), 'YYY') + self.assertEqual(data.read(), 'YYY') expected = {'size': 4} self.assertEqual(expected, output) ++++++ glance-webob12b1-putrequest.patch ++++++ Binary files a/glance/tests/functional/.test_bin_glance.py.swp and b/glance/tests/functional/.test_bin_glance.py.swp differ diff -ruN a/glance/tests/unit/test_clients.py b/glance/tests/unit/test_clients.py --- a/glance/tests/unit/test_clients.py 2012-12-13 23:12:32.000000000 +0100 +++ b/glance/tests/unit/test_clients.py 2013-01-08 12:44:58.000000000 +0100 @@ -1852,10 +1852,10 @@ self.assertEquals(image_data_fixture, new_image_data) - @test_utils.skip_if(not base_client.SENDFILE_SUPPORTED, - 'sendfile not supported') - def test_add_image_with_image_data_as_file_with_sendfile(self): - self.add_image_with_image_data_as_file(sendfile=True) + #@test_utils.skip_if(not base_client.SENDFILE_SUPPORTED, + # 'sendfile not supported') + #def test_add_image_with_image_data_as_file_with_sendfile(self): + # self.add_image_with_image_data_as_file(sendfile=True) def test_add_image_with_image_data_as_file_without_sendfile(self): self.add_image_with_image_data_as_file(sendfile=False) ++++++ openstack-glance.logrotate ++++++ /var/log/glance/*.log { daily missingok su openstack-glance openstack-glance } -- To unsubscribe, e-mail: opensuse-commit+unsubscr...@opensuse.org For additional commands, e-mail: opensuse-commit+h...@opensuse.org