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

Reply via email to