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-evaluator:latest
|
||||
- imagename: tripleoupstream/centos-binary-aodh-notifier:latest
|
||||
|
@ -24,7 +24,11 @@ from tripleo_common.image.exception import ImageSpecificationException
|
||||
class BaseImageManager(object):
|
||||
logger = log.getLogger(__name__ + '.BaseImageManager')
|
||||
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):
|
||||
self.config_files = config_files
|
||||
@ -83,5 +87,5 @@ class BaseImageManager(object):
|
||||
|
||||
def json_output(self):
|
||||
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))
|
||||
|
@ -45,7 +45,7 @@ class ImageBuildManager(BaseImageManager):
|
||||
|
||||
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:
|
||||
arch = image.get('arch', 'amd64')
|
||||
|
@ -40,7 +40,9 @@ class ImageUploadManager(BaseImageManager):
|
||||
|
||||
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'
|
||||
|
||||
for item in upload_images:
|
||||
|
@ -27,6 +27,19 @@ from tripleo_common.tests.image import fakes
|
||||
|
||||
|
||||
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:
|
||||
- imagename: tripleoupstream/heat-docker-agents-centos:latest
|
||||
push_destination: localhost:8787
|
||||
@ -65,6 +78,23 @@ class TestImageUploadManager(base.TestCase):
|
||||
key=operator.itemgetter('imagename'))
|
||||
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):
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user