====================================================================== FAIL: test_delete_not_allowed (glance.tests.unit.v1.test_api.TestGlanceAPI) ---------------------------------------------------------------------- Traceback (most recent call last): File "/«PKGBUILDDIR»/glance/tests/unit/v1/test_api.py", line 2944, in test_delete_not_allowed self.assertEqual(res.status_int, 403) AssertionError: 200 != 403 '200 != 403' = '%s != %s' % (safe_repr(200), safe_repr(403)) '200 != 403' = self._formatMessage('200 != 403', '200 != 403') >> raise self.failureException('200 != 403') -------------------- >> begin captured logging << -------------------- glance.store: DEBUG: Attempting to import store glance.store.filesystem.Store glance.store: DEBUG: Registering 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': , 'location_class': } glance.store.location: DEBUG: Registering scheme filesystem with {'store_class': , 'location_class': } glance.store: DEBUG: Attempting to import store glance.store.http.Store glance.store: DEBUG: Registering 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': , 'location_class': } glance.store.location: DEBUG: Registering scheme https with {'store_class': , 'location_class': } glance.store: DEBUG: Attempting to import store glance.store.rbd.Store glance.store: DEBUG: Registering 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': , 'location_class': } 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 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': , 'location_class': } glance.store.location: DEBUG: Registering scheme s3+http with {'store_class': , 'location_class': } glance.store.location: DEBUG: Registering scheme s3+https with {'store_class': , 'location_class': } 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 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': , 'location_class': } glance.store.location: DEBUG: Registering scheme swift+http with {'store_class': , 'location_class': } glance.store.location: DEBUG: Registering scheme swift with {'store_class': , 'location_class': } glance.notifier: DEBUG: Converted strategy alias default to glance.notifier.notify_noop.NoopStrategy glance.store: DEBUG: Attempting to import store glance.store.filesystem.Store glance.store: DEBUG: Registering store with schemes ('file', 'filesystem') glance.store.base: DEBUG: Late loading location class glance.store.filesystem.StoreLocation glance.store: DEBUG: Attempting to import store glance.store.http.Store glance.store: DEBUG: Registering store with schemes ('http', 'https') glance.store.base: DEBUG: Late loading location class glance.store.http.StoreLocation glance.store: DEBUG: Attempting to import store glance.store.rbd.Store glance.store: DEBUG: Registering store with schemes ('rbd',) glance.store.base: DEBUG: Late loading location 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 with schemes ('s3', 's3+http', 's3+https') glance.store.base: DEBUG: Late loading location 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 with schemes ('swift+https', 'swift', 'swift+http') glance.store.base: DEBUG: Late loading location class glance.store.swift.StoreLocation glance.notifier: DEBUG: Converted strategy alias default to glance.notifier.notify_noop.NoopStrategy routes.middleware: DEBUG: Initialized with method overriding = True, and path info altering = True routes.middleware: DEBUG: Matched GET /images/ea1140ea-d5d4-4371-8a48-3c8671077e66 routes.middleware: DEBUG: Route path: '/images/:(id)', defaults: {'action': u'show', 'controller': } routes.middleware: DEBUG: Match dict: {'action': u'show', 'controller': , 'id': u'ea1140ea-d5d4-4371-8a48-3c8671077e66'} glance.api.policy: DEBUG: Loading policy from /tmp/test.70568/policy.json glance.api.policy: DEBUG: Loaded policy rules: {u'default': []} glance.api.policy: DEBUG: Loaded policy rules: {u'default': []} glance.common.client: DEBUG: Constructed URL: http://0.0.0.0:9191/images/ea1140ea-d5d4-4371-8a48-3c8671077e66 routes.middleware: DEBUG: Initialized with method overriding = True, and path info altering = True routes.middleware: DEBUG: Matched GET /images/ea1140ea-d5d4-4371-8a48-3c8671077e66 routes.middleware: DEBUG: Route path: '/images/:(id)', defaults: {'action': u'show', 'controller': } routes.middleware: DEBUG: Match dict: {'action': u'show', 'controller': , 'id': u'ea1140ea-d5d4-4371-8a48-3c8671077e66'} glance.registry.api.v1.images: INFO: Successfully retrieved image ea1140ea-d5d4-4371-8a48-3c8671077e66 glance.registry.client: DEBUG: Registry request GET /images/ea1140ea-d5d4-4371-8a48-3c8671077e66 HTTP 200 request id None glance.store.filesystem: DEBUG: Found image at //tmp/test.70568/ea1140ea-d5d4-4371-8a48-3c8671077e66. Returning in ChunkedFile. routes.middleware: DEBUG: Matched DELETE /images/ea1140ea-d5d4-4371-8a48-3c8671077e66 routes.middleware: DEBUG: Route path: '/images/:(id)', defaults: {'action': u'delete', 'controller': } routes.middleware: DEBUG: Match dict: {'action': u'delete', 'controller': , 'id': u'ea1140ea-d5d4-4371-8a48-3c8671077e66'} glance.api.policy: DEBUG: Loaded policy rules: {u'default': []} glance.common.client: DEBUG: Constructed URL: http://0.0.0.0:9191/images/ea1140ea-d5d4-4371-8a48-3c8671077e66 routes.middleware: DEBUG: Initialized with method overriding = True, and path info altering = True routes.middleware: DEBUG: Matched GET /images/ea1140ea-d5d4-4371-8a48-3c8671077e66 routes.middleware: DEBUG: Route path: '/images/:(id)', defaults: {'action': u'show', 'controller': } routes.middleware: DEBUG: Match dict: {'action': u'show', 'controller': , 'id': u'ea1140ea-d5d4-4371-8a48-3c8671077e66'} glance.registry.api.v1.images: INFO: Successfully retrieved image ea1140ea-d5d4-4371-8a48-3c8671077e66 glance.registry.client: DEBUG: Registry request GET /images/ea1140ea-d5d4-4371-8a48-3c8671077e66 HTTP 200 request id None glance.registry: DEBUG: Updating image metadata for image ea1140ea-d5d4-4371-8a48-3c8671077e66... glance.common.client: DEBUG: Constructed URL: http://0.0.0.0:9191/images/ea1140ea-d5d4-4371-8a48-3c8671077e66 routes.middleware: DEBUG: Initialized with method overriding = True, and path info altering = True routes.middleware: DEBUG: Matched PUT /images/ea1140ea-d5d4-4371-8a48-3c8671077e66 routes.middleware: DEBUG: Route path: '/images/:(id)', defaults: {'action': u'update', 'controller': } routes.middleware: DEBUG: Match dict: {'action': u'update', 'controller': , 'id': u'ea1140ea-d5d4-4371-8a48-3c8671077e66'} glance.registry.api.v1.images: DEBUG: Updating image ea1140ea-d5d4-4371-8a48-3c8671077e66 with metadata: {u'status': u'deleted'} glance.registry.api.v1.images: INFO: Updating metadata for image ea1140ea-d5d4-4371-8a48-3c8671077e66 glance.registry.client: DEBUG: Registry request PUT /images/ea1140ea-d5d4-4371-8a48-3c8671077e66 HTTP 200 request id None glance.registry: DEBUG: Deleting image metadata for image ea1140ea-d5d4-4371-8a48-3c8671077e66... glance.common.client: DEBUG: Constructed URL: http://0.0.0.0:9191/images/ea1140ea-d5d4-4371-8a48-3c8671077e66 routes.middleware: DEBUG: Initialized with method overriding = True, and path info altering = True routes.middleware: DEBUG: Matched DELETE /images/ea1140ea-d5d4-4371-8a48-3c8671077e66 routes.middleware: DEBUG: Route path: '/images/:(id)', defaults: {'action': u'delete', 'controller': } routes.middleware: DEBUG: Match dict: {'action': u'delete', 'controller': , 'id': u'ea1140ea-d5d4-4371-8a48-3c8671077e66'} glance.registry.api.v1.images: INFO: Successfully deleted image ea1140ea-d5d4-4371-8a48-3c8671077e66 glance.registry.client: DEBUG: Registry request DELETE /images/ea1140ea-d5d4-4371-8a48-3c8671077e66 HTTP 200 request id None glance.store.filesystem: DEBUG: Deleting image at //tmp/test.70568/ea1140ea-d5d4-4371-8a48-3c8671077e66 --------------------- >> end captured logging << ---------------------