本文整理汇总了Python中pulp_docker.plugins.importers.importer.DockerImporter._purge_orphaned_blobs方法的典型用法代码示例。如果您正苦于以下问题:Python DockerImporter._purge_orphaned_blobs方法的具体用法?Python DockerImporter._purge_orphaned_blobs怎么用?Python DockerImporter._purge_orphaned_blobs使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类pulp_docker.plugins.importers.importer.DockerImporter
的用法示例。
在下文中一共展示了DockerImporter._purge_orphaned_blobs方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test_purge_orphaned
# 需要导入模块: from pulp_docker.plugins.importers.importer import DockerImporter [as 别名]
# 或者: from pulp_docker.plugins.importers.importer.DockerImporter import _purge_orphaned_blobs [as 别名]
def test_purge_orphaned(self, query_manager, association_manager, criteria):
repo = mock.Mock()
blobs = [
{'blobSum': 'blob-0'}, # manifest => 1
{'blobSum': 'blob-1'}, # manifest => 1
{'blobSum': 'blob-2'}, # manifest => 1
{'blobSum': 'blob-3'}, # manifest => 1, 2, 3 (not orphaned)
{'blobSum': 'blob-4'}, # manifest => 1, 2
{'blobSum': 'blob-5'}, # manifest => 2, 4 (not orphaned)
{'blobSum': 'blob-6'}, # manifest => 2
]
removed = [
mock.Mock(
id='manifest-1',
type_id=constants.MANIFEST_TYPE_ID,
metadata={'fs_layers': blobs[0:4]}),
mock.Mock(
id='manifest-2',
type_id=constants.MANIFEST_TYPE_ID,
metadata={'fs_layers': blobs[2:8]})
]
others = [
mock.Mock(
id='manifest-3',
type_id=constants.MANIFEST_TYPE_ID,
metadata={'fs_layers': blobs[3:4]}),
mock.Mock(
id='manifest-4',
type_id=constants.MANIFEST_TYPE_ID,
metadata={'fs_layers': blobs[5:6]})
]
query_manager.return_value.get_units_by_type.return_value = others
# test
importer = DockerImporter()
importer._purge_orphaned_blobs(repo, removed)
# validation
criteria.assert_called_once_with(
type_ids=[constants.BLOB_TYPE_ID],
unit_filters={'digest': {'$in': ['blob-0', 'blob-1', 'blob-2', 'blob-4', 'blob-6']}})
query_manager.return_value.get_units_by_type.assert_called_once_with(
repo.id, constants.MANIFEST_TYPE_ID)
association_manager.return_value.unassociate_by_criteria(
repo_id=repo.id,
criteria=criteria.return_value,
owner_type='', # unused
owner_id='', # unused
notify_plugins=False)
示例2: test_purge_not_manifests
# 需要导入模块: from pulp_docker.plugins.importers.importer import DockerImporter [as 别名]
# 或者: from pulp_docker.plugins.importers.importer.DockerImporter import _purge_orphaned_blobs [as 别名]
def test_purge_not_manifests(self, query_manager, association_manager, criteria):
repo = mock.Mock()
removed = [
mock.Mock(type_id=constants.IMAGE_TYPE_ID),
mock.Mock(type_id=constants.IMAGE_TYPE_ID),
]
# test
importer = DockerImporter()
importer._purge_orphaned_blobs(repo, removed)
# validation
self.assertFalse(query_manager.called)
self.assertFalse(criteria.called)
self.assertFalse(association_manager.called)
示例3: test_purge_orphaned_nothing_orphaned
# 需要导入模块: from pulp_docker.plugins.importers.importer import DockerImporter [as 别名]
# 或者: from pulp_docker.plugins.importers.importer.DockerImporter import _purge_orphaned_blobs [as 别名]
def test_purge_orphaned_nothing_orphaned(self, query_manager, association_manager, criteria):
repo = mock.Mock()
removed = [
mock.Mock(
id='manifest-1',
type_id=constants.MANIFEST_TYPE_ID,
metadata={'fs_layers': []}),
mock.Mock(
id='manifest-2',
type_id=constants.MANIFEST_TYPE_ID,
metadata={'fs_layers': []})
]
# test
importer = DockerImporter()
importer._purge_orphaned_blobs(repo, removed)
# validation
self.assertFalse(query_manager.called)
self.assertFalse(criteria.called)
self.assertFalse(association_manager.called)
示例4: test_purge_orphaned_all_adopted
# 需要导入模块: from pulp_docker.plugins.importers.importer import DockerImporter [as 别名]
# 或者: from pulp_docker.plugins.importers.importer.DockerImporter import _purge_orphaned_blobs [as 别名]
def test_purge_orphaned_all_adopted(self, query_manager, association_manager, criteria):
repo = mock.Mock()
blobs = [
{'blobSum': 'blob-0'}, # manifest => 1, 3 (not orphaned)
{'blobSum': 'blob-1'}, # manifest => 1, 3 (not orphaned)
{'blobSum': 'blob-2'}, # manifest => 1, 3 (not orphaned)
{'blobSum': 'blob-3'}, # manifest => 1, 2, 3 (not orphaned)
{'blobSum': 'blob-4'}, # manifest => 1, 2, 3 (not orphaned)
{'blobSum': 'blob-5'}, # manifest => 2, 4, 3 (not orphaned)
{'blobSum': 'blob-6'}, # manifest => 2, 3 (not orphaned)
]
removed = [
mock.Mock(
id='manifest-1',
type_id=constants.MANIFEST_TYPE_ID,
metadata={'fs_layers': blobs[0:4]}),
mock.Mock(
id='manifest-2',
type_id=constants.MANIFEST_TYPE_ID,
metadata={'fs_layers': blobs[2:8]})
]
others = [
mock.Mock(
id='manifest-3',
type_id=constants.MANIFEST_TYPE_ID,
metadata={'fs_layers': blobs}),
]
query_manager.return_value.get_units_by_type.return_value = others
# test
importer = DockerImporter()
importer._purge_orphaned_blobs(repo, removed)
# validation
self.assertFalse(criteria.called)
self.assertFalse(association_manager.called)