diff --git a/glance/api/authorization.py b/glance/api/authorization.py index b5ab5e1eec..354be25d8e 100644 --- a/glance/api/authorization.py +++ b/glance/api/authorization.py @@ -101,8 +101,8 @@ class ImageMemberRepoProxy(glance.domain.proxy.Repo): def get(self, member_id): if (self.context.is_admin or - self.context.owner == self.image.owner or - self.context.owner == member_id): + self.context.owner == self.image.owner or + self.context.owner == member_id): member = self.member_repo.get(member_id) return proxy_member(self.context, member) else: @@ -112,7 +112,7 @@ class ImageMemberRepoProxy(glance.domain.proxy.Repo): def list(self, *args, **kwargs): members = self.member_repo.list(*args, **kwargs) if (self.context.is_admin or - self.context.owner == self.image.owner): + self.context.owner == self.image.owner): return [proxy_member(self.context, m) for m in members] for member in members: if member.member_id == self.context.owner: @@ -122,7 +122,7 @@ class ImageMemberRepoProxy(glance.domain.proxy.Repo): def remove(self, image_member): if (self.image.owner == self.context.owner or - self.context.is_admin): + self.context.is_admin): self.member_repo.remove(image_member) else: message = _("You cannot delete image member for %s") @@ -131,7 +131,7 @@ class ImageMemberRepoProxy(glance.domain.proxy.Repo): def add(self, image_member): if (self.image.owner == self.context.owner or - self.context.is_admin): + self.context.is_admin): return self.member_repo.add(image_member) else: message = _("You cannot add image member for %s") @@ -140,7 +140,7 @@ class ImageMemberRepoProxy(glance.domain.proxy.Repo): def save(self, image_member): if (self.context.is_admin or - self.context.owner == image_member.member_id): + self.context.owner == image_member.member_id): updated_member = self.member_repo.save(image_member) return proxy_member(self.context, updated_member) else: diff --git a/glance/api/property_protections.py b/glance/api/property_protections.py index ce3bd8258b..28a66d4b3d 100644 --- a/glance/api/property_protections.py +++ b/glance/api/property_protections.py @@ -27,9 +27,9 @@ class ProtectedImageFactoryProxy(glance.domain.proxy.ImageFactory): kwargs = {'context': self.context, 'property_rules': self.property_rules} super(ProtectedImageFactoryProxy, self).__init__( - image_factory, - proxy_class=ProtectedImageProxy, - proxy_kwargs=kwargs) + image_factory, + proxy_class=ProtectedImageProxy, + proxy_kwargs=kwargs) def new_image(self, **kwargs): extra_props = kwargs.pop('extra_properties', {}) @@ -53,8 +53,8 @@ class ProtectedImageRepoProxy(glance.domain.proxy.Repo): self.property_rules = property_rules proxy_kwargs = {'context': self.context} super(ProtectedImageRepoProxy, self).__init__( - image_repo, item_proxy_class=ProtectedImageProxy, - item_proxy_kwargs=proxy_kwargs) + image_repo, item_proxy_class=ProtectedImageProxy, + item_proxy_kwargs=proxy_kwargs) def get(self, image_id): return ProtectedImageProxy(self.image_repo.get(image_id), @@ -74,9 +74,9 @@ class ProtectedImageProxy(glance.domain.proxy.Image): self.property_rules = property_rules self.image.extra_properties = ExtraPropertiesProxy( - self.context, - self.image.extra_properties, - self.property_rules) + self.context, + self.image.extra_properties, + self.property_rules) super(ProtectedImageProxy, self).__init__(self.image) diff --git a/glance/api/v1/controller.py b/glance/api/v1/controller.py index bb7a752d7c..b85f1084b1 100644 --- a/glance/api/v1/controller.py +++ b/glance/api/v1/controller.py @@ -43,7 +43,7 @@ class BaseController(object): msg = _("Image with identifier %s not found") % image_id LOG.debug(msg) raise webob.exc.HTTPNotFound( - msg, request=request, content_type='text/plain') + msg, request=request, content_type='text/plain') except exception.Forbidden: msg = _("Forbidden image access") LOG.debug(msg) @@ -61,7 +61,7 @@ class BaseController(object): msg = _("Image %s is not active") % image_id LOG.debug(msg) raise webob.exc.HTTPNotFound( - msg, request=request, content_type='text/plain') + msg, request=request, content_type='text/plain') return image def update_store_acls(self, req, image_id, location_uri, public=False): diff --git a/glance/api/v1/images.py b/glance/api/v1/images.py index 7119948af1..1474b4a1db 100644 --- a/glance/api/v1/images.py +++ b/glance/api/v1/images.py @@ -228,7 +228,7 @@ class Controller(controller.BaseController): if property_utils.is_property_protection_enabled(): for key in update_props: has_read = self.prop_enforcer.check_property_rules( - key, 'read', req.context) + key, 'read', req.context) if ((self.prop_enforcer.check_property_rules( key, 'update', req.context) is False and image_meta['properties'][key] != @@ -829,7 +829,7 @@ class Controller(controller.BaseController): # modify certain core metadata keys for key in ACTIVE_IMMUTABLE: if (orig_status == 'active' and image_meta.get(key) is not None - and image_meta.get(key) != orig_image_meta.get(key)): + and image_meta.get(key) != orig_image_meta.get(key)): msg = _("Forbidden to modify '%s' of active image.") % key raise HTTPForbidden(explanation=msg, request=req, @@ -883,14 +883,14 @@ class Controller(controller.BaseController): orig_keys = set(orig_image_meta['properties']) new_keys = set(image_meta['properties']) self._enforce_update_protected_props( - orig_keys.intersection(new_keys), image_meta, - orig_image_meta, req) + orig_keys.intersection(new_keys), image_meta, + orig_image_meta, req) self._enforce_create_protected_props( - new_keys.difference(orig_keys), req) + new_keys.difference(orig_keys), req) if purge_props: self._enforce_delete_protected_props( - orig_keys.difference(new_keys), image_meta, - orig_image_meta, req) + orig_keys.difference(new_keys), image_meta, + orig_image_meta, req) self._enforce_image_property_quota(image_meta, orig_image_meta=orig_image_meta, @@ -1137,7 +1137,7 @@ class ImageSerializer(wsgi.JSONResponseSerializer): # image_meta['size'] should be an int, but could possibly be a str expected_size = int(image_meta['size']) response.app_iter = common.size_checked_iter( - response, image_meta, expected_size, image_iter, self.notifier) + response, image_meta, expected_size, image_iter, self.notifier) # Using app_iter blanks content-length, so we set it here... response.headers['Content-Length'] = str(image_meta['size']) response.headers['Content-Type'] = 'application/octet-stream' diff --git a/glance/api/v2/schemas.py b/glance/api/v2/schemas.py index 7ddd25d2f3..f28cbec2ee 100644 --- a/glance/api/v2/schemas.py +++ b/glance/api/v2/schemas.py @@ -23,7 +23,7 @@ class Controller(object): def __init__(self, custom_image_properties=None): self.image_schema = images.get_schema(custom_image_properties) self.image_collection_schema = images.get_collection_schema( - custom_image_properties) + custom_image_properties) self.member_schema = image_members.get_schema() self.member_collection_schema = image_members.get_collection_schema() self.task_schema = tasks.get_task_schema() diff --git a/glance/cmd/cache_manage.py b/glance/cmd/cache_manage.py index af36b2bf73..4aab894f70 100755 --- a/glance/cmd/cache_manage.py +++ b/glance/cmd/cache_manage.py @@ -203,7 +203,7 @@ def delete_all_cached_images(options, args): Remove all images from the cache. """ if (not options.force and - not user_confirm("Delete all cached images?", default=False)): + not user_confirm("Delete all cached images?", default=False)): return SUCCESS client = get_client(options) @@ -250,7 +250,7 @@ def delete_all_queued_images(options, args): Remove all images from the cache queue. """ if (not options.force and - not user_confirm("Delete all queued images?", default=False)): + not user_confirm("Delete all queued images?", default=False)): return SUCCESS client = get_client(options) @@ -269,16 +269,16 @@ def get_client(options): supplied to the CLI """ return glance.image_cache.client.get_client( - host=options.host, - port=options.port, - username=options.os_username, - password=options.os_password, - tenant=options.os_tenant_name, - auth_url=options.os_auth_url, - auth_strategy=options.os_auth_strategy, - auth_token=options.os_auth_token, - region=options.os_region_name, - insecure=options.insecure) + host=options.host, + port=options.port, + username=options.os_username, + password=options.os_password, + tenant=options.os_tenant_name, + auth_url=options.os_auth_url, + auth_strategy=options.os_auth_strategy, + auth_token=options.os_auth_token, + region=options.os_region_name, + insecure=options.insecure) def env(*vars, **kwargs): diff --git a/glance/cmd/control.py b/glance/cmd/control.py index de7839c91a..60a7707b9b 100644 --- a/glance/cmd/control.py +++ b/glance/cmd/control.py @@ -286,27 +286,27 @@ def main(): global exitcode opts = [ - cfg.SubCommandOpt('server', - title='Server types', - help='Available server types', - handler=add_command_parsers), - cfg.StrOpt('pid-file', - metavar='PATH', - help='File to use as pid file. Default: ' - '/var/run/glance/$server.pid'), - cfg.IntOpt('await-child', - metavar='DELAY', - default=0, - help='Period to wait for service death ' - 'in order to report exit code ' - '(default is to not wait at all)'), - cfg.BoolOpt('capture-output', - default=False, - help='Capture stdout/err in syslog ' - 'instead of discarding'), - cfg.BoolOpt('respawn', - default=False, - help='Restart service on unexpected death'), + cfg.SubCommandOpt('server', + title='Server types', + help='Available server types', + handler=add_command_parsers), + cfg.StrOpt('pid-file', + metavar='PATH', + help='File to use as pid file. Default: ' + '/var/run/glance/$server.pid'), + cfg.IntOpt('await-child', + metavar='DELAY', + default=0, + help='Period to wait for service death ' + 'in order to report exit code ' + '(default is to not wait at all)'), + cfg.BoolOpt('capture-output', + default=False, + help='Capture stdout/err in syslog ' + 'instead of discarding'), + cfg.BoolOpt('respawn', + default=False, + help='Restart service on unexpected death'), ] CONF.register_cli_opts(opts) @@ -369,7 +369,7 @@ def main(): do_start('Restart', pid_file, server, CONF.server.args) if (CONF.server.command == 'reload' or - CONF.server.command == 'force-reload'): + CONF.server.command == 'force-reload'): for server in CONF.server.servers: do_stop(server, CONF.server.args, graceful=True) pid_file = get_pid_file(server, CONF.pid_file) diff --git a/glance/common/auth.py b/glance/common/auth.py index 8586f80f2d..4d5a222c69 100644 --- a/glance/common/auth.py +++ b/glance/common/auth.py @@ -206,7 +206,7 @@ class KeystoneStrategy(BaseStrategy): req_body = json.dumps(creds) resp, resp_body = self._do_request( - token_url, 'POST', headers=headers, body=req_body) + token_url, 'POST', headers=headers, body=req_body) if resp.status == 200: resp_auth = json.loads(resp_body)['access'] diff --git a/glance/common/client.py b/glance/common/client.py index 1335ecc18b..3d4c1bda31 100644 --- a/glance/common/client.py +++ b/glance/common/client.py @@ -251,21 +251,21 @@ class BaseClient(object): raise exception.ClientConnectionError(msg) if (self.key_file is not None and - not os.path.exists(self.key_file)): + not os.path.exists(self.key_file)): msg = _("The key file you specified %s does not " "exist") % self.key_file raise exception.ClientConnectionError(msg) connect_kwargs['key_file'] = self.key_file if (self.cert_file is not None and - not os.path.exists(self.cert_file)): + not os.path.exists(self.cert_file)): msg = _("The cert file you specified %s does not " "exist") % self.cert_file raise exception.ClientConnectionError(msg) connect_kwargs['cert_file'] = self.cert_file if (self.ca_file is not None and - not os.path.exists(self.ca_file)): + not os.path.exists(self.ca_file)): msg = _("The CA file you specified %s does not " "exist") % self.ca_file raise exception.ClientConnectionError(msg) diff --git a/glance/db/__init__.py b/glance/db/__init__.py index 891a805330..e1d1e9ffd8 100644 --- a/glance/db/__init__.py +++ b/glance/db/__init__.py @@ -80,9 +80,9 @@ class ImageRepo(object): def list(self, marker=None, limit=None, sort_key='created_at', sort_dir='desc', filters=None, member_status='accepted'): db_api_images = self.db_api.image_get_all( - self.context, filters=filters, marker=marker, limit=limit, - sort_key=sort_key, sort_dir=sort_dir, - member_status=member_status) + self.context, filters=filters, marker=marker, limit=limit, + sort_key=sort_key, sort_dir=sort_dir, + member_status=member_status) images = [] for db_api_image in db_api_images: tags = self.db_api.image_tag_get_all(self.context, @@ -231,7 +231,7 @@ class ImageMemberRepo(object): def list(self): db_members = self.db_api.image_member_find( - self.context, image_id=self.image.image_id) + self.context, image_id=self.image.image_id) image_members = [] for db_member in db_members: image_members.append(self._format_image_member_from_db(db_member)) @@ -278,16 +278,16 @@ class ImageMemberRepo(object): def get(self, member_id): try: db_api_image_member = self.db_api.image_member_find( - self.context, - self.image.image_id, - member_id) + self.context, + self.image.image_id, + member_id) if not db_api_image_member: raise exception.NotFound() except (exception.NotFound, exception.Forbidden): raise exception.NotFound() image_member = self._format_image_member_from_db( - db_api_image_member[0]) + db_api_image_member[0]) return image_member diff --git a/glance/db/sqlalchemy/api.py b/glance/db/sqlalchemy/api.py index d6ff53dced..190b05a16b 100644 --- a/glance/db/sqlalchemy/api.py +++ b/glance/db/sqlalchemy/api.py @@ -467,8 +467,8 @@ def _paginate_query(query, model, limit, sort_keys, marker=None, for j in xrange(i): model_attr = getattr(model, sort_keys[j]) default = None if isinstance( - model_attr.property.columns[0].type, - sqlalchemy.DateTime) else '' + model_attr.property.columns[0].type, + sqlalchemy.DateTime) else '' attr = sa_sql.expression.case([(model_attr != None, model_attr), ], else_=default) diff --git a/glance/db/sqlalchemy/migrate_repo/versions/012_id_to_uuid.py b/glance/db/sqlalchemy/migrate_repo/versions/012_id_to_uuid.py index 3f4b9c1199..c95c57f9f4 100644 --- a/glance/db/sqlalchemy/migrate_repo/versions/012_id_to_uuid.py +++ b/glance/db/sqlalchemy/migrate_repo/versions/012_id_to_uuid.py @@ -153,70 +153,70 @@ def _upgrade_db2(t_images, t_image_members, t_image_properties): t_images.c.id.alter(sqlalchemy.String(36), primary_key=True) image_members_backup = sqlalchemy.Table( - 'image_members_backup', - meta, - sqlalchemy.Column('id', - sqlalchemy.Integer(), - primary_key=True, - nullable=False), - sqlalchemy.Column('image_id', - sqlalchemy.String(36), - nullable=False, - index=True), - sqlalchemy.Column('member', - sqlalchemy.String(255), - nullable=False), - sqlalchemy.Column('can_share', - sqlalchemy.Boolean(), - nullable=False, - default=False), - sqlalchemy.Column('created_at', - sqlalchemy.DateTime(), - nullable=False), - sqlalchemy.Column('updated_at', - sqlalchemy.DateTime()), - sqlalchemy.Column('deleted_at', - sqlalchemy.DateTime()), - sqlalchemy.Column('deleted', - sqlalchemy.Boolean(), - nullable=False, - default=False, - index=True), - sqlalchemy.UniqueConstraint('image_id', 'member'), - extend_existing=True) + 'image_members_backup', + meta, + sqlalchemy.Column('id', + sqlalchemy.Integer(), + primary_key=True, + nullable=False), + sqlalchemy.Column('image_id', + sqlalchemy.String(36), + nullable=False, + index=True), + sqlalchemy.Column('member', + sqlalchemy.String(255), + nullable=False), + sqlalchemy.Column('can_share', + sqlalchemy.Boolean(), + nullable=False, + default=False), + sqlalchemy.Column('created_at', + sqlalchemy.DateTime(), + nullable=False), + sqlalchemy.Column('updated_at', + sqlalchemy.DateTime()), + sqlalchemy.Column('deleted_at', + sqlalchemy.DateTime()), + sqlalchemy.Column('deleted', + sqlalchemy.Boolean(), + nullable=False, + default=False, + index=True), + sqlalchemy.UniqueConstraint('image_id', 'member'), + extend_existing=True) image_properties_backup = sqlalchemy.Table( - 'image_properties_backup', - meta, - sqlalchemy.Column('id', - sqlalchemy.Integer(), - primary_key=True, - nullable=False), - sqlalchemy.Column('image_id', - sqlalchemy.String(36), - nullable=False, - index=True), - sqlalchemy.Column('name', - sqlalchemy.String(255), - nullable=False), - sqlalchemy.Column('value', - sqlalchemy.Text()), - sqlalchemy.Column('created_at', - sqlalchemy.DateTime(), - nullable=False), - sqlalchemy.Column('updated_at', - sqlalchemy.DateTime()), - sqlalchemy.Column('deleted_at', - sqlalchemy.DateTime()), - sqlalchemy.Column('deleted', - sqlalchemy.Boolean(), - nullable=False, - default=False, - index=True), - sqlalchemy.UniqueConstraint( - 'image_id', 'name', - name='ix_image_properties_image_id_name'), - extend_existing=True) + 'image_properties_backup', + meta, + sqlalchemy.Column('id', + sqlalchemy.Integer(), + primary_key=True, + nullable=False), + sqlalchemy.Column('image_id', + sqlalchemy.String(36), + nullable=False, + index=True), + sqlalchemy.Column('name', + sqlalchemy.String(255), + nullable=False), + sqlalchemy.Column('value', + sqlalchemy.Text()), + sqlalchemy.Column('created_at', + sqlalchemy.DateTime(), + nullable=False), + sqlalchemy.Column('updated_at', + sqlalchemy.DateTime()), + sqlalchemy.Column('deleted_at', + sqlalchemy.DateTime()), + sqlalchemy.Column('deleted', + sqlalchemy.Boolean(), + nullable=False, + default=False, + index=True), + sqlalchemy.UniqueConstraint( + 'image_id', 'name', + name='ix_image_properties_image_id_name'), + extend_existing=True) image_members_backup.create() image_properties_backup.create() @@ -269,70 +269,70 @@ def _downgrade_db2(t_images, t_image_members, t_image_properties): t_images.c.id.alter(sqlalchemy.Integer(), primary_key=True) image_members_old = sqlalchemy.Table( - 'image_members_old', - meta, - sqlalchemy.Column('id', - sqlalchemy.Integer(), - primary_key=True, - nullable=False), - sqlalchemy.Column('image_id', - sqlalchemy.Integer(), - nullable=False, - index=True), - sqlalchemy.Column('member', - sqlalchemy.String(255), - nullable=False), - sqlalchemy.Column('can_share', - sqlalchemy.Boolean(), - nullable=False, - default=False), - sqlalchemy.Column('created_at', - sqlalchemy.DateTime(), - nullable=False), - sqlalchemy.Column('updated_at', - sqlalchemy.DateTime()), - sqlalchemy.Column('deleted_at', - sqlalchemy.DateTime()), - sqlalchemy.Column('deleted', - sqlalchemy.Boolean(), - nullable=False, - default=False, - index=True), - sqlalchemy.UniqueConstraint('image_id', 'member'), - extend_existing=True) + 'image_members_old', + meta, + sqlalchemy.Column('id', + sqlalchemy.Integer(), + primary_key=True, + nullable=False), + sqlalchemy.Column('image_id', + sqlalchemy.Integer(), + nullable=False, + index=True), + sqlalchemy.Column('member', + sqlalchemy.String(255), + nullable=False), + sqlalchemy.Column('can_share', + sqlalchemy.Boolean(), + nullable=False, + default=False), + sqlalchemy.Column('created_at', + sqlalchemy.DateTime(), + nullable=False), + sqlalchemy.Column('updated_at', + sqlalchemy.DateTime()), + sqlalchemy.Column('deleted_at', + sqlalchemy.DateTime()), + sqlalchemy.Column('deleted', + sqlalchemy.Boolean(), + nullable=False, + default=False, + index=True), + sqlalchemy.UniqueConstraint('image_id', 'member'), + extend_existing=True) image_properties_old = sqlalchemy.Table( - 'image_properties_old', - meta, - sqlalchemy.Column('id', - sqlalchemy.Integer(), - primary_key=True, - nullable=False), - sqlalchemy.Column('image_id', - sqlalchemy.Integer(), - nullable=False, - index=True), - sqlalchemy.Column('name', - sqlalchemy.String(255), - nullable=False), - sqlalchemy.Column('value', - sqlalchemy.Text()), - sqlalchemy.Column('created_at', - sqlalchemy.DateTime(), - nullable=False), - sqlalchemy.Column('updated_at', - sqlalchemy.DateTime()), - sqlalchemy.Column('deleted_at', - sqlalchemy.DateTime()), - sqlalchemy.Column('deleted', - sqlalchemy.Boolean(), - nullable=False, - default=False, - index=True), - sqlalchemy.UniqueConstraint( - 'image_id', 'name', - name='ix_image_properties_image_id_name'), - extend_existing=True) + 'image_properties_old', + meta, + sqlalchemy.Column('id', + sqlalchemy.Integer(), + primary_key=True, + nullable=False), + sqlalchemy.Column('image_id', + sqlalchemy.Integer(), + nullable=False, + index=True), + sqlalchemy.Column('name', + sqlalchemy.String(255), + nullable=False), + sqlalchemy.Column('value', + sqlalchemy.Text()), + sqlalchemy.Column('created_at', + sqlalchemy.DateTime(), + nullable=False), + sqlalchemy.Column('updated_at', + sqlalchemy.DateTime()), + sqlalchemy.Column('deleted_at', + sqlalchemy.DateTime()), + sqlalchemy.Column('deleted', + sqlalchemy.Boolean(), + nullable=False, + default=False, + index=True), + sqlalchemy.UniqueConstraint( + 'image_id', 'name', + name='ix_image_properties_image_id_name'), + extend_existing=True) image_members_old.create() image_properties_old.create() diff --git a/glance/db/sqlalchemy/migrate_repo/versions/018_add_image_locations_table.py b/glance/db/sqlalchemy/migrate_repo/versions/018_add_image_locations_table.py index 5f1eccc411..a4978c841d 100644 --- a/glance/db/sqlalchemy/migrate_repo/versions/018_add_image_locations_table.py +++ b/glance/db/sqlalchemy/migrate_repo/versions/018_add_image_locations_table.py @@ -27,31 +27,31 @@ def upgrade(migrate_engine): sqlalchemy.Table('images', meta, autoload=True) image_locations_table = sqlalchemy.Table( - 'image_locations', meta, - sqlalchemy.Column('id', - schema.Integer(), - primary_key=True, - nullable=False), - sqlalchemy.Column('image_id', - schema.String(36), - sqlalchemy.ForeignKey('images.id'), - nullable=False, - index=True), - sqlalchemy.Column('value', - schema.Text(), - nullable=False), - sqlalchemy.Column('created_at', - schema.DateTime(), - nullable=False), - sqlalchemy.Column('updated_at', - schema.DateTime()), - sqlalchemy.Column('deleted_at', - schema.DateTime()), - sqlalchemy.Column('deleted', - schema.Boolean(), - nullable=False, - default=False, - index=True), + 'image_locations', meta, + sqlalchemy.Column('id', + schema.Integer(), + primary_key=True, + nullable=False), + sqlalchemy.Column('image_id', + schema.String(36), + sqlalchemy.ForeignKey('images.id'), + nullable=False, + index=True), + sqlalchemy.Column('value', + schema.Text(), + nullable=False), + sqlalchemy.Column('created_at', + schema.DateTime(), + nullable=False), + sqlalchemy.Column('updated_at', + schema.DateTime()), + sqlalchemy.Column('deleted_at', + schema.DateTime()), + sqlalchemy.Column('deleted', + schema.Boolean(), + nullable=False, + default=False, + index=True), ) schema.create_tables([image_locations_table]) diff --git a/glance/db/sqlalchemy/migrate_repo/versions/022_image_member_index.py b/glance/db/sqlalchemy/migrate_repo/versions/022_image_member_index.py index 888f271fb1..51fcf1369d 100644 --- a/glance/db/sqlalchemy/migrate_repo/versions/022_image_member_index.py +++ b/glance/db/sqlalchemy/migrate_repo/versions/022_image_member_index.py @@ -31,7 +31,7 @@ def upgrade(migrate_engine): image_members = _get_image_members_table(migrate_engine) if (migrate_engine.name == 'mysql' or - migrate_engine.name == 'postgresql'): + migrate_engine.name == 'postgresql'): try: UniqueConstraint('image_id', name=_get_original_keyname(migrate_engine.name), @@ -51,7 +51,7 @@ def downgrade(migrate_engine): image_members = _get_image_members_table(migrate_engine) if (migrate_engine.name == 'mysql' or - migrate_engine.name == 'postgresql'): + migrate_engine.name == 'postgresql'): _sanitize(migrate_engine, image_members) UniqueConstraint('image_id', name=NEW_KEYNAME, diff --git a/glance/gateway.py b/glance/gateway.py index c5cf8d3c92..ca21cdbf11 100644 --- a/glance/gateway.py +++ b/glance/gateway.py @@ -37,64 +37,64 @@ class Gateway(object): def get_image_factory(self, context): image_factory = glance.domain.ImageFactory() store_image_factory = glance.store.ImageFactoryProxy( - image_factory, context, self.store_api) + image_factory, context, self.store_api) quota_image_factory = glance.quota.ImageFactoryProxy( - store_image_factory, context, self.db_api) + store_image_factory, context, self.db_api) policy_image_factory = policy.ImageFactoryProxy( - quota_image_factory, context, self.policy) + quota_image_factory, context, self.policy) notifier_image_factory = glance.notifier.ImageFactoryProxy( - policy_image_factory, context, self.notifier) + policy_image_factory, context, self.notifier) if property_utils.is_property_protection_enabled(): property_rules = property_utils.PropertyRules(self.policy) protected_image_factory = property_protections.\ ProtectedImageFactoryProxy(notifier_image_factory, context, property_rules) authorized_image_factory = authorization.ImageFactoryProxy( - protected_image_factory, context) + protected_image_factory, context) else: authorized_image_factory = authorization.ImageFactoryProxy( - notifier_image_factory, context) + notifier_image_factory, context) return authorized_image_factory def get_image_member_factory(self, context): image_factory = glance.domain.ImageMemberFactory() quota_image_factory = glance.quota.ImageMemberFactoryProxy( - image_factory, context, self.db_api) + image_factory, context, self.db_api) policy_member_factory = policy.ImageMemberFactoryProxy( - quota_image_factory, context, self.policy) + quota_image_factory, context, self.policy) authorized_image_factory = authorization.ImageMemberFactoryProxy( - policy_member_factory, context) + policy_member_factory, context) return authorized_image_factory def get_repo(self, context): image_repo = glance.db.ImageRepo(context, self.db_api) store_image_repo = glance.store.ImageRepoProxy( - image_repo, context, self.store_api) + image_repo, context, self.store_api) quota_image_repo = glance.quota.ImageRepoProxy( - store_image_repo, context, self.db_api) + store_image_repo, context, self.db_api) policy_image_repo = policy.ImageRepoProxy( - quota_image_repo, context, self.policy) + quota_image_repo, context, self.policy) notifier_image_repo = glance.notifier.ImageRepoProxy( - policy_image_repo, context, self.notifier) + policy_image_repo, context, self.notifier) if property_utils.is_property_protection_enabled(): property_rules = property_utils.PropertyRules(self.policy) protected_image_repo = property_protections.\ ProtectedImageRepoProxy(notifier_image_repo, context, property_rules) authorized_image_repo = authorization.ImageRepoProxy( - protected_image_repo, context) + protected_image_repo, context) else: authorized_image_repo = authorization.ImageRepoProxy( - notifier_image_repo, context) + notifier_image_repo, context) return authorized_image_repo def get_task_factory(self, context): task_factory = glance.domain.TaskFactory() policy_task_factory = policy.TaskFactoryProxy( - task_factory, context, self.policy) + task_factory, context, self.policy) notifier_task_factory = glance.notifier.TaskFactoryProxy( - policy_task_factory, context, self.notifier) + policy_task_factory, context, self.notifier) authorized_task_factory = authorization.TaskFactoryProxy( notifier_task_factory, context) return authorized_task_factory @@ -102,9 +102,9 @@ class Gateway(object): def get_task_repo(self, context): task_repo = glance.db.TaskRepo(context, self.db_api) policy_task_repo = policy.TaskRepoProxy( - task_repo, context, self.policy) + task_repo, context, self.policy) notifier_task_repo = glance.notifier.TaskRepoProxy( - policy_task_repo, context, self.notifier) + policy_task_repo, context, self.notifier) authorized_task_repo = authorization.TaskRepoProxy( notifier_task_repo, context) return authorized_task_repo diff --git a/glance/image_cache/client.py b/glance/image_cache/client.py index bdfe09106f..e210ee3489 100644 --- a/glance/image_cache/client.py +++ b/glance/image_cache/client.py @@ -99,18 +99,18 @@ def get_client(host, port=None, timeout=None, use_ssl=False, username=None, creds = { 'username': username or - os.getenv('OS_AUTH_USER', os.getenv('OS_USERNAME')), + os.getenv('OS_AUTH_USER', os.getenv('OS_USERNAME')), 'password': password or - os.getenv('OS_AUTH_KEY', os.getenv('OS_PASSWORD')), + os.getenv('OS_AUTH_KEY', os.getenv('OS_PASSWORD')), 'tenant': tenant or - os.getenv('OS_AUTH_TENANT', os.getenv('OS_TENANT_NAME')), + os.getenv('OS_AUTH_TENANT', os.getenv('OS_TENANT_NAME')), 'auth_url': auth_url or - os.getenv('OS_AUTH_URL'), + os.getenv('OS_AUTH_URL'), 'strategy': force_strategy or - auth_strategy or - os.getenv('OS_AUTH_STRATEGY', 'noauth'), + auth_strategy or + os.getenv('OS_AUTH_STRATEGY', 'noauth'), 'region': region or - os.getenv('OS_REGION_NAME'), + os.getenv('OS_REGION_NAME'), } if creds['strategy'] == 'keystone' and not creds['auth_url']: @@ -119,11 +119,11 @@ def get_client(host, port=None, timeout=None, use_ssl=False, username=None, raise exception.ClientConfigurationError(msg) return CacheClient( - host=host, - port=port, - timeout=timeout, - use_ssl=use_ssl, - auth_tok=auth_token or - os.getenv('OS_TOKEN'), - creds=creds, - insecure=insecure) + host=host, + port=port, + timeout=timeout, + use_ssl=use_ssl, + auth_tok=auth_token or + os.getenv('OS_TOKEN'), + creds=creds, + insecure=insecure) diff --git a/glance/image_cache/drivers/sqlite.py b/glance/image_cache/drivers/sqlite.py index 7b3d2a2b1a..5e8eed982a 100644 --- a/glance/image_cache/drivers/sqlite.py +++ b/glance/image_cache/drivers/sqlite.py @@ -71,7 +71,7 @@ class SqliteConnection(sqlite3.Connection): def execute(self, *args, **kwargs): return self._timeout(lambda: sqlite3.Connection.execute( - self, *args, **kwargs)) + self, *args, **kwargs)) def commit(self): return self._timeout(lambda: sqlite3.Connection.commit(self)) diff --git a/glance/quota/__init__.py b/glance/quota/__init__.py index 5d1eaa692e..6b3dc0d62b 100644 --- a/glance/quota/__init__.py +++ b/glance/quota/__init__.py @@ -52,7 +52,7 @@ def _calc_required_size(context, image, locations): else: for location in locations: size_from_backend = glance.store.get_size_from_backend( - context, location['url']) + context, location['url']) if size_from_backend: required_size = size_from_backend * len(locations) break diff --git a/glance/store/__init__.py b/glance/store/__init__.py index 6eb3328b5f..3edaae69d5 100644 --- a/glance/store/__init__.py +++ b/glance/store/__init__.py @@ -628,8 +628,8 @@ class ImageProxy(glance.domain.proxy.Image): 'store_api': store_api, } super(ImageProxy, self).__init__( - image, member_repo_proxy_class=ImageMemberRepoProxy, - member_repo_proxy_kwargs=proxy_kwargs) + image, member_repo_proxy_class=ImageMemberRepoProxy, + member_repo_proxy_kwargs=proxy_kwargs) def delete(self): self.image.delete() @@ -646,8 +646,8 @@ class ImageProxy(glance.domain.proxy.Image): if size is None: size = 0 # NOTE(markwash): zero -> unknown size location, size, checksum, loc_meta = self.store_api.add_to_backend( - self.context, CONF.default_store, - self.image.image_id, utils.CooperativeReader(data), size) + self.context, CONF.default_store, + self.image.image_id, utils.CooperativeReader(data), size) self.image.locations = [{'url': location, 'metadata': loc_meta}] self.image.size = size self.image.checksum = checksum diff --git a/glance/store/swift.py b/glance/store/swift.py index f51ffed269..0a4041ce80 100644 --- a/glance/store/swift.py +++ b/glance/store/swift.py @@ -282,8 +282,8 @@ class BaseStore(glance.store.base.Store): try: resp_headers, resp_body = connection.get_object( - container=location.container, obj=location.obj, - resp_chunk_size=self.CHUNKSIZE) + container=location.container, obj=location.obj, + resp_chunk_size=self.CHUNKSIZE) except swiftclient.ClientException as e: if e.http_status == httplib.NOT_FOUND: msg = _("Swift could not find object %s.") % location.obj @@ -308,7 +308,7 @@ class BaseStore(glance.store.base.Store): connection = self.get_connection(location) try: resp_headers = connection.head_object( - container=location.container, obj=location.obj) + container=location.container, obj=location.obj) return int(resp_headers.get('content-length', 0)) except Exception: return 0 @@ -466,7 +466,7 @@ class BaseStore(glance.store.base.Store): manifest = None try: headers = connection.head_object( - location.container, location.obj) + location.container, location.obj) manifest = headers.get('x-object-manifest') except swiftclient.ClientException as e: if e.http_status != httplib.NOT_FOUND: @@ -475,7 +475,7 @@ class BaseStore(glance.store.base.Store): # Delete all the chunks before the object manifest itself obj_container, obj_prefix = manifest.split('/', 1) segments = connection.get_container( - obj_container, prefix=obj_prefix)[1] + obj_container, prefix=obj_prefix)[1] for segment in segments: # TODO(jaypipes): This would be an easy area to parallelize # since we're simply sending off parallelizable requests @@ -585,10 +585,10 @@ class SingleTenantStore(BaseStore): os_options['service_type'] = self.service_type return swiftclient.Connection( - auth_url, user, location.key, insecure=self.insecure, - tenant_name=tenant_name, snet=self.snet, - auth_version=self.auth_version, os_options=os_options, - ssl_compression=self.ssl_compression) + auth_url, user, location.key, insecure=self.insecure, + tenant_name=tenant_name, snet=self.snet, + auth_version=self.auth_version, os_options=os_options, + ssl_compression=self.ssl_compression) class MultiTenantStore(BaseStore): @@ -606,8 +606,8 @@ class MultiTenantStore(BaseStore): raise exception.BadStoreConfiguration(store_name="swift", reason=reason) self.storage_url = auth.get_endpoint( - self.context.service_catalog, service_type=self.service_type, - endpoint_region=self.region, endpoint_type=self.endpoint_type) + self.context.service_catalog, service_type=self.service_type, + endpoint_region=self.region, endpoint_type=self.endpoint_type) if self.storage_url.startswith('http://'): self.scheme = 'swift+http' else: @@ -664,12 +664,12 @@ class MultiTenantStore(BaseStore): def get_connection(self, location): return swiftclient.Connection( - None, self.context.user, None, - preauthurl=location.swift_url, - preauthtoken=self.context.auth_tok, - tenant_name=self.context.tenant, - auth_version='2', snet=self.snet, insecure=self.insecure, - ssl_compression=self.ssl_compression) + None, self.context.user, None, + preauthurl=location.swift_url, + preauthtoken=self.context.auth_tok, + tenant_name=self.context.tenant, + auth_version='2', snet=self.snet, insecure=self.insecure, + ssl_compression=self.ssl_compression) class ChunkReader(object): diff --git a/glance/tests/functional/db/base.py b/glance/tests/functional/db/base.py index 9134da966e..7856b7df2f 100644 --- a/glance/tests/functional/db/base.py +++ b/glance/tests/functional/db/base.py @@ -293,7 +293,7 @@ class DriverTests(object): ctxt2 = context.RequestContext(is_admin=False, tenant=TENANT2, auth_tok='user:%s:user' % TENANT2) image = self.db_api.image_create( - ctxt1, {'status': 'queued', 'owner': TENANT1}) + ctxt1, {'status': 'queued', 'owner': TENANT1}) self.assertRaises(exception.Forbidden, self.db_api.image_get, ctxt2, image['id']) @@ -1609,9 +1609,9 @@ class TestVisibility(test_utils.BaseTestCase): def setup_contexts(self): self.admin_context = context.RequestContext( - is_admin=True, tenant=self.admin_tenant) + is_admin=True, tenant=self.admin_tenant) self.admin_none_context = context.RequestContext( - is_admin=True, tenant=None) + is_admin=True, tenant=None) self.tenant1_context = context.RequestContext(tenant=self.tenant1) self.tenant2_context = context.RequestContext(tenant=self.tenant2) self.none_context = context.RequestContext(tenant=None) diff --git a/glance/tests/functional/store/__init__.py b/glance/tests/functional/store/__init__.py index 7e61e035c7..e0d96c6067 100644 --- a/glance/tests/functional/store/__init__.py +++ b/glance/tests/functional/store/__init__.py @@ -91,10 +91,10 @@ class BaseTestCase(object): store = self.get_store() location = glance.store.location.Location( - self.store_name, - store.get_store_location_class(), - uri=uri, - image_id=image_id) + self.store_name, + store.get_store_location_class(), + uri=uri, + image_id=image_id) (get_iter, get_size) = store.get(location) self.assertEqual(3, get_size) @@ -118,9 +118,9 @@ class BaseTestCase(object): store = self.get_store() location = glance.store.location.Location( - self.store_name, - store.get_store_location_class(), - uri=image_uri) + self.store_name, + store.get_store_location_class(), + uri=image_uri) (get_iter, get_size) = store.get(location) self.assertEqual(3, get_size) diff --git a/glance/tests/functional/store/test_cinder.py b/glance/tests/functional/store/test_cinder.py index 1281a04b17..8b81bbb2cf 100644 --- a/glance/tests/functional/store/test_cinder.py +++ b/glance/tests/functional/store/test_cinder.py @@ -64,16 +64,16 @@ class TestCinderStore(store_tests.BaseTestCase, testtools.TestCase): try: self.cinder_config = parse_config(raw_config) ret = store_tests_swift.keystone_authenticate( - self.cinder_config['test_cinder_store_auth_address'], - self.cinder_config['test_cinder_store_auth_version'], - self.cinder_config['test_cinder_store_tenant'], - self.cinder_config['test_cinder_store_user'], - self.cinder_config['test_cinder_store_key']) + self.cinder_config['test_cinder_store_auth_address'], + self.cinder_config['test_cinder_store_auth_version'], + self.cinder_config['test_cinder_store_tenant'], + self.cinder_config['test_cinder_store_user'], + self.cinder_config['test_cinder_store_key']) (tenant_id, auth_token, service_catalog) = ret self.context = glance.context.RequestContext( - tenant=tenant_id, - service_catalog=service_catalog, - auth_tok=auth_token) + tenant=tenant_id, + service_catalog=service_catalog, + auth_tok=auth_token) self.cinder_client = cinder.get_cinderclient(self.context) except Exception as e: msg = "Cinder backend isn't set up: %s" % e diff --git a/glance/tests/functional/store/test_rbd.py b/glance/tests/functional/store/test_rbd.py index 1e1ceda4ac..0dc0d3e7d7 100644 --- a/glance/tests/functional/store/test_rbd.py +++ b/glance/tests/functional/store/test_rbd.py @@ -149,10 +149,10 @@ class TestRBDStore(store_tests.BaseTestCase, testtools.TestCase): self.assertEqual(image_checksum, add_checksum) location = glance.store.location.Location( - self.store_name, - store.get_store_location_class(), - uri=uri, - image_id=image_id) + self.store_name, + store.get_store_location_class(), + uri=uri, + image_id=image_id) self.assertEqual(image_size, store.get_size(location)) diff --git a/glance/tests/functional/store/test_swift.py b/glance/tests/functional/store/test_swift.py index 19cb16ca70..db7886ac13 100644 --- a/glance/tests/functional/store/test_swift.py +++ b/glance/tests/functional/store/test_swift.py @@ -205,10 +205,10 @@ class TestSwiftStore(store_tests.BaseTestCase, testtools.TestCase): self.assertEqual(image_checksum, add_checksum) location = glance.store.location.Location( - self.store_name, - store.get_store_location_class(), - uri=uri, - image_id=image_id) + self.store_name, + store.get_store_location_class(), + uri=uri, + image_id=image_id) # Store interface should still be respected even though # we are storing images in multiple Swift objects @@ -322,16 +322,16 @@ class TestSwiftStore(store_tests.BaseTestCase, testtools.TestCase): swift_store_user = self.swift_config['swift_store_user'] tenant_name, username = swift_store_user.split(':') tenant_id, auth_token, service_catalog = keystone_authenticate( - self.swift_config['swift_store_auth_address'], - self.swift_config['swift_store_auth_version'], - tenant_name, - username, - self.swift_config['swift_store_key']) + self.swift_config['swift_store_auth_address'], + self.swift_config['swift_store_auth_version'], + tenant_name, + username, + self.swift_config['swift_store_key']) context = glance.context.RequestContext( - tenant=tenant_id, - service_catalog=service_catalog, - auth_tok=auth_token) + tenant=tenant_id, + service_catalog=service_catalog, + auth_tok=auth_token) store = self.get_store(context=context) image_id = str(uuid.uuid4()) @@ -339,10 +339,10 @@ class TestSwiftStore(store_tests.BaseTestCase, testtools.TestCase): uri, _, _, _ = store.add(image_id, image_data, 3) location = glance.store.location.Location( - self.store_name, - store.get_store_location_class(), - uri=uri, - image_id=image_id) + self.store_name, + store.get_store_location_class(), + uri=uri, + image_id=image_id) read_tenant = str(uuid.uuid4()) write_tenant = str(uuid.uuid4()) diff --git a/glance/tests/functional/test_bin_glance_cache_manage.py b/glance/tests/functional/test_bin_glance_cache_manage.py index c92cf31149..37538e4d29 100644 --- a/glance/tests/functional/test_bin_glance_cache_manage.py +++ b/glance/tests/functional/test_bin_glance_cache_manage.py @@ -187,7 +187,7 @@ class TestBinGlanceCacheManage(functional.FunctionalTest): # Queue second image and then cache it cmd = "%s --port=%d --force queue-image %s" % ( - exe_cmd, api_port, ids[1]) + exe_cmd, api_port, ids[1]) exitcode, out, err = execute(cmd) @@ -249,7 +249,7 @@ log_file = %(log_file)s # Queue third image and then delete it from queue cmd = "%s --port=%d --force queue-image %s" % ( - exe_cmd, api_port, ids[2]) + exe_cmd, api_port, ids[2]) exitcode, out, err = execute(cmd) diff --git a/glance/tests/functional/test_scrubber.py b/glance/tests/functional/test_scrubber.py index e1bcb0acb2..9fe48e305b 100644 --- a/glance/tests/functional/test_scrubber.py +++ b/glance/tests/functional/test_scrubber.py @@ -249,7 +249,7 @@ class TestScrubber(functional.FunctionalTest): self.assertTrue(marker_uri is not None) decrypted_uri = crypt.urlsafe_decrypt( - self.api_server.metadata_encryption_key, marker_uri) + self.api_server.metadata_encryption_key, marker_uri) loc = StoreLocation({}) loc.parse_uri(decrypted_uri) diff --git a/glance/tests/functional/v1/test_ssl.py b/glance/tests/functional/v1/test_ssl.py index a256536ade..c8854ee0d7 100644 --- a/glance/tests/functional/v1/test_ssl.py +++ b/glance/tests/functional/v1/test_ssl.py @@ -477,26 +477,26 @@ class TestSSL(functional.FunctionalTest): "links": [{ "rel": "self", "href": "https://127.0.0.1:%d/v2/" % self.api_port}]}, - {"id": "v2.1", - "status": "SUPPORTED", - "links": [{ - "rel": "self", - "href": "https://127.0.0.1:%d/v2/" % self.api_port}]}, - {"id": "v2.0", - "status": "SUPPORTED", - "links": [{ - "rel": "self", - "href": "https://127.0.0.1:%d/v2/" % self.api_port}]}, - {"id": "v1.1", - "status": "CURRENT", - "links": [{ - "rel": "self", - "href": "https://127.0.0.1:%d/v1/" % self.api_port}]}, - {"id": "v1.0", - "status": "SUPPORTED", - "links": [{ - "rel": "self", - "href": "https://127.0.0.1:%d/v1/" % self.api_port}]}]} + {"id": "v2.1", + "status": "SUPPORTED", + "links": [{ + "rel": "self", + "href": "https://127.0.0.1:%d/v2/" % self.api_port}]}, + {"id": "v2.0", + "status": "SUPPORTED", + "links": [{ + "rel": "self", + "href": "https://127.0.0.1:%d/v2/" % self.api_port}]}, + {"id": "v1.1", + "status": "CURRENT", + "links": [{ + "rel": "self", + "href": "https://127.0.0.1:%d/v1/" % self.api_port}]}, + {"id": "v1.0", + "status": "SUPPORTED", + "links": [{ + "rel": "self", + "href": "https://127.0.0.1:%d/v1/" % self.api_port}]}]} versions_json = json.dumps(versions) images = {'images': []} images_json = json.dumps(images) @@ -937,7 +937,7 @@ class TestSSL(functional.FunctionalTest): # Make sure you quote the url when using more than one param! params = "name=My%20Image!&property-pants=are%20on" path = "https://%s:%d/v1/images/detail?%s" % ( - "127.0.0.1", self.api_port, params) + "127.0.0.1", self.api_port, params) response, content = https.request(path, 'GET') self.assertEqual(response.status, 200) data = json.loads(content) diff --git a/glance/tests/integration/legacy_functional/base.py b/glance/tests/integration/legacy_functional/base.py index fc48fbe30a..216c5e49e8 100644 --- a/glance/tests/integration/legacy_functional/base.py +++ b/glance/tests/integration/legacy_functional/base.py @@ -143,12 +143,12 @@ class ApiTest(test_utils.BaseTestCase): def _configure_logging(self): self.config(default_log_levels=[ - 'amqplib=WARN', - 'sqlalchemy=WARN', - 'boto=WARN', - 'suds=INFO', - 'keystone=INFO', - 'eventlet.wsgi.server=DEBUG' + 'amqplib=WARN', + 'sqlalchemy=WARN', + 'boto=WARN', + 'suds=INFO', + 'keystone=INFO', + 'eventlet.wsgi.server=DEBUG' ]) def _setup_database(self): diff --git a/glance/tests/integration/legacy_functional/test_v1_api.py b/glance/tests/integration/legacy_functional/test_v1_api.py index 49e10c2dd9..058433c136 100644 --- a/glance/tests/integration/legacy_functional/test_v1_api.py +++ b/glance/tests/integration/legacy_functional/test_v1_api.py @@ -1533,7 +1533,7 @@ class TestApiWithFakeAuth(base.ApiTest): self.assertEqual(response.status, 200) image = json.loads(content) self.assertEqual( - '1', image['image']['properties']['x_all_permitted_joe_soap']) + '1', image['image']['properties']['x_all_permitted_joe_soap']) # Verify both admin and unknown role can read properties marked with # '@' @@ -1545,9 +1545,9 @@ class TestApiWithFakeAuth(base.ApiTest): headers=auth_headers) self.assertEqual(response.status, 200) self.assertEqual('1', response.get( - 'x-image-meta-property-x_all_permitted_admin')) + 'x-image-meta-property-x_all_permitted_admin')) self.assertEqual('1', response.get( - 'x-image-meta-property-x_all_permitted_joe_soap')) + 'x-image-meta-property-x_all_permitted_joe_soap')) auth_headers = { 'X-Auth-Token': 'user1:tenant1:joe_soap', } @@ -1556,9 +1556,9 @@ class TestApiWithFakeAuth(base.ApiTest): headers=auth_headers) self.assertEqual(response.status, 200) self.assertEqual('1', response.get( - 'x-image-meta-property-x_all_permitted_admin')) + 'x-image-meta-property-x_all_permitted_admin')) self.assertEqual('1', response.get( - 'x-image-meta-property-x_all_permitted_joe_soap')) + 'x-image-meta-property-x_all_permitted_joe_soap')) # Verify both admin and unknown role can update properties marked with # '@' @@ -1591,7 +1591,7 @@ class TestApiWithFakeAuth(base.ApiTest): self.assertEqual(response.status, 200) image = json.loads(content) self.assertEqual( - '2', image['image']['properties']['x_all_permitted_joe_soap']) + '2', image['image']['properties']['x_all_permitted_joe_soap']) # Verify both admin and unknown role can delete properties marked with # '@' diff --git a/glance/tests/integration/v2/base.py b/glance/tests/integration/v2/base.py index 825c9ffb10..0e66f78bbb 100644 --- a/glance/tests/integration/v2/base.py +++ b/glance/tests/integration/v2/base.py @@ -148,12 +148,12 @@ class ApiTest(test_utils.BaseTestCase): def _configure_logging(self): self.config(default_log_levels=[ - 'amqplib=WARN', - 'sqlalchemy=WARN', - 'boto=WARN', - 'suds=INFO', - 'keystone=INFO', - 'eventlet.wsgi.server=DEBUG' + 'amqplib=WARN', + 'sqlalchemy=WARN', + 'boto=WARN', + 'suds=INFO', + 'keystone=INFO', + 'eventlet.wsgi.server=DEBUG' ]) def _setup_database(self): diff --git a/glance/tests/stubs.py b/glance/tests/stubs.py index 3be298ea43..3c99b7d65d 100644 --- a/glance/tests/stubs.py +++ b/glance/tests/stubs.py @@ -172,7 +172,7 @@ def stub_out_registry_and_store_server(stubs, base_dir, **kwargs): DEFAULT_API_PORT = 9292 if (client.port == DEFAULT_API_PORT and - client.host == '0.0.0.0'): + client.host == '0.0.0.0'): return FakeGlanceConnection elif (client.port == DEFAULT_REGISTRY_PORT and client.host == '0.0.0.0'): @@ -213,7 +213,7 @@ def stub_out_registry_server(stubs, **kwargs): DEFAULT_REGISTRY_PORT = 9191 if (client.port == DEFAULT_REGISTRY_PORT and - client.host == '0.0.0.0'): + client.host == '0.0.0.0'): rserver = kwargs.pop("registry", None) return FakeRegistryConnection(registry=rserver) diff --git a/glance/tests/unit/api/test_common.py b/glance/tests/unit/api/test_common.py index 2c4b049d54..2d15c5bc36 100644 --- a/glance/tests/unit/api/test_common.py +++ b/glance/tests/unit/api/test_common.py @@ -54,7 +54,7 @@ class TestSizeCheckedIter(testtools.TestCase): resp = self._get_webob_response() meta = self._get_image_metadata() checked_image = glance.api.common.size_checked_iter( - resp, meta, 4, ['AB', 'CD'], None) + resp, meta, 4, ['AB', 'CD'], None) self.assertEqual('AB', checked_image.next()) self.assertEqual('CD', checked_image.next()) @@ -64,7 +64,7 @@ class TestSizeCheckedIter(testtools.TestCase): resp = self._get_webob_response() meta = self._get_image_metadata() checked_image = glance.api.common.size_checked_iter( - resp, meta, 3, ['AB', 'C'], None) + resp, meta, 3, ['AB', 'C'], None) self.assertEqual('AB', checked_image.next()) self.assertEqual('C', checked_image.next()) @@ -74,7 +74,7 @@ class TestSizeCheckedIter(testtools.TestCase): resp = self._get_webob_response() meta = self._get_image_metadata() checked_image = glance.api.common.size_checked_iter( - resp, meta, 6, ['AB', '', 'CDE', 'F'], None) + resp, meta, 6, ['AB', '', 'CDE', 'F'], None) self.assertEqual('AB', checked_image.next()) self.assertEqual('', checked_image.next()) @@ -87,7 +87,7 @@ class TestSizeCheckedIter(testtools.TestCase): resp = self._get_webob_response() meta = self._get_image_metadata() checked_image = glance.api.common.size_checked_iter( - resp, meta, 4, ['AB', 'CD', 'EF'], None) + resp, meta, 4, ['AB', 'CD', 'EF'], None) self.assertEqual('AB', checked_image.next()) self.assertEqual('CD', checked_image.next()) diff --git a/glance/tests/unit/api/test_property_protections.py b/glance/tests/unit/api/test_property_protections.py index 699dc2fabd..6922b0b743 100644 --- a/glance/tests/unit/api/test_property_protections.py +++ b/glance/tests/unit/api/test_property_protections.py @@ -68,7 +68,7 @@ class TestProtectedImageRepoProxy(utils.BaseTestCase): self.context = glance.context.RequestContext(roles=['spl_role']) image_repo = self.ImageRepoStub(self.fixtures) self.image_repo = property_protections.ProtectedImageRepoProxy( - image_repo, self.context, self.property_rules) + image_repo, self.context, self.property_rules) def test_get_image(self): image_id = '1' @@ -115,7 +115,7 @@ class TestProtectedImageProxy(utils.BaseTestCase): extra_prop = {'spl_read_prop': 'read', 'spl_fake_prop': 'prop'} image = self.ImageStub(extra_prop) result_image = property_protections.ProtectedImageProxy( - image, context, self.property_rules) + image, context, self.property_rules) result_extra_props = result_image.extra_properties self.assertEqual(result_extra_props['spl_read_prop'], 'read') self.assertFalse('spl_fake_prop' in result_extra_props.keys()) @@ -133,7 +133,7 @@ class TestExtraPropertiesProxy(utils.BaseTestCase): extra_properties = {'foo': 'bar', 'ping': 'pong'} context = glance.context.RequestContext(roles=['admin']) extra_prop_proxy = property_protections.ExtraPropertiesProxy( - context, extra_properties, self.property_rules) + context, extra_properties, self.property_rules) test_result = extra_prop_proxy['foo'] self.assertEqual(test_result, 'bar') @@ -141,14 +141,14 @@ class TestExtraPropertiesProxy(utils.BaseTestCase): extra_properties = {'foo': 'bar', 'ping': 'pong'} context = glance.context.RequestContext(roles=['unpermitted_role']) extra_prop_proxy = property_protections.ExtraPropertiesProxy( - context, extra_properties, self.property_rules) + context, extra_properties, self.property_rules) self.assertRaises(KeyError, extra_prop_proxy.__getitem__, 'foo') def test_update_extra_property_as_permitted_role_after_read(self): extra_properties = {'foo': 'bar', 'ping': 'pong'} context = glance.context.RequestContext(roles=['admin']) extra_prop_proxy = property_protections.ExtraPropertiesProxy( - context, extra_properties, self.property_rules) + context, extra_properties, self.property_rules) extra_prop_proxy['foo'] = 'par' self.assertEqual(extra_prop_proxy['foo'], 'par') @@ -156,7 +156,7 @@ class TestExtraPropertiesProxy(utils.BaseTestCase): extra_properties = {'spl_read_prop': 'bar'} context = glance.context.RequestContext(roles=['spl_role']) extra_prop_proxy = property_protections.ExtraPropertiesProxy( - context, extra_properties, self.property_rules) + context, extra_properties, self.property_rules) self.assertRaises(exception.ReservedProperty, extra_prop_proxy.__setitem__, 'spl_read_prop', 'par') @@ -165,7 +165,7 @@ class TestExtraPropertiesProxy(utils.BaseTestCase): extra_properties = {'spl_create_prop': 'bar'} context = glance.context.RequestContext(roles=['spl_role']) extra_prop_proxy = property_protections.ExtraPropertiesProxy( - context, extra_properties, self.property_rules) + context, extra_properties, self.property_rules) self.assertRaises(exception.ReservedProperty, extra_prop_proxy.__setitem__, 'spl_create_prop', 'par') @@ -174,7 +174,7 @@ class TestExtraPropertiesProxy(utils.BaseTestCase): extra_properties = {} context = glance.context.RequestContext(roles=['admin']) extra_prop_proxy = property_protections.ExtraPropertiesProxy( - context, extra_properties, self.property_rules) + context, extra_properties, self.property_rules) extra_prop_proxy['boo'] = 'doo' self.assertEqual(extra_prop_proxy['boo'], 'doo') @@ -182,7 +182,7 @@ class TestExtraPropertiesProxy(utils.BaseTestCase): extra_properties = {} context = glance.context.RequestContext(roles=['spl_role']) extra_prop_proxy = property_protections.ExtraPropertiesProxy( - context, extra_properties, self.property_rules) + context, extra_properties, self.property_rules) self.assertRaises(exception.ReservedProperty, extra_prop_proxy.__setitem__, 'boo', 'doo') @@ -191,7 +191,7 @@ class TestExtraPropertiesProxy(utils.BaseTestCase): extra_properties = {'foo': 'bar'} context = glance.context.RequestContext(roles=['admin']) extra_prop_proxy = property_protections.ExtraPropertiesProxy( - context, extra_properties, self.property_rules) + context, extra_properties, self.property_rules) del extra_prop_proxy['foo'] self.assertRaises(KeyError, extra_prop_proxy.__getitem__, 'foo') @@ -199,14 +199,14 @@ class TestExtraPropertiesProxy(utils.BaseTestCase): extra_properties = {} context = glance.context.RequestContext(roles=['admin']) extra_prop_proxy = property_protections.ExtraPropertiesProxy( - context, extra_properties, self.property_rules) + context, extra_properties, self.property_rules) self.assertRaises(KeyError, extra_prop_proxy.__delitem__, 'foo') def test_delete_reserved_extra_property(self): extra_properties = {'spl_read_prop': 'r'} context = glance.context.RequestContext(roles=['spl_role']) extra_prop_proxy = property_protections.ExtraPropertiesProxy( - context, extra_properties, self.property_rules) + context, extra_properties, self.property_rules) # Ensure property has been created and can be read self.assertEqual(extra_prop_proxy['spl_read_prop'], 'r') self.assertRaises(exception.ReservedProperty, @@ -216,7 +216,7 @@ class TestExtraPropertiesProxy(utils.BaseTestCase): extra_properties = {} roles = ['spl_role'] extra_prop_proxy = property_protections.ExtraPropertiesProxy( - roles, extra_properties, self.property_rules) + roles, extra_properties, self.property_rules) self.assertRaises(KeyError, extra_prop_proxy.__delitem__, 'spl_read_prop') @@ -233,8 +233,8 @@ class TestProtectedImageFactoryProxy(utils.BaseTestCase): self.context = glance.context.RequestContext(tenant=TENANT1, roles=['spl_role']) self.image_factory = property_protections.ProtectedImageFactoryProxy( - self.factory, self.context, - self.property_rules) + self.factory, self.context, + self.property_rules) extra_props = {} image = self.image_factory.new_image(extra_properties=extra_props) expected_extra_props = {} @@ -244,8 +244,8 @@ class TestProtectedImageFactoryProxy(utils.BaseTestCase): self.context = glance.context.RequestContext(tenant=TENANT1, roles=['spl_role']) self.image_factory = property_protections.ProtectedImageFactoryProxy( - self.factory, self.context, - self.property_rules) + self.factory, self.context, + self.property_rules) extra_props = {'spl_create_prop': 'c'} image = self.image_factory.new_image(extra_properties=extra_props) expected_extra_props = {'spl_create_prop': 'c'} @@ -255,8 +255,8 @@ class TestProtectedImageFactoryProxy(utils.BaseTestCase): self.context = glance.context.RequestContext(tenant=TENANT1, roles=['spl_role']) self.image_factory = property_protections.ProtectedImageFactoryProxy( - self.factory, self.context, - self.property_rules) + self.factory, self.context, + self.property_rules) extra_props = {'foo': 'bar', 'spl_create_prop': 'c'} # no reg ex for property 'foo' is mentioned for spl_role in config self.assertRaises(exception.ReservedProperty, @@ -267,8 +267,8 @@ class TestProtectedImageFactoryProxy(utils.BaseTestCase): self.context = glance.context.RequestContext(tenant=TENANT1, roles=['admin']) self.image_factory = property_protections.ProtectedImageFactoryProxy( - self.factory, self.context, - self.property_rules) + self.factory, self.context, + self.property_rules) extra_props = {'foo': 'bar', 'spl_create_prop': 'c'} image = self.image_factory.new_image(extra_properties=extra_props) expected_extra_props = {'foo': 'bar', 'spl_create_prop': 'c'} @@ -278,8 +278,8 @@ class TestProtectedImageFactoryProxy(utils.BaseTestCase): self.context = glance.context.RequestContext(tenant=TENANT1, roles=['imaginary-role']) self.image_factory = property_protections.ProtectedImageFactoryProxy( - self.factory, self.context, - self.property_rules) + self.factory, self.context, + self.property_rules) extra_props = {'foo': 'bar', 'spl_create_prop': 'c'} self.assertRaises(exception.ReservedProperty, self.image_factory.new_image, diff --git a/glance/tests/unit/test_auth.py b/glance/tests/unit/test_auth.py index 4ea634b850..b8d0be8aa5 100644 --- a/glance/tests/unit/test_auth.py +++ b/glance/tests/unit/test_auth.py @@ -245,7 +245,7 @@ class TestKeystoneAuthPlugin(utils.BaseTestCase): resp = webob.Response() if (headers.get('X-Auth-User') != 'user1' or - headers.get('X-Auth-Key') != 'pass'): + headers.get('X-Auth-Key') != 'pass'): resp.status = 401 else: resp.status = 200 @@ -282,10 +282,10 @@ class TestKeystoneAuthPlugin(utils.BaseTestCase): continue # Expected no_strategy_creds = { - 'username': 'user1', - 'auth_url': 'http://localhost/redirect/', - 'password': 'pass', - 'region': 'RegionOne' + 'username': 'user1', + 'auth_url': 'http://localhost/redirect/', + 'password': 'pass', + 'region': 'RegionOne' } try: @@ -323,7 +323,7 @@ class TestKeystoneAuthPlugin(utils.BaseTestCase): def fake_do_request(cls, url, method, headers=None, body=None): if (not url.rstrip('/').endswith('v2.0/tokens') or - url.count("2.0") != 1): + url.count("2.0") != 1): self.fail("Invalid v2.0 token path (%s)" % url) creds = json.loads(body)['auth'] @@ -333,7 +333,7 @@ class TestKeystoneAuthPlugin(utils.BaseTestCase): resp = webob.Response() if (username != 'user1' or password != 'pass' or - tenant != 'tenant-ok'): + tenant != 'tenant-ok'): resp.status = 401 else: resp.status = 200 @@ -382,11 +382,11 @@ class TestKeystoneAuthPlugin(utils.BaseTestCase): continue # Expected no_region_creds = { - 'username': 'user1', - 'tenant': 'tenant-ok', - 'auth_url': 'http://localhost/redirect/v2.0/', - 'password': 'pass', - 'strategy': 'keystone' + 'username': 'user1', + 'tenant': 'tenant-ok', + 'auth_url': 'http://localhost/redirect/v2.0/', + 'password': 'pass', + 'strategy': 'keystone' } plugin = auth.KeystoneStrategy(no_region_creds) @@ -405,12 +405,12 @@ class TestKeystoneAuthPlugin(utils.BaseTestCase): pass # Expected wrong_region_creds = { - 'username': 'user1', - 'tenant': 'tenant-ok', - 'auth_url': 'http://localhost/redirect/v2.0/', - 'password': 'pass', - 'strategy': 'keystone', - 'region': 'NonExistantRegion' + 'username': 'user1', + 'tenant': 'tenant-ok', + 'auth_url': 'http://localhost/redirect/v2.0/', + 'password': 'pass', + 'strategy': 'keystone', + 'region': 'NonExistantRegion' } try: @@ -422,11 +422,11 @@ class TestKeystoneAuthPlugin(utils.BaseTestCase): pass # Expected no_strategy_creds = { - 'username': 'user1', - 'tenant': 'tenant-ok', - 'auth_url': 'http://localhost/redirect/v2.0/', - 'password': 'pass', - 'region': 'RegionOne' + 'username': 'user1', + 'tenant': 'tenant-ok', + 'auth_url': 'http://localhost/redirect/v2.0/', + 'password': 'pass', + 'region': 'RegionOne' } try: @@ -640,13 +640,13 @@ class TestImmutableImage(utils.BaseTestCase): image_factory = glance.domain.ImageFactory() self.context = glance.context.RequestContext(tenant=TENANT1) image = image_factory.new_image( - image_id=UUID1, - name='Marvin', - owner=TENANT1, - disk_format='raw', - container_format='bare', - extra_properties={'foo': 'bar'}, - tags=['ping', 'pong'], + image_id=UUID1, + name='Marvin', + owner=TENANT1, + disk_format='raw', + container_format='bare', + extra_properties={'foo': 'bar'}, + tags=['ping', 'pong'], ) self.image = authorization.ImmutableImageProxy(image, self.context) @@ -774,7 +774,7 @@ class TestImmutableImage(utils.BaseTestCase): return 'tiddlywinks' image = glance.api.authorization.ImmutableImageProxy( - FakeImage(), self.context) + FakeImage(), self.context) self.assertEqual(image.get_data(), 'tiddlywinks') diff --git a/glance/tests/unit/test_cache_middleware.py b/glance/tests/unit/test_cache_middleware.py index db568ab739..4130a0d10e 100644 --- a/glance/tests/unit/test_cache_middleware.py +++ b/glance/tests/unit/test_cache_middleware.py @@ -272,23 +272,23 @@ class TestCacheMiddlewareProcessRequest(base.IsolatedUnitTest): def fake_image_get(self, image_id): return { - 'id': 'test1', - 'name': 'fake_image', - 'status': 'Active', - 'created_at': '', - 'min_disk': '10G', - 'min_ram': '1024M', - 'protected': False, - 'locations': '', - 'checksum': 'c352f4e7121c6eae958bc1570324f17e', - 'owner': '', - 'disk_format': 'raw', - 'container_format': 'bare', - 'size': '123456789', - 'is_public': 'public', - 'deleted': False, - 'updated_at': '', - 'properties': {}, + 'id': 'test1', + 'name': 'fake_image', + 'status': 'Active', + 'created_at': '', + 'min_disk': '10G', + 'min_ram': '1024M', + 'protected': False, + 'locations': '', + 'checksum': 'c352f4e7121c6eae958bc1570324f17e', + 'owner': '', + 'disk_format': 'raw', + 'container_format': 'bare', + 'size': '123456789', + 'is_public': 'public', + 'deleted': False, + 'updated_at': '', + 'properties': {}, } def fake_image_tag_get_all(context, image_id, session=None): diff --git a/glance/tests/unit/test_db.py b/glance/tests/unit/test_db.py index 89ec44adee..cf60c03e27 100644 --- a/glance/tests/unit/test_db.py +++ b/glance/tests/unit/test_db.py @@ -103,7 +103,7 @@ class TestImageRepo(test_utils.BaseTestCase): self.db = unit_test_utils.FakeDB() self.db.reset() self.context = glance.context.RequestContext( - user=USER1, tenant=TENANT1) + user=USER1, tenant=TENANT1) self.image_repo = glance.db.ImageRepo(self.context, self.db) self.image_factory = glance.domain.ImageFactory() self._create_images() @@ -177,7 +177,7 @@ class TestImageRepo(test_utils.BaseTestCase): def _do_test_list_status(self, status, expected): self.context = glance.context.RequestContext( - user=USER1, tenant=TENANT3) + user=USER1, tenant=TENANT3) self.image_repo = glance.db.ImageRepo(self.context, self.db) images = self.image_repo.list(member_status=status) self.assertEqual(expected, len(images)) @@ -330,7 +330,7 @@ class TestEncryptedLocations(test_utils.BaseTestCase): self.db = unit_test_utils.FakeDB() self.db.reset() self.context = glance.context.RequestContext( - user=USER1, tenant=TENANT1) + user=USER1, tenant=TENANT1) self.image_repo = glance.db.ImageRepo(self.context, self.db) self.image_factory = glance.domain.ImageFactory() self.crypt_key = '0123456789abcdef' @@ -397,7 +397,7 @@ class TestImageMemberRepo(test_utils.BaseTestCase): self.db = unit_test_utils.FakeDB() self.db.reset() self.context = glance.context.RequestContext( - user=USER1, tenant=TENANT1) + user=USER1, tenant=TENANT1) self.image_repo = glance.db.ImageRepo(self.context, self.db) self.image_member_factory = glance.domain.ImageMemberFactory() self._create_images() @@ -433,7 +433,7 @@ class TestImageMemberRepo(test_utils.BaseTestCase): def test_list_no_members(self): image = self.image_repo.get(UUID2) self.image_member_repo_uuid2 = glance.db.ImageMemberRepo( - self.context, self.db, image) + self.context, self.db, image) image_members = self.image_member_repo_uuid2.list() image_member_ids = set([i.member_id for i in image_members]) self.assertEqual(set([]), image_member_ids) diff --git a/glance/tests/unit/test_domain.py b/glance/tests/unit/test_domain.py index 8e356a8526..ab48a7f51c 100644 --- a/glance/tests/unit/test_domain.py +++ b/glance/tests/unit/test_domain.py @@ -59,8 +59,8 @@ class TestImageFactory(test_utils.BaseTestCase): def test_new_image(self): image = self.image_factory.new_image( - image_id=UUID1, name='image-1', min_disk=256, - owner=TENANT1) + image_id=UUID1, name='image-1', min_disk=256, + owner=TENANT1) self.assertEqual(image.image_id, UUID1) self.assertTrue(image.created_at is not None) self.assertEqual(image.created_at, image.updated_at) @@ -81,8 +81,8 @@ class TestImageFactory(test_utils.BaseTestCase): extra_properties = {'foo': 'bar'} tags = ['one', 'two'] image = self.image_factory.new_image( - image_id=UUID1, name='image-1', - extra_properties=extra_properties, tags=tags) + image_id=UUID1, name='image-1', + extra_properties=extra_properties, tags=tags) self.assertEqual(image.image_id, UUID1) self.assertTrue(image.created_at is not None) @@ -123,7 +123,7 @@ class TestImage(test_utils.BaseTestCase): super(TestImage, self).setUp() self.image_factory = domain.ImageFactory() self.image = self.image_factory.new_image( - container_format='bear', disk_format='rawr') + container_format='bear', disk_format='rawr') def test_extra_properties(self): self.image.extra_properties = {'foo': 'bar'} @@ -207,8 +207,8 @@ class TestImageMemberFactory(test_utils.BaseTestCase): def test_minimal_new_image_member(self): member_id = 'fake-member-id' image = self.image_factory.new_image( - image_id=UUID1, name='image-1', min_disk=256, - owner=TENANT1) + image_id=UUID1, name='image-1', min_disk=256, + owner=TENANT1) image_member = self.image_member_factory.new_image_member(image, member_id) self.assertEqual(image_member.image_id, image.image_id) diff --git a/glance/tests/unit/test_domain_proxy.py b/glance/tests/unit/test_domain_proxy.py index dc0b1df0fc..3350b51098 100644 --- a/glance/tests/unit/test_domain_proxy.py +++ b/glance/tests/unit/test_domain_proxy.py @@ -216,8 +216,8 @@ class TestImageMembershipFactory(test_utils.BaseTestCase): def test_proxy_wrapped_membership(self): proxy_factory = proxy.ImageMembershipFactory( - self.factory, member_proxy_class=FakeProxy, - member_proxy_kwargs={'a': 1}) + self.factory, member_proxy_class=FakeProxy, + member_proxy_kwargs={'a': 1}) self.factory.result = 'tyrion' membership = proxy_factory.new_image_member('jaime', 'cersei') self.assertTrue(isinstance(membership, FakeProxy)) @@ -228,7 +228,7 @@ class TestImageMembershipFactory(test_utils.BaseTestCase): def test_proxy_wrapped_image(self): proxy_factory = proxy.ImageMembershipFactory( - self.factory, image_proxy_class=FakeProxy) + self.factory, image_proxy_class=FakeProxy) self.factory.result = 'tyrion' image = FakeProxy('jaime') membership = proxy_factory.new_image_member(image, 'cersei') @@ -241,10 +241,10 @@ class TestImageMembershipFactory(test_utils.BaseTestCase): pass proxy_factory = proxy.ImageMembershipFactory( - self.factory, - member_proxy_class=FakeProxy, - member_proxy_kwargs={'b': 2}, - image_proxy_class=FakeProxy2) + self.factory, + member_proxy_class=FakeProxy, + member_proxy_kwargs={'b': 2}, + image_proxy_class=FakeProxy2) self.factory.result = 'tyrion' image = FakeProxy2('jaime') diff --git a/glance/tests/unit/test_glance_replicator.py b/glance/tests/unit/test_glance_replicator.py index ae80904c46..ae43959fb6 100644 --- a/glance/tests/unit/test_glance_replicator.py +++ b/glance/tests/unit/test_glance_replicator.py @@ -559,9 +559,9 @@ class ReplicationUtilitiesTestCase(test_utils.BaseTestCase): def test_image_present(self): client = FakeImageService(None, 'noauth') self.assertTrue(glance_replicator._image_present( - client, '5dcddce0-cba5-4f18-9cf4-9853c7b207a6')) + client, '5dcddce0-cba5-4f18-9cf4-9853c7b207a6')) self.assertFalse(glance_replicator._image_present( - client, uuid.uuid4())) + client, uuid.uuid4())) def test_dict_diff(self): a = {'a': 1, 'b': 2, 'c': 3} diff --git a/glance/tests/unit/test_migrations.py b/glance/tests/unit/test_migrations.py index 2138d25497..aad1c441fa 100644 --- a/glance/tests/unit/test_migrations.py +++ b/glance/tests/unit/test_migrations.py @@ -774,8 +774,8 @@ class TestMigrations(test_utils.BaseTestCase): images = get_table(engine, 'images') unquoted = 'swift://acct:usr:pass@example.com/container/obj-id' encrypted_unquoted = crypt.urlsafe_encrypt( - metadata_encryption_key, - unquoted, 64) + metadata_encryption_key, + unquoted, 64) data = [] now = datetime.datetime.now() temp = dict(deleted=False, @@ -840,13 +840,13 @@ class TestMigrations(test_utils.BaseTestCase): images = get_table(engine, 'images') now = datetime.datetime.now() base_values = { - 'deleted': False, - 'created_at': now, - 'updated_at': now, - 'status': 'active', - 'is_public': True, - 'min_disk': 0, - 'min_ram': 0, + 'deleted': False, + 'created_at': now, + 'updated_at': now, + 'status': 'active', + 'is_public': True, + 'min_disk': 0, + 'min_ram': 0, } data = [ {'id': 'fake-19-1', 'location': 'http://glance.example.com'}, diff --git a/glance/tests/unit/test_notifier.py b/glance/tests/unit/test_notifier.py index f761ed00f7..7ba05a94ad 100644 --- a/glance/tests/unit/test_notifier.py +++ b/glance/tests/unit/test_notifier.py @@ -110,20 +110,20 @@ class TestImageNotifications(utils.BaseTestCase): def setUp(self): super(TestImageNotifications, self).setUp() self.image = ImageStub( - image_id=UUID1, name='image-1', status='active', size=1024, - created_at=DATETIME, updated_at=DATETIME, owner=TENANT1, - visibility='public', container_format='ami', - tags=['one', 'two'], disk_format='ami', min_ram=128, - min_disk=10, checksum='ca425b88f047ce8ec45ee90e813ada91', - locations=['http://127.0.0.1']) + image_id=UUID1, name='image-1', status='active', size=1024, + created_at=DATETIME, updated_at=DATETIME, owner=TENANT1, + visibility='public', container_format='ami', + tags=['one', 'two'], disk_format='ami', min_ram=128, + min_disk=10, checksum='ca425b88f047ce8ec45ee90e813ada91', + locations=['http://127.0.0.1']) self.context = glance.context.RequestContext(tenant=TENANT2, user=USER1) self.image_repo_stub = ImageRepoStub() self.notifier = unit_test_utils.FakeNotifier() self.image_repo_proxy = glance.notifier.ImageRepoProxy( - self.image_repo_stub, self.context, self.notifier) + self.image_repo_stub, self.context, self.notifier) self.image_proxy = glance.notifier.ImageProxy( - self.image, self.context, self.notifier) + self.image, self.context, self.notifier) def test_image_save_notification(self): self.image_repo_proxy.save(self.image_proxy) diff --git a/glance/tests/unit/test_policy.py b/glance/tests/unit/test_policy.py index f113d3af49..5dfd4079ac 100644 --- a/glance/tests/unit/test_policy.py +++ b/glance/tests/unit/test_policy.py @@ -278,14 +278,14 @@ class TestImagePolicy(test_utils.BaseTestCase): def test_new_image_visibility(self): self.policy.enforce.side_effect = exception.Forbidden image_factory = glance.api.policy.ImageFactoryProxy( - self.image_factory_stub, {}, self.policy) + self.image_factory_stub, {}, self.policy) self.assertRaises(exception.Forbidden, image_factory.new_image, visibility='public') self.policy.enforce.assert_called_once_with({}, "publicize_image", {}) def test_new_image_visibility_public_allowed(self): image_factory = glance.api.policy.ImageFactoryProxy( - self.image_factory_stub, {}, self.policy) + self.image_factory_stub, {}, self.policy) image_factory.new_image(visibility='public') self.policy.enforce.assert_called_once_with({}, "publicize_image", {}) diff --git a/glance/tests/unit/test_quota.py b/glance/tests/unit/test_quota.py index 81b357706c..61b9b897e5 100644 --- a/glance/tests/unit/test_quota.py +++ b/glance/tests/unit/test_quota.py @@ -312,9 +312,9 @@ class TestImagePropertyQuotas(test_utils.BaseTestCase): self.image_repo_mock = mock.Mock() self.image_repo_proxy = glance.quota.ImageRepoProxy( - self.image_repo_mock, - mock.Mock(), - mock.Mock()) + self.image_repo_mock, + mock.Mock(), + mock.Mock()) def test_save_image_with_image_property(self): self.config(image_property_quota=1) @@ -376,9 +376,9 @@ class TestImageTagQuotas(test_utils.BaseTestCase): self.image_repo_mock = mock.Mock() self.image_repo_proxy = glance.quota.ImageRepoProxy( - self.image_repo_mock, - mock.Mock(), - mock.Mock()) + self.image_repo_mock, + mock.Mock(), + mock.Mock()) def test_replace_image_tag(self): self.config(image_tag_quota=1) @@ -472,8 +472,8 @@ class TestImageMemberQuotas(test_utils.BaseTestCase): self.image = mock.Mock() self.base_image_member_factory = mock.Mock() self.image_member_factory = glance.quota.ImageMemberFactoryProxy( - self.base_image_member_factory, context, - db_api) + self.base_image_member_factory, context, + db_api) def test_new_image_member(self): self.config(image_member_quota=1) diff --git a/glance/tests/unit/test_store_image.py b/glance/tests/unit/test_store_image.py index eb4473bc78..3e5c5503f2 100644 --- a/glance/tests/unit/test_store_image.py +++ b/glance/tests/unit/test_store_image.py @@ -714,7 +714,7 @@ class TestStoreImageRepo(utils.BaseTestCase): self.image_stub.visibility = 'private' member_repo = self.image.get_member_repo() membership = glance.domain.ImageMembership( - UUID1, TENANT3, None, None, status='accepted') + UUID1, TENANT3, None, None, status='accepted') member_repo.add(membership) self.assertIn('glug', self.store_api.acls) acls = self.store_api.acls['glug'] @@ -727,7 +727,7 @@ class TestStoreImageRepo(utils.BaseTestCase): self.image_stub.visibility = 'private' member_repo = self.image.get_member_repo() membership = glance.domain.ImageMembership( - UUID1, TENANT1, None, None, status='accepted') + UUID1, TENANT1, None, None, status='accepted') member_repo.remove(membership) self.assertIn('glug', self.store_api.acls) acls = self.store_api.acls['glug'] @@ -741,9 +741,9 @@ class TestImageFactory(utils.BaseTestCase): def setUp(self): super(TestImageFactory, self).setUp() self.image_factory = glance.store.ImageFactoryProxy( - ImageFactoryStub(), - glance.context.RequestContext(user=USER1), - unit_test_utils.FakeStoreAPI()) + ImageFactoryStub(), + glance.context.RequestContext(user=USER1), + unit_test_utils.FakeStoreAPI()) def test_new_image(self): image = self.image_factory.new_image() diff --git a/glance/tests/unit/test_swift_store.py b/glance/tests/unit/test_swift_store.py index 18f36a47a0..b09f03065f 100644 --- a/glance/tests/unit/test_swift_store.py +++ b/glance/tests/unit/test_swift_store.py @@ -116,7 +116,7 @@ def stub_out_swiftclient(stubs, swift_store_auth_version): msg = ('Image size:%d exceeds Swift max:%d' % (read_len, MAX_SWIFT_OBJECT_SIZE)) raise swiftclient.ClientException( - msg, http_status=httplib.REQUEST_ENTITY_TOO_LARGE) + msg, http_status=httplib.REQUEST_ENTITY_TOO_LARGE) fixture_objects[fixture_key] = fixture_object fixture_headers[fixture_key] = { 'content-length': read_len, @@ -272,7 +272,7 @@ class SwiftTests(object): raises an error """ loc = get_location_from_uri("swift://%s:key@authurl/glance/noexist" % ( - self.swift_store_user)) + self.swift_store_user)) self.assertRaises(exception.NotFound, self.store.get, loc) @@ -621,7 +621,7 @@ class SwiftTests(object): raises an error """ loc = get_location_from_uri("swift://%s:key@authurl/glance/noexist" % ( - self.swift_store_user)) + self.swift_store_user)) self.assertRaises(exception.NotFound, self.store.delete, loc) def test_read_acl_public(self): @@ -831,7 +831,7 @@ class TestMultiTenantStoreConnections(base.IsolatedUnitTest): super(TestMultiTenantStoreConnections, self).setUp() self.stubs.Set(swiftclient, 'Connection', FakeConnection) self.context = glance.context.RequestContext( - user='user', tenant='tenant', auth_tok='0123') + user='user', tenant='tenant', auth_tok='0123') self.store = glance.store.swift.MultiTenantStore(self.context) specs = {'scheme': 'swift', 'auth_or_store_url': 'example.com', @@ -901,8 +901,8 @@ class TestCreatingLocations(base.IsolatedUnitTest): fake_get_endpoint = FakeGetEndpoint('https://some_endpoint') self.stubs.Set(glance.common.auth, 'get_endpoint', fake_get_endpoint) context = glance.context.RequestContext( - user='user', tenant='tenant', auth_tok='123', - service_catalog={}) + user='user', tenant='tenant', auth_tok='123', + service_catalog={}) store = glance.store.swift.MultiTenantStore(context) location = store.create_location('image-id') self.assertEqual(location.scheme, 'swift+https') @@ -917,8 +917,8 @@ class TestCreatingLocations(base.IsolatedUnitTest): fake_get_endpoint = FakeGetEndpoint('http://some_endpoint') self.stubs.Set(glance.common.auth, 'get_endpoint', fake_get_endpoint) context = glance.context.RequestContext( - user='user', tenant='tenant', auth_tok='123', - service_catalog={}) + user='user', tenant='tenant', auth_tok='123', + service_catalog={}) store = glance.store.swift.MultiTenantStore(context) location = store.create_location('image-id') self.assertEqual(location.scheme, 'swift+http') @@ -929,8 +929,8 @@ class TestCreatingLocations(base.IsolatedUnitTest): fake_get_endpoint = FakeGetEndpoint('https://some_endpoint') self.stubs.Set(glance.common.auth, 'get_endpoint', fake_get_endpoint) context = glance.context.RequestContext( - user='user', tenant='tenant', auth_tok='123', - service_catalog={}) + user='user', tenant='tenant', auth_tok='123', + service_catalog={}) store = glance.store.swift.MultiTenantStore(context) self.assertEqual(fake_get_endpoint.endpoint_region, 'WestCarolina') @@ -939,8 +939,8 @@ class TestCreatingLocations(base.IsolatedUnitTest): fake_get_endpoint = FakeGetEndpoint('https://some_endpoint') self.stubs.Set(glance.common.auth, 'get_endpoint', fake_get_endpoint) context = glance.context.RequestContext( - user='user', tenant='tenant', auth_tok='123', - service_catalog={}) + user='user', tenant='tenant', auth_tok='123', + service_catalog={}) store = glance.store.swift.MultiTenantStore(context) self.assertEqual(fake_get_endpoint.service_type, 'toy-store') @@ -949,8 +949,8 @@ class TestCreatingLocations(base.IsolatedUnitTest): fake_get_endpoint = FakeGetEndpoint('https://some_endpoint') self.stubs.Set(glance.common.auth, 'get_endpoint', fake_get_endpoint) context = glance.context.RequestContext( - user='user', tenant='tenant', auth_tok='123', - service_catalog={}) + user='user', tenant='tenant', auth_tok='123', + service_catalog={}) store = glance.store.swift.MultiTenantStore(context) self.assertEqual(fake_get_endpoint.endpoint_type, 'InternalURL') diff --git a/glance/tests/unit/v1/test_api.py b/glance/tests/unit/v1/test_api.py index 38669ab075..8b1c26b361 100644 --- a/glance/tests/unit/v1/test_api.py +++ b/glance/tests/unit/v1/test_api.py @@ -304,7 +304,7 @@ class TestGlanceAPI(base.IsolatedUnitTest): def test_create_image_with_too_many_properties(self): self.config(image_property_quota=1) another_request = unit_test_utils.get_fake_request( - path='/images', method='POST') + path='/images', method='POST') headers = {'x-auth-token': 'user:tenant:joe_soap', 'x-image-meta-property-x_all_permitted': '1', 'x-image-meta-property-x_all_permitted_foo': '2'} @@ -2880,9 +2880,9 @@ class TestImageSerializer(base.IsolatedUnitTest): self.receiving_user = 'fake_user' self.receiving_tenant = 2 self.context = glance.context.RequestContext( - is_admin=True, - user=self.receiving_user, - tenant=self.receiving_tenant) + is_admin=True, + user=self.receiving_user, + tenant=self.receiving_tenant) self.serializer = glance.api.v1.images.ImageSerializer() def image_iter(): @@ -3139,7 +3139,7 @@ class TestAPIProtectedProps(base.IsolatedUnitTest): """ image_id = self._create_admin_image() another_request = unit_test_utils.get_fake_request( - path='/images/%s' % image_id, method='PUT') + path='/images/%s' % image_id, method='PUT') headers = {'x-auth-token': 'user:tenant:member', 'x-image-meta-property-x_owner_foo': 'bar'} for k, v in headers.iteritems(): @@ -3156,7 +3156,7 @@ class TestAPIProtectedProps(base.IsolatedUnitTest): self.set_property_protections(use_policies=True) image_id = self._create_admin_image() another_request = unit_test_utils.get_fake_request( - path='/images/%s' % image_id, method='PUT') + path='/images/%s' % image_id, method='PUT') headers = {'x-auth-token': 'user:tenant:admin', 'x-image-meta-property-spl_create_prop_policy': 'bar'} for k, v in headers.iteritems(): @@ -3174,7 +3174,7 @@ class TestAPIProtectedProps(base.IsolatedUnitTest): """ image_id = self._create_admin_image() another_request = unit_test_utils.get_fake_request( - path='/images/%s' % image_id, method='PUT') + path='/images/%s' % image_id, method='PUT') headers = {'x-auth-token': 'user:tenant:fake_member', 'x-image-meta-property-x_owner_foo': 'bar'} for k, v in headers.iteritems(): @@ -3191,9 +3191,9 @@ class TestAPIProtectedProps(base.IsolatedUnitTest): permitted role 'member' can read that protected property via HEAD """ image_id = self._create_admin_image( - {'x-image-meta-property-x_owner_foo': 'bar'}) + {'x-image-meta-property-x_owner_foo': 'bar'}) another_request = unit_test_utils.get_fake_request( - method='HEAD', path='/images/%s' % image_id) + method='HEAD', path='/images/%s' % image_id) headers = {'x-auth-token': 'user:tenant:member'} for k, v in headers.iteritems(): another_request.headers[k] = v @@ -3208,9 +3208,9 @@ class TestAPIProtectedProps(base.IsolatedUnitTest): HEAD """ image_id = self._create_admin_image( - {'x-image-meta-property-x_owner_foo': 'bar'}) + {'x-image-meta-property-x_owner_foo': 'bar'}) another_request = unit_test_utils.get_fake_request( - method='HEAD', path='/images/%s' % image_id) + method='HEAD', path='/images/%s' % image_id) headers = {'x-auth-token': 'user:tenant:fake_role'} for k, v in headers.iteritems(): another_request.headers[k] = v @@ -3225,9 +3225,9 @@ class TestAPIProtectedProps(base.IsolatedUnitTest): permitted role 'member' can read that protected property via GET """ image_id = self._create_admin_image( - {'x-image-meta-property-x_owner_foo': 'bar'}) + {'x-image-meta-property-x_owner_foo': 'bar'}) another_request = unit_test_utils.get_fake_request( - method='GET', path='/images/%s' % image_id) + method='GET', path='/images/%s' % image_id) headers = {'x-auth-token': 'user:tenant:member'} for k, v in headers.iteritems(): another_request.headers[k] = v @@ -3242,9 +3242,9 @@ class TestAPIProtectedProps(base.IsolatedUnitTest): GET """ image_id = self._create_admin_image( - {'x-image-meta-property-x_owner_foo': 'bar'}) + {'x-image-meta-property-x_owner_foo': 'bar'}) another_request = unit_test_utils.get_fake_request( - method='GET', path='/images/%s' % image_id) + method='GET', path='/images/%s' % image_id) headers = {'x-auth-token': 'user:tenant:fake_role'} for k, v in headers.iteritems(): another_request.headers[k] = v @@ -3260,9 +3260,9 @@ class TestAPIProtectedProps(base.IsolatedUnitTest): /images/detail """ image_id = self._create_admin_image( - {'x-image-meta-property-x_owner_foo': 'bar'}) + {'x-image-meta-property-x_owner_foo': 'bar'}) another_request = unit_test_utils.get_fake_request( - method='GET', path='/images/detail') + method='GET', path='/images/detail') headers = {'x-auth-token': 'user:tenant:member'} for k, v in headers.iteritems(): another_request.headers[k] = v @@ -3279,9 +3279,9 @@ class TestAPIProtectedProps(base.IsolatedUnitTest): """ self.set_property_protections(use_policies=True) image_id = self._create_admin_image( - {'x-image-meta-property-x_owner_foo': 'bar'}) + {'x-image-meta-property-x_owner_foo': 'bar'}) another_request = unit_test_utils.get_fake_request( - method='GET', path='/images/detail') + method='GET', path='/images/detail') headers = {'x-auth-token': 'user:tenant:member'} for k, v in headers.iteritems(): another_request.headers[k] = v @@ -3297,9 +3297,9 @@ class TestAPIProtectedProps(base.IsolatedUnitTest): /images/detail """ image_id = self._create_admin_image( - {'x-image-meta-property-x_owner_foo': 'bar'}) + {'x-image-meta-property-x_owner_foo': 'bar'}) another_request = unit_test_utils.get_fake_request( - method='GET', path='/images/detail') + method='GET', path='/images/detail') headers = {'x-auth-token': 'user:tenant:fake_role'} for k, v in headers.iteritems(): another_request.headers[k] = v @@ -3317,9 +3317,9 @@ class TestAPIProtectedProps(base.IsolatedUnitTest): """ self.set_property_protections(use_policies=True) image_id = self._create_admin_image( - {'x-image-meta-property-x_owner_foo': 'bar'}) + {'x-image-meta-property-x_owner_foo': 'bar'}) another_request = unit_test_utils.get_fake_request( - method='GET', path='/images/detail') + method='GET', path='/images/detail') headers = {'x-auth-token': 'user:tenant:fake_role'} for k, v in headers.iteritems(): another_request.headers[k] = v @@ -3335,9 +3335,9 @@ class TestAPIProtectedProps(base.IsolatedUnitTest): permitted role 'member' can update that protected property """ image_id = self._create_admin_image( - {'x-image-meta-property-x_owner_foo': 'bar'}) + {'x-image-meta-property-x_owner_foo': 'bar'}) another_request = unit_test_utils.get_fake_request( - path='/images/%s' % image_id, method='PUT') + path='/images/%s' % image_id, method='PUT') headers = {'x-auth-token': 'user:tenant:member', 'x-image-meta-property-x_owner_foo': 'baz'} for k, v in headers.iteritems(): @@ -3353,9 +3353,9 @@ class TestAPIProtectedProps(base.IsolatedUnitTest): """ self.set_property_protections(use_policies=True) image_id = self._create_admin_image( - {'x-image-meta-property-spl_default_policy': 'bar'}) + {'x-image-meta-property-spl_default_policy': 'bar'}) another_request = unit_test_utils.get_fake_request( - path='/images/%s' % image_id, method='PUT') + path='/images/%s' % image_id, method='PUT') headers = {'x-auth-token': 'user:tenant:admin', 'x-image-meta-property-spl_default_policy': 'baz'} for k, v in headers.iteritems(): @@ -3370,9 +3370,9 @@ class TestAPIProtectedProps(base.IsolatedUnitTest): unpermitted role 'fake_role' can *not* update that protected property """ image_id = self._create_admin_image( - {'x-image-meta-property-x_owner_foo': 'bar'}) + {'x-image-meta-property-x_owner_foo': 'bar'}) another_request = unit_test_utils.get_fake_request( - path='/images/%s' % image_id, method='PUT') + path='/images/%s' % image_id, method='PUT') headers = {'x-auth-token': 'user:tenant:fake_role', 'x-image-meta-property-x_owner_foo': 'baz'} for k, v in headers.iteritems(): @@ -3389,9 +3389,9 @@ class TestAPIProtectedProps(base.IsolatedUnitTest): """ self.set_property_protections(use_policies=True) image_id = self._create_admin_image( - {'x-image-meta-property-x_owner_foo': 'bar'}) + {'x-image-meta-property-x_owner_foo': 'bar'}) another_request = unit_test_utils.get_fake_request( - path='/images/%s' % image_id, method='PUT') + path='/images/%s' % image_id, method='PUT') headers = {'x-auth-token': 'user:tenant:fake_role', 'x-image-meta-property-x_owner_foo': 'baz'} for k, v in headers.iteritems(): @@ -3406,9 +3406,9 @@ class TestAPIProtectedProps(base.IsolatedUnitTest): Test protected property cannot be updated without read permission """ image_id = self._create_admin_image( - {'x-image-meta-property-spl_update_only_prop': 'foo'}) + {'x-image-meta-property-spl_update_only_prop': 'foo'}) another_request = unit_test_utils.get_fake_request( - path='/images/%s' % image_id, method='PUT') + path='/images/%s' % image_id, method='PUT') headers = {'x-auth-token': 'user:tenant:spl_role', 'x-image-meta-property-spl_update_only_prop': 'bar'} for k, v in headers.iteritems(): @@ -3424,9 +3424,9 @@ class TestAPIProtectedProps(base.IsolatedUnitTest): access and the value is unchanged """ image_id = self._create_admin_image( - {'x-image-meta-property-spl_read_prop': 'foo'}) + {'x-image-meta-property-spl_read_prop': 'foo'}) another_request = unit_test_utils.get_fake_request( - path='/images/%s' % image_id, method='PUT') + path='/images/%s' % image_id, method='PUT') headers = {'x-auth-token': 'user:tenant:spl_role', 'x-image-meta-property-spl_read_prop': 'foo'} for k, v in headers.iteritems(): @@ -3442,9 +3442,9 @@ class TestAPIProtectedProps(base.IsolatedUnitTest): permitted role 'member' can can delete that protected property """ image_id = self._create_admin_image( - {'x-image-meta-property-x_owner_foo': 'bar'}) + {'x-image-meta-property-x_owner_foo': 'bar'}) another_request = unit_test_utils.get_fake_request( - path='/images/%s' % image_id, method='PUT') + path='/images/%s' % image_id, method='PUT') headers = {'x-auth-token': 'user:tenant:member', 'X-Glance-Registry-Purge-Props': 'True'} for k, v in headers.iteritems(): @@ -3460,9 +3460,9 @@ class TestAPIProtectedProps(base.IsolatedUnitTest): """ self.set_property_protections(use_policies=True) image_id = self._create_admin_image( - {'x-image-meta-property-x_owner_foo': 'bar'}) + {'x-image-meta-property-x_owner_foo': 'bar'}) another_request = unit_test_utils.get_fake_request( - path='/images/%s' % image_id, method='PUT') + path='/images/%s' % image_id, method='PUT') headers = {'x-auth-token': 'user:tenant:member', 'X-Glance-Registry-Purge-Props': 'True'} for k, v in headers.iteritems(): @@ -3476,10 +3476,10 @@ class TestAPIProtectedProps(base.IsolatedUnitTest): Test protected property cannot be deleted without read permission """ image_id = self._create_admin_image( - {'x-image-meta-property-x_owner_foo': 'bar'}) + {'x-image-meta-property-x_owner_foo': 'bar'}) another_request = unit_test_utils.get_fake_request( - path='/images/%s' % image_id, method='PUT') + path='/images/%s' % image_id, method='PUT') headers = {'x-auth-token': 'user:tenant:fake_role', 'X-Glance-Registry-Purge-Props': 'True'} for k, v in headers.iteritems(): @@ -3489,7 +3489,7 @@ class TestAPIProtectedProps(base.IsolatedUnitTest): self.assertNotIn('x-image-meta-property-x_owner_foo', output.headers) another_request = unit_test_utils.get_fake_request( - method='HEAD', path='/images/%s' % image_id) + method='HEAD', path='/images/%s' % image_id) headers = {'x-auth-token': 'user:tenant:admin'} for k, v in headers.iteritems(): another_request.headers[k] = v @@ -3504,10 +3504,10 @@ class TestAPIProtectedProps(base.IsolatedUnitTest): Test protected property cannot be deleted without delete permission """ image_id = self._create_admin_image( - {'x-image-meta-property-spl_update_prop': 'foo'}) + {'x-image-meta-property-spl_update_prop': 'foo'}) another_request = unit_test_utils.get_fake_request( - path='/images/%s' % image_id, method='PUT') + path='/images/%s' % image_id, method='PUT') headers = {'x-auth-token': 'user:tenant:spl_role', 'X-Glance-Registry-Purge-Props': 'True'} for k, v in headers.iteritems(): @@ -3518,7 +3518,7 @@ class TestAPIProtectedProps(base.IsolatedUnitTest): "spl_update_prop", output.body) another_request = unit_test_utils.get_fake_request( - method='HEAD', path='/images/%s' % image_id) + method='HEAD', path='/images/%s' % image_id) headers = {'x-auth-token': 'user:tenant:admin'} for k, v in headers.iteritems(): another_request.headers[k] = v @@ -3526,7 +3526,7 @@ class TestAPIProtectedProps(base.IsolatedUnitTest): self.assertEqual(output.status_int, 200) self.assertEqual('', output.body) self.assertEqual( - output.headers['x-image-meta-property-spl_update_prop'], 'foo') + output.headers['x-image-meta-property-spl_update_prop'], 'foo') def test_read_protected_props_leak_with_update(self): """ @@ -3534,10 +3534,10 @@ class TestAPIProtectedProps(base.IsolatedUnitTest): are not disclosed """ image_id = self._create_admin_image( - {'x-image-meta-property-spl_update_prop': '0', - 'x-image-meta-property-foo': 'bar'}) + {'x-image-meta-property-spl_update_prop': '0', + 'x-image-meta-property-foo': 'bar'}) another_request = unit_test_utils.get_fake_request( - path='/images/%s' % image_id, method='PUT') + path='/images/%s' % image_id, method='PUT') headers = {'x-auth-token': 'user:tenant:spl_role', 'x-image-meta-property-spl_update_prop': '1', 'X-Glance-Registry-Purge-Props': 'False'} @@ -3555,10 +3555,10 @@ class TestAPIProtectedProps(base.IsolatedUnitTest): their property while the admin owned one is ignored transparently """ image_id = self._create_admin_image( - {'x-image-meta-property-admin_foo': 'bar', - 'x-image-meta-property-x_owner_foo': 'bar'}) + {'x-image-meta-property-admin_foo': 'bar', + 'x-image-meta-property-x_owner_foo': 'bar'}) another_request = unit_test_utils.get_fake_request( - path='/images/%s' % image_id, method='PUT') + path='/images/%s' % image_id, method='PUT') headers = {'x-auth-token': 'user:tenant:member', 'x-image-meta-property-x_owner_foo': 'baz'} for k, v in headers.iteritems(): @@ -3581,7 +3581,7 @@ class TestAPIProtectedProps(base.IsolatedUnitTest): } image_id = self._create_admin_image(custom_props) another_request = unit_test_utils.get_fake_request( - path='/images/%s' % image_id, method='PUT') + path='/images/%s' % image_id, method='PUT') # verify spl_role can update it's prop headers = {'x-auth-token': 'user:tenant:spl_role', @@ -3611,10 +3611,10 @@ class TestAPIProtectedProps(base.IsolatedUnitTest): their property while the admin owned one is ignored transparently """ image_id = self._create_admin_image( - {'x-image-meta-property-admin_foo': 'bar', - 'x-image-meta-property-x_owner_foo': 'bar'}) + {'x-image-meta-property-admin_foo': 'bar', + 'x-image-meta-property-x_owner_foo': 'bar'}) another_request = unit_test_utils.get_fake_request( - path='/images/%s' % image_id, method='PUT') + path='/images/%s' % image_id, method='PUT') headers = {'x-auth-token': 'user:tenant:member', 'X-Glance-Registry-Purge-Props': 'True'} for k, v in headers.iteritems(): @@ -3637,7 +3637,7 @@ class TestAPIProtectedProps(base.IsolatedUnitTest): } image_id = self._create_admin_image(custom_props) another_request = unit_test_utils.get_fake_request( - path='/images/%s' % image_id, method='PUT') + path='/images/%s' % image_id, method='PUT') headers = {'x-auth-token': 'user:tenant:spl_role', 'X-Glance-Registry-Purge-Props': 'True'} for k, v in headers.iteritems(): @@ -3652,7 +3652,7 @@ class TestAPIProtectedProps(base.IsolatedUnitTest): """ image_id = self._create_admin_image() another_request = unit_test_utils.get_fake_request( - path='/images/%s' % image_id, method='PUT') + path='/images/%s' % image_id, method='PUT') headers = {'x-auth-token': 'user:tenant:joe_soap', 'x-image-meta-property-x_all_permitted': '1'} for k, v in headers.iteritems(): @@ -3671,7 +3671,7 @@ class TestAPIProtectedProps(base.IsolatedUnitTest): } image_id = self._create_admin_image(custom_props) another_request = unit_test_utils.get_fake_request( - method='HEAD', path='/images/%s' % image_id) + method='HEAD', path='/images/%s' % image_id) headers = {'x-auth-token': 'user:tenant:joe_soap'} for k, v in headers.iteritems(): another_request.headers[k] = v @@ -3679,7 +3679,7 @@ class TestAPIProtectedProps(base.IsolatedUnitTest): self.assertEqual(output.status_int, 200) self.assertEqual('', output.body) self.assertEqual( - output.headers['x-image-meta-property-x_all_permitted'], '1') + output.headers['x-image-meta-property-x_all_permitted'], '1') def test_update_non_protected_prop(self): """ @@ -3687,9 +3687,9 @@ class TestAPIProtectedProps(base.IsolatedUnitTest): role """ image_id = self._create_admin_image( - {'x-image-meta-property-x_all_permitted': '1'}) + {'x-image-meta-property-x_all_permitted': '1'}) another_request = unit_test_utils.get_fake_request( - path='/images/%s' % image_id, method='PUT') + path='/images/%s' % image_id, method='PUT') headers = {'x-auth-token': 'user:tenant:joe_soap', 'x-image-meta-property-x_all_permitted': '2'} for k, v in headers.iteritems(): @@ -3704,9 +3704,9 @@ class TestAPIProtectedProps(base.IsolatedUnitTest): role """ image_id = self._create_admin_image( - {'x-image-meta-property-x_all_permitted': '1'}) + {'x-image-meta-property-x_all_permitted': '1'}) another_request = unit_test_utils.get_fake_request( - path='/images/%s' % image_id, method='PUT') + path='/images/%s' % image_id, method='PUT') headers = {'x-auth-token': 'user:tenant:joe_soap', 'X-Glance-Registry-Purge-Props': 'True'} for k, v in headers.iteritems(): @@ -3721,7 +3721,7 @@ class TestAPIProtectedProps(base.IsolatedUnitTest): """ image_id = self._create_admin_image() another_request = unit_test_utils.get_fake_request( - path='/images/%s' % image_id, method='PUT') + path='/images/%s' % image_id, method='PUT') headers = {'x-auth-token': 'user:tenant:member', 'x-image-meta-property-x_none_permitted': '1'} for k, v in headers.iteritems(): @@ -3730,7 +3730,7 @@ class TestAPIProtectedProps(base.IsolatedUnitTest): self.assertEqual(output.status_int, 403) # also check admin can not create another_request = unit_test_utils.get_fake_request( - path='/images/%s' % image_id, method='PUT') + path='/images/%s' % image_id, method='PUT') headers = {'x-auth-token': 'user:tenant:admin', 'x-image-meta-property-x_none_permitted_admin': '1'} for k, v in headers.iteritems(): @@ -3747,7 +3747,7 @@ class TestAPIProtectedProps(base.IsolatedUnitTest): } image_id = self._create_admin_image(custom_props) another_request = unit_test_utils.get_fake_request( - method='HEAD', path='/images/%s' % image_id) + method='HEAD', path='/images/%s' % image_id) headers = {'x-auth-token': 'user:tenant:member'} for k, v in headers.iteritems(): another_request.headers[k] = v @@ -3756,7 +3756,7 @@ class TestAPIProtectedProps(base.IsolatedUnitTest): self.assertNotIn('x_none_read', output.headers) # also check admin can not read another_request = unit_test_utils.get_fake_request( - method='HEAD', path='/images/%s' % image_id) + method='HEAD', path='/images/%s' % image_id) headers = {'x-auth-token': 'user:tenant:admin'} for k, v in headers.iteritems(): another_request.headers[k] = v @@ -3769,9 +3769,9 @@ class TestAPIProtectedProps(base.IsolatedUnitTest): Verify a property protected by special char '!' is updatable by noone """ image_id = self._create_admin_image( - {'x-image-meta-property-x_none_update': '1'}) + {'x-image-meta-property-x_none_update': '1'}) another_request = unit_test_utils.get_fake_request( - path='/images/%s' % image_id, method='PUT') + path='/images/%s' % image_id, method='PUT') headers = {'x-auth-token': 'user:tenant:member', 'x-image-meta-property-x_none_update': '2'} for k, v in headers.iteritems(): @@ -3780,7 +3780,7 @@ class TestAPIProtectedProps(base.IsolatedUnitTest): self.assertEqual(output.status_int, 403) # also check admin can't update property another_request = unit_test_utils.get_fake_request( - path='/images/%s' % image_id, method='PUT') + path='/images/%s' % image_id, method='PUT') headers = {'x-auth-token': 'user:tenant:admin', 'x-image-meta-property-x_none_update': '2'} for k, v in headers.iteritems(): @@ -3793,9 +3793,9 @@ class TestAPIProtectedProps(base.IsolatedUnitTest): Verify a property protected by special char '!' is deletable by noone """ image_id = self._create_admin_image( - {'x-image-meta-property-x_none_delete': '1'}) + {'x-image-meta-property-x_none_delete': '1'}) another_request = unit_test_utils.get_fake_request( - path='/images/%s' % image_id, method='PUT') + path='/images/%s' % image_id, method='PUT') headers = {'x-auth-token': 'user:tenant:member', 'X-Glance-Registry-Purge-Props': 'True'} for k, v in headers.iteritems(): @@ -3804,7 +3804,7 @@ class TestAPIProtectedProps(base.IsolatedUnitTest): self.assertEqual(output.status_int, 403) # also check admin can't delete another_request = unit_test_utils.get_fake_request( - path='/images/%s' % image_id, method='PUT') + path='/images/%s' % image_id, method='PUT') headers = {'x-auth-token': 'user:tenant:admin', 'X-Glance-Registry-Purge-Props': 'True'} for k, v in headers.iteritems(): @@ -3846,7 +3846,7 @@ class TestAPIPropertyQuotas(base.IsolatedUnitTest): self.config(image_property_quota=1) image_id = self._create_admin_image() another_request = unit_test_utils.get_fake_request( - path='/images/%s' % image_id, method='PUT') + path='/images/%s' % image_id, method='PUT') headers = {'x-auth-token': 'user:tenant:joe_soap', 'x-image-meta-property-x_all_permitted': '1', 'x-image-meta-property-x_all_permitted_foo': '2'} @@ -3878,7 +3878,7 @@ class TestAPIPropertyQuotas(base.IsolatedUnitTest): image_id = res_body['id'] another_request = unit_test_utils.get_fake_request( - path='/images/%s' % image_id, method='PUT') + path='/images/%s' % image_id, method='PUT') headers = {'x-auth-token': 'user:tenant:joe_soap', 'x-glance-registry-purge-props': 'False', 'x-image-meta-property-x_all_permitted': '1'} @@ -3910,7 +3910,7 @@ class TestAPIPropertyQuotas(base.IsolatedUnitTest): image_id = res_body['id'] another_request = unit_test_utils.get_fake_request( - path='/images/%s' % image_id, method='PUT') + path='/images/%s' % image_id, method='PUT') headers = {'x-auth-token': 'user:tenant:joe_soap', 'x-glance-registry-purge-props': 'False', 'x-image-meta-property-x_all_permitted_create': '3', diff --git a/glance/tests/unit/v1/test_registry_api.py b/glance/tests/unit/v1/test_registry_api.py index bf95721cbc..210976f1e4 100644 --- a/glance/tests/unit/v1/test_registry_api.py +++ b/glance/tests/unit/v1/test_registry_api.py @@ -1899,9 +1899,9 @@ class TestRegistryAPILocations(base.IsolatedUnitTest, self.assertEqual(image_entry['locations'][1]['url'], encrypted_location_url2) decrypted_location_url1 = crypt.urlsafe_decrypt( - encryption_key, image_entry['locations'][0]['url']) + encryption_key, image_entry['locations'][0]['url']) decrypted_location_url2 = crypt.urlsafe_decrypt( - encryption_key, image_entry['locations'][1]['url']) + encryption_key, image_entry['locations'][1]['url']) self.assertEqual(location_url1, decrypted_location_url1) self.assertEqual(location_url2, decrypted_location_url2) diff --git a/glance/tests/unit/v1/test_upload_utils.py b/glance/tests/unit/v1/test_upload_utils.py index b1a7aeea88..0f78f289e2 100644 --- a/glance/tests/unit/v1/test_upload_utils.py +++ b/glance/tests/unit/v1/test_upload_utils.py @@ -262,49 +262,49 @@ class TestUploadUtils(base.StoreClearingUnitTest): be deleted in this case. """ self._test_upload_data_to_store_exception_with_notify( - exception.Duplicate, - webob.exc.HTTPConflict, - image_killed=False) + exception.Duplicate, + webob.exc.HTTPConflict, + image_killed=False) def test_upload_data_to_store_forbidden(self): self._test_upload_data_to_store_exception_with_notify( - exception.Forbidden, - webob.exc.HTTPForbidden) + exception.Forbidden, + webob.exc.HTTPForbidden) def test_upload_data_to_store_storage_full(self): self._test_upload_data_to_store_exception_with_notify( - exception.StorageFull, - webob.exc.HTTPRequestEntityTooLarge) + exception.StorageFull, + webob.exc.HTTPRequestEntityTooLarge) def test_upload_data_to_store_storage_write_denied(self): self._test_upload_data_to_store_exception_with_notify( - exception.StorageWriteDenied, - webob.exc.HTTPServiceUnavailable) + exception.StorageWriteDenied, + webob.exc.HTTPServiceUnavailable) def test_upload_data_to_store_size_limit_exceeded(self): self._test_upload_data_to_store_exception_with_notify( - exception.ImageSizeLimitExceeded, - webob.exc.HTTPRequestEntityTooLarge) + exception.ImageSizeLimitExceeded, + webob.exc.HTTPRequestEntityTooLarge) def test_upload_data_to_store_http_error(self): self._test_upload_data_to_store_exception_with_notify( - webob.exc.HTTPError, - webob.exc.HTTPError) + webob.exc.HTTPError, + webob.exc.HTTPError) def test_upload_data_to_store_client_disconnect(self): self._test_upload_data_to_store_exception( - ValueError, - webob.exc.HTTPBadRequest) + ValueError, + webob.exc.HTTPBadRequest) def test_upload_data_to_store_client_disconnect_ioerror(self): self._test_upload_data_to_store_exception( - IOError, - webob.exc.HTTPBadRequest) + IOError, + webob.exc.HTTPBadRequest) def test_upload_data_to_store_exception(self): self._test_upload_data_to_store_exception_with_notify( - Exception, - webob.exc.HTTPInternalServerError) + Exception, + webob.exc.HTTPInternalServerError) def test_upload_data_to_store_not_found_after_upload(self): req = unit_test_utils.get_fake_request() diff --git a/glance/tests/unit/v2/test_image_data_resource.py b/glance/tests/unit/v2/test_image_data_resource.py index f0e60d1227..993b362060 100644 --- a/glance/tests/unit/v2/test_image_data_resource.py +++ b/glance/tests/unit/v2/test_image_data_resource.py @@ -98,7 +98,7 @@ class TestImagesController(base.StoreClearingUnitTest): self.image_repo = FakeImageRepo() self.gateway = FakeGateway(self.image_repo) self.controller = glance.api.v2.image_data.ImageDataController( - gateway=self.gateway) + gateway=self.gateway) def test_download(self): request = unit_test_utils.get_fake_request() diff --git a/glance/tests/unit/v2/test_image_members_resource.py b/glance/tests/unit/v2/test_image_members_resource.py index da7bf3766d..bc1bcc7e76 100644 --- a/glance/tests/unit/v2/test_image_members_resource.py +++ b/glance/tests/unit/v2/test_image_members_resource.py @@ -342,7 +342,7 @@ class TestImageMembersController(test_utils.BaseTestCase): self.assertEqual(res.body, '') self.assertEqual(res.status_code, 204) found_member = self.db.image_member_find( - request.context, image_id=image_id, member=member_id) + request.context, image_id=image_id, member=member_id) self.assertEqual(found_member, []) def test_delete_by_member(self): @@ -403,7 +403,7 @@ class TestImageMembersController(test_utils.BaseTestCase): member_id = 'fake-member-id' image_id = UUID2 found_member = self.db.image_member_find( - request.context, image_id=image_id, member=member_id) + request.context, image_id=image_id, member=member_id) self.assertEqual(found_member, []) self.assertRaises(webob.exc.HTTPNotFound, self.controller.delete, request, image_id, member_id) diff --git a/glance/tests/unit/v2/test_images_resource.py b/glance/tests/unit/v2/test_images_resource.py index 5f0be11f09..f7b51fd1a6 100644 --- a/glance/tests/unit/v2/test_images_resource.py +++ b/glance/tests/unit/v2/test_images_resource.py @@ -2722,10 +2722,10 @@ class TestImagesSerializerWithExtendedSchema(test_utils.BaseTestCase): self.serializer = glance.api.v2.images.ResponseSerializer(schema) self.fixture = _domain_fixture( - UUID2, name='image-2', owner=TENANT2, - checksum='ca425b88f047ce8ec45ee90e813ada91', - created_at=DATETIME, updated_at=DATETIME, size=1024, - extra_properties=dict(color='green', mood='grouchy')) + UUID2, name='image-2', owner=TENANT2, + checksum='ca425b88f047ce8ec45ee90e813ada91', + created_at=DATETIME, updated_at=DATETIME, size=1024, + extra_properties=dict(color='green', mood='grouchy')) def test_show(self): expected = { @@ -2777,10 +2777,10 @@ class TestImagesSerializerWithAdditionalProperties(test_utils.BaseTestCase): super(TestImagesSerializerWithAdditionalProperties, self).setUp() self.config(allow_additional_image_properties=True) self.fixture = _domain_fixture( - UUID2, name='image-2', owner=TENANT2, - checksum='ca425b88f047ce8ec45ee90e813ada91', - created_at=DATETIME, updated_at=DATETIME, size=1024, - extra_properties={'marx': 'groucho'}) + UUID2, name='image-2', owner=TENANT2, + checksum='ca425b88f047ce8ec45ee90e813ada91', + created_at=DATETIME, updated_at=DATETIME, size=1024, + extra_properties={'marx': 'groucho'}) def test_show(self): serializer = glance.api.v2.images.ResponseSerializer() @@ -2859,24 +2859,24 @@ class TestImagesSerializerDirectUrl(test_utils.BaseTestCase): self.serializer = glance.api.v2.images.ResponseSerializer() self.active_image = _domain_fixture( - UUID1, name='image-1', visibility='public', - status='active', size=1024, created_at=DATETIME, - updated_at=DATETIME, - locations=[{'url': 'http://some/fake/location', - 'metadata': {}}]) + UUID1, name='image-1', visibility='public', + status='active', size=1024, created_at=DATETIME, + updated_at=DATETIME, + locations=[{'url': 'http://some/fake/location', + 'metadata': {}}]) self.queued_image = _domain_fixture( - UUID2, name='image-2', status='active', - created_at=DATETIME, updated_at=DATETIME, - checksum='ca425b88f047ce8ec45ee90e813ada91') + UUID2, name='image-2', status='active', + created_at=DATETIME, updated_at=DATETIME, + checksum='ca425b88f047ce8ec45ee90e813ada91') self.location_data_image_url = 'http://abc.com/somewhere' self.location_data_image_meta = {'key': 98231} self.location_data_image = _domain_fixture( - UUID2, name='image-2', status='active', - created_at=DATETIME, updated_at=DATETIME, - locations=[{'url': self.location_data_image_url, - 'metadata': self.location_data_image_meta}]) + UUID2, name='image-2', status='active', + created_at=DATETIME, updated_at=DATETIME, + locations=[{'url': self.location_data_image_url, + 'metadata': self.location_data_image_meta}]) def _do_index(self): request = webob.Request.blank('/v2/images') diff --git a/tox.ini b/tox.ini index 6a85556ad8..e468b6b667 100644 --- a/tox.ini +++ b/tox.ini @@ -28,8 +28,6 @@ commands = {posargs} [flake8] # TODO(dmllr): Analyze or fix the warnings blacklisted below -# E125 continuation line does not distinguish itself from next logical line -# E126 continuation line over-indented for hanging indent # E711 comparison to None should be 'if cond is not None:' # E712 comparison to True should be 'if cond is True:' or 'if cond:' # F811 redefinition of function @@ -40,6 +38,6 @@ commands = {posargs} # H402 one line docstring needs punctuation. # H404 multi line docstring should start with a summary # H703 multiple positional placeholders -ignore = E125,E126,E711,E712,F811,F821,F841,H202,H306,H402,H404,H703 +ignore = E711,E712,F811,F821,F841,H202,H306,H402,H404,H703 builtins = _ exclude = .venv,.git,.tox,dist,doc,etc,*glance/locale*,*openstack/common*,*lib/python*,*egg,build