Build failed in Jenkins: periodic-glance-python27-stable-folsom #35
See <https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/35/> ------------------------------------------ [...truncated 1275 lines...] File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/registry/client.py",> line 89, in do_request action, **kwargs) File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/common/client.py",> line 63, in wrapped return func(self, *args, **kwargs) File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/common/client.py",> line 444, in do_request headers=headers) File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/common/client.py",> line 80, in wrapped return func(self, method, url, body, headers) File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/common/client.py",> line 574, in _do_request raise exception.Invalid(res.read()) Invalid: 400 Bad Request The server could not comply with the request since it is either malformed or otherwise incorrect. Unrecognized changes-since value routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x4a35b90>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x4a35b90>} glance.api.policy: DEBUG: Loaded policy rules: {u'default': []} glance.common.client: DEBUG: Constructed URL: http://0.0.0.0:9191/images/detail?changes-since=2011-09-05 routes.middleware: DEBUG: Initialized with method overriding = True, and path info altering = True routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x52ef610>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x52ef610>} iso8601.iso8601: DEBUG: Parsed 2011-09-05 into {'tz_sign': None, 'second_fraction': None, 'hour': None, 'tz_hour': None, 'month': u'09', 'timezone': None, 'second': None, 'tz_minute': None, 'year': u'2011', 'separator': None, 'day': u'05', 'minute': None} with default timezone <iso8601.iso8601.Utc object at 0x23c3d50> iso8601.iso8601: DEBUG: Got u'2011' for 'year' with default None iso8601.iso8601: DEBUG: Got u'09' for 'month' with default None iso8601.iso8601: DEBUG: Got u'05' for 'day' with default None iso8601.iso8601: DEBUG: Got None for 'hour' with default None iso8601.iso8601: DEBUG: Got None for 'minute' with default None iso8601.iso8601: DEBUG: Got None for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list glance.registry.client: DEBUG: Registry request GET /images/detail HTTP 200 request id req-dd41839b-60e5-409e-8aae-0468ac8adf58 --------------------- >> end captured logging << --------------------- ====================================================================== FAIL: Tests that the /images/detail registry API returns list of ---------------------------------------------------------------------- Traceback (most recent call last): File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/tests/unit/v1/test_api.py",> line 1409, in test_get_details_filter_changes_since self.assertEquals(res.status_int, 400) AssertionError: 200 != 400 '200 != 400' = '%s != %s' % (safe_repr(200), safe_repr(400)) '200 != 400' = self._formatMessage('200 != 400', '200 != 400')
raise self.failureException('200 != 400')
-------------------- >> begin captured logging << -------------------- glance.store: DEBUG: Attempting to import store glance.store.filesystem.Store glance.store: DEBUG: Registering store <class 'glance.store.filesystem.Store'> with schemes ('file', 'filesystem') glance.store.base: DEBUG: Late loading location class glance.store.filesystem.StoreLocation glance.store.location: DEBUG: Registering scheme file with {'store_class': <class 'glance.store.filesystem.Store'>, 'location_class': <class 'glance.store.filesystem.StoreLocation'>} glance.store.location: DEBUG: Registering scheme filesystem with {'store_class': <class 'glance.store.filesystem.Store'>, 'location_class': <class 'glance.store.filesystem.StoreLocation'>} glance.store: DEBUG: Attempting to import store glance.store.http.Store glance.store: DEBUG: Registering store <class 'glance.store.http.Store'> with schemes ('http', 'https') glance.store.base: DEBUG: Late loading location class glance.store.http.StoreLocation glance.store.location: DEBUG: Registering scheme http with {'store_class': <class 'glance.store.http.Store'>, 'location_class': <class 'glance.store.http.StoreLocation'>} glance.store.location: DEBUG: Registering scheme https with {'store_class': <class 'glance.store.http.Store'>, 'location_class': <class 'glance.store.http.StoreLocation'>} glance.store: DEBUG: Attempting to import store glance.store.rbd.Store glance.store: DEBUG: Registering store <class 'glance.store.rbd.Store'> with schemes ('rbd',) glance.store.base: DEBUG: Late loading location class glance.store.rbd.StoreLocation glance.store.location: DEBUG: Registering scheme rbd with {'store_class': <class 'glance.store.rbd.Store'>, 'location_class': <class 'glance.store.rbd.StoreLocation'>} glance.store: DEBUG: Attempting to import store glance.store.s3.Store glance.store.s3: ERROR: Could not find s3_store_host in configuration options. glance.store.base: ERROR: Failed to configure store correctly. Disabling add method. glance.store: DEBUG: Registering store <class 'glance.store.s3.Store'> with schemes ('s3', 's3+http', 's3+https') glance.store.base: DEBUG: Late loading location class glance.store.s3.StoreLocation glance.store.location: DEBUG: Registering scheme s3 with {'store_class': <class 'glance.store.s3.Store'>, 'location_class': <class 'glance.store.s3.StoreLocation'>} glance.store.location: DEBUG: Registering scheme s3+http with {'store_class': <class 'glance.store.s3.Store'>, 'location_class': <class 'glance.store.s3.StoreLocation'>} glance.store.location: DEBUG: Registering scheme s3+https with {'store_class': <class 'glance.store.s3.Store'>, 'location_class': <class 'glance.store.s3.StoreLocation'>} glance.store: DEBUG: Attempting to import store glance.store.swift.Store glance.store.swift: ERROR: Could not find swift_store_auth_address in configuration options. glance.store.base: ERROR: Failed to configure store correctly. Disabling add method. glance.store: DEBUG: Registering store <class 'glance.store.swift.Store'> with schemes ('swift+https', 'swift', 'swift+http') glance.store.base: DEBUG: Late loading location class glance.store.swift.StoreLocation glance.store.location: DEBUG: Registering scheme swift+https with {'store_class': <class 'glance.store.swift.Store'>, 'location_class': <class 'glance.store.swift.StoreLocation'>} glance.store.location: DEBUG: Registering scheme swift+http with {'store_class': <class 'glance.store.swift.Store'>, 'location_class': <class 'glance.store.swift.StoreLocation'>} glance.store.location: DEBUG: Registering scheme swift with {'store_class': <class 'glance.store.swift.Store'>, 'location_class': <class 'glance.store.swift.StoreLocation'>} routes.middleware: DEBUG: Initialized with method overriding = True, and path info altering = True routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x62ce590>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x62ce590>} glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x62ce590>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x62ce590>} iso8601.iso8601: DEBUG: Parsed 2013-10-20T06:11:11Z into {'tz_sign': None, 'second_fraction': None, 'hour': u'06', 'tz_hour': None, 'month': u'10', 'timezone': u'Z', 'second': u'11', 'tz_minute': None, 'year': u'2013', 'separator': u'T', 'day': u'20', 'minute': u'11'} with default timezone <iso8601.iso8601.Utc object at 0x23c3d50> iso8601.iso8601: DEBUG: Got u'2013' for 'year' with default None iso8601.iso8601: DEBUG: Got u'10' for 'month' with default None iso8601.iso8601: DEBUG: Got u'20' for 'day' with default None iso8601.iso8601: DEBUG: Got u'06' for 'hour' with default None iso8601.iso8601: DEBUG: Got u'11' for 'minute' with default None iso8601.iso8601: DEBUG: Got u'11' for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x62ce590>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x62ce590>} iso8601.iso8601: DEBUG: Parsed 2013-10-22T06:11:11Z into {'tz_sign': None, 'second_fraction': None, 'hour': u'06', 'tz_hour': None, 'month': u'10', 'timezone': u'Z', 'second': u'11', 'tz_minute': None, 'year': u'2013', 'separator': u'T', 'day': u'22', 'minute': u'11'} with default timezone <iso8601.iso8601.Utc object at 0x23c3d50> iso8601.iso8601: DEBUG: Got u'2013' for 'year' with default None iso8601.iso8601: DEBUG: Got u'10' for 'month' with default None iso8601.iso8601: DEBUG: Got u'22' for 'day' with default None iso8601.iso8601: DEBUG: Got u'06' for 'hour' with default None iso8601.iso8601: DEBUG: Got u'11' for 'minute' with default None iso8601.iso8601: DEBUG: Got u'11' for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x62ce590>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x62ce590>} iso8601.iso8601: DEBUG: Parsed 2013-10-23T06:11:11+01:00 into {'tz_sign': u'+', 'second_fraction': None, 'hour': u'06', 'tz_hour': u'01', 'month': u'10', 'timezone': u'+01:00', 'second': u'11', 'tz_minute': u'00', 'year': u'2013', 'separator': u'T', 'day': u'23', 'minute': u'11'} with default timezone <iso8601.iso8601.Utc object at 0x23c3d50> iso8601.iso8601: DEBUG: Got u'01' for 'tz_hour' with default None iso8601.iso8601: DEBUG: Got u'00' for 'tz_minute' with default None iso8601.iso8601: DEBUG: Got u'2013' for 'year' with default None iso8601.iso8601: DEBUG: Got u'10' for 'month' with default None iso8601.iso8601: DEBUG: Got u'23' for 'day' with default None iso8601.iso8601: DEBUG: Got u'06' for 'hour' with default None iso8601.iso8601: DEBUG: Got u'11' for 'minute' with default None iso8601.iso8601: DEBUG: Got u'11' for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x62ce590>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x62ce590>} iso8601.iso8601: DEBUG: Parsed 2013-10-23T06:11:11-01:00 into {'tz_sign': u'-', 'second_fraction': None, 'hour': u'06', 'tz_hour': u'01', 'month': u'10', 'timezone': u'-01:00', 'second': u'11', 'tz_minute': u'00', 'year': u'2013', 'separator': u'T', 'day': u'23', 'minute': u'11'} with default timezone <iso8601.iso8601.Utc object at 0x23c3d50> iso8601.iso8601: DEBUG: Got u'01' for 'tz_hour' with default None iso8601.iso8601: DEBUG: Got u'00' for 'tz_minute' with default None iso8601.iso8601: DEBUG: Got u'2013' for 'year' with default None iso8601.iso8601: DEBUG: Got u'10' for 'month' with default None iso8601.iso8601: DEBUG: Got u'23' for 'day' with default None iso8601.iso8601: DEBUG: Got u'06' for 'hour' with default None iso8601.iso8601: DEBUG: Got u'11' for 'minute' with default None iso8601.iso8601: DEBUG: Got u'11' for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x62ce590>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x62ce590>} iso8601.iso8601: DEBUG: Parsed 2013-10-24T06:11:11Z into {'tz_sign': None, 'second_fraction': None, 'hour': u'06', 'tz_hour': None, 'month': u'10', 'timezone': u'Z', 'second': u'11', 'tz_minute': None, 'year': u'2013', 'separator': u'T', 'day': u'24', 'minute': u'11'} with default timezone <iso8601.iso8601.Utc object at 0x23c3d50> iso8601.iso8601: DEBUG: Got u'2013' for 'year' with default None iso8601.iso8601: DEBUG: Got u'10' for 'month' with default None iso8601.iso8601: DEBUG: Got u'24' for 'day' with default None iso8601.iso8601: DEBUG: Got u'06' for 'hour' with default None iso8601.iso8601: DEBUG: Got u'11' for 'minute' with default None iso8601.iso8601: DEBUG: Got u'11' for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x62ce590>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x62ce590>} routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x62ce590>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x62ce590>} iso8601.iso8601: DEBUG: Parsed 2011-09-05 into {'tz_sign': None, 'second_fraction': None, 'hour': None, 'tz_hour': None, 'month': u'09', 'timezone': None, 'second': None, 'tz_minute': None, 'year': u'2011', 'separator': None, 'day': u'05', 'minute': None} with default timezone <iso8601.iso8601.Utc object at 0x23c3d50> iso8601.iso8601: DEBUG: Got u'2011' for 'year' with default None iso8601.iso8601: DEBUG: Got u'09' for 'month' with default None iso8601.iso8601: DEBUG: Got u'05' for 'day' with default None iso8601.iso8601: DEBUG: Got None for 'hour' with default None iso8601.iso8601: DEBUG: Got None for 'minute' with default None iso8601.iso8601: DEBUG: Got None for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list --------------------- >> end captured logging << --------------------- ---------------------------------------------------------------------- XML: nosetests.xml Slowest 5 tests took 69.08 secs: [31m 14.99 TestGlanceControl.test_bouncing[0m [31m 14.22 TestScrubber.test_delayed_delete[0m [31m 13.78 TestGlanceControl.test_reload[0m [31m 13.58 TestGlanceControl.test_respawn[0m [31m 12.52 TestApi.test_unsupported_default_store[0m ---------------------------------------------------------------------- Ran 932 tests in 533.603s FAILED (SKIP=89, failures=2) ERROR: InvocationError: '<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/.tox/py27/bin/nosetests'> ___________________________________ summary ____________________________________ ERROR: py27: commands failed + result=1 + echo 'Begin pip freeze output from test virtualenv:' Begin pip freeze output from test virtualenv: + echo ====================================================================== ====================================================================== + .tox/py27/bin/pip freeze Babel==1.3 Jinja2==2.7.1 MarkupSafe==0.18 Paste==1.7.5.1 PasteDeploy==1.5.0 Pygments==1.6 Routes==1.13 SQLAlchemy==0.7.9 Sphinx==1.2b1 Tempita==0.5.1 WebOb==1.0.8 amqp==1.3.0 anyjson==0.3.3 argparse==1.2.1 boto==2.1.1 cffi==0.7.2 colorama==0.2.7 coverage==3.7 decorator==3.4.0 distribute==0.7.3 docutils==0.10 eventlet==0.14.0 glance==jenkins-periodic-glance-python27-stable-folsom-35 greenlet==0.4.1 httplib2==0.8 iso8601==0.1.7 jsonschema==2.2.0 kombu==3.0.0 lxml==3.2.3 mox==0.5.3 nose==1.3.0 nose-exclude==0.1.10 nosehtmloutput==0.0.5 openstack.nose-plugin==0.11 passlib==1.6.1 pep8==1.1 pycparser==2.10 pycrypto==2.6.1 pysendfile==2.0.0 python-swiftclient==1.8.0 pytz==2013.7 repoze.lru==0.6 requests==2.0.0 simplejson==3.3.1 sqlalchemy-migrate==0.7.2 termcolor==1.1.0 wsgiref==0.1.2 xattr==0.7.2 + echo ====================================================================== ====================================================================== + '[' -d .testrepository ']' + sudo /usr/local/jenkins/slave_scripts/jenkins-sudo-grep.sh post + sudoresult=0 + '[' 0 -ne 0 ']' + /usr/local/jenkins/slave_scripts/jenkins-oom-grep.sh post + oomresult=0 + '[' 0 -ne 0 ']' ++ find . -name nose_results.html + htmlreport=./nose_results.html + '[' -f ./nose_results.html ']' ++ grep -c 'tr class=.passClass' ./nose_results.html + passcount=95 + '[' 95 -eq 0 ']' + exit 1 + rm -rf /tmp/tmp.V4baQa85TX Build step 'Execute shell' marked build as failure [SCP] Connecting to static.openstack.org [SCP] uploading file: '/srv/static/logs/periodic/periodic-glance-python27-stable-folsom/35/nose_results.html' [SCP] Connecting to static.openstack.org [SCP] Trying to create /srv/static/logs/periodic/periodic-glance-python27-stable-folsom/precise3/35 [SCP] Copying console log.
See <https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/36/> ------------------------------------------ [...truncated 1275 lines...] File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/registry/client.py",> line 89, in do_request action, **kwargs) File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/common/client.py",> line 63, in wrapped return func(self, *args, **kwargs) File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/common/client.py",> line 444, in do_request headers=headers) File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/common/client.py",> line 80, in wrapped return func(self, method, url, body, headers) File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/common/client.py",> line 574, in _do_request raise exception.Invalid(res.read()) Invalid: 400 Bad Request The server could not comply with the request since it is either malformed or otherwise incorrect. Unrecognized changes-since value routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x536ee90>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x536ee90>} glance.api.policy: DEBUG: Loaded policy rules: {u'default': []} glance.common.client: DEBUG: Constructed URL: http://0.0.0.0:9191/images/detail?changes-since=2011-09-05 routes.middleware: DEBUG: Initialized with method overriding = True, and path info altering = True routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x533c250>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x533c250>} iso8601.iso8601: DEBUG: Parsed 2011-09-05 into {'tz_sign': None, 'second_fraction': None, 'hour': None, 'tz_hour': None, 'month': u'09', 'timezone': None, 'second': None, 'tz_minute': None, 'year': u'2011', 'separator': None, 'day': u'05', 'minute': None} with default timezone <iso8601.iso8601.Utc object at 0x22e2d50> iso8601.iso8601: DEBUG: Got u'2011' for 'year' with default None iso8601.iso8601: DEBUG: Got u'09' for 'month' with default None iso8601.iso8601: DEBUG: Got u'05' for 'day' with default None iso8601.iso8601: DEBUG: Got None for 'hour' with default None iso8601.iso8601: DEBUG: Got None for 'minute' with default None iso8601.iso8601: DEBUG: Got None for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list glance.registry.client: DEBUG: Registry request GET /images/detail HTTP 200 request id req-8d6e4dc7-8cb0-4949-94ea-3c91ccd10036 --------------------- >> end captured logging << --------------------- ====================================================================== FAIL: Tests that the /images/detail registry API returns list of ---------------------------------------------------------------------- Traceback (most recent call last): File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/tests/unit/v1/test_api.py",> line 1409, in test_get_details_filter_changes_since self.assertEquals(res.status_int, 400) AssertionError: 200 != 400 '200 != 400' = '%s != %s' % (safe_repr(200), safe_repr(400)) '200 != 400' = self._formatMessage('200 != 400', '200 != 400')
raise self.failureException('200 != 400')
-------------------- >> begin captured logging << -------------------- glance.store: DEBUG: Attempting to import store glance.store.filesystem.Store glance.store: DEBUG: Registering store <class 'glance.store.filesystem.Store'> with schemes ('file', 'filesystem') glance.store.base: DEBUG: Late loading location class glance.store.filesystem.StoreLocation glance.store.location: DEBUG: Registering scheme file with {'store_class': <class 'glance.store.filesystem.Store'>, 'location_class': <class 'glance.store.filesystem.StoreLocation'>} glance.store.location: DEBUG: Registering scheme filesystem with {'store_class': <class 'glance.store.filesystem.Store'>, 'location_class': <class 'glance.store.filesystem.StoreLocation'>} glance.store: DEBUG: Attempting to import store glance.store.http.Store glance.store: DEBUG: Registering store <class 'glance.store.http.Store'> with schemes ('http', 'https') glance.store.base: DEBUG: Late loading location class glance.store.http.StoreLocation glance.store.location: DEBUG: Registering scheme http with {'store_class': <class 'glance.store.http.Store'>, 'location_class': <class 'glance.store.http.StoreLocation'>} glance.store.location: DEBUG: Registering scheme https with {'store_class': <class 'glance.store.http.Store'>, 'location_class': <class 'glance.store.http.StoreLocation'>} glance.store: DEBUG: Attempting to import store glance.store.rbd.Store glance.store: DEBUG: Registering store <class 'glance.store.rbd.Store'> with schemes ('rbd',) glance.store.base: DEBUG: Late loading location class glance.store.rbd.StoreLocation glance.store.location: DEBUG: Registering scheme rbd with {'store_class': <class 'glance.store.rbd.Store'>, 'location_class': <class 'glance.store.rbd.StoreLocation'>} glance.store: DEBUG: Attempting to import store glance.store.s3.Store glance.store.s3: ERROR: Could not find s3_store_host in configuration options. glance.store.base: ERROR: Failed to configure store correctly. Disabling add method. glance.store: DEBUG: Registering store <class 'glance.store.s3.Store'> with schemes ('s3', 's3+http', 's3+https') glance.store.base: DEBUG: Late loading location class glance.store.s3.StoreLocation glance.store.location: DEBUG: Registering scheme s3 with {'store_class': <class 'glance.store.s3.Store'>, 'location_class': <class 'glance.store.s3.StoreLocation'>} glance.store.location: DEBUG: Registering scheme s3+http with {'store_class': <class 'glance.store.s3.Store'>, 'location_class': <class 'glance.store.s3.StoreLocation'>} glance.store.location: DEBUG: Registering scheme s3+https with {'store_class': <class 'glance.store.s3.Store'>, 'location_class': <class 'glance.store.s3.StoreLocation'>} glance.store: DEBUG: Attempting to import store glance.store.swift.Store glance.store.swift: ERROR: Could not find swift_store_auth_address in configuration options. glance.store.base: ERROR: Failed to configure store correctly. Disabling add method. glance.store: DEBUG: Registering store <class 'glance.store.swift.Store'> with schemes ('swift+https', 'swift', 'swift+http') glance.store.base: DEBUG: Late loading location class glance.store.swift.StoreLocation glance.store.location: DEBUG: Registering scheme swift+https with {'store_class': <class 'glance.store.swift.Store'>, 'location_class': <class 'glance.store.swift.StoreLocation'>} glance.store.location: DEBUG: Registering scheme swift+http with {'store_class': <class 'glance.store.swift.Store'>, 'location_class': <class 'glance.store.swift.StoreLocation'>} glance.store.location: DEBUG: Registering scheme swift with {'store_class': <class 'glance.store.swift.Store'>, 'location_class': <class 'glance.store.swift.StoreLocation'>} routes.middleware: DEBUG: Initialized with method overriding = True, and path info altering = True routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x60a9110>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x60a9110>} glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x60a9110>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x60a9110>} iso8601.iso8601: DEBUG: Parsed 2013-10-21T06:10:58Z into {'tz_sign': None, 'second_fraction': None, 'hour': u'06', 'tz_hour': None, 'month': u'10', 'timezone': u'Z', 'second': u'58', 'tz_minute': None, 'year': u'2013', 'separator': u'T', 'day': u'21', 'minute': u'10'} with default timezone <iso8601.iso8601.Utc object at 0x22e2d50> iso8601.iso8601: DEBUG: Got u'2013' for 'year' with default None iso8601.iso8601: DEBUG: Got u'10' for 'month' with default None iso8601.iso8601: DEBUG: Got u'21' for 'day' with default None iso8601.iso8601: DEBUG: Got u'06' for 'hour' with default None iso8601.iso8601: DEBUG: Got u'10' for 'minute' with default None iso8601.iso8601: DEBUG: Got u'58' for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x60a9110>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x60a9110>} iso8601.iso8601: DEBUG: Parsed 2013-10-23T06:10:58Z into {'tz_sign': None, 'second_fraction': None, 'hour': u'06', 'tz_hour': None, 'month': u'10', 'timezone': u'Z', 'second': u'58', 'tz_minute': None, 'year': u'2013', 'separator': u'T', 'day': u'23', 'minute': u'10'} with default timezone <iso8601.iso8601.Utc object at 0x22e2d50> iso8601.iso8601: DEBUG: Got u'2013' for 'year' with default None iso8601.iso8601: DEBUG: Got u'10' for 'month' with default None iso8601.iso8601: DEBUG: Got u'23' for 'day' with default None iso8601.iso8601: DEBUG: Got u'06' for 'hour' with default None iso8601.iso8601: DEBUG: Got u'10' for 'minute' with default None iso8601.iso8601: DEBUG: Got u'58' for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x60a9110>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x60a9110>} iso8601.iso8601: DEBUG: Parsed 2013-10-24T06:10:58+01:00 into {'tz_sign': u'+', 'second_fraction': None, 'hour': u'06', 'tz_hour': u'01', 'month': u'10', 'timezone': u'+01:00', 'second': u'58', 'tz_minute': u'00', 'year': u'2013', 'separator': u'T', 'day': u'24', 'minute': u'10'} with default timezone <iso8601.iso8601.Utc object at 0x22e2d50> iso8601.iso8601: DEBUG: Got u'01' for 'tz_hour' with default None iso8601.iso8601: DEBUG: Got u'00' for 'tz_minute' with default None iso8601.iso8601: DEBUG: Got u'2013' for 'year' with default None iso8601.iso8601: DEBUG: Got u'10' for 'month' with default None iso8601.iso8601: DEBUG: Got u'24' for 'day' with default None iso8601.iso8601: DEBUG: Got u'06' for 'hour' with default None iso8601.iso8601: DEBUG: Got u'10' for 'minute' with default None iso8601.iso8601: DEBUG: Got u'58' for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x60a9110>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x60a9110>} iso8601.iso8601: DEBUG: Parsed 2013-10-24T06:10:58-01:00 into {'tz_sign': u'-', 'second_fraction': None, 'hour': u'06', 'tz_hour': u'01', 'month': u'10', 'timezone': u'-01:00', 'second': u'58', 'tz_minute': u'00', 'year': u'2013', 'separator': u'T', 'day': u'24', 'minute': u'10'} with default timezone <iso8601.iso8601.Utc object at 0x22e2d50> iso8601.iso8601: DEBUG: Got u'01' for 'tz_hour' with default None iso8601.iso8601: DEBUG: Got u'00' for 'tz_minute' with default None iso8601.iso8601: DEBUG: Got u'2013' for 'year' with default None iso8601.iso8601: DEBUG: Got u'10' for 'month' with default None iso8601.iso8601: DEBUG: Got u'24' for 'day' with default None iso8601.iso8601: DEBUG: Got u'06' for 'hour' with default None iso8601.iso8601: DEBUG: Got u'10' for 'minute' with default None iso8601.iso8601: DEBUG: Got u'58' for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x60a9110>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x60a9110>} iso8601.iso8601: DEBUG: Parsed 2013-10-25T06:10:58Z into {'tz_sign': None, 'second_fraction': None, 'hour': u'06', 'tz_hour': None, 'month': u'10', 'timezone': u'Z', 'second': u'58', 'tz_minute': None, 'year': u'2013', 'separator': u'T', 'day': u'25', 'minute': u'10'} with default timezone <iso8601.iso8601.Utc object at 0x22e2d50> iso8601.iso8601: DEBUG: Got u'2013' for 'year' with default None iso8601.iso8601: DEBUG: Got u'10' for 'month' with default None iso8601.iso8601: DEBUG: Got u'25' for 'day' with default None iso8601.iso8601: DEBUG: Got u'06' for 'hour' with default None iso8601.iso8601: DEBUG: Got u'10' for 'minute' with default None iso8601.iso8601: DEBUG: Got u'58' for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x60a9110>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x60a9110>} routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x60a9110>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x60a9110>} iso8601.iso8601: DEBUG: Parsed 2011-09-05 into {'tz_sign': None, 'second_fraction': None, 'hour': None, 'tz_hour': None, 'month': u'09', 'timezone': None, 'second': None, 'tz_minute': None, 'year': u'2011', 'separator': None, 'day': u'05', 'minute': None} with default timezone <iso8601.iso8601.Utc object at 0x22e2d50> iso8601.iso8601: DEBUG: Got u'2011' for 'year' with default None iso8601.iso8601: DEBUG: Got u'09' for 'month' with default None iso8601.iso8601: DEBUG: Got u'05' for 'day' with default None iso8601.iso8601: DEBUG: Got None for 'hour' with default None iso8601.iso8601: DEBUG: Got None for 'minute' with default None iso8601.iso8601: DEBUG: Got None for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list --------------------- >> end captured logging << --------------------- ---------------------------------------------------------------------- XML: nosetests.xml Slowest 5 tests took 68.47 secs: [31m 14.26 TestGlanceControl.test_bouncing[0m [31m 14.19 TestScrubber.test_delayed_delete[0m [31m 13.82 TestGlanceControl.test_reload[0m [31m 13.57 TestGlanceControl.test_respawn[0m [31m 12.62 TestApi.test_unsupported_default_store[0m ---------------------------------------------------------------------- Ran 932 tests in 533.781s FAILED (SKIP=89, failures=2) ERROR: InvocationError: '<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/.tox/py27/bin/nosetests'> ___________________________________ summary ____________________________________ ERROR: py27: commands failed + result=1 + echo 'Begin pip freeze output from test virtualenv:' Begin pip freeze output from test virtualenv: + echo ====================================================================== ====================================================================== + .tox/py27/bin/pip freeze Babel==1.3 Jinja2==2.7.1 MarkupSafe==0.18 Paste==1.7.5.1 PasteDeploy==1.5.0 Pygments==1.6 Routes==1.13 SQLAlchemy==0.7.9 Sphinx==1.2b1 Tempita==0.5.1 WebOb==1.0.8 amqp==1.3.0 anyjson==0.3.3 argparse==1.2.1 boto==2.1.1 cffi==0.7.2 colorama==0.2.7 coverage==3.7 decorator==3.4.0 distribute==0.7.3 docutils==0.10 eventlet==0.14.0 glance==jenkins-periodic-glance-python27-stable-folsom-36 greenlet==0.4.1 httplib2==0.8 iso8601==0.1.7 jsonschema==2.2.0 kombu==3.0.0 lxml==3.2.3 mox==0.5.3 nose==1.3.0 nose-exclude==0.1.10 nosehtmloutput==0.0.5 openstack.nose-plugin==0.11 passlib==1.6.1 pep8==1.1 pycparser==2.10 pycrypto==2.6.1 pysendfile==2.0.0 python-swiftclient==1.8.0 pytz==2013.7 repoze.lru==0.6 requests==2.0.0 simplejson==3.3.1 sqlalchemy-migrate==0.7.2 termcolor==1.1.0 wsgiref==0.1.2 xattr==0.7.2 + echo ====================================================================== ====================================================================== + '[' -d .testrepository ']' + sudo /usr/local/jenkins/slave_scripts/jenkins-sudo-grep.sh post + sudoresult=0 + '[' 0 -ne 0 ']' + /usr/local/jenkins/slave_scripts/jenkins-oom-grep.sh post + oomresult=0 + '[' 0 -ne 0 ']' ++ find . -name nose_results.html + htmlreport=./nose_results.html + '[' -f ./nose_results.html ']' ++ grep -c 'tr class=.passClass' ./nose_results.html + passcount=95 + '[' 95 -eq 0 ']' + exit 1 + rm -rf /tmp/tmp.vZ0LxTT7xD Build step 'Execute shell' marked build as failure [SCP] Connecting to static.openstack.org [SCP] uploading file: '/srv/static/logs/periodic/periodic-glance-python27-stable-folsom/36/nose_results.html' [SCP] Connecting to static.openstack.org [SCP] Trying to create /srv/static/logs/periodic/periodic-glance-python27-stable-folsom/precise1/36 [SCP] Copying console log.
See <https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/37/> ------------------------------------------ [...truncated 1276 lines...] action, **kwargs) File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/common/client.py",> line 63, in wrapped return func(self, *args, **kwargs) File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/common/client.py",> line 444, in do_request headers=headers) File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/common/client.py",> line 80, in wrapped return func(self, method, url, body, headers) File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/common/client.py",> line 574, in _do_request raise exception.Invalid(res.read()) Invalid: 400 Bad Request The server could not comply with the request since it is either malformed or otherwise incorrect. Unrecognized changes-since value routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x4a89c10>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x4a89c10>} glance.api.policy: DEBUG: Loaded policy rules: {u'default': []} glance.common.client: DEBUG: Constructed URL: http://0.0.0.0:9191/images/detail?changes-since=2011-09-05 routes.middleware: DEBUG: Initialized with method overriding = True, and path info altering = True routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x5084b50>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x5084b50>} iso8601.iso8601: DEBUG: Parsed 2011-09-05 into {'tz_sign': None, 'second_fraction': None, 'hour': None, 'tz_hour': None, 'month': u'09', 'timezone': None, 'second': None, 'tz_minute': None, 'year': u'2011', 'separator': None, 'day': u'05', 'minute': None} with default timezone <iso8601.iso8601.Utc object at 0x284fd50> iso8601.iso8601: DEBUG: Got u'2011' for 'year' with default None iso8601.iso8601: DEBUG: Got u'09' for 'month' with default None iso8601.iso8601: DEBUG: Got u'05' for 'day' with default None iso8601.iso8601: DEBUG: Got None for 'hour' with default None iso8601.iso8601: DEBUG: Got None for 'minute' with default None iso8601.iso8601: DEBUG: Got None for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list glance.registry.client: DEBUG: Registry request GET /images/detail HTTP 200 request id req-cd041d60-f5da-442c-a63b-7cc2140944ff --------------------- >> end captured logging << --------------------- ====================================================================== FAIL: Tests that the /images/detail registry API returns list of ---------------------------------------------------------------------- Traceback (most recent call last): File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/tests/unit/v1/test_api.py",> line 1409, in test_get_details_filter_changes_since self.assertEquals(res.status_int, 400) AssertionError: 200 != 400 '200 != 400' = '%s != %s' % (safe_repr(200), safe_repr(400)) '200 != 400' = self._formatMessage('200 != 400', '200 != 400')
raise self.failureException('200 != 400')
-------------------- >> begin captured logging << -------------------- glance.store: DEBUG: Attempting to import store glance.store.filesystem.Store glance.store: DEBUG: Registering store <class 'glance.store.filesystem.Store'> with schemes ('file', 'filesystem') glance.store.base: DEBUG: Late loading location class glance.store.filesystem.StoreLocation glance.store.location: DEBUG: Registering scheme file with {'store_class': <class 'glance.store.filesystem.Store'>, 'location_class': <class 'glance.store.filesystem.StoreLocation'>} glance.store.location: DEBUG: Registering scheme filesystem with {'store_class': <class 'glance.store.filesystem.Store'>, 'location_class': <class 'glance.store.filesystem.StoreLocation'>} glance.store: DEBUG: Attempting to import store glance.store.http.Store glance.store: DEBUG: Registering store <class 'glance.store.http.Store'> with schemes ('http', 'https') glance.store.base: DEBUG: Late loading location class glance.store.http.StoreLocation glance.store.location: DEBUG: Registering scheme http with {'store_class': <class 'glance.store.http.Store'>, 'location_class': <class 'glance.store.http.StoreLocation'>} glance.store.location: DEBUG: Registering scheme https with {'store_class': <class 'glance.store.http.Store'>, 'location_class': <class 'glance.store.http.StoreLocation'>} glance.store: DEBUG: Attempting to import store glance.store.rbd.Store glance.store: DEBUG: Registering store <class 'glance.store.rbd.Store'> with schemes ('rbd',) glance.store.base: DEBUG: Late loading location class glance.store.rbd.StoreLocation glance.store.location: DEBUG: Registering scheme rbd with {'store_class': <class 'glance.store.rbd.Store'>, 'location_class': <class 'glance.store.rbd.StoreLocation'>} glance.store: DEBUG: Attempting to import store glance.store.s3.Store glance.store.s3: ERROR: Could not find s3_store_host in configuration options. glance.store.base: ERROR: Failed to configure store correctly. Disabling add method. glance.store: DEBUG: Registering store <class 'glance.store.s3.Store'> with schemes ('s3', 's3+http', 's3+https') glance.store.base: DEBUG: Late loading location class glance.store.s3.StoreLocation glance.store.location: DEBUG: Registering scheme s3 with {'store_class': <class 'glance.store.s3.Store'>, 'location_class': <class 'glance.store.s3.StoreLocation'>} glance.store.location: DEBUG: Registering scheme s3+http with {'store_class': <class 'glance.store.s3.Store'>, 'location_class': <class 'glance.store.s3.StoreLocation'>} glance.store.location: DEBUG: Registering scheme s3+https with {'store_class': <class 'glance.store.s3.Store'>, 'location_class': <class 'glance.store.s3.StoreLocation'>} glance.store: DEBUG: Attempting to import store glance.store.swift.Store glance.store.swift: ERROR: Could not find swift_store_auth_address in configuration options. glance.store.base: ERROR: Failed to configure store correctly. Disabling add method. glance.store: DEBUG: Registering store <class 'glance.store.swift.Store'> with schemes ('swift+https', 'swift', 'swift+http') glance.store.base: DEBUG: Late loading location class glance.store.swift.StoreLocation glance.store.location: DEBUG: Registering scheme swift+https with {'store_class': <class 'glance.store.swift.Store'>, 'location_class': <class 'glance.store.swift.StoreLocation'>} glance.store.location: DEBUG: Registering scheme swift+http with {'store_class': <class 'glance.store.swift.Store'>, 'location_class': <class 'glance.store.swift.StoreLocation'>} glance.store.location: DEBUG: Registering scheme swift with {'store_class': <class 'glance.store.swift.Store'>, 'location_class': <class 'glance.store.swift.StoreLocation'>} routes.middleware: DEBUG: Initialized with method overriding = True, and path info altering = True routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x64bd6d0>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x64bd6d0>} glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x64bd6d0>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x64bd6d0>} iso8601.iso8601: DEBUG: Parsed 2013-10-23T06:09:15Z into {'tz_sign': None, 'second_fraction': None, 'hour': u'06', 'tz_hour': None, 'month': u'10', 'timezone': u'Z', 'second': u'15', 'tz_minute': None, 'year': u'2013', 'separator': u'T', 'day': u'23', 'minute': u'09'} with default timezone <iso8601.iso8601.Utc object at 0x284fd50> iso8601.iso8601: DEBUG: Got u'2013' for 'year' with default None iso8601.iso8601: DEBUG: Got u'10' for 'month' with default None iso8601.iso8601: DEBUG: Got u'23' for 'day' with default None iso8601.iso8601: DEBUG: Got u'06' for 'hour' with default None iso8601.iso8601: DEBUG: Got u'09' for 'minute' with default None iso8601.iso8601: DEBUG: Got u'15' for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x64bd6d0>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x64bd6d0>} iso8601.iso8601: DEBUG: Parsed 2013-10-25T06:09:15Z into {'tz_sign': None, 'second_fraction': None, 'hour': u'06', 'tz_hour': None, 'month': u'10', 'timezone': u'Z', 'second': u'15', 'tz_minute': None, 'year': u'2013', 'separator': u'T', 'day': u'25', 'minute': u'09'} with default timezone <iso8601.iso8601.Utc object at 0x284fd50> iso8601.iso8601: DEBUG: Got u'2013' for 'year' with default None iso8601.iso8601: DEBUG: Got u'10' for 'month' with default None iso8601.iso8601: DEBUG: Got u'25' for 'day' with default None iso8601.iso8601: DEBUG: Got u'06' for 'hour' with default None iso8601.iso8601: DEBUG: Got u'09' for 'minute' with default None iso8601.iso8601: DEBUG: Got u'15' for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x64bd6d0>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x64bd6d0>} iso8601.iso8601: DEBUG: Parsed 2013-10-26T06:09:15+01:00 into {'tz_sign': u'+', 'second_fraction': None, 'hour': u'06', 'tz_hour': u'01', 'month': u'10', 'timezone': u'+01:00', 'second': u'15', 'tz_minute': u'00', 'year': u'2013', 'separator': u'T', 'day': u'26', 'minute': u'09'} with default timezone <iso8601.iso8601.Utc object at 0x284fd50> iso8601.iso8601: DEBUG: Got u'01' for 'tz_hour' with default None iso8601.iso8601: DEBUG: Got u'00' for 'tz_minute' with default None iso8601.iso8601: DEBUG: Got u'2013' for 'year' with default None iso8601.iso8601: DEBUG: Got u'10' for 'month' with default None iso8601.iso8601: DEBUG: Got u'26' for 'day' with default None iso8601.iso8601: DEBUG: Got u'06' for 'hour' with default None iso8601.iso8601: DEBUG: Got u'09' for 'minute' with default None iso8601.iso8601: DEBUG: Got u'15' for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x64bd6d0>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x64bd6d0>} iso8601.iso8601: DEBUG: Parsed 2013-10-26T06:09:15-01:00 into {'tz_sign': u'-', 'second_fraction': None, 'hour': u'06', 'tz_hour': u'01', 'month': u'10', 'timezone': u'-01:00', 'second': u'15', 'tz_minute': u'00', 'year': u'2013', 'separator': u'T', 'day': u'26', 'minute': u'09'} with default timezone <iso8601.iso8601.Utc object at 0x284fd50> iso8601.iso8601: DEBUG: Got u'01' for 'tz_hour' with default None iso8601.iso8601: DEBUG: Got u'00' for 'tz_minute' with default None iso8601.iso8601: DEBUG: Got u'2013' for 'year' with default None iso8601.iso8601: DEBUG: Got u'10' for 'month' with default None iso8601.iso8601: DEBUG: Got u'26' for 'day' with default None iso8601.iso8601: DEBUG: Got u'06' for 'hour' with default None iso8601.iso8601: DEBUG: Got u'09' for 'minute' with default None iso8601.iso8601: DEBUG: Got u'15' for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x64bd6d0>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x64bd6d0>} iso8601.iso8601: DEBUG: Parsed 2013-10-27T06:09:15Z into {'tz_sign': None, 'second_fraction': None, 'hour': u'06', 'tz_hour': None, 'month': u'10', 'timezone': u'Z', 'second': u'15', 'tz_minute': None, 'year': u'2013', 'separator': u'T', 'day': u'27', 'minute': u'09'} with default timezone <iso8601.iso8601.Utc object at 0x284fd50> iso8601.iso8601: DEBUG: Got u'2013' for 'year' with default None iso8601.iso8601: DEBUG: Got u'10' for 'month' with default None iso8601.iso8601: DEBUG: Got u'27' for 'day' with default None iso8601.iso8601: DEBUG: Got u'06' for 'hour' with default None iso8601.iso8601: DEBUG: Got u'09' for 'minute' with default None iso8601.iso8601: DEBUG: Got u'15' for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x64bd6d0>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x64bd6d0>} routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x64bd6d0>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x64bd6d0>} iso8601.iso8601: DEBUG: Parsed 2011-09-05 into {'tz_sign': None, 'second_fraction': None, 'hour': None, 'tz_hour': None, 'month': u'09', 'timezone': None, 'second': None, 'tz_minute': None, 'year': u'2011', 'separator': None, 'day': u'05', 'minute': None} with default timezone <iso8601.iso8601.Utc object at 0x284fd50> iso8601.iso8601: DEBUG: Got u'2011' for 'year' with default None iso8601.iso8601: DEBUG: Got u'09' for 'month' with default None iso8601.iso8601: DEBUG: Got u'05' for 'day' with default None iso8601.iso8601: DEBUG: Got None for 'hour' with default None iso8601.iso8601: DEBUG: Got None for 'minute' with default None iso8601.iso8601: DEBUG: Got None for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list --------------------- >> end captured logging << --------------------- ---------------------------------------------------------------------- XML: nosetests.xml Slowest 5 tests took 65.92 secs: [31m 13.72 TestGlanceControl.test_bouncing[0m [31m 13.63 TestScrubber.test_delayed_delete[0m [31m 13.24 TestGlanceControl.test_reload[0m [31m 13.17 TestGlanceControl.test_respawn[0m [31m 12.17 TestApi.test_unsupported_default_store[0m ---------------------------------------------------------------------- Ran 932 tests in 452.404s FAILED (SKIP=89, failures=2) ERROR: InvocationError: '<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/.tox/py27/bin/nosetests'> ___________________________________ summary ____________________________________ ERROR: py27: commands failed + result=1 + echo 'Begin pip freeze output from test virtualenv:' Begin pip freeze output from test virtualenv: + echo ====================================================================== ====================================================================== + .tox/py27/bin/pip freeze Babel==1.3 Jinja2==2.7.1 MarkupSafe==0.18 Paste==1.7.5.1 PasteDeploy==1.5.0 Pygments==1.6 Routes==1.13 SQLAlchemy==0.7.9 Sphinx==1.2b1 Tempita==0.5.1 WebOb==1.0.8 amqp==1.3.0 anyjson==0.3.3 argparse==1.2.1 boto==2.1.1 cffi==0.7.2 colorama==0.2.7 coverage==3.7 decorator==3.4.0 distribute==0.7.3 docutils==0.10 eventlet==0.14.0 glance==jenkins-periodic-glance-python27-stable-folsom-37 greenlet==0.4.1 httplib2==0.8 iso8601==0.1.8 jsonschema==2.2.0 kombu==3.0.0 lxml==3.2.3 mox==0.5.3 nose==1.3.0 nose-exclude==0.1.10 nosehtmloutput==0.0.5 openstack.nose-plugin==0.11 passlib==1.6.1 pep8==1.1 pycparser==2.10 pycrypto==2.6.1 pysendfile==2.0.0 python-swiftclient==1.8.0 pytz==2013.7 repoze.lru==0.6 requests==2.0.0 simplejson==3.3.1 sqlalchemy-migrate==0.7.2 termcolor==1.1.0 wsgiref==0.1.2 xattr==0.7.2 + echo ====================================================================== ====================================================================== + '[' -d .testrepository ']' + sudo /usr/local/jenkins/slave_scripts/jenkins-sudo-grep.sh post + sudoresult=0 + '[' 0 -ne 0 ']' + /usr/local/jenkins/slave_scripts/jenkins-oom-grep.sh post + oomresult=0 + '[' 0 -ne 0 ']' ++ find . -name nose_results.html + htmlreport=./nose_results.html + '[' -f ./nose_results.html ']' ++ grep -c 'tr class=.passClass' ./nose_results.html + passcount=95 + '[' 95 -eq 0 ']' + exit 1 + rm -rf /tmp/tmp.M1dzO34QQn Build step 'Execute shell' marked build as failure [SCP] Connecting to static.openstack.org [SCP] uploading file: '/srv/static/logs/periodic/periodic-glance-python27-stable-folsom/37/nose_results.html' [SCP] Connecting to static.openstack.org [SCP] Trying to create /srv/static/logs/periodic/periodic-glance-python27-stable-folsom/precise37 [SCP] Trying to create /srv/static/logs/periodic/periodic-glance-python27-stable-folsom/precise37/37 [SCP] Copying console log.
See <https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/38/> ------------------------------------------ [...truncated 1275 lines...] File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/registry/client.py",> line 89, in do_request action, **kwargs) File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/common/client.py",> line 63, in wrapped return func(self, *args, **kwargs) File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/common/client.py",> line 444, in do_request headers=headers) File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/common/client.py",> line 80, in wrapped return func(self, method, url, body, headers) File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/common/client.py",> line 574, in _do_request raise exception.Invalid(res.read()) Invalid: 400 Bad Request The server could not comply with the request since it is either malformed or otherwise incorrect. Unrecognized changes-since value routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x55f70d0>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x55f70d0>} glance.api.policy: DEBUG: Loaded policy rules: {u'default': []} glance.common.client: DEBUG: Constructed URL: http://0.0.0.0:9191/images/detail?changes-since=2011-09-05 routes.middleware: DEBUG: Initialized with method overriding = True, and path info altering = True routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x4bddc90>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x4bddc90>} iso8601.iso8601: DEBUG: Parsed 2011-09-05 into {'tz_sign': None, 'second_fraction': None, 'hour': None, 'tz_hour': None, 'month': u'09', 'timezone': None, 'second': None, 'tz_minute': None, 'year': u'2011', 'separator': None, 'day': u'05', 'minute': None} with default timezone <iso8601.iso8601.Utc object at 0x203ad50> iso8601.iso8601: DEBUG: Got u'2011' for 'year' with default None iso8601.iso8601: DEBUG: Got u'09' for 'month' with default None iso8601.iso8601: DEBUG: Got u'05' for 'day' with default None iso8601.iso8601: DEBUG: Got None for 'hour' with default None iso8601.iso8601: DEBUG: Got None for 'minute' with default None iso8601.iso8601: DEBUG: Got None for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list glance.registry.client: DEBUG: Registry request GET /images/detail HTTP 200 request id req-d146f824-bbb6-4064-9a1f-dc99245f6dba --------------------- >> end captured logging << --------------------- ====================================================================== FAIL: Tests that the /images/detail registry API returns list of ---------------------------------------------------------------------- Traceback (most recent call last): File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/tests/unit/v1/test_api.py",> line 1409, in test_get_details_filter_changes_since self.assertEquals(res.status_int, 400) AssertionError: 200 != 400 '200 != 400' = '%s != %s' % (safe_repr(200), safe_repr(400)) '200 != 400' = self._formatMessage('200 != 400', '200 != 400')
raise self.failureException('200 != 400')
-------------------- >> begin captured logging << -------------------- glance.store: DEBUG: Attempting to import store glance.store.filesystem.Store glance.store: DEBUG: Registering store <class 'glance.store.filesystem.Store'> with schemes ('file', 'filesystem') glance.store.base: DEBUG: Late loading location class glance.store.filesystem.StoreLocation glance.store.location: DEBUG: Registering scheme file with {'store_class': <class 'glance.store.filesystem.Store'>, 'location_class': <class 'glance.store.filesystem.StoreLocation'>} glance.store.location: DEBUG: Registering scheme filesystem with {'store_class': <class 'glance.store.filesystem.Store'>, 'location_class': <class 'glance.store.filesystem.StoreLocation'>} glance.store: DEBUG: Attempting to import store glance.store.http.Store glance.store: DEBUG: Registering store <class 'glance.store.http.Store'> with schemes ('http', 'https') glance.store.base: DEBUG: Late loading location class glance.store.http.StoreLocation glance.store.location: DEBUG: Registering scheme http with {'store_class': <class 'glance.store.http.Store'>, 'location_class': <class 'glance.store.http.StoreLocation'>} glance.store.location: DEBUG: Registering scheme https with {'store_class': <class 'glance.store.http.Store'>, 'location_class': <class 'glance.store.http.StoreLocation'>} glance.store: DEBUG: Attempting to import store glance.store.rbd.Store glance.store: DEBUG: Registering store <class 'glance.store.rbd.Store'> with schemes ('rbd',) glance.store.base: DEBUG: Late loading location class glance.store.rbd.StoreLocation glance.store.location: DEBUG: Registering scheme rbd with {'store_class': <class 'glance.store.rbd.Store'>, 'location_class': <class 'glance.store.rbd.StoreLocation'>} glance.store: DEBUG: Attempting to import store glance.store.s3.Store glance.store.s3: ERROR: Could not find s3_store_host in configuration options. glance.store.base: ERROR: Failed to configure store correctly. Disabling add method. glance.store: DEBUG: Registering store <class 'glance.store.s3.Store'> with schemes ('s3', 's3+http', 's3+https') glance.store.base: DEBUG: Late loading location class glance.store.s3.StoreLocation glance.store.location: DEBUG: Registering scheme s3 with {'store_class': <class 'glance.store.s3.Store'>, 'location_class': <class 'glance.store.s3.StoreLocation'>} glance.store.location: DEBUG: Registering scheme s3+http with {'store_class': <class 'glance.store.s3.Store'>, 'location_class': <class 'glance.store.s3.StoreLocation'>} glance.store.location: DEBUG: Registering scheme s3+https with {'store_class': <class 'glance.store.s3.Store'>, 'location_class': <class 'glance.store.s3.StoreLocation'>} glance.store: DEBUG: Attempting to import store glance.store.swift.Store glance.store.swift: ERROR: Could not find swift_store_auth_address in configuration options. glance.store.base: ERROR: Failed to configure store correctly. Disabling add method. glance.store: DEBUG: Registering store <class 'glance.store.swift.Store'> with schemes ('swift+https', 'swift', 'swift+http') glance.store.base: DEBUG: Late loading location class glance.store.swift.StoreLocation glance.store.location: DEBUG: Registering scheme swift+https with {'store_class': <class 'glance.store.swift.Store'>, 'location_class': <class 'glance.store.swift.StoreLocation'>} glance.store.location: DEBUG: Registering scheme swift+http with {'store_class': <class 'glance.store.swift.Store'>, 'location_class': <class 'glance.store.swift.StoreLocation'>} glance.store.location: DEBUG: Registering scheme swift with {'store_class': <class 'glance.store.swift.Store'>, 'location_class': <class 'glance.store.swift.StoreLocation'>} routes.middleware: DEBUG: Initialized with method overriding = True, and path info altering = True routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x5cc66d0>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x5cc66d0>} glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x5cc66d0>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x5cc66d0>} iso8601.iso8601: DEBUG: Parsed 2013-10-27T06:08:27Z into {'tz_sign': None, 'second_fraction': None, 'hour': u'06', 'tz_hour': None, 'month': u'10', 'timezone': u'Z', 'second': u'27', 'tz_minute': None, 'year': u'2013', 'separator': u'T', 'day': u'27', 'minute': u'08'} with default timezone <iso8601.iso8601.Utc object at 0x203ad50> iso8601.iso8601: DEBUG: Got u'2013' for 'year' with default None iso8601.iso8601: DEBUG: Got u'10' for 'month' with default None iso8601.iso8601: DEBUG: Got u'27' for 'day' with default None iso8601.iso8601: DEBUG: Got u'06' for 'hour' with default None iso8601.iso8601: DEBUG: Got u'08' for 'minute' with default None iso8601.iso8601: DEBUG: Got u'27' for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x5cc66d0>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x5cc66d0>} iso8601.iso8601: DEBUG: Parsed 2013-10-29T06:08:27Z into {'tz_sign': None, 'second_fraction': None, 'hour': u'06', 'tz_hour': None, 'month': u'10', 'timezone': u'Z', 'second': u'27', 'tz_minute': None, 'year': u'2013', 'separator': u'T', 'day': u'29', 'minute': u'08'} with default timezone <iso8601.iso8601.Utc object at 0x203ad50> iso8601.iso8601: DEBUG: Got u'2013' for 'year' with default None iso8601.iso8601: DEBUG: Got u'10' for 'month' with default None iso8601.iso8601: DEBUG: Got u'29' for 'day' with default None iso8601.iso8601: DEBUG: Got u'06' for 'hour' with default None iso8601.iso8601: DEBUG: Got u'08' for 'minute' with default None iso8601.iso8601: DEBUG: Got u'27' for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x5cc66d0>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x5cc66d0>} iso8601.iso8601: DEBUG: Parsed 2013-10-30T06:08:27+01:00 into {'tz_sign': u'+', 'second_fraction': None, 'hour': u'06', 'tz_hour': u'01', 'month': u'10', 'timezone': u'+01:00', 'second': u'27', 'tz_minute': u'00', 'year': u'2013', 'separator': u'T', 'day': u'30', 'minute': u'08'} with default timezone <iso8601.iso8601.Utc object at 0x203ad50> iso8601.iso8601: DEBUG: Got u'01' for 'tz_hour' with default None iso8601.iso8601: DEBUG: Got u'00' for 'tz_minute' with default None iso8601.iso8601: DEBUG: Got u'2013' for 'year' with default None iso8601.iso8601: DEBUG: Got u'10' for 'month' with default None iso8601.iso8601: DEBUG: Got u'30' for 'day' with default None iso8601.iso8601: DEBUG: Got u'06' for 'hour' with default None iso8601.iso8601: DEBUG: Got u'08' for 'minute' with default None iso8601.iso8601: DEBUG: Got u'27' for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x5cc66d0>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x5cc66d0>} iso8601.iso8601: DEBUG: Parsed 2013-10-30T06:08:27-01:00 into {'tz_sign': u'-', 'second_fraction': None, 'hour': u'06', 'tz_hour': u'01', 'month': u'10', 'timezone': u'-01:00', 'second': u'27', 'tz_minute': u'00', 'year': u'2013', 'separator': u'T', 'day': u'30', 'minute': u'08'} with default timezone <iso8601.iso8601.Utc object at 0x203ad50> iso8601.iso8601: DEBUG: Got u'01' for 'tz_hour' with default None iso8601.iso8601: DEBUG: Got u'00' for 'tz_minute' with default None iso8601.iso8601: DEBUG: Got u'2013' for 'year' with default None iso8601.iso8601: DEBUG: Got u'10' for 'month' with default None iso8601.iso8601: DEBUG: Got u'30' for 'day' with default None iso8601.iso8601: DEBUG: Got u'06' for 'hour' with default None iso8601.iso8601: DEBUG: Got u'08' for 'minute' with default None iso8601.iso8601: DEBUG: Got u'27' for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x5cc66d0>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x5cc66d0>} iso8601.iso8601: DEBUG: Parsed 2013-10-31T06:08:27Z into {'tz_sign': None, 'second_fraction': None, 'hour': u'06', 'tz_hour': None, 'month': u'10', 'timezone': u'Z', 'second': u'27', 'tz_minute': None, 'year': u'2013', 'separator': u'T', 'day': u'31', 'minute': u'08'} with default timezone <iso8601.iso8601.Utc object at 0x203ad50> iso8601.iso8601: DEBUG: Got u'2013' for 'year' with default None iso8601.iso8601: DEBUG: Got u'10' for 'month' with default None iso8601.iso8601: DEBUG: Got u'31' for 'day' with default None iso8601.iso8601: DEBUG: Got u'06' for 'hour' with default None iso8601.iso8601: DEBUG: Got u'08' for 'minute' with default None iso8601.iso8601: DEBUG: Got u'27' for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x5cc66d0>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x5cc66d0>} routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x5cc66d0>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x5cc66d0>} iso8601.iso8601: DEBUG: Parsed 2011-09-05 into {'tz_sign': None, 'second_fraction': None, 'hour': None, 'tz_hour': None, 'month': u'09', 'timezone': None, 'second': None, 'tz_minute': None, 'year': u'2011', 'separator': None, 'day': u'05', 'minute': None} with default timezone <iso8601.iso8601.Utc object at 0x203ad50> iso8601.iso8601: DEBUG: Got u'2011' for 'year' with default None iso8601.iso8601: DEBUG: Got u'09' for 'month' with default None iso8601.iso8601: DEBUG: Got u'05' for 'day' with default None iso8601.iso8601: DEBUG: Got None for 'hour' with default None iso8601.iso8601: DEBUG: Got None for 'minute' with default None iso8601.iso8601: DEBUG: Got None for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list --------------------- >> end captured logging << --------------------- ---------------------------------------------------------------------- XML: nosetests.xml Slowest 5 tests took 64.41 secs: [31m 13.49 TestGlanceControl.test_bouncing[0m [31m 13.05 TestScrubber.test_delayed_delete[0m [31m 13.02 TestGlanceControl.test_reload[0m [31m 12.82 TestGlanceControl.test_respawn[0m [31m 12.03 TestApi.test_unsupported_default_store[0m ---------------------------------------------------------------------- Ran 932 tests in 404.265s FAILED (SKIP=89, failures=2) ERROR: InvocationError: '<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/.tox/py27/bin/nosetests'> ___________________________________ summary ____________________________________ ERROR: py27: commands failed + result=1 + echo 'Begin pip freeze output from test virtualenv:' Begin pip freeze output from test virtualenv: + echo ====================================================================== ====================================================================== + .tox/py27/bin/pip freeze Babel==1.3 Jinja2==2.7.1 MarkupSafe==0.18 Paste==1.7.5.1 PasteDeploy==1.5.0 Pygments==1.6 Routes==1.13 SQLAlchemy==0.7.9 Sphinx==1.2b1 Tempita==0.5.1 WebOb==1.0.8 amqp==1.3.1 anyjson==0.3.3 argparse==1.2.1 boto==2.1.1 cffi==0.7.2 colorama==0.2.7 coverage==3.7 decorator==3.4.0 distribute==0.7.3 docutils==0.10 eventlet==0.14.0 glance==jenkins-periodic-glance-python27-stable-folsom-38 greenlet==0.4.1 httplib2==0.8 iso8601==0.1.8 jsonschema==2.2.0 kombu==3.0.1 lxml==3.2.3 mox==0.5.3 nose==1.3.0 nose-exclude==0.1.10 nosehtmloutput==0.0.5 openstack.nose-plugin==0.11 passlib==1.6.1 pep8==1.1 pycparser==2.10 pycrypto==2.6.1 pysendfile==2.0.0 python-swiftclient==1.8.0 pytz==2013.7 repoze.lru==0.6 requests==2.0.1 simplejson==3.3.1 sqlalchemy-migrate==0.7.2 termcolor==1.1.0 wsgiref==0.1.2 xattr==0.7.2 + echo ====================================================================== ====================================================================== + '[' -d .testrepository ']' + sudo /usr/local/jenkins/slave_scripts/jenkins-sudo-grep.sh post + sudoresult=0 + '[' 0 -ne 0 ']' + /usr/local/jenkins/slave_scripts/jenkins-oom-grep.sh post + oomresult=0 + '[' 0 -ne 0 ']' ++ find . -name nose_results.html + htmlreport=./nose_results.html + '[' -f ./nose_results.html ']' ++ grep -c 'tr class=.passClass' ./nose_results.html + passcount=95 + '[' 95 -eq 0 ']' + exit 1 + rm -rf /tmp/tmp.5Hw3emhkjr Build step 'Execute shell' marked build as failure [SCP] Connecting to static.openstack.org [SCP] uploading file: '/srv/static/logs/periodic/periodic-glance-python27-stable-folsom/38/nose_results.html' [SCP] Connecting to static.openstack.org [SCP] Trying to create /srv/static/logs/periodic/periodic-glance-python27-stable-folsom/precise35/38 [SCP] Copying console log.
See <https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/39/> ------------------------------------------ [...truncated 1275 lines...] File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/registry/client.py",> line 89, in do_request action, **kwargs) File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/common/client.py",> line 63, in wrapped return func(self, *args, **kwargs) File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/common/client.py",> line 444, in do_request headers=headers) File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/common/client.py",> line 80, in wrapped return func(self, method, url, body, headers) File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/common/client.py",> line 574, in _do_request raise exception.Invalid(res.read()) Invalid: 400 Bad Request The server could not comply with the request since it is either malformed or otherwise incorrect. Unrecognized changes-since value routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x4b24bd0>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x4b24bd0>} glance.api.policy: DEBUG: Loaded policy rules: {u'default': []} glance.common.client: DEBUG: Constructed URL: http://0.0.0.0:9191/images/detail?changes-since=2011-09-05 routes.middleware: DEBUG: Initialized with method overriding = True, and path info altering = True routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x49de8d0>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x49de8d0>} iso8601.iso8601: DEBUG: Parsed 2011-09-05 into {'tz_sign': None, 'second_fraction': None, 'hour': None, 'tz_hour': None, 'month': u'09', 'timezone': None, 'second': None, 'tz_minute': None, 'year': u'2011', 'separator': None, 'day': u'05', 'minute': None} with default timezone <iso8601.iso8601.Utc object at 0x1a17d50> iso8601.iso8601: DEBUG: Got u'2011' for 'year' with default None iso8601.iso8601: DEBUG: Got u'09' for 'month' with default None iso8601.iso8601: DEBUG: Got u'05' for 'day' with default None iso8601.iso8601: DEBUG: Got None for 'hour' with default None iso8601.iso8601: DEBUG: Got None for 'minute' with default None iso8601.iso8601: DEBUG: Got None for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list glance.registry.client: DEBUG: Registry request GET /images/detail HTTP 200 request id req-7e091ccc-2fab-4f4b-832f-29837ccc87ec --------------------- >> end captured logging << --------------------- ====================================================================== FAIL: Tests that the /images/detail registry API returns list of ---------------------------------------------------------------------- Traceback (most recent call last): File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/tests/unit/v1/test_api.py",> line 1409, in test_get_details_filter_changes_since self.assertEquals(res.status_int, 400) AssertionError: 200 != 400 '200 != 400' = '%s != %s' % (safe_repr(200), safe_repr(400)) '200 != 400' = self._formatMessage('200 != 400', '200 != 400')
raise self.failureException('200 != 400')
-------------------- >> begin captured logging << -------------------- glance.store: DEBUG: Attempting to import store glance.store.filesystem.Store glance.store: DEBUG: Registering store <class 'glance.store.filesystem.Store'> with schemes ('file', 'filesystem') glance.store.base: DEBUG: Late loading location class glance.store.filesystem.StoreLocation glance.store.location: DEBUG: Registering scheme file with {'store_class': <class 'glance.store.filesystem.Store'>, 'location_class': <class 'glance.store.filesystem.StoreLocation'>} glance.store.location: DEBUG: Registering scheme filesystem with {'store_class': <class 'glance.store.filesystem.Store'>, 'location_class': <class 'glance.store.filesystem.StoreLocation'>} glance.store: DEBUG: Attempting to import store glance.store.http.Store glance.store: DEBUG: Registering store <class 'glance.store.http.Store'> with schemes ('http', 'https') glance.store.base: DEBUG: Late loading location class glance.store.http.StoreLocation glance.store.location: DEBUG: Registering scheme http with {'store_class': <class 'glance.store.http.Store'>, 'location_class': <class 'glance.store.http.StoreLocation'>} glance.store.location: DEBUG: Registering scheme https with {'store_class': <class 'glance.store.http.Store'>, 'location_class': <class 'glance.store.http.StoreLocation'>} glance.store: DEBUG: Attempting to import store glance.store.rbd.Store glance.store: DEBUG: Registering store <class 'glance.store.rbd.Store'> with schemes ('rbd',) glance.store.base: DEBUG: Late loading location class glance.store.rbd.StoreLocation glance.store.location: DEBUG: Registering scheme rbd with {'store_class': <class 'glance.store.rbd.Store'>, 'location_class': <class 'glance.store.rbd.StoreLocation'>} glance.store: DEBUG: Attempting to import store glance.store.s3.Store glance.store.s3: ERROR: Could not find s3_store_host in configuration options. glance.store.base: ERROR: Failed to configure store correctly. Disabling add method. glance.store: DEBUG: Registering store <class 'glance.store.s3.Store'> with schemes ('s3', 's3+http', 's3+https') glance.store.base: DEBUG: Late loading location class glance.store.s3.StoreLocation glance.store.location: DEBUG: Registering scheme s3 with {'store_class': <class 'glance.store.s3.Store'>, 'location_class': <class 'glance.store.s3.StoreLocation'>} glance.store.location: DEBUG: Registering scheme s3+http with {'store_class': <class 'glance.store.s3.Store'>, 'location_class': <class 'glance.store.s3.StoreLocation'>} glance.store.location: DEBUG: Registering scheme s3+https with {'store_class': <class 'glance.store.s3.Store'>, 'location_class': <class 'glance.store.s3.StoreLocation'>} glance.store: DEBUG: Attempting to import store glance.store.swift.Store glance.store.swift: ERROR: Could not find swift_store_auth_address in configuration options. glance.store.base: ERROR: Failed to configure store correctly. Disabling add method. glance.store: DEBUG: Registering store <class 'glance.store.swift.Store'> with schemes ('swift+https', 'swift', 'swift+http') glance.store.base: DEBUG: Late loading location class glance.store.swift.StoreLocation glance.store.location: DEBUG: Registering scheme swift+https with {'store_class': <class 'glance.store.swift.Store'>, 'location_class': <class 'glance.store.swift.StoreLocation'>} glance.store.location: DEBUG: Registering scheme swift+http with {'store_class': <class 'glance.store.swift.Store'>, 'location_class': <class 'glance.store.swift.StoreLocation'>} glance.store.location: DEBUG: Registering scheme swift with {'store_class': <class 'glance.store.swift.Store'>, 'location_class': <class 'glance.store.swift.StoreLocation'>} routes.middleware: DEBUG: Initialized with method overriding = True, and path info altering = True routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x585b690>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x585b690>} glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x585b690>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x585b690>} iso8601.iso8601: DEBUG: Parsed 2013-10-30T06:08:42Z into {'tz_sign': None, 'second_fraction': None, 'hour': u'06', 'tz_hour': None, 'month': u'10', 'timezone': u'Z', 'second': u'42', 'tz_minute': None, 'year': u'2013', 'separator': u'T', 'day': u'30', 'minute': u'08'} with default timezone <iso8601.iso8601.Utc object at 0x1a17d50> iso8601.iso8601: DEBUG: Got u'2013' for 'year' with default None iso8601.iso8601: DEBUG: Got u'10' for 'month' with default None iso8601.iso8601: DEBUG: Got u'30' for 'day' with default None iso8601.iso8601: DEBUG: Got u'06' for 'hour' with default None iso8601.iso8601: DEBUG: Got u'08' for 'minute' with default None iso8601.iso8601: DEBUG: Got u'42' for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x585b690>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x585b690>} iso8601.iso8601: DEBUG: Parsed 2013-11-01T06:08:42Z into {'tz_sign': None, 'second_fraction': None, 'hour': u'06', 'tz_hour': None, 'month': u'11', 'timezone': u'Z', 'second': u'42', 'tz_minute': None, 'year': u'2013', 'separator': u'T', 'day': u'01', 'minute': u'08'} with default timezone <iso8601.iso8601.Utc object at 0x1a17d50> iso8601.iso8601: DEBUG: Got u'2013' for 'year' with default None iso8601.iso8601: DEBUG: Got u'11' for 'month' with default None iso8601.iso8601: DEBUG: Got u'01' for 'day' with default None iso8601.iso8601: DEBUG: Got u'06' for 'hour' with default None iso8601.iso8601: DEBUG: Got u'08' for 'minute' with default None iso8601.iso8601: DEBUG: Got u'42' for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x585b690>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x585b690>} iso8601.iso8601: DEBUG: Parsed 2013-11-02T06:08:42+01:00 into {'tz_sign': u'+', 'second_fraction': None, 'hour': u'06', 'tz_hour': u'01', 'month': u'11', 'timezone': u'+01:00', 'second': u'42', 'tz_minute': u'00', 'year': u'2013', 'separator': u'T', 'day': u'02', 'minute': u'08'} with default timezone <iso8601.iso8601.Utc object at 0x1a17d50> iso8601.iso8601: DEBUG: Got u'01' for 'tz_hour' with default None iso8601.iso8601: DEBUG: Got u'00' for 'tz_minute' with default None iso8601.iso8601: DEBUG: Got u'2013' for 'year' with default None iso8601.iso8601: DEBUG: Got u'11' for 'month' with default None iso8601.iso8601: DEBUG: Got u'02' for 'day' with default None iso8601.iso8601: DEBUG: Got u'06' for 'hour' with default None iso8601.iso8601: DEBUG: Got u'08' for 'minute' with default None iso8601.iso8601: DEBUG: Got u'42' for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x585b690>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x585b690>} iso8601.iso8601: DEBUG: Parsed 2013-11-02T06:08:42-01:00 into {'tz_sign': u'-', 'second_fraction': None, 'hour': u'06', 'tz_hour': u'01', 'month': u'11', 'timezone': u'-01:00', 'second': u'42', 'tz_minute': u'00', 'year': u'2013', 'separator': u'T', 'day': u'02', 'minute': u'08'} with default timezone <iso8601.iso8601.Utc object at 0x1a17d50> iso8601.iso8601: DEBUG: Got u'01' for 'tz_hour' with default None iso8601.iso8601: DEBUG: Got u'00' for 'tz_minute' with default None iso8601.iso8601: DEBUG: Got u'2013' for 'year' with default None iso8601.iso8601: DEBUG: Got u'11' for 'month' with default None iso8601.iso8601: DEBUG: Got u'02' for 'day' with default None iso8601.iso8601: DEBUG: Got u'06' for 'hour' with default None iso8601.iso8601: DEBUG: Got u'08' for 'minute' with default None iso8601.iso8601: DEBUG: Got u'42' for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x585b690>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x585b690>} iso8601.iso8601: DEBUG: Parsed 2013-11-03T06:08:42Z into {'tz_sign': None, 'second_fraction': None, 'hour': u'06', 'tz_hour': None, 'month': u'11', 'timezone': u'Z', 'second': u'42', 'tz_minute': None, 'year': u'2013', 'separator': u'T', 'day': u'03', 'minute': u'08'} with default timezone <iso8601.iso8601.Utc object at 0x1a17d50> iso8601.iso8601: DEBUG: Got u'2013' for 'year' with default None iso8601.iso8601: DEBUG: Got u'11' for 'month' with default None iso8601.iso8601: DEBUG: Got u'03' for 'day' with default None iso8601.iso8601: DEBUG: Got u'06' for 'hour' with default None iso8601.iso8601: DEBUG: Got u'08' for 'minute' with default None iso8601.iso8601: DEBUG: Got u'42' for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x585b690>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x585b690>} routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x585b690>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x585b690>} iso8601.iso8601: DEBUG: Parsed 2011-09-05 into {'tz_sign': None, 'second_fraction': None, 'hour': None, 'tz_hour': None, 'month': u'09', 'timezone': None, 'second': None, 'tz_minute': None, 'year': u'2011', 'separator': None, 'day': u'05', 'minute': None} with default timezone <iso8601.iso8601.Utc object at 0x1a17d50> iso8601.iso8601: DEBUG: Got u'2011' for 'year' with default None iso8601.iso8601: DEBUG: Got u'09' for 'month' with default None iso8601.iso8601: DEBUG: Got u'05' for 'day' with default None iso8601.iso8601: DEBUG: Got None for 'hour' with default None iso8601.iso8601: DEBUG: Got None for 'minute' with default None iso8601.iso8601: DEBUG: Got None for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list --------------------- >> end captured logging << --------------------- ---------------------------------------------------------------------- XML: nosetests.xml Slowest 5 tests took 64.63 secs: [31m 13.49 TestGlanceControl.test_bouncing[0m [31m 13.17 TestGlanceControl.test_reload[0m [31m 13.11 TestScrubber.test_delayed_delete[0m [31m 12.89 TestGlanceControl.test_respawn[0m [31m 11.98 TestApi.test_unsupported_default_store[0m ---------------------------------------------------------------------- Ran 932 tests in 417.555s FAILED (SKIP=89, failures=2) ERROR: InvocationError: '<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/.tox/py27/bin/nosetests'> ___________________________________ summary ____________________________________ ERROR: py27: commands failed + result=1 + echo 'Begin pip freeze output from test virtualenv:' Begin pip freeze output from test virtualenv: + echo ====================================================================== ====================================================================== + .tox/py27/bin/pip freeze Babel==1.3 Jinja2==2.7.1 MarkupSafe==0.18 Paste==1.7.5.1 PasteDeploy==1.5.0 Pygments==1.6 Routes==1.13 SQLAlchemy==0.7.9 Sphinx==1.2b1 Tempita==0.5.1 WebOb==1.0.8 amqp==1.3.2 anyjson==0.3.3 argparse==1.2.1 boto==2.1.1 cffi==0.7.2 colorama==0.2.7 coverage==3.7 decorator==3.4.0 distribute==0.7.3 docutils==0.10 eventlet==0.14.0 glance==jenkins-periodic-glance-python27-stable-folsom-39 greenlet==0.4.1 httplib2==0.8 iso8601==0.1.8 jsonschema==2.2.0 kombu==3.0.2 lxml==3.2.3 mox==0.5.3 nose==1.3.0 nose-exclude==0.1.10 nosehtmloutput==0.0.5 openstack.nose-plugin==0.11 passlib==1.6.1 pep8==1.1 pycparser==2.10 pycrypto==2.6.1 pysendfile==2.0.0 python-swiftclient==1.8.0 pytz==2013.7 repoze.lru==0.6 requests==2.0.1 simplejson==3.3.1 sqlalchemy-migrate==0.7.2 termcolor==1.1.0 wsgiref==0.1.2 xattr==0.7.2 + echo ====================================================================== ====================================================================== + '[' -d .testrepository ']' + sudo /usr/local/jenkins/slave_scripts/jenkins-sudo-grep.sh post + sudoresult=0 + '[' 0 -ne 0 ']' + /usr/local/jenkins/slave_scripts/jenkins-oom-grep.sh post + oomresult=0 + '[' 0 -ne 0 ']' ++ find . -name nose_results.html + htmlreport=./nose_results.html + '[' -f ./nose_results.html ']' ++ grep -c 'tr class=.passClass' ./nose_results.html + passcount=95 + '[' 95 -eq 0 ']' + exit 1 + rm -rf /tmp/tmp.WuKzo9NbDQ Build step 'Execute shell' marked build as failure [SCP] Connecting to static.openstack.org [SCP] uploading file: '/srv/static/logs/periodic/periodic-glance-python27-stable-folsom/39/nose_results.html' [SCP] Connecting to static.openstack.org [SCP] Trying to create /srv/static/logs/periodic/periodic-glance-python27-stable-folsom/precise35/39 [SCP] Copying console log.
See <https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/40/> ------------------------------------------ [...truncated 1275 lines...] File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/registry/client.py",> line 89, in do_request action, **kwargs) File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/common/client.py",> line 63, in wrapped return func(self, *args, **kwargs) File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/common/client.py",> line 444, in do_request headers=headers) File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/common/client.py",> line 80, in wrapped return func(self, method, url, body, headers) File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/common/client.py",> line 574, in _do_request raise exception.Invalid(res.read()) Invalid: 400 Bad Request The server could not comply with the request since it is either malformed or otherwise incorrect. Unrecognized changes-since value routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x4ce8990>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x4ce8990>} glance.api.policy: DEBUG: Loaded policy rules: {u'default': []} glance.common.client: DEBUG: Constructed URL: http://0.0.0.0:9191/images/detail?changes-since=2011-09-05 routes.middleware: DEBUG: Initialized with method overriding = True, and path info altering = True routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x40e1790>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x40e1790>} iso8601.iso8601: DEBUG: Parsed 2011-09-05 into {'tz_sign': None, 'second_fraction': None, 'hour': None, 'tz_hour': None, 'month': u'09', 'timezone': None, 'second': None, 'tz_minute': None, 'year': u'2011', 'separator': None, 'day': u'05', 'minute': None} with default timezone <iso8601.iso8601.Utc object at 0x18fad50> iso8601.iso8601: DEBUG: Got u'2011' for 'year' with default None iso8601.iso8601: DEBUG: Got u'09' for 'month' with default None iso8601.iso8601: DEBUG: Got u'05' for 'day' with default None iso8601.iso8601: DEBUG: Got None for 'hour' with default None iso8601.iso8601: DEBUG: Got None for 'minute' with default None iso8601.iso8601: DEBUG: Got None for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list glance.registry.client: DEBUG: Registry request GET /images/detail HTTP 200 request id req-7204a34f-a212-49af-93f6-698889824efa --------------------- >> end captured logging << --------------------- ====================================================================== FAIL: Tests that the /images/detail registry API returns list of ---------------------------------------------------------------------- Traceback (most recent call last): File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/tests/unit/v1/test_api.py",> line 1409, in test_get_details_filter_changes_since self.assertEquals(res.status_int, 400) AssertionError: 200 != 400 '200 != 400' = '%s != %s' % (safe_repr(200), safe_repr(400)) '200 != 400' = self._formatMessage('200 != 400', '200 != 400')
raise self.failureException('200 != 400')
-------------------- >> begin captured logging << -------------------- glance.store: DEBUG: Attempting to import store glance.store.filesystem.Store glance.store: DEBUG: Registering store <class 'glance.store.filesystem.Store'> with schemes ('file', 'filesystem') glance.store.base: DEBUG: Late loading location class glance.store.filesystem.StoreLocation glance.store.location: DEBUG: Registering scheme file with {'store_class': <class 'glance.store.filesystem.Store'>, 'location_class': <class 'glance.store.filesystem.StoreLocation'>} glance.store.location: DEBUG: Registering scheme filesystem with {'store_class': <class 'glance.store.filesystem.Store'>, 'location_class': <class 'glance.store.filesystem.StoreLocation'>} glance.store: DEBUG: Attempting to import store glance.store.http.Store glance.store: DEBUG: Registering store <class 'glance.store.http.Store'> with schemes ('http', 'https') glance.store.base: DEBUG: Late loading location class glance.store.http.StoreLocation glance.store.location: DEBUG: Registering scheme http with {'store_class': <class 'glance.store.http.Store'>, 'location_class': <class 'glance.store.http.StoreLocation'>} glance.store.location: DEBUG: Registering scheme https with {'store_class': <class 'glance.store.http.Store'>, 'location_class': <class 'glance.store.http.StoreLocation'>} glance.store: DEBUG: Attempting to import store glance.store.rbd.Store glance.store: DEBUG: Registering store <class 'glance.store.rbd.Store'> with schemes ('rbd',) glance.store.base: DEBUG: Late loading location class glance.store.rbd.StoreLocation glance.store.location: DEBUG: Registering scheme rbd with {'store_class': <class 'glance.store.rbd.Store'>, 'location_class': <class 'glance.store.rbd.StoreLocation'>} glance.store: DEBUG: Attempting to import store glance.store.s3.Store glance.store.s3: ERROR: Could not find s3_store_host in configuration options. glance.store.base: ERROR: Failed to configure store correctly. Disabling add method. glance.store: DEBUG: Registering store <class 'glance.store.s3.Store'> with schemes ('s3', 's3+http', 's3+https') glance.store.base: DEBUG: Late loading location class glance.store.s3.StoreLocation glance.store.location: DEBUG: Registering scheme s3 with {'store_class': <class 'glance.store.s3.Store'>, 'location_class': <class 'glance.store.s3.StoreLocation'>} glance.store.location: DEBUG: Registering scheme s3+http with {'store_class': <class 'glance.store.s3.Store'>, 'location_class': <class 'glance.store.s3.StoreLocation'>} glance.store.location: DEBUG: Registering scheme s3+https with {'store_class': <class 'glance.store.s3.Store'>, 'location_class': <class 'glance.store.s3.StoreLocation'>} glance.store: DEBUG: Attempting to import store glance.store.swift.Store glance.store.swift: ERROR: Could not find swift_store_auth_address in configuration options. glance.store.base: ERROR: Failed to configure store correctly. Disabling add method. glance.store: DEBUG: Registering store <class 'glance.store.swift.Store'> with schemes ('swift+https', 'swift', 'swift+http') glance.store.base: DEBUG: Late loading location class glance.store.swift.StoreLocation glance.store.location: DEBUG: Registering scheme swift+https with {'store_class': <class 'glance.store.swift.Store'>, 'location_class': <class 'glance.store.swift.StoreLocation'>} glance.store.location: DEBUG: Registering scheme swift+http with {'store_class': <class 'glance.store.swift.Store'>, 'location_class': <class 'glance.store.swift.StoreLocation'>} glance.store.location: DEBUG: Registering scheme swift with {'store_class': <class 'glance.store.swift.Store'>, 'location_class': <class 'glance.store.swift.StoreLocation'>} routes.middleware: DEBUG: Initialized with method overriding = True, and path info altering = True routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x5617810>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x5617810>} glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x5617810>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x5617810>} iso8601.iso8601: DEBUG: Parsed 2013-11-02T06:10:47Z into {'tz_sign': None, 'second_fraction': None, 'hour': u'06', 'tz_hour': None, 'month': u'11', 'timezone': u'Z', 'second': u'47', 'tz_minute': None, 'year': u'2013', 'separator': u'T', 'day': u'02', 'minute': u'10'} with default timezone <iso8601.iso8601.Utc object at 0x18fad50> iso8601.iso8601: DEBUG: Got u'2013' for 'year' with default None iso8601.iso8601: DEBUG: Got u'11' for 'month' with default None iso8601.iso8601: DEBUG: Got u'02' for 'day' with default None iso8601.iso8601: DEBUG: Got u'06' for 'hour' with default None iso8601.iso8601: DEBUG: Got u'10' for 'minute' with default None iso8601.iso8601: DEBUG: Got u'47' for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x5617810>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x5617810>} iso8601.iso8601: DEBUG: Parsed 2013-11-04T06:10:47Z into {'tz_sign': None, 'second_fraction': None, 'hour': u'06', 'tz_hour': None, 'month': u'11', 'timezone': u'Z', 'second': u'47', 'tz_minute': None, 'year': u'2013', 'separator': u'T', 'day': u'04', 'minute': u'10'} with default timezone <iso8601.iso8601.Utc object at 0x18fad50> iso8601.iso8601: DEBUG: Got u'2013' for 'year' with default None iso8601.iso8601: DEBUG: Got u'11' for 'month' with default None iso8601.iso8601: DEBUG: Got u'04' for 'day' with default None iso8601.iso8601: DEBUG: Got u'06' for 'hour' with default None iso8601.iso8601: DEBUG: Got u'10' for 'minute' with default None iso8601.iso8601: DEBUG: Got u'47' for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x5617810>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x5617810>} iso8601.iso8601: DEBUG: Parsed 2013-11-05T06:10:47+01:00 into {'tz_sign': u'+', 'second_fraction': None, 'hour': u'06', 'tz_hour': u'01', 'month': u'11', 'timezone': u'+01:00', 'second': u'47', 'tz_minute': u'00', 'year': u'2013', 'separator': u'T', 'day': u'05', 'minute': u'10'} with default timezone <iso8601.iso8601.Utc object at 0x18fad50> iso8601.iso8601: DEBUG: Got u'01' for 'tz_hour' with default None iso8601.iso8601: DEBUG: Got u'00' for 'tz_minute' with default None iso8601.iso8601: DEBUG: Got u'2013' for 'year' with default None iso8601.iso8601: DEBUG: Got u'11' for 'month' with default None iso8601.iso8601: DEBUG: Got u'05' for 'day' with default None iso8601.iso8601: DEBUG: Got u'06' for 'hour' with default None iso8601.iso8601: DEBUG: Got u'10' for 'minute' with default None iso8601.iso8601: DEBUG: Got u'47' for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x5617810>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x5617810>} iso8601.iso8601: DEBUG: Parsed 2013-11-05T06:10:47-01:00 into {'tz_sign': u'-', 'second_fraction': None, 'hour': u'06', 'tz_hour': u'01', 'month': u'11', 'timezone': u'-01:00', 'second': u'47', 'tz_minute': u'00', 'year': u'2013', 'separator': u'T', 'day': u'05', 'minute': u'10'} with default timezone <iso8601.iso8601.Utc object at 0x18fad50> iso8601.iso8601: DEBUG: Got u'01' for 'tz_hour' with default None iso8601.iso8601: DEBUG: Got u'00' for 'tz_minute' with default None iso8601.iso8601: DEBUG: Got u'2013' for 'year' with default None iso8601.iso8601: DEBUG: Got u'11' for 'month' with default None iso8601.iso8601: DEBUG: Got u'05' for 'day' with default None iso8601.iso8601: DEBUG: Got u'06' for 'hour' with default None iso8601.iso8601: DEBUG: Got u'10' for 'minute' with default None iso8601.iso8601: DEBUG: Got u'47' for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x5617810>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x5617810>} iso8601.iso8601: DEBUG: Parsed 2013-11-06T06:10:47Z into {'tz_sign': None, 'second_fraction': None, 'hour': u'06', 'tz_hour': None, 'month': u'11', 'timezone': u'Z', 'second': u'47', 'tz_minute': None, 'year': u'2013', 'separator': u'T', 'day': u'06', 'minute': u'10'} with default timezone <iso8601.iso8601.Utc object at 0x18fad50> iso8601.iso8601: DEBUG: Got u'2013' for 'year' with default None iso8601.iso8601: DEBUG: Got u'11' for 'month' with default None iso8601.iso8601: DEBUG: Got u'06' for 'day' with default None iso8601.iso8601: DEBUG: Got u'06' for 'hour' with default None iso8601.iso8601: DEBUG: Got u'10' for 'minute' with default None iso8601.iso8601: DEBUG: Got u'47' for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x5617810>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x5617810>} routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x5617810>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x5617810>} iso8601.iso8601: DEBUG: Parsed 2011-09-05 into {'tz_sign': None, 'second_fraction': None, 'hour': None, 'tz_hour': None, 'month': u'09', 'timezone': None, 'second': None, 'tz_minute': None, 'year': u'2011', 'separator': None, 'day': u'05', 'minute': None} with default timezone <iso8601.iso8601.Utc object at 0x18fad50> iso8601.iso8601: DEBUG: Got u'2011' for 'year' with default None iso8601.iso8601: DEBUG: Got u'09' for 'month' with default None iso8601.iso8601: DEBUG: Got u'05' for 'day' with default None iso8601.iso8601: DEBUG: Got None for 'hour' with default None iso8601.iso8601: DEBUG: Got None for 'minute' with default None iso8601.iso8601: DEBUG: Got None for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list --------------------- >> end captured logging << --------------------- ---------------------------------------------------------------------- XML: nosetests.xml Slowest 5 tests took 69.63 secs: [31m 15.61 TestGlanceControl.test_bouncing[0m [31m 14.09 TestScrubber.test_delayed_delete[0m [31m 13.82 TestGlanceControl.test_reload[0m [31m 13.56 TestGlanceControl.test_respawn[0m [31m 12.55 TestApi.test_unsupported_default_store[0m ---------------------------------------------------------------------- Ran 932 tests in 525.384s FAILED (SKIP=89, failures=2) ERROR: InvocationError: '<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/.tox/py27/bin/nosetests'> ___________________________________ summary ____________________________________ ERROR: py27: commands failed + result=1 + echo 'Begin pip freeze output from test virtualenv:' Begin pip freeze output from test virtualenv: + echo ====================================================================== ====================================================================== + .tox/py27/bin/pip freeze Babel==1.3 Jinja2==2.7.1 MarkupSafe==0.18 Paste==1.7.5.1 PasteDeploy==1.5.0 Pygments==1.6 Routes==1.13 SQLAlchemy==0.7.9 Sphinx==1.2b1 Tempita==0.5.1 WebOb==1.0.8 amqp==1.3.2 anyjson==0.3.3 argparse==1.2.1 boto==2.1.1 cffi==0.7.2 colorama==0.2.7 coverage==3.7 decorator==3.4.0 distribute==0.7.3 docutils==0.10 eventlet==0.14.0 glance==jenkins-periodic-glance-python27-stable-folsom-40 greenlet==0.4.1 httplib2==0.8 iso8601==0.1.8 jsonschema==2.2.0 kombu==3.0.2 lxml==3.2.3 mox==0.5.3 nose==1.3.0 nose-exclude==0.1.10 nosehtmloutput==0.0.5 openstack.nose-plugin==0.11 passlib==1.6.1 pep8==1.1 pycparser==2.10 pycrypto==2.6.1 pysendfile==2.0.0 python-swiftclient==1.8.0 pytz==2013.7 repoze.lru==0.6 requests==2.0.1 simplejson==3.3.1 sqlalchemy-migrate==0.7.2 termcolor==1.1.0 wsgiref==0.1.2 xattr==0.7.2 + echo ====================================================================== ====================================================================== + '[' -d .testrepository ']' + sudo /usr/local/jenkins/slave_scripts/jenkins-sudo-grep.sh post + sudoresult=0 + '[' 0 -ne 0 ']' + /usr/local/jenkins/slave_scripts/jenkins-oom-grep.sh post + oomresult=0 + '[' 0 -ne 0 ']' ++ find . -name nose_results.html + htmlreport=./nose_results.html + '[' -f ./nose_results.html ']' ++ grep -c 'tr class=.passClass' ./nose_results.html + passcount=95 + '[' 95 -eq 0 ']' + exit 1 + rm -rf /tmp/tmp.3DRKYzeLrT Build step 'Execute shell' marked build as failure [SCP] Connecting to static.openstack.org [SCP] uploading file: '/srv/static/logs/periodic/periodic-glance-python27-stable-folsom/40/nose_results.html' [SCP] Connecting to static.openstack.org [SCP] Trying to create /srv/static/logs/periodic/periodic-glance-python27-stable-folsom/precise5/40 [SCP] Copying console log.
See <https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/41/> ------------------------------------------ [...truncated 1275 lines...] File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/registry/client.py",> line 89, in do_request action, **kwargs) File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/common/client.py",> line 63, in wrapped return func(self, *args, **kwargs) File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/common/client.py",> line 444, in do_request headers=headers) File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/common/client.py",> line 80, in wrapped return func(self, method, url, body, headers) File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/common/client.py",> line 574, in _do_request raise exception.Invalid(res.read()) Invalid: 400 Bad Request The server could not comply with the request since it is either malformed or otherwise incorrect. Unrecognized changes-since value routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x553d290>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x553d290>} glance.api.policy: DEBUG: Loaded policy rules: {u'default': []} glance.common.client: DEBUG: Constructed URL: http://0.0.0.0:9191/images/detail?changes-since=2011-09-05 routes.middleware: DEBUG: Initialized with method overriding = True, and path info altering = True routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x4fe2dd0>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x4fe2dd0>} iso8601.iso8601: DEBUG: Parsed 2011-09-05 into {'tz_sign': None, 'second_fraction': None, 'hour': None, 'tz_hour': None, 'month': u'09', 'timezone': None, 'second': None, 'tz_minute': None, 'year': u'2011', 'separator': None, 'day': u'05', 'minute': None} with default timezone <iso8601.iso8601.Utc object at 0x2010d50> iso8601.iso8601: DEBUG: Got u'2011' for 'year' with default None iso8601.iso8601: DEBUG: Got u'09' for 'month' with default None iso8601.iso8601: DEBUG: Got u'05' for 'day' with default None iso8601.iso8601: DEBUG: Got None for 'hour' with default None iso8601.iso8601: DEBUG: Got None for 'minute' with default None iso8601.iso8601: DEBUG: Got None for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list glance.registry.client: DEBUG: Registry request GET /images/detail HTTP 200 request id req-4f58ddbf-6d00-40ce-b80a-3a8c807c2457 --------------------- >> end captured logging << --------------------- ====================================================================== FAIL: Tests that the /images/detail registry API returns list of ---------------------------------------------------------------------- Traceback (most recent call last): File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/tests/unit/v1/test_api.py",> line 1409, in test_get_details_filter_changes_since self.assertEquals(res.status_int, 400) AssertionError: 200 != 400 '200 != 400' = '%s != %s' % (safe_repr(200), safe_repr(400)) '200 != 400' = self._formatMessage('200 != 400', '200 != 400')
raise self.failureException('200 != 400')
-------------------- >> begin captured logging << -------------------- glance.store: DEBUG: Attempting to import store glance.store.filesystem.Store glance.store: DEBUG: Registering store <class 'glance.store.filesystem.Store'> with schemes ('file', 'filesystem') glance.store.base: DEBUG: Late loading location class glance.store.filesystem.StoreLocation glance.store.location: DEBUG: Registering scheme file with {'store_class': <class 'glance.store.filesystem.Store'>, 'location_class': <class 'glance.store.filesystem.StoreLocation'>} glance.store.location: DEBUG: Registering scheme filesystem with {'store_class': <class 'glance.store.filesystem.Store'>, 'location_class': <class 'glance.store.filesystem.StoreLocation'>} glance.store: DEBUG: Attempting to import store glance.store.http.Store glance.store: DEBUG: Registering store <class 'glance.store.http.Store'> with schemes ('http', 'https') glance.store.base: DEBUG: Late loading location class glance.store.http.StoreLocation glance.store.location: DEBUG: Registering scheme http with {'store_class': <class 'glance.store.http.Store'>, 'location_class': <class 'glance.store.http.StoreLocation'>} glance.store.location: DEBUG: Registering scheme https with {'store_class': <class 'glance.store.http.Store'>, 'location_class': <class 'glance.store.http.StoreLocation'>} glance.store: DEBUG: Attempting to import store glance.store.rbd.Store glance.store: DEBUG: Registering store <class 'glance.store.rbd.Store'> with schemes ('rbd',) glance.store.base: DEBUG: Late loading location class glance.store.rbd.StoreLocation glance.store.location: DEBUG: Registering scheme rbd with {'store_class': <class 'glance.store.rbd.Store'>, 'location_class': <class 'glance.store.rbd.StoreLocation'>} glance.store: DEBUG: Attempting to import store glance.store.s3.Store glance.store.s3: ERROR: Could not find s3_store_host in configuration options. glance.store.base: ERROR: Failed to configure store correctly. Disabling add method. glance.store: DEBUG: Registering store <class 'glance.store.s3.Store'> with schemes ('s3', 's3+http', 's3+https') glance.store.base: DEBUG: Late loading location class glance.store.s3.StoreLocation glance.store.location: DEBUG: Registering scheme s3 with {'store_class': <class 'glance.store.s3.Store'>, 'location_class': <class 'glance.store.s3.StoreLocation'>} glance.store.location: DEBUG: Registering scheme s3+http with {'store_class': <class 'glance.store.s3.Store'>, 'location_class': <class 'glance.store.s3.StoreLocation'>} glance.store.location: DEBUG: Registering scheme s3+https with {'store_class': <class 'glance.store.s3.Store'>, 'location_class': <class 'glance.store.s3.StoreLocation'>} glance.store: DEBUG: Attempting to import store glance.store.swift.Store glance.store.swift: ERROR: Could not find swift_store_auth_address in configuration options. glance.store.base: ERROR: Failed to configure store correctly. Disabling add method. glance.store: DEBUG: Registering store <class 'glance.store.swift.Store'> with schemes ('swift+https', 'swift', 'swift+http') glance.store.base: DEBUG: Late loading location class glance.store.swift.StoreLocation glance.store.location: DEBUG: Registering scheme swift+https with {'store_class': <class 'glance.store.swift.Store'>, 'location_class': <class 'glance.store.swift.StoreLocation'>} glance.store.location: DEBUG: Registering scheme swift+http with {'store_class': <class 'glance.store.swift.Store'>, 'location_class': <class 'glance.store.swift.StoreLocation'>} glance.store.location: DEBUG: Registering scheme swift with {'store_class': <class 'glance.store.swift.Store'>, 'location_class': <class 'glance.store.swift.StoreLocation'>} routes.middleware: DEBUG: Initialized with method overriding = True, and path info altering = True routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x4e8bc90>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x4e8bc90>} glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x4e8bc90>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x4e8bc90>} iso8601.iso8601: DEBUG: Parsed 2013-11-03T06:14:03Z into {'tz_sign': None, 'second_fraction': None, 'hour': u'06', 'tz_hour': None, 'month': u'11', 'timezone': u'Z', 'second': u'03', 'tz_minute': None, 'year': u'2013', 'separator': u'T', 'day': u'03', 'minute': u'14'} with default timezone <iso8601.iso8601.Utc object at 0x2010d50> iso8601.iso8601: DEBUG: Got u'2013' for 'year' with default None iso8601.iso8601: DEBUG: Got u'11' for 'month' with default None iso8601.iso8601: DEBUG: Got u'03' for 'day' with default None iso8601.iso8601: DEBUG: Got u'06' for 'hour' with default None iso8601.iso8601: DEBUG: Got u'14' for 'minute' with default None iso8601.iso8601: DEBUG: Got u'03' for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x4e8bc90>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x4e8bc90>} iso8601.iso8601: DEBUG: Parsed 2013-11-05T06:14:03Z into {'tz_sign': None, 'second_fraction': None, 'hour': u'06', 'tz_hour': None, 'month': u'11', 'timezone': u'Z', 'second': u'03', 'tz_minute': None, 'year': u'2013', 'separator': u'T', 'day': u'05', 'minute': u'14'} with default timezone <iso8601.iso8601.Utc object at 0x2010d50> iso8601.iso8601: DEBUG: Got u'2013' for 'year' with default None iso8601.iso8601: DEBUG: Got u'11' for 'month' with default None iso8601.iso8601: DEBUG: Got u'05' for 'day' with default None iso8601.iso8601: DEBUG: Got u'06' for 'hour' with default None iso8601.iso8601: DEBUG: Got u'14' for 'minute' with default None iso8601.iso8601: DEBUG: Got u'03' for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x4e8bc90>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x4e8bc90>} iso8601.iso8601: DEBUG: Parsed 2013-11-06T06:14:03+01:00 into {'tz_sign': u'+', 'second_fraction': None, 'hour': u'06', 'tz_hour': u'01', 'month': u'11', 'timezone': u'+01:00', 'second': u'03', 'tz_minute': u'00', 'year': u'2013', 'separator': u'T', 'day': u'06', 'minute': u'14'} with default timezone <iso8601.iso8601.Utc object at 0x2010d50> iso8601.iso8601: DEBUG: Got u'01' for 'tz_hour' with default None iso8601.iso8601: DEBUG: Got u'00' for 'tz_minute' with default None iso8601.iso8601: DEBUG: Got u'2013' for 'year' with default None iso8601.iso8601: DEBUG: Got u'11' for 'month' with default None iso8601.iso8601: DEBUG: Got u'06' for 'day' with default None iso8601.iso8601: DEBUG: Got u'06' for 'hour' with default None iso8601.iso8601: DEBUG: Got u'14' for 'minute' with default None iso8601.iso8601: DEBUG: Got u'03' for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x4e8bc90>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x4e8bc90>} iso8601.iso8601: DEBUG: Parsed 2013-11-06T06:14:03-01:00 into {'tz_sign': u'-', 'second_fraction': None, 'hour': u'06', 'tz_hour': u'01', 'month': u'11', 'timezone': u'-01:00', 'second': u'03', 'tz_minute': u'00', 'year': u'2013', 'separator': u'T', 'day': u'06', 'minute': u'14'} with default timezone <iso8601.iso8601.Utc object at 0x2010d50> iso8601.iso8601: DEBUG: Got u'01' for 'tz_hour' with default None iso8601.iso8601: DEBUG: Got u'00' for 'tz_minute' with default None iso8601.iso8601: DEBUG: Got u'2013' for 'year' with default None iso8601.iso8601: DEBUG: Got u'11' for 'month' with default None iso8601.iso8601: DEBUG: Got u'06' for 'day' with default None iso8601.iso8601: DEBUG: Got u'06' for 'hour' with default None iso8601.iso8601: DEBUG: Got u'14' for 'minute' with default None iso8601.iso8601: DEBUG: Got u'03' for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x4e8bc90>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x4e8bc90>} iso8601.iso8601: DEBUG: Parsed 2013-11-07T06:14:03Z into {'tz_sign': None, 'second_fraction': None, 'hour': u'06', 'tz_hour': None, 'month': u'11', 'timezone': u'Z', 'second': u'03', 'tz_minute': None, 'year': u'2013', 'separator': u'T', 'day': u'07', 'minute': u'14'} with default timezone <iso8601.iso8601.Utc object at 0x2010d50> iso8601.iso8601: DEBUG: Got u'2013' for 'year' with default None iso8601.iso8601: DEBUG: Got u'11' for 'month' with default None iso8601.iso8601: DEBUG: Got u'07' for 'day' with default None iso8601.iso8601: DEBUG: Got u'06' for 'hour' with default None iso8601.iso8601: DEBUG: Got u'14' for 'minute' with default None iso8601.iso8601: DEBUG: Got u'03' for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x4e8bc90>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x4e8bc90>} routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x4e8bc90>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x4e8bc90>} iso8601.iso8601: DEBUG: Parsed 2011-09-05 into {'tz_sign': None, 'second_fraction': None, 'hour': None, 'tz_hour': None, 'month': u'09', 'timezone': None, 'second': None, 'tz_minute': None, 'year': u'2011', 'separator': None, 'day': u'05', 'minute': None} with default timezone <iso8601.iso8601.Utc object at 0x2010d50> iso8601.iso8601: DEBUG: Got u'2011' for 'year' with default None iso8601.iso8601: DEBUG: Got u'09' for 'month' with default None iso8601.iso8601: DEBUG: Got u'05' for 'day' with default None iso8601.iso8601: DEBUG: Got None for 'hour' with default None iso8601.iso8601: DEBUG: Got None for 'minute' with default None iso8601.iso8601: DEBUG: Got None for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list --------------------- >> end captured logging << --------------------- ---------------------------------------------------------------------- XML: nosetests.xml Slowest 5 tests took 79.41 secs: [31m 16.85 TestGlanceControl.test_bouncing[0m [31m 16.31 TestScrubber.test_delayed_delete[0m [31m 15.64 TestRootApi.test_version_configurations[0m [31m 15.41 TestBinGlanceCacheManage.test_queue[0m [31m 15.21 TestBinGlance.test_results_filtering[0m ---------------------------------------------------------------------- Ran 932 tests in 700.999s FAILED (SKIP=89, failures=2) ERROR: InvocationError: '<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/.tox/py27/bin/nosetests'> ___________________________________ summary ____________________________________ ERROR: py27: commands failed + result=1 + echo 'Begin pip freeze output from test virtualenv:' Begin pip freeze output from test virtualenv: + echo ====================================================================== ====================================================================== + .tox/py27/bin/pip freeze Babel==1.3 Jinja2==2.7.1 MarkupSafe==0.18 Paste==1.7.5.1 PasteDeploy==1.5.0 Pygments==1.6 Routes==1.13 SQLAlchemy==0.7.9 Sphinx==1.2b1 Tempita==0.5.1 WebOb==1.0.8 amqp==1.3.2 anyjson==0.3.3 argparse==1.2.1 boto==2.1.1 cffi==0.7.2 colorama==0.2.7 coverage==3.7 decorator==3.4.0 distribute==0.7.3 docutils==0.10 eventlet==0.14.0 glance==jenkins-periodic-glance-python27-stable-folsom-41 greenlet==0.4.1 httplib2==0.8 iso8601==0.1.8 jsonschema==2.3.0 kombu==3.0.2 lxml==3.2.3 mox==0.5.3 nose==1.3.0 nose-exclude==0.1.10 nosehtmloutput==0.0.5 openstack.nose-plugin==0.11 passlib==1.6.1 pep8==1.1 pycparser==2.10 pycrypto==2.6.1 pysendfile==2.0.0 python-swiftclient==1.8.0 pytz==2013.7 repoze.lru==0.6 requests==2.0.1 simplejson==3.3.1 sqlalchemy-migrate==0.7.2 termcolor==1.1.0 wsgiref==0.1.2 xattr==0.7.2 + echo ====================================================================== ====================================================================== + '[' -d .testrepository ']' + sudo /usr/local/jenkins/slave_scripts/jenkins-sudo-grep.sh post + sudoresult=0 + '[' 0 -ne 0 ']' + /usr/local/jenkins/slave_scripts/jenkins-oom-grep.sh post + oomresult=0 + '[' 0 -ne 0 ']' ++ find . -name nose_results.html + htmlreport=./nose_results.html + '[' -f ./nose_results.html ']' ++ grep -c 'tr class=.passClass' ./nose_results.html + passcount=95 + '[' 95 -eq 0 ']' + exit 1 + rm -rf /tmp/tmp.2bDXHbstxW Build step 'Execute shell' marked build as failure [SCP] Connecting to static.openstack.org [SCP] uploading file: '/srv/static/logs/periodic/periodic-glance-python27-stable-folsom/41/nose_results.html' [SCP] Connecting to static.openstack.org [SCP] Trying to create /srv/static/logs/periodic/periodic-glance-python27-stable-folsom/precise9/41 [SCP] Copying console log.
See <https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/42/> ------------------------------------------ [...truncated 1275 lines...] File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/registry/client.py",> line 89, in do_request action, **kwargs) File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/common/client.py",> line 63, in wrapped return func(self, *args, **kwargs) File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/common/client.py",> line 444, in do_request headers=headers) File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/common/client.py",> line 80, in wrapped return func(self, method, url, body, headers) File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/common/client.py",> line 574, in _do_request raise exception.Invalid(res.read()) Invalid: 400 Bad Request The server could not comply with the request since it is either malformed or otherwise incorrect. Unrecognized changes-since value routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x506f790>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x506f790>} glance.api.policy: DEBUG: Loaded policy rules: {u'default': []} glance.common.client: DEBUG: Constructed URL: http://0.0.0.0:9191/images/detail?changes-since=2011-09-05 routes.middleware: DEBUG: Initialized with method overriding = True, and path info altering = True routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x3c82c90>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x3c82c90>} iso8601.iso8601: DEBUG: Parsed 2011-09-05 into {'tz_sign': None, 'second_fraction': None, 'hour': None, 'tz_hour': None, 'month': u'09', 'timezone': None, 'second': None, 'tz_minute': None, 'year': u'2011', 'separator': None, 'day': u'05', 'minute': None} with default timezone <iso8601.iso8601.Utc object at 0x1c7dd50> iso8601.iso8601: DEBUG: Got u'2011' for 'year' with default None iso8601.iso8601: DEBUG: Got u'09' for 'month' with default None iso8601.iso8601: DEBUG: Got u'05' for 'day' with default None iso8601.iso8601: DEBUG: Got None for 'hour' with default None iso8601.iso8601: DEBUG: Got None for 'minute' with default None iso8601.iso8601: DEBUG: Got None for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list glance.registry.client: DEBUG: Registry request GET /images/detail HTTP 200 request id req-09c74b37-3928-46e9-888f-fcf34bab833a --------------------- >> end captured logging << --------------------- ====================================================================== FAIL: Tests that the /images/detail registry API returns list of ---------------------------------------------------------------------- Traceback (most recent call last): File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/tests/unit/v1/test_api.py",> line 1409, in test_get_details_filter_changes_since self.assertEquals(res.status_int, 400) AssertionError: 200 != 400 '200 != 400' = '%s != %s' % (safe_repr(200), safe_repr(400)) '200 != 400' = self._formatMessage('200 != 400', '200 != 400')
raise self.failureException('200 != 400')
-------------------- >> begin captured logging << -------------------- glance.store: DEBUG: Attempting to import store glance.store.filesystem.Store glance.store: DEBUG: Registering store <class 'glance.store.filesystem.Store'> with schemes ('file', 'filesystem') glance.store.base: DEBUG: Late loading location class glance.store.filesystem.StoreLocation glance.store.location: DEBUG: Registering scheme file with {'store_class': <class 'glance.store.filesystem.Store'>, 'location_class': <class 'glance.store.filesystem.StoreLocation'>} glance.store.location: DEBUG: Registering scheme filesystem with {'store_class': <class 'glance.store.filesystem.Store'>, 'location_class': <class 'glance.store.filesystem.StoreLocation'>} glance.store: DEBUG: Attempting to import store glance.store.http.Store glance.store: DEBUG: Registering store <class 'glance.store.http.Store'> with schemes ('http', 'https') glance.store.base: DEBUG: Late loading location class glance.store.http.StoreLocation glance.store.location: DEBUG: Registering scheme http with {'store_class': <class 'glance.store.http.Store'>, 'location_class': <class 'glance.store.http.StoreLocation'>} glance.store.location: DEBUG: Registering scheme https with {'store_class': <class 'glance.store.http.Store'>, 'location_class': <class 'glance.store.http.StoreLocation'>} glance.store: DEBUG: Attempting to import store glance.store.rbd.Store glance.store: DEBUG: Registering store <class 'glance.store.rbd.Store'> with schemes ('rbd',) glance.store.base: DEBUG: Late loading location class glance.store.rbd.StoreLocation glance.store.location: DEBUG: Registering scheme rbd with {'store_class': <class 'glance.store.rbd.Store'>, 'location_class': <class 'glance.store.rbd.StoreLocation'>} glance.store: DEBUG: Attempting to import store glance.store.s3.Store glance.store.s3: ERROR: Could not find s3_store_host in configuration options. glance.store.base: ERROR: Failed to configure store correctly. Disabling add method. glance.store: DEBUG: Registering store <class 'glance.store.s3.Store'> with schemes ('s3', 's3+http', 's3+https') glance.store.base: DEBUG: Late loading location class glance.store.s3.StoreLocation glance.store.location: DEBUG: Registering scheme s3 with {'store_class': <class 'glance.store.s3.Store'>, 'location_class': <class 'glance.store.s3.StoreLocation'>} glance.store.location: DEBUG: Registering scheme s3+http with {'store_class': <class 'glance.store.s3.Store'>, 'location_class': <class 'glance.store.s3.StoreLocation'>} glance.store.location: DEBUG: Registering scheme s3+https with {'store_class': <class 'glance.store.s3.Store'>, 'location_class': <class 'glance.store.s3.StoreLocation'>} glance.store: DEBUG: Attempting to import store glance.store.swift.Store glance.store.swift: ERROR: Could not find swift_store_auth_address in configuration options. glance.store.base: ERROR: Failed to configure store correctly. Disabling add method. glance.store: DEBUG: Registering store <class 'glance.store.swift.Store'> with schemes ('swift+https', 'swift', 'swift+http') glance.store.base: DEBUG: Late loading location class glance.store.swift.StoreLocation glance.store.location: DEBUG: Registering scheme swift+https with {'store_class': <class 'glance.store.swift.Store'>, 'location_class': <class 'glance.store.swift.StoreLocation'>} glance.store.location: DEBUG: Registering scheme swift+http with {'store_class': <class 'glance.store.swift.Store'>, 'location_class': <class 'glance.store.swift.StoreLocation'>} glance.store.location: DEBUG: Registering scheme swift with {'store_class': <class 'glance.store.swift.Store'>, 'location_class': <class 'glance.store.swift.StoreLocation'>} routes.middleware: DEBUG: Initialized with method overriding = True, and path info altering = True routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x5abff90>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x5abff90>} glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x5abff90>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x5abff90>} iso8601.iso8601: DEBUG: Parsed 2013-11-08T06:08:16Z into {'tz_sign': None, 'second_fraction': None, 'hour': u'06', 'tz_hour': None, 'month': u'11', 'timezone': u'Z', 'second': u'16', 'tz_minute': None, 'year': u'2013', 'separator': u'T', 'day': u'08', 'minute': u'08'} with default timezone <iso8601.iso8601.Utc object at 0x1c7dd50> iso8601.iso8601: DEBUG: Got u'2013' for 'year' with default None iso8601.iso8601: DEBUG: Got u'11' for 'month' with default None iso8601.iso8601: DEBUG: Got u'08' for 'day' with default None iso8601.iso8601: DEBUG: Got u'06' for 'hour' with default None iso8601.iso8601: DEBUG: Got u'08' for 'minute' with default None iso8601.iso8601: DEBUG: Got u'16' for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x5abff90>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x5abff90>} iso8601.iso8601: DEBUG: Parsed 2013-11-10T06:08:16Z into {'tz_sign': None, 'second_fraction': None, 'hour': u'06', 'tz_hour': None, 'month': u'11', 'timezone': u'Z', 'second': u'16', 'tz_minute': None, 'year': u'2013', 'separator': u'T', 'day': u'10', 'minute': u'08'} with default timezone <iso8601.iso8601.Utc object at 0x1c7dd50> iso8601.iso8601: DEBUG: Got u'2013' for 'year' with default None iso8601.iso8601: DEBUG: Got u'11' for 'month' with default None iso8601.iso8601: DEBUG: Got u'10' for 'day' with default None iso8601.iso8601: DEBUG: Got u'06' for 'hour' with default None iso8601.iso8601: DEBUG: Got u'08' for 'minute' with default None iso8601.iso8601: DEBUG: Got u'16' for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x5abff90>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x5abff90>} iso8601.iso8601: DEBUG: Parsed 2013-11-11T06:08:16+01:00 into {'tz_sign': u'+', 'second_fraction': None, 'hour': u'06', 'tz_hour': u'01', 'month': u'11', 'timezone': u'+01:00', 'second': u'16', 'tz_minute': u'00', 'year': u'2013', 'separator': u'T', 'day': u'11', 'minute': u'08'} with default timezone <iso8601.iso8601.Utc object at 0x1c7dd50> iso8601.iso8601: DEBUG: Got u'01' for 'tz_hour' with default None iso8601.iso8601: DEBUG: Got u'00' for 'tz_minute' with default None iso8601.iso8601: DEBUG: Got u'2013' for 'year' with default None iso8601.iso8601: DEBUG: Got u'11' for 'month' with default None iso8601.iso8601: DEBUG: Got u'11' for 'day' with default None iso8601.iso8601: DEBUG: Got u'06' for 'hour' with default None iso8601.iso8601: DEBUG: Got u'08' for 'minute' with default None iso8601.iso8601: DEBUG: Got u'16' for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x5abff90>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x5abff90>} iso8601.iso8601: DEBUG: Parsed 2013-11-11T06:08:16-01:00 into {'tz_sign': u'-', 'second_fraction': None, 'hour': u'06', 'tz_hour': u'01', 'month': u'11', 'timezone': u'-01:00', 'second': u'16', 'tz_minute': u'00', 'year': u'2013', 'separator': u'T', 'day': u'11', 'minute': u'08'} with default timezone <iso8601.iso8601.Utc object at 0x1c7dd50> iso8601.iso8601: DEBUG: Got u'01' for 'tz_hour' with default None iso8601.iso8601: DEBUG: Got u'00' for 'tz_minute' with default None iso8601.iso8601: DEBUG: Got u'2013' for 'year' with default None iso8601.iso8601: DEBUG: Got u'11' for 'month' with default None iso8601.iso8601: DEBUG: Got u'11' for 'day' with default None iso8601.iso8601: DEBUG: Got u'06' for 'hour' with default None iso8601.iso8601: DEBUG: Got u'08' for 'minute' with default None iso8601.iso8601: DEBUG: Got u'16' for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x5abff90>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x5abff90>} iso8601.iso8601: DEBUG: Parsed 2013-11-12T06:08:16Z into {'tz_sign': None, 'second_fraction': None, 'hour': u'06', 'tz_hour': None, 'month': u'11', 'timezone': u'Z', 'second': u'16', 'tz_minute': None, 'year': u'2013', 'separator': u'T', 'day': u'12', 'minute': u'08'} with default timezone <iso8601.iso8601.Utc object at 0x1c7dd50> iso8601.iso8601: DEBUG: Got u'2013' for 'year' with default None iso8601.iso8601: DEBUG: Got u'11' for 'month' with default None iso8601.iso8601: DEBUG: Got u'12' for 'day' with default None iso8601.iso8601: DEBUG: Got u'06' for 'hour' with default None iso8601.iso8601: DEBUG: Got u'08' for 'minute' with default None iso8601.iso8601: DEBUG: Got u'16' for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x5abff90>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x5abff90>} routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x5abff90>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x5abff90>} iso8601.iso8601: DEBUG: Parsed 2011-09-05 into {'tz_sign': None, 'second_fraction': None, 'hour': None, 'tz_hour': None, 'month': u'09', 'timezone': None, 'second': None, 'tz_minute': None, 'year': u'2011', 'separator': None, 'day': u'05', 'minute': None} with default timezone <iso8601.iso8601.Utc object at 0x1c7dd50> iso8601.iso8601: DEBUG: Got u'2011' for 'year' with default None iso8601.iso8601: DEBUG: Got u'09' for 'month' with default None iso8601.iso8601: DEBUG: Got u'05' for 'day' with default None iso8601.iso8601: DEBUG: Got None for 'hour' with default None iso8601.iso8601: DEBUG: Got None for 'minute' with default None iso8601.iso8601: DEBUG: Got None for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list --------------------- >> end captured logging << --------------------- ---------------------------------------------------------------------- XML: nosetests.xml Slowest 5 tests took 64.49 secs: [31m 13.49 TestGlanceControl.test_bouncing[0m [31m 13.09 TestGlanceControl.test_reload[0m [31m 13.03 TestScrubber.test_delayed_delete[0m [31m 12.88 TestGlanceControl.test_respawn[0m [31m 12.00 TestApi.test_unsupported_default_store[0m ---------------------------------------------------------------------- Ran 932 tests in 401.966s FAILED (SKIP=89, failures=2) ERROR: InvocationError: '<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/.tox/py27/bin/nosetests'> ___________________________________ summary ____________________________________ ERROR: py27: commands failed + result=1 + echo 'Begin pip freeze output from test virtualenv:' Begin pip freeze output from test virtualenv: + echo ====================================================================== ====================================================================== + .tox/py27/bin/pip freeze Babel==1.3 Jinja2==2.7.1 MarkupSafe==0.18 Paste==1.7.5.1 PasteDeploy==1.5.0 Pygments==1.6 Routes==1.13 SQLAlchemy==0.7.9 Sphinx==1.2b1 Tempita==0.5.1 WebOb==1.0.8 amqp==1.3.2 anyjson==0.3.3 argparse==1.2.1 boto==2.1.1 cffi==0.7.2 colorama==0.2.7 coverage==3.7 decorator==3.4.0 distribute==0.7.3 docutils==0.10 eventlet==0.14.0 glance==jenkins-periodic-glance-python27-stable-folsom-42 greenlet==0.4.1 httplib2==0.8 iso8601==0.1.8 jsonschema==2.3.0 kombu==3.0.3 lxml==3.2.4 mox==0.5.3 nose==1.3.0 nose-exclude==0.1.10 nosehtmloutput==0.0.5 openstack.nose-plugin==0.11 passlib==1.6.1 pep8==1.1 pycparser==2.10 pycrypto==2.6.1 pysendfile==2.0.0 python-swiftclient==1.8.0 pytz==2013.8 repoze.lru==0.6 requests==2.0.1 simplejson==3.3.1 sqlalchemy-migrate==0.7.2 termcolor==1.1.0 wsgiref==0.1.2 xattr==0.7.2 + echo ====================================================================== ====================================================================== + '[' -d .testrepository ']' + sudo /usr/local/jenkins/slave_scripts/jenkins-sudo-grep.sh post + sudoresult=0 + '[' 0 -ne 0 ']' + /usr/local/jenkins/slave_scripts/jenkins-oom-grep.sh post + oomresult=0 + '[' 0 -ne 0 ']' ++ find . -name nose_results.html + htmlreport=./nose_results.html + '[' -f ./nose_results.html ']' ++ grep -c 'tr class=.passClass' ./nose_results.html + passcount=95 + '[' 95 -eq 0 ']' + exit 1 + rm -rf /tmp/tmp.49lj4758GM Build step 'Execute shell' marked build as failure [SCP] Connecting to static.openstack.org [SCP] uploading file: '/srv/static/logs/periodic/periodic-glance-python27-stable-folsom/42/nose_results.html' [SCP] Connecting to static.openstack.org [SCP] Trying to create /srv/static/logs/periodic/periodic-glance-python27-stable-folsom/precise35/42 [SCP] Copying console log.
See <https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/43/> ------------------------------------------ [...truncated 1275 lines...] File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/registry/client.py",> line 89, in do_request action, **kwargs) File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/common/client.py",> line 63, in wrapped return func(self, *args, **kwargs) File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/common/client.py",> line 444, in do_request headers=headers) File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/common/client.py",> line 80, in wrapped return func(self, method, url, body, headers) File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/common/client.py",> line 574, in _do_request raise exception.Invalid(res.read()) Invalid: 400 Bad Request The server could not comply with the request since it is either malformed or otherwise incorrect. Unrecognized changes-since value routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x4479790>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x4479790>} glance.api.policy: DEBUG: Loaded policy rules: {u'default': []} glance.common.client: DEBUG: Constructed URL: http://0.0.0.0:9191/images/detail?changes-since=2011-09-05 routes.middleware: DEBUG: Initialized with method overriding = True, and path info altering = True routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x3cec650>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x3cec650>} iso8601.iso8601: DEBUG: Parsed 2011-09-05 into {'tz_sign': None, 'second_fraction': None, 'hour': None, 'tz_hour': None, 'month': u'09', 'timezone': None, 'second': None, 'tz_minute': None, 'year': u'2011', 'separator': None, 'day': u'05', 'minute': None} with default timezone <iso8601.iso8601.Utc object at 0x1367d50> iso8601.iso8601: DEBUG: Got u'2011' for 'year' with default None iso8601.iso8601: DEBUG: Got u'09' for 'month' with default None iso8601.iso8601: DEBUG: Got u'05' for 'day' with default None iso8601.iso8601: DEBUG: Got None for 'hour' with default None iso8601.iso8601: DEBUG: Got None for 'minute' with default None iso8601.iso8601: DEBUG: Got None for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list glance.registry.client: DEBUG: Registry request GET /images/detail HTTP 200 request id req-c03ba4b4-4237-4dba-80c2-66491504db98 --------------------- >> end captured logging << --------------------- ====================================================================== FAIL: Tests that the /images/detail registry API returns list of ---------------------------------------------------------------------- Traceback (most recent call last): File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/tests/unit/v1/test_api.py",> line 1409, in test_get_details_filter_changes_since self.assertEquals(res.status_int, 400) AssertionError: 200 != 400 '200 != 400' = '%s != %s' % (safe_repr(200), safe_repr(400)) '200 != 400' = self._formatMessage('200 != 400', '200 != 400')
raise self.failureException('200 != 400')
-------------------- >> begin captured logging << -------------------- glance.store: DEBUG: Attempting to import store glance.store.filesystem.Store glance.store: DEBUG: Registering store <class 'glance.store.filesystem.Store'> with schemes ('file', 'filesystem') glance.store.base: DEBUG: Late loading location class glance.store.filesystem.StoreLocation glance.store.location: DEBUG: Registering scheme file with {'store_class': <class 'glance.store.filesystem.Store'>, 'location_class': <class 'glance.store.filesystem.StoreLocation'>} glance.store.location: DEBUG: Registering scheme filesystem with {'store_class': <class 'glance.store.filesystem.Store'>, 'location_class': <class 'glance.store.filesystem.StoreLocation'>} glance.store: DEBUG: Attempting to import store glance.store.http.Store glance.store: DEBUG: Registering store <class 'glance.store.http.Store'> with schemes ('http', 'https') glance.store.base: DEBUG: Late loading location class glance.store.http.StoreLocation glance.store.location: DEBUG: Registering scheme http with {'store_class': <class 'glance.store.http.Store'>, 'location_class': <class 'glance.store.http.StoreLocation'>} glance.store.location: DEBUG: Registering scheme https with {'store_class': <class 'glance.store.http.Store'>, 'location_class': <class 'glance.store.http.StoreLocation'>} glance.store: DEBUG: Attempting to import store glance.store.rbd.Store glance.store: DEBUG: Registering store <class 'glance.store.rbd.Store'> with schemes ('rbd',) glance.store.base: DEBUG: Late loading location class glance.store.rbd.StoreLocation glance.store.location: DEBUG: Registering scheme rbd with {'store_class': <class 'glance.store.rbd.Store'>, 'location_class': <class 'glance.store.rbd.StoreLocation'>} glance.store: DEBUG: Attempting to import store glance.store.s3.Store glance.store.s3: ERROR: Could not find s3_store_host in configuration options. glance.store.base: ERROR: Failed to configure store correctly. Disabling add method. glance.store: DEBUG: Registering store <class 'glance.store.s3.Store'> with schemes ('s3', 's3+http', 's3+https') glance.store.base: DEBUG: Late loading location class glance.store.s3.StoreLocation glance.store.location: DEBUG: Registering scheme s3 with {'store_class': <class 'glance.store.s3.Store'>, 'location_class': <class 'glance.store.s3.StoreLocation'>} glance.store.location: DEBUG: Registering scheme s3+http with {'store_class': <class 'glance.store.s3.Store'>, 'location_class': <class 'glance.store.s3.StoreLocation'>} glance.store.location: DEBUG: Registering scheme s3+https with {'store_class': <class 'glance.store.s3.Store'>, 'location_class': <class 'glance.store.s3.StoreLocation'>} glance.store: DEBUG: Attempting to import store glance.store.swift.Store glance.store.swift: ERROR: Could not find swift_store_auth_address in configuration options. glance.store.base: ERROR: Failed to configure store correctly. Disabling add method. glance.store: DEBUG: Registering store <class 'glance.store.swift.Store'> with schemes ('swift+https', 'swift', 'swift+http') glance.store.base: DEBUG: Late loading location class glance.store.swift.StoreLocation glance.store.location: DEBUG: Registering scheme swift+https with {'store_class': <class 'glance.store.swift.Store'>, 'location_class': <class 'glance.store.swift.StoreLocation'>} glance.store.location: DEBUG: Registering scheme swift+http with {'store_class': <class 'glance.store.swift.Store'>, 'location_class': <class 'glance.store.swift.StoreLocation'>} glance.store.location: DEBUG: Registering scheme swift with {'store_class': <class 'glance.store.swift.Store'>, 'location_class': <class 'glance.store.swift.StoreLocation'>} routes.middleware: DEBUG: Initialized with method overriding = True, and path info altering = True routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x50727d0>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x50727d0>} glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x50727d0>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x50727d0>} iso8601.iso8601: DEBUG: Parsed 2013-11-09T06:07:17Z into {'tz_sign': None, 'second_fraction': None, 'hour': u'06', 'tz_hour': None, 'month': u'11', 'timezone': u'Z', 'second': u'17', 'tz_minute': None, 'year': u'2013', 'separator': u'T', 'day': u'09', 'minute': u'07'} with default timezone <iso8601.iso8601.Utc object at 0x1367d50> iso8601.iso8601: DEBUG: Got u'2013' for 'year' with default None iso8601.iso8601: DEBUG: Got u'11' for 'month' with default None iso8601.iso8601: DEBUG: Got u'09' for 'day' with default None iso8601.iso8601: DEBUG: Got u'06' for 'hour' with default None iso8601.iso8601: DEBUG: Got u'07' for 'minute' with default None iso8601.iso8601: DEBUG: Got u'17' for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x50727d0>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x50727d0>} iso8601.iso8601: DEBUG: Parsed 2013-11-11T06:07:17Z into {'tz_sign': None, 'second_fraction': None, 'hour': u'06', 'tz_hour': None, 'month': u'11', 'timezone': u'Z', 'second': u'17', 'tz_minute': None, 'year': u'2013', 'separator': u'T', 'day': u'11', 'minute': u'07'} with default timezone <iso8601.iso8601.Utc object at 0x1367d50> iso8601.iso8601: DEBUG: Got u'2013' for 'year' with default None iso8601.iso8601: DEBUG: Got u'11' for 'month' with default None iso8601.iso8601: DEBUG: Got u'11' for 'day' with default None iso8601.iso8601: DEBUG: Got u'06' for 'hour' with default None iso8601.iso8601: DEBUG: Got u'07' for 'minute' with default None iso8601.iso8601: DEBUG: Got u'17' for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x50727d0>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x50727d0>} iso8601.iso8601: DEBUG: Parsed 2013-11-12T06:07:17+01:00 into {'tz_sign': u'+', 'second_fraction': None, 'hour': u'06', 'tz_hour': u'01', 'month': u'11', 'timezone': u'+01:00', 'second': u'17', 'tz_minute': u'00', 'year': u'2013', 'separator': u'T', 'day': u'12', 'minute': u'07'} with default timezone <iso8601.iso8601.Utc object at 0x1367d50> iso8601.iso8601: DEBUG: Got u'01' for 'tz_hour' with default None iso8601.iso8601: DEBUG: Got u'00' for 'tz_minute' with default None iso8601.iso8601: DEBUG: Got u'2013' for 'year' with default None iso8601.iso8601: DEBUG: Got u'11' for 'month' with default None iso8601.iso8601: DEBUG: Got u'12' for 'day' with default None iso8601.iso8601: DEBUG: Got u'06' for 'hour' with default None iso8601.iso8601: DEBUG: Got u'07' for 'minute' with default None iso8601.iso8601: DEBUG: Got u'17' for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x50727d0>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x50727d0>} iso8601.iso8601: DEBUG: Parsed 2013-11-12T06:07:17-01:00 into {'tz_sign': u'-', 'second_fraction': None, 'hour': u'06', 'tz_hour': u'01', 'month': u'11', 'timezone': u'-01:00', 'second': u'17', 'tz_minute': u'00', 'year': u'2013', 'separator': u'T', 'day': u'12', 'minute': u'07'} with default timezone <iso8601.iso8601.Utc object at 0x1367d50> iso8601.iso8601: DEBUG: Got u'01' for 'tz_hour' with default None iso8601.iso8601: DEBUG: Got u'00' for 'tz_minute' with default None iso8601.iso8601: DEBUG: Got u'2013' for 'year' with default None iso8601.iso8601: DEBUG: Got u'11' for 'month' with default None iso8601.iso8601: DEBUG: Got u'12' for 'day' with default None iso8601.iso8601: DEBUG: Got u'06' for 'hour' with default None iso8601.iso8601: DEBUG: Got u'07' for 'minute' with default None iso8601.iso8601: DEBUG: Got u'17' for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x50727d0>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x50727d0>} iso8601.iso8601: DEBUG: Parsed 2013-11-13T06:07:17Z into {'tz_sign': None, 'second_fraction': None, 'hour': u'06', 'tz_hour': None, 'month': u'11', 'timezone': u'Z', 'second': u'17', 'tz_minute': None, 'year': u'2013', 'separator': u'T', 'day': u'13', 'minute': u'07'} with default timezone <iso8601.iso8601.Utc object at 0x1367d50> iso8601.iso8601: DEBUG: Got u'2013' for 'year' with default None iso8601.iso8601: DEBUG: Got u'11' for 'month' with default None iso8601.iso8601: DEBUG: Got u'13' for 'day' with default None iso8601.iso8601: DEBUG: Got u'06' for 'hour' with default None iso8601.iso8601: DEBUG: Got u'07' for 'minute' with default None iso8601.iso8601: DEBUG: Got u'17' for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x50727d0>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x50727d0>} routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x50727d0>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x50727d0>} iso8601.iso8601: DEBUG: Parsed 2011-09-05 into {'tz_sign': None, 'second_fraction': None, 'hour': None, 'tz_hour': None, 'month': u'09', 'timezone': None, 'second': None, 'tz_minute': None, 'year': u'2011', 'separator': None, 'day': u'05', 'minute': None} with default timezone <iso8601.iso8601.Utc object at 0x1367d50> iso8601.iso8601: DEBUG: Got u'2011' for 'year' with default None iso8601.iso8601: DEBUG: Got u'09' for 'month' with default None iso8601.iso8601: DEBUG: Got u'05' for 'day' with default None iso8601.iso8601: DEBUG: Got None for 'hour' with default None iso8601.iso8601: DEBUG: Got None for 'minute' with default None iso8601.iso8601: DEBUG: Got None for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list --------------------- >> end captured logging << --------------------- ---------------------------------------------------------------------- XML: nosetests.xml Slowest 5 tests took 63.93 secs: [31m 13.07 TestGlanceControl.test_reload[0m [31m 13.02 TestScrubber.test_delayed_delete[0m [31m 12.97 TestGlanceControl.test_bouncing[0m [31m 12.89 TestGlanceControl.test_respawn[0m [31m 11.99 TestApi.test_unsupported_default_store[0m ---------------------------------------------------------------------- Ran 932 tests in 402.084s FAILED (SKIP=89, failures=2) ERROR: InvocationError: '<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/.tox/py27/bin/nosetests'> ___________________________________ summary ____________________________________ ERROR: py27: commands failed + result=1 + echo 'Begin pip freeze output from test virtualenv:' Begin pip freeze output from test virtualenv: + echo ====================================================================== ====================================================================== + .tox/py27/bin/pip freeze Babel==1.3 Jinja2==2.7.1 MarkupSafe==0.18 Paste==1.7.5.1 PasteDeploy==1.5.0 Pygments==1.6 Routes==1.13 SQLAlchemy==0.7.9 Sphinx==1.2b1 Tempita==0.5.1 WebOb==1.0.8 amqp==1.3.2 anyjson==0.3.3 argparse==1.2.1 boto==2.1.1 cffi==0.7.2 colorama==0.2.7 coverage==3.7 decorator==3.4.0 distribute==0.7.3 docutils==0.10 eventlet==0.14.0 glance==jenkins-periodic-glance-python27-stable-folsom-43 greenlet==0.4.1 httplib2==0.8 iso8601==0.1.8 jsonschema==2.3.0 kombu==3.0.4 lxml==3.2.4 mox==0.5.3 nose==1.3.0 nose-exclude==0.1.10 nosehtmloutput==0.0.5 openstack.nose-plugin==0.11 passlib==1.6.1 pep8==1.1 pycparser==2.10 pycrypto==2.6.1 pysendfile==2.0.0 python-swiftclient==1.8.0 pytz==2013.8 repoze.lru==0.6 requests==2.0.1 simplejson==3.3.1 sqlalchemy-migrate==0.7.2 termcolor==1.1.0 wsgiref==0.1.2 xattr==0.7.2 + echo ====================================================================== ====================================================================== + '[' -d .testrepository ']' + sudo /usr/local/jenkins/slave_scripts/jenkins-sudo-grep.sh post + sudoresult=0 + '[' 0 -ne 0 ']' + /usr/local/jenkins/slave_scripts/jenkins-oom-grep.sh post + oomresult=0 + '[' 0 -ne 0 ']' ++ find . -name nose_results.html + htmlreport=./nose_results.html + '[' -f ./nose_results.html ']' ++ grep -c 'tr class=.passClass' ./nose_results.html + passcount=95 + '[' 95 -eq 0 ']' + exit 1 + rm -rf /tmp/tmp.eJSbKiMmG8 Build step 'Execute shell' marked build as failure [SCP] Connecting to static.openstack.org [SCP] uploading file: '/srv/static/logs/periodic/periodic-glance-python27-stable-folsom/43/nose_results.html' [SCP] Connecting to static.openstack.org [SCP] Trying to create /srv/static/logs/periodic/periodic-glance-python27-stable-folsom/precise35/43 [SCP] Copying console log.
See <https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/44/> ------------------------------------------ [...truncated 1275 lines...] File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/registry/client.py",> line 89, in do_request action, **kwargs) File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/common/client.py",> line 63, in wrapped return func(self, *args, **kwargs) File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/common/client.py",> line 444, in do_request headers=headers) File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/common/client.py",> line 80, in wrapped return func(self, method, url, body, headers) File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/common/client.py",> line 574, in _do_request raise exception.Invalid(res.read()) Invalid: 400 Bad Request The server could not comply with the request since it is either malformed or otherwise incorrect. Unrecognized changes-since value routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x5d9e6d0>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x5d9e6d0>} glance.api.policy: DEBUG: Loaded policy rules: {u'default': []} glance.common.client: DEBUG: Constructed URL: http://0.0.0.0:9191/images/detail?changes-since=2011-09-05 routes.middleware: DEBUG: Initialized with method overriding = True, and path info altering = True routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x5035b50>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x5035b50>} iso8601.iso8601: DEBUG: Parsed 2011-09-05 into {'tz_sign': None, 'second_fraction': None, 'hour': None, 'tz_hour': None, 'month': u'09', 'timezone': None, 'second': None, 'tz_minute': None, 'year': u'2011', 'separator': None, 'day': u'05', 'minute': None} with default timezone <iso8601.iso8601.Utc object at 0x2873d50> iso8601.iso8601: DEBUG: Got u'2011' for 'year' with default None iso8601.iso8601: DEBUG: Got u'09' for 'month' with default None iso8601.iso8601: DEBUG: Got u'05' for 'day' with default None iso8601.iso8601: DEBUG: Got None for 'hour' with default None iso8601.iso8601: DEBUG: Got None for 'minute' with default None iso8601.iso8601: DEBUG: Got None for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list glance.registry.client: DEBUG: Registry request GET /images/detail HTTP 200 request id req-ead65a78-c78c-4040-bd49-fdd5d4e18860 --------------------- >> end captured logging << --------------------- ====================================================================== FAIL: Tests that the /images/detail registry API returns list of ---------------------------------------------------------------------- Traceback (most recent call last): File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/tests/unit/v1/test_api.py",> line 1409, in test_get_details_filter_changes_since self.assertEquals(res.status_int, 400) AssertionError: 200 != 400 '200 != 400' = '%s != %s' % (safe_repr(200), safe_repr(400)) '200 != 400' = self._formatMessage('200 != 400', '200 != 400')
raise self.failureException('200 != 400')
-------------------- >> begin captured logging << -------------------- glance.store: DEBUG: Attempting to import store glance.store.filesystem.Store glance.store: DEBUG: Registering store <class 'glance.store.filesystem.Store'> with schemes ('file', 'filesystem') glance.store.base: DEBUG: Late loading location class glance.store.filesystem.StoreLocation glance.store.location: DEBUG: Registering scheme file with {'store_class': <class 'glance.store.filesystem.Store'>, 'location_class': <class 'glance.store.filesystem.StoreLocation'>} glance.store.location: DEBUG: Registering scheme filesystem with {'store_class': <class 'glance.store.filesystem.Store'>, 'location_class': <class 'glance.store.filesystem.StoreLocation'>} glance.store: DEBUG: Attempting to import store glance.store.http.Store glance.store: DEBUG: Registering store <class 'glance.store.http.Store'> with schemes ('http', 'https') glance.store.base: DEBUG: Late loading location class glance.store.http.StoreLocation glance.store.location: DEBUG: Registering scheme http with {'store_class': <class 'glance.store.http.Store'>, 'location_class': <class 'glance.store.http.StoreLocation'>} glance.store.location: DEBUG: Registering scheme https with {'store_class': <class 'glance.store.http.Store'>, 'location_class': <class 'glance.store.http.StoreLocation'>} glance.store: DEBUG: Attempting to import store glance.store.rbd.Store glance.store: DEBUG: Registering store <class 'glance.store.rbd.Store'> with schemes ('rbd',) glance.store.base: DEBUG: Late loading location class glance.store.rbd.StoreLocation glance.store.location: DEBUG: Registering scheme rbd with {'store_class': <class 'glance.store.rbd.Store'>, 'location_class': <class 'glance.store.rbd.StoreLocation'>} glance.store: DEBUG: Attempting to import store glance.store.s3.Store glance.store.s3: ERROR: Could not find s3_store_host in configuration options. glance.store.base: ERROR: Failed to configure store correctly. Disabling add method. glance.store: DEBUG: Registering store <class 'glance.store.s3.Store'> with schemes ('s3', 's3+http', 's3+https') glance.store.base: DEBUG: Late loading location class glance.store.s3.StoreLocation glance.store.location: DEBUG: Registering scheme s3 with {'store_class': <class 'glance.store.s3.Store'>, 'location_class': <class 'glance.store.s3.StoreLocation'>} glance.store.location: DEBUG: Registering scheme s3+http with {'store_class': <class 'glance.store.s3.Store'>, 'location_class': <class 'glance.store.s3.StoreLocation'>} glance.store.location: DEBUG: Registering scheme s3+https with {'store_class': <class 'glance.store.s3.Store'>, 'location_class': <class 'glance.store.s3.StoreLocation'>} glance.store: DEBUG: Attempting to import store glance.store.swift.Store glance.store.swift: ERROR: Could not find swift_store_auth_address in configuration options. glance.store.base: ERROR: Failed to configure store correctly. Disabling add method. glance.store: DEBUG: Registering store <class 'glance.store.swift.Store'> with schemes ('swift+https', 'swift', 'swift+http') glance.store.base: DEBUG: Late loading location class glance.store.swift.StoreLocation glance.store.location: DEBUG: Registering scheme swift+https with {'store_class': <class 'glance.store.swift.Store'>, 'location_class': <class 'glance.store.swift.StoreLocation'>} glance.store.location: DEBUG: Registering scheme swift+http with {'store_class': <class 'glance.store.swift.Store'>, 'location_class': <class 'glance.store.swift.StoreLocation'>} glance.store.location: DEBUG: Registering scheme swift with {'store_class': <class 'glance.store.swift.Store'>, 'location_class': <class 'glance.store.swift.StoreLocation'>} routes.middleware: DEBUG: Initialized with method overriding = True, and path info altering = True routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x66b9d90>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x66b9d90>} glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x66b9d90>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x66b9d90>} iso8601.iso8601: DEBUG: Parsed 2013-11-11T06:10:56Z into {'tz_sign': None, 'second_fraction': None, 'hour': u'06', 'tz_hour': None, 'month': u'11', 'timezone': u'Z', 'second': u'56', 'tz_minute': None, 'year': u'2013', 'separator': u'T', 'day': u'11', 'minute': u'10'} with default timezone <iso8601.iso8601.Utc object at 0x2873d50> iso8601.iso8601: DEBUG: Got u'2013' for 'year' with default None iso8601.iso8601: DEBUG: Got u'11' for 'month' with default None iso8601.iso8601: DEBUG: Got u'11' for 'day' with default None iso8601.iso8601: DEBUG: Got u'06' for 'hour' with default None iso8601.iso8601: DEBUG: Got u'10' for 'minute' with default None iso8601.iso8601: DEBUG: Got u'56' for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x66b9d90>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x66b9d90>} iso8601.iso8601: DEBUG: Parsed 2013-11-13T06:10:56Z into {'tz_sign': None, 'second_fraction': None, 'hour': u'06', 'tz_hour': None, 'month': u'11', 'timezone': u'Z', 'second': u'56', 'tz_minute': None, 'year': u'2013', 'separator': u'T', 'day': u'13', 'minute': u'10'} with default timezone <iso8601.iso8601.Utc object at 0x2873d50> iso8601.iso8601: DEBUG: Got u'2013' for 'year' with default None iso8601.iso8601: DEBUG: Got u'11' for 'month' with default None iso8601.iso8601: DEBUG: Got u'13' for 'day' with default None iso8601.iso8601: DEBUG: Got u'06' for 'hour' with default None iso8601.iso8601: DEBUG: Got u'10' for 'minute' with default None iso8601.iso8601: DEBUG: Got u'56' for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x66b9d90>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x66b9d90>} iso8601.iso8601: DEBUG: Parsed 2013-11-14T06:10:56+01:00 into {'tz_sign': u'+', 'second_fraction': None, 'hour': u'06', 'tz_hour': u'01', 'month': u'11', 'timezone': u'+01:00', 'second': u'56', 'tz_minute': u'00', 'year': u'2013', 'separator': u'T', 'day': u'14', 'minute': u'10'} with default timezone <iso8601.iso8601.Utc object at 0x2873d50> iso8601.iso8601: DEBUG: Got u'01' for 'tz_hour' with default None iso8601.iso8601: DEBUG: Got u'00' for 'tz_minute' with default None iso8601.iso8601: DEBUG: Got u'2013' for 'year' with default None iso8601.iso8601: DEBUG: Got u'11' for 'month' with default None iso8601.iso8601: DEBUG: Got u'14' for 'day' with default None iso8601.iso8601: DEBUG: Got u'06' for 'hour' with default None iso8601.iso8601: DEBUG: Got u'10' for 'minute' with default None iso8601.iso8601: DEBUG: Got u'56' for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x66b9d90>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x66b9d90>} iso8601.iso8601: DEBUG: Parsed 2013-11-14T06:10:56-01:00 into {'tz_sign': u'-', 'second_fraction': None, 'hour': u'06', 'tz_hour': u'01', 'month': u'11', 'timezone': u'-01:00', 'second': u'56', 'tz_minute': u'00', 'year': u'2013', 'separator': u'T', 'day': u'14', 'minute': u'10'} with default timezone <iso8601.iso8601.Utc object at 0x2873d50> iso8601.iso8601: DEBUG: Got u'01' for 'tz_hour' with default None iso8601.iso8601: DEBUG: Got u'00' for 'tz_minute' with default None iso8601.iso8601: DEBUG: Got u'2013' for 'year' with default None iso8601.iso8601: DEBUG: Got u'11' for 'month' with default None iso8601.iso8601: DEBUG: Got u'14' for 'day' with default None iso8601.iso8601: DEBUG: Got u'06' for 'hour' with default None iso8601.iso8601: DEBUG: Got u'10' for 'minute' with default None iso8601.iso8601: DEBUG: Got u'56' for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x66b9d90>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x66b9d90>} iso8601.iso8601: DEBUG: Parsed 2013-11-15T06:10:56Z into {'tz_sign': None, 'second_fraction': None, 'hour': u'06', 'tz_hour': None, 'month': u'11', 'timezone': u'Z', 'second': u'56', 'tz_minute': None, 'year': u'2013', 'separator': u'T', 'day': u'15', 'minute': u'10'} with default timezone <iso8601.iso8601.Utc object at 0x2873d50> iso8601.iso8601: DEBUG: Got u'2013' for 'year' with default None iso8601.iso8601: DEBUG: Got u'11' for 'month' with default None iso8601.iso8601: DEBUG: Got u'15' for 'day' with default None iso8601.iso8601: DEBUG: Got u'06' for 'hour' with default None iso8601.iso8601: DEBUG: Got u'10' for 'minute' with default None iso8601.iso8601: DEBUG: Got u'56' for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x66b9d90>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x66b9d90>} routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x66b9d90>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x66b9d90>} iso8601.iso8601: DEBUG: Parsed 2011-09-05 into {'tz_sign': None, 'second_fraction': None, 'hour': None, 'tz_hour': None, 'month': u'09', 'timezone': None, 'second': None, 'tz_minute': None, 'year': u'2011', 'separator': None, 'day': u'05', 'minute': None} with default timezone <iso8601.iso8601.Utc object at 0x2873d50> iso8601.iso8601: DEBUG: Got u'2011' for 'year' with default None iso8601.iso8601: DEBUG: Got u'09' for 'month' with default None iso8601.iso8601: DEBUG: Got u'05' for 'day' with default None iso8601.iso8601: DEBUG: Got None for 'hour' with default None iso8601.iso8601: DEBUG: Got None for 'minute' with default None iso8601.iso8601: DEBUG: Got None for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list --------------------- >> end captured logging << --------------------- ---------------------------------------------------------------------- XML: nosetests.xml Slowest 5 tests took 68.11 secs: [31m 14.21 TestGlanceControl.test_bouncing[0m [31m 14.13 TestScrubber.test_delayed_delete[0m [31m 13.74 TestGlanceControl.test_reload[0m [31m 13.52 TestGlanceControl.test_respawn[0m [31m 12.51 TestApi.test_unsupported_default_store[0m ---------------------------------------------------------------------- Ran 932 tests in 526.833s FAILED (SKIP=89, failures=2) ERROR: InvocationError: '<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/.tox/py27/bin/nosetests'> ___________________________________ summary ____________________________________ ERROR: py27: commands failed + result=1 + echo 'Begin pip freeze output from test virtualenv:' Begin pip freeze output from test virtualenv: + echo ====================================================================== ====================================================================== + .tox/py27/bin/pip freeze Babel==1.3 Jinja2==2.7.1 MarkupSafe==0.18 Paste==1.7.5.1 PasteDeploy==1.5.0 Pygments==1.6 Routes==1.13 SQLAlchemy==0.7.9 Sphinx==1.2b1 Tempita==0.5.1 WebOb==1.0.8 amqp==1.3.3 anyjson==0.3.3 argparse==1.2.1 boto==2.1.1 cffi==0.7.2 colorama==0.2.7 coverage==3.7 decorator==3.4.0 distribute==0.7.3 docutils==0.10 eventlet==0.14.0 glance==jenkins-periodic-glance-python27-stable-folsom-44 greenlet==0.4.1 httplib2==0.8 iso8601==0.1.8 jsonschema==2.3.0 kombu==3.0.4 lxml==3.2.4 mox==0.5.3 nose==1.3.0 nose-exclude==0.1.10 nosehtmloutput==0.0.5 openstack.nose-plugin==0.11 passlib==1.6.1 pep8==1.1 pycparser==2.10 pycrypto==2.6.1 pysendfile==2.0.0 python-swiftclient==1.8.0 pytz==2013.8 repoze.lru==0.6 requests==2.0.1 simplejson==3.3.1 sqlalchemy-migrate==0.7.2 termcolor==1.1.0 wsgiref==0.1.2 xattr==0.7.2 + echo ====================================================================== ====================================================================== + '[' -d .testrepository ']' + sudo /usr/local/jenkins/slave_scripts/jenkins-sudo-grep.sh post + sudoresult=0 + '[' 0 -ne 0 ']' + /usr/local/jenkins/slave_scripts/jenkins-oom-grep.sh post + oomresult=0 + '[' 0 -ne 0 ']' ++ find . -name nose_results.html + htmlreport=./nose_results.html + '[' -f ./nose_results.html ']' ++ grep -c 'tr class=.passClass' ./nose_results.html + passcount=95 + '[' 95 -eq 0 ']' + exit 1 + rm -rf /tmp/tmp.ulcD1gfGF4 Build step 'Execute shell' marked build as failure [SCP] Connecting to static.openstack.org [SCP] uploading file: '/srv/static/logs/periodic/periodic-glance-python27-stable-folsom/44/nose_results.html' [SCP] Connecting to static.openstack.org [SCP] Trying to create /srv/static/logs/periodic/periodic-glance-python27-stable-folsom/precise5/44 [SCP] Copying console log.
See <https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/45/> ------------------------------------------ [...truncated 1293 lines...] File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/registry/client.py",> line 89, in do_request action, **kwargs) File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/common/client.py",> line 63, in wrapped return func(self, *args, **kwargs) File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/common/client.py",> line 444, in do_request headers=headers) File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/common/client.py",> line 80, in wrapped return func(self, method, url, body, headers) File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/common/client.py",> line 574, in _do_request raise exception.Invalid(res.read()) Invalid: 400 Bad Request The server could not comply with the request since it is either malformed or otherwise incorrect. Unrecognized changes-since value routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x5d9b790>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x5d9b790>} glance.api.policy: DEBUG: Loaded policy rules: {u'default': []} glance.common.client: DEBUG: Constructed URL: http://0.0.0.0:9191/images/detail?changes-since=2011-09-05 routes.middleware: DEBUG: Initialized with method overriding = True, and path info altering = True routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x4f24110>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x4f24110>} iso8601.iso8601: DEBUG: Parsed 2011-09-05 into {'tz_sign': None, 'second_fraction': None, 'hour': None, 'tz_hour': None, 'month': u'09', 'timezone': None, 'second': None, 'tz_minute': None, 'year': u'2011', 'separator': None, 'day': u'05', 'minute': None} with default timezone <iso8601.iso8601.Utc object at 0x2848d50> iso8601.iso8601: DEBUG: Got u'2011' for 'year' with default None iso8601.iso8601: DEBUG: Got u'09' for 'month' with default None iso8601.iso8601: DEBUG: Got u'05' for 'day' with default None iso8601.iso8601: DEBUG: Got None for 'hour' with default None iso8601.iso8601: DEBUG: Got None for 'minute' with default None iso8601.iso8601: DEBUG: Got None for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list glance.registry.client: DEBUG: Registry request GET /images/detail HTTP 200 request id req-04f7a7f3-0e1f-4e78-b4fb-cc0d1030d1c5 --------------------- >> end captured logging << --------------------- ====================================================================== FAIL: Tests that the /images/detail registry API returns list of ---------------------------------------------------------------------- Traceback (most recent call last): File "<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/glance/tests/unit/v1/test_api.py",> line 1409, in test_get_details_filter_changes_since self.assertEquals(res.status_int, 400) AssertionError: 200 != 400 '200 != 400' = '%s != %s' % (safe_repr(200), safe_repr(400)) '200 != 400' = self._formatMessage('200 != 400', '200 != 400')
raise self.failureException('200 != 400')
-------------------- >> begin captured logging << -------------------- glance.store: DEBUG: Attempting to import store glance.store.filesystem.Store glance.store: DEBUG: Registering store <class 'glance.store.filesystem.Store'> with schemes ('file', 'filesystem') glance.store.base: DEBUG: Late loading location class glance.store.filesystem.StoreLocation glance.store.location: DEBUG: Registering scheme file with {'store_class': <class 'glance.store.filesystem.Store'>, 'location_class': <class 'glance.store.filesystem.StoreLocation'>} glance.store.location: DEBUG: Registering scheme filesystem with {'store_class': <class 'glance.store.filesystem.Store'>, 'location_class': <class 'glance.store.filesystem.StoreLocation'>} glance.store: DEBUG: Attempting to import store glance.store.http.Store glance.store: DEBUG: Registering store <class 'glance.store.http.Store'> with schemes ('http', 'https') glance.store.base: DEBUG: Late loading location class glance.store.http.StoreLocation glance.store.location: DEBUG: Registering scheme http with {'store_class': <class 'glance.store.http.Store'>, 'location_class': <class 'glance.store.http.StoreLocation'>} glance.store.location: DEBUG: Registering scheme https with {'store_class': <class 'glance.store.http.Store'>, 'location_class': <class 'glance.store.http.StoreLocation'>} glance.store: DEBUG: Attempting to import store glance.store.rbd.Store glance.store: DEBUG: Registering store <class 'glance.store.rbd.Store'> with schemes ('rbd',) glance.store.base: DEBUG: Late loading location class glance.store.rbd.StoreLocation glance.store.location: DEBUG: Registering scheme rbd with {'store_class': <class 'glance.store.rbd.Store'>, 'location_class': <class 'glance.store.rbd.StoreLocation'>} glance.store: DEBUG: Attempting to import store glance.store.s3.Store glance.store.s3: ERROR: Could not find s3_store_host in configuration options. glance.store.base: ERROR: Failed to configure store correctly. Disabling add method. glance.store: DEBUG: Registering store <class 'glance.store.s3.Store'> with schemes ('s3', 's3+http', 's3+https') glance.store.base: DEBUG: Late loading location class glance.store.s3.StoreLocation glance.store.location: DEBUG: Registering scheme s3 with {'store_class': <class 'glance.store.s3.Store'>, 'location_class': <class 'glance.store.s3.StoreLocation'>} glance.store.location: DEBUG: Registering scheme s3+http with {'store_class': <class 'glance.store.s3.Store'>, 'location_class': <class 'glance.store.s3.StoreLocation'>} glance.store.location: DEBUG: Registering scheme s3+https with {'store_class': <class 'glance.store.s3.Store'>, 'location_class': <class 'glance.store.s3.StoreLocation'>} glance.store: DEBUG: Attempting to import store glance.store.swift.Store glance.store.swift: ERROR: Could not find swift_store_auth_address in configuration options. glance.store.base: ERROR: Failed to configure store correctly. Disabling add method. glance.store: DEBUG: Registering store <class 'glance.store.swift.Store'> with schemes ('swift+https', 'swift', 'swift+http') glance.store.base: DEBUG: Late loading location class glance.store.swift.StoreLocation glance.store.location: DEBUG: Registering scheme swift+https with {'store_class': <class 'glance.store.swift.Store'>, 'location_class': <class 'glance.store.swift.StoreLocation'>} glance.store.location: DEBUG: Registering scheme swift+http with {'store_class': <class 'glance.store.swift.Store'>, 'location_class': <class 'glance.store.swift.StoreLocation'>} glance.store.location: DEBUG: Registering scheme swift with {'store_class': <class 'glance.store.swift.Store'>, 'location_class': <class 'glance.store.swift.StoreLocation'>} routes.middleware: DEBUG: Initialized with method overriding = True, and path info altering = True routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x65b7710>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x65b7710>} glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x65b7710>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x65b7710>} iso8601.iso8601: DEBUG: Parsed 2013-11-12T06:11:28Z into {'tz_sign': None, 'second_fraction': None, 'hour': u'06', 'tz_hour': None, 'month': u'11', 'timezone': u'Z', 'second': u'28', 'tz_minute': None, 'year': u'2013', 'separator': u'T', 'day': u'12', 'minute': u'11'} with default timezone <iso8601.iso8601.Utc object at 0x2848d50> iso8601.iso8601: DEBUG: Got u'2013' for 'year' with default None iso8601.iso8601: DEBUG: Got u'11' for 'month' with default None iso8601.iso8601: DEBUG: Got u'12' for 'day' with default None iso8601.iso8601: DEBUG: Got u'06' for 'hour' with default None iso8601.iso8601: DEBUG: Got u'11' for 'minute' with default None iso8601.iso8601: DEBUG: Got u'28' for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x65b7710>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x65b7710>} iso8601.iso8601: DEBUG: Parsed 2013-11-14T06:11:28Z into {'tz_sign': None, 'second_fraction': None, 'hour': u'06', 'tz_hour': None, 'month': u'11', 'timezone': u'Z', 'second': u'28', 'tz_minute': None, 'year': u'2013', 'separator': u'T', 'day': u'14', 'minute': u'11'} with default timezone <iso8601.iso8601.Utc object at 0x2848d50> iso8601.iso8601: DEBUG: Got u'2013' for 'year' with default None iso8601.iso8601: DEBUG: Got u'11' for 'month' with default None iso8601.iso8601: DEBUG: Got u'14' for 'day' with default None iso8601.iso8601: DEBUG: Got u'06' for 'hour' with default None iso8601.iso8601: DEBUG: Got u'11' for 'minute' with default None iso8601.iso8601: DEBUG: Got u'28' for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x65b7710>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x65b7710>} iso8601.iso8601: DEBUG: Parsed 2013-11-15T06:11:28+01:00 into {'tz_sign': u'+', 'second_fraction': None, 'hour': u'06', 'tz_hour': u'01', 'month': u'11', 'timezone': u'+01:00', 'second': u'28', 'tz_minute': u'00', 'year': u'2013', 'separator': u'T', 'day': u'15', 'minute': u'11'} with default timezone <iso8601.iso8601.Utc object at 0x2848d50> iso8601.iso8601: DEBUG: Got u'01' for 'tz_hour' with default None iso8601.iso8601: DEBUG: Got u'00' for 'tz_minute' with default None iso8601.iso8601: DEBUG: Got u'2013' for 'year' with default None iso8601.iso8601: DEBUG: Got u'11' for 'month' with default None iso8601.iso8601: DEBUG: Got u'15' for 'day' with default None iso8601.iso8601: DEBUG: Got u'06' for 'hour' with default None iso8601.iso8601: DEBUG: Got u'11' for 'minute' with default None iso8601.iso8601: DEBUG: Got u'28' for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x65b7710>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x65b7710>} iso8601.iso8601: DEBUG: Parsed 2013-11-15T06:11:28-01:00 into {'tz_sign': u'-', 'second_fraction': None, 'hour': u'06', 'tz_hour': u'01', 'month': u'11', 'timezone': u'-01:00', 'second': u'28', 'tz_minute': u'00', 'year': u'2013', 'separator': u'T', 'day': u'15', 'minute': u'11'} with default timezone <iso8601.iso8601.Utc object at 0x2848d50> iso8601.iso8601: DEBUG: Got u'01' for 'tz_hour' with default None iso8601.iso8601: DEBUG: Got u'00' for 'tz_minute' with default None iso8601.iso8601: DEBUG: Got u'2013' for 'year' with default None iso8601.iso8601: DEBUG: Got u'11' for 'month' with default None iso8601.iso8601: DEBUG: Got u'15' for 'day' with default None iso8601.iso8601: DEBUG: Got u'06' for 'hour' with default None iso8601.iso8601: DEBUG: Got u'11' for 'minute' with default None iso8601.iso8601: DEBUG: Got u'28' for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x65b7710>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x65b7710>} iso8601.iso8601: DEBUG: Parsed 2013-11-16T06:11:28Z into {'tz_sign': None, 'second_fraction': None, 'hour': u'06', 'tz_hour': None, 'month': u'11', 'timezone': u'Z', 'second': u'28', 'tz_minute': None, 'year': u'2013', 'separator': u'T', 'day': u'16', 'minute': u'11'} with default timezone <iso8601.iso8601.Utc object at 0x2848d50> iso8601.iso8601: DEBUG: Got u'2013' for 'year' with default None iso8601.iso8601: DEBUG: Got u'11' for 'month' with default None iso8601.iso8601: DEBUG: Got u'16' for 'day' with default None iso8601.iso8601: DEBUG: Got u'06' for 'hour' with default None iso8601.iso8601: DEBUG: Got u'11' for 'minute' with default None iso8601.iso8601: DEBUG: Got u'28' for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x65b7710>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x65b7710>} routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x65b7710>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x65b7710>} iso8601.iso8601: DEBUG: Parsed 2011-09-05 into {'tz_sign': None, 'second_fraction': None, 'hour': None, 'tz_hour': None, 'month': u'09', 'timezone': None, 'second': None, 'tz_minute': None, 'year': u'2011', 'separator': None, 'day': u'05', 'minute': None} with default timezone <iso8601.iso8601.Utc object at 0x2848d50> iso8601.iso8601: DEBUG: Got u'2011' for 'year' with default None iso8601.iso8601: DEBUG: Got u'09' for 'month' with default None iso8601.iso8601: DEBUG: Got u'05' for 'day' with default None iso8601.iso8601: DEBUG: Got None for 'hour' with default None iso8601.iso8601: DEBUG: Got None for 'minute' with default None iso8601.iso8601: DEBUG: Got None for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list --------------------- >> end captured logging << --------------------- ---------------------------------------------------------------------- XML: nosetests.xml Slowest 5 tests took 71.67 secs: [31m 16.17 TestGlanceControl.test_bouncing[0m [31m 14.47 TestScrubber.test_delayed_delete[0m [31m 14.06 TestGlanceControl.test_reload[0m [31m 13.88 TestGlanceControl.test_respawn[0m [31m 13.09 TestApi.test_unsupported_default_store[0m ---------------------------------------------------------------------- Ran 932 tests in 573.524s FAILED (SKIP=89, errors=1, failures=2) ERROR: InvocationError: '<https://jenkins01.openstack.org/job/periodic-glance-python27-stable-folsom/ws/.tox/py27/bin/nosetests'> ___________________________________ summary ____________________________________ ERROR: py27: commands failed + result=1 + echo 'Begin pip freeze output from test virtualenv:' Begin pip freeze output from test virtualenv: + echo ====================================================================== ====================================================================== + .tox/py27/bin/pip freeze Babel==1.3 Jinja2==2.7.1 MarkupSafe==0.18 Paste==1.7.5.1 PasteDeploy==1.5.0 Pygments==1.6 Routes==1.13 SQLAlchemy==0.7.9 Sphinx==1.2b1 Tempita==0.5.1 WebOb==1.0.8 amqp==1.3.3 anyjson==0.3.3 argparse==1.2.1 boto==2.1.1 cffi==0.7.2 colorama==0.2.7 coverage==3.7 decorator==3.4.0 distribute==0.7.3 docutils==0.10 eventlet==0.14.0 glance==jenkins-periodic-glance-python27-stable-folsom-45 greenlet==0.4.1 httplib2==0.8 iso8601==0.1.8 jsonschema==2.3.0 kombu==3.0.4 lxml==3.2.4 mox==0.5.3 nose==1.3.0 nose-exclude==0.1.10 nosehtmloutput==0.0.5 openstack.nose-plugin==0.11 passlib==1.6.1 pep8==1.1 pycparser==2.10 pycrypto==2.6.1 pysendfile==2.0.0 python-swiftclient==1.8.0 pytz==2013.8 repoze.lru==0.6 requests==2.0.1 simplejson==3.3.1 sqlalchemy-migrate==0.7.2 termcolor==1.1.0 wsgiref==0.1.2 xattr==0.7.2 + echo ====================================================================== ====================================================================== + '[' -d .testrepository ']' + sudo /usr/local/jenkins/slave_scripts/jenkins-sudo-grep.sh post + sudoresult=0 + '[' 0 -ne 0 ']' + /usr/local/jenkins/slave_scripts/jenkins-oom-grep.sh post + oomresult=0 + '[' 0 -ne 0 ']' ++ find . -name nose_results.html + htmlreport=./nose_results.html + '[' -f ./nose_results.html ']' ++ grep -c 'tr class=.passClass' ./nose_results.html + passcount=94 + '[' 94 -eq 0 ']' + exit 1 + rm -rf /tmp/tmp.8MQoHeYKE5 Build step 'Execute shell' marked build as failure [SCP] Connecting to static.openstack.org [SCP] uploading file: '/srv/static/logs/periodic/periodic-glance-python27-stable-folsom/45/nose_results.html' [SCP] Connecting to static.openstack.org [SCP] Trying to create /srv/static/logs/periodic/periodic-glance-python27-stable-folsom/precise23/45 [SCP] Copying console log.
participants (1)
-
OpenStack Jenkins