Rename 'uploads' key to 'container_images'
This will allow this file to be used for both uploading and image building. The old 'uploads' key will continue to work. Change-Id: Ie09d784119e53b90e5ad0c9028459486cff177c7
This commit is contained in:
parent
4a84166ca7
commit
75754c4658
@ -1,4 +1,4 @@
|
|||||||
uploads:
|
container_images:
|
||||||
- imagename: tripleoupstream/centos-binary-aodh-api:latest
|
- imagename: tripleoupstream/centos-binary-aodh-api:latest
|
||||||
- imagename: tripleoupstream/centos-binary-aodh-evaluator:latest
|
- imagename: tripleoupstream/centos-binary-aodh-evaluator:latest
|
||||||
- imagename: tripleoupstream/centos-binary-aodh-notifier:latest
|
- imagename: tripleoupstream/centos-binary-aodh-notifier:latest
|
||||||
|
@ -24,7 +24,11 @@ from tripleo_common.image.exception import ImageSpecificationException
|
|||||||
class BaseImageManager(object):
|
class BaseImageManager(object):
|
||||||
logger = log.getLogger(__name__ + '.BaseImageManager')
|
logger = log.getLogger(__name__ + '.BaseImageManager')
|
||||||
APPEND_ATTRIBUTES = ['elements', 'options', 'packages']
|
APPEND_ATTRIBUTES = ['elements', 'options', 'packages']
|
||||||
CONFIG_SECTIONS = ['disk_images', 'uploads']
|
CONFIG_SECTIONS = (
|
||||||
|
DISK_IMAGES, UPLOADS, CONTAINER_IMAGES
|
||||||
|
) = (
|
||||||
|
'disk_images', 'uploads', 'container_images'
|
||||||
|
)
|
||||||
|
|
||||||
def __init__(self, config_files, images=None):
|
def __init__(self, config_files, images=None):
|
||||||
self.config_files = config_files
|
self.config_files = config_files
|
||||||
@ -83,5 +87,5 @@ class BaseImageManager(object):
|
|||||||
|
|
||||||
def json_output(self):
|
def json_output(self):
|
||||||
self.logger.info('Using config files: %s' % self.config_files)
|
self.logger.info('Using config files: %s' % self.config_files)
|
||||||
disk_images = self.load_config_files(self.CONFIG_SECTIONS[0])
|
disk_images = self.load_config_files(self.DISK_IMAGES)
|
||||||
print(json.dumps(disk_images))
|
print(json.dumps(disk_images))
|
||||||
|
@ -45,7 +45,7 @@ class ImageBuildManager(BaseImageManager):
|
|||||||
|
|
||||||
self.logger.info('Using config files: %s' % self.config_files)
|
self.logger.info('Using config files: %s' % self.config_files)
|
||||||
|
|
||||||
disk_images = self.load_config_files(self.CONFIG_SECTIONS[0])
|
disk_images = self.load_config_files(self.DISK_IMAGES)
|
||||||
|
|
||||||
for image in disk_images:
|
for image in disk_images:
|
||||||
arch = image.get('arch', 'amd64')
|
arch = image.get('arch', 'amd64')
|
||||||
|
@ -40,7 +40,9 @@ class ImageUploadManager(BaseImageManager):
|
|||||||
|
|
||||||
self.logger.info('Using config files: %s' % self.config_files)
|
self.logger.info('Using config files: %s' % self.config_files)
|
||||||
|
|
||||||
upload_images = self.load_config_files(self.CONFIG_SECTIONS[1])
|
uploads = self.load_config_files(self.UPLOADS) or []
|
||||||
|
container_images = self.load_config_files(self.CONTAINER_IMAGES) or []
|
||||||
|
upload_images = uploads + container_images
|
||||||
default_push_destination = self.get_ctrl_plane_ip() + ':8787'
|
default_push_destination = self.get_ctrl_plane_ip() + ':8787'
|
||||||
|
|
||||||
for item in upload_images:
|
for item in upload_images:
|
||||||
|
@ -27,6 +27,19 @@ from tripleo_common.tests.image import fakes
|
|||||||
|
|
||||||
|
|
||||||
filedata = six.u(
|
filedata = six.u(
|
||||||
|
"""container_images:
|
||||||
|
- imagename: tripleoupstream/heat-docker-agents-centos:latest
|
||||||
|
push_destination: localhost:8787
|
||||||
|
- imagename: tripleoupstream/centos-binary-nova-compute:liberty
|
||||||
|
uploader: docker
|
||||||
|
pull_source: docker.io
|
||||||
|
push_destination: localhost:8787
|
||||||
|
- imagename: tripleoupstream/centos-binary-nova-libvirt:liberty
|
||||||
|
uploader: docker
|
||||||
|
pull_source: docker.io
|
||||||
|
""")
|
||||||
|
|
||||||
|
legacy_filedata = six.u(
|
||||||
"""uploads:
|
"""uploads:
|
||||||
- imagename: tripleoupstream/heat-docker-agents-centos:latest
|
- imagename: tripleoupstream/heat-docker-agents-centos:latest
|
||||||
push_destination: localhost:8787
|
push_destination: localhost:8787
|
||||||
@ -65,6 +78,23 @@ class TestImageUploadManager(base.TestCase):
|
|||||||
key=operator.itemgetter('imagename'))
|
key=operator.itemgetter('imagename'))
|
||||||
self.assertEqual(sorted_expected_data, sorted_parsed_data)
|
self.assertEqual(sorted_expected_data, sorted_parsed_data)
|
||||||
|
|
||||||
|
@mock.patch('tripleo_common.image.base.open',
|
||||||
|
mock.mock_open(read_data=legacy_filedata), create=True)
|
||||||
|
@mock.patch('os.path.isfile', return_value=True)
|
||||||
|
@mock.patch('fcntl.ioctl', side_effect=Exception)
|
||||||
|
@mock.patch('tripleo_common.image.image_uploader.Client')
|
||||||
|
def test_legacy_file_parsing(self, mockpath, mockioctl, mockdocker):
|
||||||
|
manager = ImageUploadManager(self.filelist, debug=True)
|
||||||
|
parsed_data = manager.upload()
|
||||||
|
mockpath(self.filelist[0])
|
||||||
|
|
||||||
|
expected_data = fakes.create_parsed_upload_images()
|
||||||
|
sorted_expected_data = sorted(expected_data,
|
||||||
|
key=operator.itemgetter('imagename'))
|
||||||
|
sorted_parsed_data = sorted(parsed_data,
|
||||||
|
key=operator.itemgetter('imagename'))
|
||||||
|
self.assertEqual(sorted_expected_data, sorted_parsed_data)
|
||||||
|
|
||||||
|
|
||||||
class TestImageUploader(base.TestCase):
|
class TestImageUploader(base.TestCase):
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user