Fix ignored parameters in create_deployment_plan
This patch makes sure that the following two parameters are correctly passed when creating deployment plan. - use_default_templates - source_url It also removes useless validate_stack parameter, which is never used in playbooks invoked to create deployment plan. Depends-on: https://review.opendev.org/#/c/743128/ Change-Id: If54940ec8ee127c73d0b5820704f119466f80df0
This commit is contained in:
parent
33e0cc977d
commit
de494e2af6
|
@ -131,7 +131,7 @@ class TestOvercloudCreatePlan(utils.TestCommand):
|
|||
extra_vars={
|
||||
"container": "overcast",
|
||||
"generate_passwords": True,
|
||||
"validate": False
|
||||
"use_default_templates": True,
|
||||
},
|
||||
verbosity=3,
|
||||
)
|
||||
|
@ -163,7 +163,7 @@ class TestOvercloudCreatePlan(utils.TestCommand):
|
|||
extra_vars={
|
||||
"container": "overcast",
|
||||
"generate_passwords": True,
|
||||
"validate": False
|
||||
"use_default_templates": False,
|
||||
},
|
||||
verbosity=3,
|
||||
)
|
||||
|
@ -204,7 +204,7 @@ class TestOvercloudCreatePlan(utils.TestCommand):
|
|||
"container": "overcast",
|
||||
"generate_passwords": True,
|
||||
"plan_environment": "the_plan_environment.yaml",
|
||||
"validate": False
|
||||
"use_default_templates": False,
|
||||
},
|
||||
verbosity=3,
|
||||
)
|
||||
|
@ -237,7 +237,40 @@ class TestOvercloudCreatePlan(utils.TestCommand):
|
|||
extra_vars={
|
||||
"container": "overcast",
|
||||
"generate_passwords": False,
|
||||
"validate": False
|
||||
"use_default_templates": True,
|
||||
},
|
||||
verbosity=3,
|
||||
)
|
||||
|
||||
@mock.patch("tripleoclient.utils.run_ansible_playbook", autospec=True)
|
||||
@mock.patch('os.chdir', autospec=True)
|
||||
@mock.patch('tempfile.mkdtemp', autospec=True)
|
||||
def test_create_custom_plan_from_source_url(
|
||||
self, mock_tmp, mock_cd, mock_run_playbook):
|
||||
|
||||
# Setup
|
||||
arglist = ['overcast', '--source-url', 'http://tripleo.org/templates']
|
||||
verifylist = [
|
||||
('name', 'overcast'),
|
||||
('templates', None),
|
||||
('source_url', 'http://tripleo.org/templates')
|
||||
]
|
||||
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
|
||||
|
||||
# Run
|
||||
self.cmd.take_action(parsed_args)
|
||||
|
||||
# Verify
|
||||
mock_run_playbook.assert_called_once_with(
|
||||
'cli-create-deployment-plan.yaml',
|
||||
'undercloud,',
|
||||
mock.ANY,
|
||||
constants.ANSIBLE_TRIPLEO_PLAYBOOKS,
|
||||
extra_vars={
|
||||
"container": "overcast",
|
||||
"generate_passwords": True,
|
||||
"use_default_templates": False,
|
||||
"source_url": "http://tripleo.org/templates",
|
||||
},
|
||||
verbosity=3,
|
||||
)
|
||||
|
|
|
@ -40,8 +40,7 @@ class TestPlanCreationWorkflows(utils.TestCommand):
|
|||
plan_management.create_plan_from_templates(
|
||||
self.app.client_manager,
|
||||
'test-overcloud',
|
||||
'/tht-root/',
|
||||
validate_stack=False)
|
||||
'/tht-root/')
|
||||
|
||||
mock_run_playbook.assert_called_once_with(
|
||||
'cli-create-deployment-plan.yaml',
|
||||
|
@ -51,7 +50,7 @@ class TestPlanCreationWorkflows(utils.TestCommand):
|
|||
extra_vars={
|
||||
"container": "test-overcloud",
|
||||
"generate_passwords": True,
|
||||
"validate": False
|
||||
"use_default_templates": False,
|
||||
},
|
||||
verbosity=0,
|
||||
)
|
||||
|
@ -72,8 +71,7 @@ class TestPlanCreationWorkflows(utils.TestCommand):
|
|||
self.app.client_manager,
|
||||
'test-overcloud',
|
||||
'/tht-root/',
|
||||
'the_roles_file.yaml',
|
||||
validate_stack=False)
|
||||
'the_roles_file.yaml')
|
||||
|
||||
mock_run_playbook.assert_called_once_with(
|
||||
'cli-create-deployment-plan.yaml',
|
||||
|
@ -83,7 +81,7 @@ class TestPlanCreationWorkflows(utils.TestCommand):
|
|||
extra_vars={
|
||||
"container": "test-overcloud",
|
||||
"generate_passwords": True,
|
||||
"validate": False
|
||||
"use_default_templates": False,
|
||||
},
|
||||
verbosity=0,
|
||||
)
|
||||
|
@ -108,8 +106,7 @@ class TestPlanCreationWorkflows(utils.TestCommand):
|
|||
self.app.client_manager,
|
||||
'test-overcloud',
|
||||
'/tht-root/',
|
||||
plan_env_file='the-plan-environment.yaml',
|
||||
validate_stack=False)
|
||||
plan_env_file='the-plan-environment.yaml')
|
||||
|
||||
mock_run_playbook.assert_called_once_with(
|
||||
'cli-create-deployment-plan.yaml',
|
||||
|
@ -120,7 +117,7 @@ class TestPlanCreationWorkflows(utils.TestCommand):
|
|||
"container": "test-overcloud",
|
||||
"generate_passwords": True,
|
||||
"plan_environment": "the-plan-environment.yaml",
|
||||
"validate": False
|
||||
"use_default_templates": False,
|
||||
},
|
||||
verbosity=0,
|
||||
)
|
||||
|
@ -144,8 +141,7 @@ class TestPlanCreationWorkflows(utils.TestCommand):
|
|||
self.app.client_manager,
|
||||
'test-overcloud',
|
||||
'/tht-root/',
|
||||
networks_file='the-network-data.yaml',
|
||||
validate_stack=False)
|
||||
networks_file='the-network-data.yaml')
|
||||
|
||||
mock_run_playbook.assert_called_once_with(
|
||||
'cli-create-deployment-plan.yaml',
|
||||
|
@ -155,7 +151,7 @@ class TestPlanCreationWorkflows(utils.TestCommand):
|
|||
extra_vars={
|
||||
"container": "test-overcloud",
|
||||
"generate_passwords": True,
|
||||
"validate": False
|
||||
"use_default_templates": False,
|
||||
},
|
||||
verbosity=0,
|
||||
)
|
||||
|
@ -177,8 +173,7 @@ class TestPlanCreationWorkflows(utils.TestCommand):
|
|||
self.app.client_manager,
|
||||
'test-overcloud',
|
||||
'/tht-root/',
|
||||
generate_passwords=False,
|
||||
validate_stack=False)
|
||||
generate_passwords=False)
|
||||
|
||||
mock_run_playbook.assert_called_once_with(
|
||||
'cli-create-deployment-plan.yaml',
|
||||
|
@ -188,7 +183,7 @@ class TestPlanCreationWorkflows(utils.TestCommand):
|
|||
extra_vars={
|
||||
"container": "test-overcloud",
|
||||
"generate_passwords": False,
|
||||
"validate": False
|
||||
"use_default_templates": False,
|
||||
},
|
||||
verbosity=0,
|
||||
)
|
||||
|
|
|
@ -408,7 +408,6 @@ class DeployOvercloud(command.Command):
|
|||
parsed_args.roles_file, generate_passwords,
|
||||
parsed_args.plan_environment_file,
|
||||
parsed_args.networks_file,
|
||||
validate_stack=False,
|
||||
verbosity_level=utils.playbook_verbosity(self=self)
|
||||
)
|
||||
|
||||
|
|
|
@ -125,7 +125,6 @@ class CreatePlan(command.Command):
|
|||
clients, name, parsed_args.templates,
|
||||
generate_passwords=generate_passwords,
|
||||
plan_env_file=parsed_args.plan_environment_file,
|
||||
validate_stack=False,
|
||||
verbosity_level=utils.playbook_verbosity(self=self)
|
||||
)
|
||||
else:
|
||||
|
@ -134,7 +133,6 @@ class CreatePlan(command.Command):
|
|||
generate_passwords=generate_passwords,
|
||||
source_url=source_url,
|
||||
use_default_templates=use_default_templates,
|
||||
validate_stack=False,
|
||||
verbosity_level=utils.playbook_verbosity(self=self)
|
||||
)
|
||||
|
||||
|
|
|
@ -66,14 +66,38 @@ def _upload_templates(swift_client, container_name, tht_root, roles_file=None,
|
|||
|
||||
def create_deployment_plan(container, generate_passwords,
|
||||
use_default_templates=False, source_url=None,
|
||||
validate_stack=True, verbosity_level=0,
|
||||
plan_env_file=None):
|
||||
verbosity_level=0, plan_env_file=None):
|
||||
"""Create a deployment plan.
|
||||
|
||||
:param container: Container name to push to.
|
||||
:type container: String
|
||||
|
||||
:param generate_passwords: Whether to generate password
|
||||
:type generate_passwords: Boolean
|
||||
|
||||
:param use_default_templates: Whether to use default template files
|
||||
:type use_default_templates: Boolean
|
||||
|
||||
:param source_url: The url of a git repository containing the Heat
|
||||
templates to deploy
|
||||
:type source_url: String
|
||||
|
||||
:param verbosity_level: Verbosity level used in playbook execution
|
||||
:type verbosity_level: Integer
|
||||
|
||||
:param plan_env_file: Path to plan environment file
|
||||
:type plan_env_file: String
|
||||
"""
|
||||
|
||||
extra_vars = {
|
||||
"container": container,
|
||||
"validate": validate_stack,
|
||||
"generate_passwords": generate_passwords
|
||||
"generate_passwords": generate_passwords,
|
||||
"use_default_templates": use_default_templates,
|
||||
}
|
||||
|
||||
if source_url:
|
||||
extra_vars['source_url'] = source_url
|
||||
|
||||
if plan_env_file:
|
||||
extra_vars['plan_environment'] = plan_env_file
|
||||
|
||||
|
@ -147,8 +171,7 @@ def list_deployment_plans(clients):
|
|||
|
||||
def create_plan_from_templates(clients, name, tht_root, roles_file=None,
|
||||
generate_passwords=True, plan_env_file=None,
|
||||
networks_file=None, validate_stack=True,
|
||||
verbosity_level=0):
|
||||
networks_file=None, verbosity_level=0):
|
||||
swift_client = clients.tripleoclient.object_store
|
||||
|
||||
print("Creating Swift container to store the plan")
|
||||
|
@ -163,7 +186,6 @@ def create_plan_from_templates(clients, name, tht_root, roles_file=None,
|
|||
create_deployment_plan(container=name,
|
||||
generate_passwords=generate_passwords,
|
||||
plan_env_file=plan_env_file,
|
||||
validate_stack=validate_stack,
|
||||
verbosity_level=verbosity_level)
|
||||
except exceptions.WorkflowServiceError:
|
||||
swiftutils.delete_container(swift_client, name)
|
||||
|
|
Loading…
Reference in New Issue