Merge "Improve logging for modify image during prepare"
This commit is contained in:
commit
ea303ba9d5
|
@ -222,7 +222,7 @@ class BaseImageUploader(ImageUploader):
|
|||
vars['source_image'] = source_image
|
||||
vars['target_image'] = target_image
|
||||
vars['modified_append_tag'] = append_tag
|
||||
LOG.debug('Playbook variables: \n%s' % yaml.safe_dump(
|
||||
LOG.info('Playbook variables: \n%s' % yaml.safe_dump(
|
||||
vars, default_flow_style=False))
|
||||
playbook = [{
|
||||
'hosts': 'localhost',
|
||||
|
@ -234,19 +234,26 @@ class BaseImageUploader(ImageUploader):
|
|||
'vars': vars
|
||||
}]
|
||||
}]
|
||||
LOG.debug('Playbook: \n%s' % yaml.safe_dump(
|
||||
LOG.info('Playbook: \n%s' % yaml.safe_dump(
|
||||
playbook, default_flow_style=False))
|
||||
work_dir = tempfile.mkdtemp(prefix='tripleo-modify-image-playbook-')
|
||||
try:
|
||||
action = ansible.AnsiblePlaybookAction(
|
||||
playbook=playbook,
|
||||
work_dir=work_dir
|
||||
work_dir=work_dir,
|
||||
verbosity=3
|
||||
)
|
||||
result = action.run(None)
|
||||
LOG.debug(result.get('stdout', ''))
|
||||
|
||||
finally:
|
||||
log_path = result.get('log_path')
|
||||
if log_path and os.path.isfile(log_path):
|
||||
with open(log_path) as f:
|
||||
LOG.info(f.read())
|
||||
shutil.rmtree(work_dir)
|
||||
except processutils.ProcessExecutionError as e:
|
||||
LOG.error('%s\nError running playbook in directory: %s'
|
||||
% (e.stdout, work_dir))
|
||||
raise ImageUploaderException(
|
||||
'Modifying image %s failed' % target_image)
|
||||
|
||||
@staticmethod
|
||||
def _images_match(image1, image2, insecure_registries):
|
||||
|
|
|
@ -524,6 +524,7 @@ class TestDockerImageUploader(base.TestCase):
|
|||
|
||||
mock_process.returncode = 1
|
||||
mock_popen.return_value = mock_process
|
||||
mock_ansible.return_value.run.return_value = {}
|
||||
|
||||
image = 'docker.io/tripleomaster/heat-docker-agents-centos'
|
||||
tag = 'latest'
|
||||
|
@ -568,7 +569,7 @@ class TestDockerImageUploader(base.TestCase):
|
|||
self.dockermock.return_value.pull.assert_called_once_with(
|
||||
image, tag=tag, stream=True)
|
||||
mock_ansible.assert_called_once_with(
|
||||
playbook=playbook, work_dir=mock.ANY)
|
||||
playbook=playbook, work_dir=mock.ANY, verbosity=3)
|
||||
self.dockermock.return_value.tag.assert_not_called()
|
||||
self.dockermock.return_value.push.assert_called_once_with(
|
||||
push_image,
|
||||
|
@ -594,7 +595,7 @@ class TestDockerImageUploader(base.TestCase):
|
|||
mock_ansible.return_value.run.side_effect = error
|
||||
|
||||
self.assertRaises(
|
||||
processutils.ProcessExecutionError,
|
||||
ImageUploaderException,
|
||||
self.uploader.upload_image,
|
||||
image + ':' + tag, None, push_destination, set(), append_tag,
|
||||
'add-foo-plugin', {'foo_version': '1.0.1'}, False, 'full'
|
||||
|
|
Loading…
Reference in New Issue