diff --git a/doc/source/modules/modules-tripleo_image_params_prepare.rst b/doc/source/modules/modules-tripleo_image_params_prepare.rst deleted file mode 100644 index ed66f5a03..000000000 --- a/doc/source/modules/modules-tripleo_image_params_prepare.rst +++ /dev/null @@ -1,14 +0,0 @@ -===================================== -Module - tripleo_image_params_prepare -===================================== - - -This module provides for the following ansible plugin: - - * tripleo_image_params_prepare - - -.. ansibleautoplugin:: - :module: tripleo_ansible/ansible_plugins/modules/tripleo_image_params_prepare.py - :documentation: true - :examples: true diff --git a/doc/source/modules/modules-tripleo_plan_deploy.rst b/doc/source/modules/modules-tripleo_plan_deploy.rst deleted file mode 100644 index 90a9ce447..000000000 --- a/doc/source/modules/modules-tripleo_plan_deploy.rst +++ /dev/null @@ -1,14 +0,0 @@ -============================ -Module - tripleo_plan_deploy -============================ - - -This module provides for the following ansible plugin: - - * tripleo_plan_deploy - - -.. ansibleautoplugin:: - :module: tripleo_ansible/ansible_plugins/modules/tripleo_plan_deploy.py - :documentation: true - :examples: true diff --git a/doc/source/modules/modules-tripleo_plan_parameters_update.rst b/doc/source/modules/modules-tripleo_plan_parameters_update.rst deleted file mode 100644 index 67e76c45b..000000000 --- a/doc/source/modules/modules-tripleo_plan_parameters_update.rst +++ /dev/null @@ -1,14 +0,0 @@ -======================================= -Module - tripleo_plan_parameters_update -======================================= - - -This module provides for the following ansible plugin: - - * tripleo_plan_parameters_update - - -.. ansibleautoplugin:: - :module: tripleo_ansible/ansible_plugins/modules/tripleo_plan_parameters_update.py - :documentation: true - :examples: true diff --git a/doc/source/modules/modules-tripleo_swift_tempurl.rst b/doc/source/modules/modules-tripleo_swift_tempurl.rst deleted file mode 100644 index cb9472924..000000000 --- a/doc/source/modules/modules-tripleo_swift_tempurl.rst +++ /dev/null @@ -1,14 +0,0 @@ -============================== -Module - tripleo_swift_tempurl -============================== - - -This module provides for the following ansible plugin: - - * tripleo_swift_tempurl - - -.. ansibleautoplugin:: - :module: tripleo_ansible/ansible_plugins/modules/tripleo_swift_tempurl.py - :documentation: true - :examples: true diff --git a/doc/source/modules/modules-tripleo_templates_upload.rst b/doc/source/modules/modules-tripleo_templates_upload.rst deleted file mode 100644 index a2542cebe..000000000 --- a/doc/source/modules/modules-tripleo_templates_upload.rst +++ /dev/null @@ -1,14 +0,0 @@ -================================= -Module - tripleo_templates_upload -================================= - - -This module provides for the following ansible plugin: - - * tripleo_templates_upload - - -.. ansibleautoplugin:: - :module: tripleo_ansible/ansible_plugins/modules/tripleo_templates_upload.py - :documentation: true - :examples: true diff --git a/tripleo_ansible/ansible_plugins/modules/tripleo_image_params_prepare.py b/tripleo_ansible/ansible_plugins/modules/tripleo_image_params_prepare.py deleted file mode 100644 index 9cebc02be..000000000 --- a/tripleo_ansible/ansible_plugins/modules/tripleo_image_params_prepare.py +++ /dev/null @@ -1,112 +0,0 @@ -#!/usr/bin/python -# -*- coding: utf-8 -*- -# Copyright (c) 2018 OpenStack Foundation -# All Rights Reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); you may -# not use this file except in compliance with the License. You may obtain -# a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT -# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the -# License for the specific language governing permissions and limitations -# under the License. - -import yaml - -from ansible.module_utils import tripleo_common_utils as tc -from ansible.module_utils.basic import AnsibleModule -from ansible.module_utils.openstack import openstack_full_argument_spec -from ansible.module_utils.openstack import openstack_module_kwargs -from ansible.module_utils.openstack import openstack_cloud_from_module - -from tripleo_common.utils import plan as plan_utils - -ANSIBLE_METADATA = { - 'metadata_version': '1.1', - 'status': ['preview'], - 'supported_by': 'community' -} - -DOCUMENTATION = ''' ---- -module: tripleo_image_params_prepare - -short_description: Update plan image params - -version_added: "2.8" - -description: - - "Prepare Image params and update plan" - -options: - container: - description: - - Overcloud plan container name - type: str - default: overcloud - with_roledata: - description: - - With role data - type: bool - default: false -author: - - Rabi Mishra (@ramishra) -requirements: ["openstacksdk", "tripleo-common"] -''' - -EXAMPLES = ''' -- name: Prepare image params and update plan - tripleo_image_params_prepare: - container: overcloud - with_roledata: true -''' - - -def run_module(): - result = dict( - success=False, - changed=False, - error="", - ) - - argument_spec = openstack_full_argument_spec( - **yaml.safe_load(DOCUMENTATION)['options'] - ) - - module = AnsibleModule( - argument_spec, - supports_check_mode=False, - **openstack_module_kwargs() - ) - - try: - container = module.params.get('container') - with_roledata = module.params.get('with_roledata') - _, conn = openstack_cloud_from_module(module) - tripleo = tc.TripleOCommon(session=conn.session) - swift = tripleo.get_object_client() - plan_utils.update_plan_environment_with_image_parameters( - swift, container, with_roledata=with_roledata) - result['success'] = True - result['changed'] = True - except Exception as err: - result['error'] = str(err) - result['msg'] = ("Error updating image parms for plan %s: %s" % ( - container, err)) - module.fail_json(**result) - - # in the event of a successful module execution, you will want to - # simple AnsibleModule.exit_json(), passing the key/value results - module.exit_json(**result) - - -def main(): - run_module() - - -if __name__ == '__main__': - main() diff --git a/tripleo_ansible/ansible_plugins/modules/tripleo_plan_deploy.py b/tripleo_ansible/ansible_plugins/modules/tripleo_plan_deploy.py deleted file mode 100644 index 957c44b95..000000000 --- a/tripleo_ansible/ansible_plugins/modules/tripleo_plan_deploy.py +++ /dev/null @@ -1,124 +0,0 @@ -#!/usr/bin/python -# -*- coding: utf-8 -*- -# Copyright (c) 2018 OpenStack Foundation -# All Rights Reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); you may -# not use this file except in compliance with the License. You may obtain -# a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT -# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the -# License for the specific language governing permissions and limitations -# under the License. - -import yaml - -from ansible.module_utils import tripleo_common_utils as tc -from ansible.module_utils.basic import AnsibleModule -from ansible.module_utils.openstack import openstack_full_argument_spec -from ansible.module_utils.openstack import openstack_module_kwargs -from ansible.module_utils.openstack import openstack_cloud_from_module - -from tripleo_common.utils import stack as stack_utils - -ANSIBLE_METADATA = { - 'metadata_version': '1.1', - 'status': ['preview'], - 'supported_by': 'community' -} - -DOCUMENTATION = ''' ---- -module: tripleo_plan_deploy - -short_description: Deploy Plan - -version_added: "2.8" - -description: - - "Deploy Plan" - -options: - container: - description: - - Overcloud plan container name - type: str - default: overcloud - skip_deploy_identifier: - description: - - Skip deploy indetifier - type: bool - default: false - timeout_mins: - description: - - Stack deploy timeout in mins - type: int - default: 240 - -author: - - Rabi Mishra (@ramishra) -requirements: ["openstacksdk", "tripleo-common"] -''' - -EXAMPLES = ''' -- name: Deploy Plan - tripleo_plan_deploy: - container: overcloud - skip_deploy_identifier: false - timeout_mins: 240 -''' - - -def run_module(): - result = dict( - success=False, - changed=False, - error="", - ) - - argument_spec = openstack_full_argument_spec( - **yaml.safe_load(DOCUMENTATION)['options'] - ) - - module = AnsibleModule( - argument_spec, - supports_check_mode=False, - **openstack_module_kwargs() - ) - - try: - container = module.params.get('container') - skip_deploy_identifier = module.params.get('skip_deploy_identifier') - timeout_mins = module.params.get('timeout_mins') - _, conn = openstack_cloud_from_module(module) - tripleo = tc.TripleOCommon(session=conn.session) - swift = tripleo.get_object_client() - heat = tripleo.get_orchestration_client() - stack_utils.deploy_stack( - swift, heat, - container=container, - skip_deploy_identifier=skip_deploy_identifier, - timeout_mins=timeout_mins) - result['success'] = True - result['changed'] = True - except Exception as err: - result['error'] = str(err) - result['msg'] = ("Error updating parameters for plan %s: %s" % ( - container, err)) - module.fail_json(**result) - - # in the event of a successful module execution, you will want to - # simple AnsibleModule.exit_json(), passing the key/value results - module.exit_json(**result) - - -def main(): - run_module() - - -if __name__ == '__main__': - main() diff --git a/tripleo_ansible/ansible_plugins/modules/tripleo_plan_parameters_update.py b/tripleo_ansible/ansible_plugins/modules/tripleo_plan_parameters_update.py deleted file mode 100644 index 7bb08379d..000000000 --- a/tripleo_ansible/ansible_plugins/modules/tripleo_plan_parameters_update.py +++ /dev/null @@ -1,131 +0,0 @@ -#!/usr/bin/python -# -*- coding: utf-8 -*- -# Copyright (c) 2018 OpenStack Foundation -# All Rights Reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); you may -# not use this file except in compliance with the License. You may obtain -# a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT -# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the -# License for the specific language governing permissions and limitations -# under the License. - -import yaml - -from ansible.module_utils import tripleo_common_utils as tc -from ansible.module_utils.basic import AnsibleModule -from ansible.module_utils.openstack import openstack_full_argument_spec -from ansible.module_utils.openstack import openstack_module_kwargs -from ansible.module_utils.openstack import openstack_cloud_from_module - -from tripleo_common.utils import stack_parameters as stack_param_utils - -ANSIBLE_METADATA = { - 'metadata_version': '1.1', - 'status': ['preview'], - 'supported_by': 'community' -} - -DOCUMENTATION = ''' ---- -module: tripleo_plan_parameters_update - -short_description: Update plan parameters - -version_added: "2.8" - -description: - - "Update plan parameters and validate stack" - -options: - container: - description: - - Overcloud plan container name - type: str - default: overcloud - parameters: - description: - - Parameters to update - type: dict - default: {} - parameter_key: - description: - - Heat parameter key - type: str - default: parameter_defaults - validate: - description: - - Validate heat stack - type: bool - default: true - -author: - - Rabi Mishra (@ramishra) -requirements: ["openstacksdk", "tripleo-common"] -''' - -EXAMPLES = ''' -- name: Update Plan params - tripleo_plan_parameters_update: - container: overcloud - parameters: - RootStackName: overcloud - validate: false -''' - - -def run_module(): - result = dict( - success=False, - changed=False, - error="", - ) - - argument_spec = openstack_full_argument_spec( - **yaml.safe_load(DOCUMENTATION)['options'] - ) - - module = AnsibleModule( - argument_spec, - supports_check_mode=False, - **openstack_module_kwargs() - ) - - try: - container = module.params.get('container') - parameters = module.params.get('parameters') - parameter_key = module.params.get('parameter_key') - validate = module.params.get('validate') - _, conn = openstack_cloud_from_module(module) - tripleo = tc.TripleOCommon(session=conn.session) - swift = tripleo.get_object_client() - heat = tripleo.get_orchestration_client() - stack_param_utils.update_parameters( - swift, heat, parameters, - container=container, - parameter_key=parameter_key, - validate=validate) - result['success'] = True - result['changed'] = True - except Exception as err: - result['error'] = str(err) - result['msg'] = ("Error updating parameters for plan %s: %s" % ( - container, err)) - module.fail_json(**result) - - # in the event of a successful module execution, you will want to - # simple AnsibleModule.exit_json(), passing the key/value results - module.exit_json(**result) - - -def main(): - run_module() - - -if __name__ == '__main__': - main() diff --git a/tripleo_ansible/ansible_plugins/modules/tripleo_swift_tempurl.py b/tripleo_ansible/ansible_plugins/modules/tripleo_swift_tempurl.py deleted file mode 100644 index 9786455ae..000000000 --- a/tripleo_ansible/ansible_plugins/modules/tripleo_swift_tempurl.py +++ /dev/null @@ -1,130 +0,0 @@ -#!/usr/bin/python -# -*- coding: utf-8 -*- -# Copyright (c) 2018 OpenStack Foundation -# All Rights Reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); you may -# not use this file except in compliance with the License. You may obtain -# a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT -# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the -# License for the specific language governing permissions and limitations -# under the License. - -import yaml - -from ansible.module_utils import tripleo_common_utils as tc -from ansible.module_utils.basic import AnsibleModule -from ansible.module_utils.openstack import openstack_full_argument_spec -from ansible.module_utils.openstack import openstack_module_kwargs -from ansible.module_utils.openstack import openstack_cloud_from_module - -from tripleo_common.utils import swift as swift_utils - -ANSIBLE_METADATA = { - 'metadata_version': '1.1', - 'status': ['preview'], - 'supported_by': 'community' -} - -DOCUMENTATION = ''' ---- -module: tripleo_swift_tempurl - -short_description: Get swift tempurl - -version_added: "2.8" - -description: - - "Get swift tempurl for object." - -options: - container: - description: - - Container name - type: str - default: overcloud-swift-rings - object: - description: - - Object name - type: str - defult: swift-rings.tar.gz - method: - description: - - An HTTP method to allow for this tempurl - type: str - default: GET - -author: - - Rabi Mishra (@ramishra) -requirements: ["openstacksdk", "tripleo-common"] -''' - -EXAMPLES = ''' -- name: Get tempurl for swit backup - tripleo_swift_tempurl: - container: overcloud-swift-rings - object: swift-rings.tar.gz - method: GET - register: tempurl -''' - -RETURN = ''' -tempurl: - description: tempurl for object - returned: always - type: string - no_log: true -''' - - -def run_module(): - result = dict( - success=False, - error="", - changed=False, - tempurl="" - ) - - argument_spec = openstack_full_argument_spec( - **yaml.safe_load(DOCUMENTATION)['options'] - ) - - module = AnsibleModule( - argument_spec, - supports_check_mode=False, - **openstack_module_kwargs() - ) - - try: - container = module.params.get('container') - obj = module.params.get('object') - method = module.params.get('method') - _, conn = openstack_cloud_from_module(module) - tripleo = tc.TripleOCommon(session=conn.session) - swift = tripleo.get_object_client() - tempurl = swift_utils.get_temp_url(swift, container, obj, method) - result['success'] = True - result['changed'] = True - result['tempurl'] = tempurl - except Exception as err: - result['error'] = str(err) - result['msg'] = ("Error getting %s tempurl for %s/%s: %s" % ( - method, container, obj, err)) - module.fail_json(**result) - - # in the event of a successful module execution, you will want to - # simple AnsibleModule.exit_json(), passing the key/value results - module.exit_json(**result) - - -def main(): - run_module() - - -if __name__ == '__main__': - main() diff --git a/tripleo_ansible/ansible_plugins/modules/tripleo_templates_upload.py b/tripleo_ansible/ansible_plugins/modules/tripleo_templates_upload.py deleted file mode 100644 index 09be3bbd5..000000000 --- a/tripleo_ansible/ansible_plugins/modules/tripleo_templates_upload.py +++ /dev/null @@ -1,112 +0,0 @@ -#!/usr/bin/python -# -*- coding: utf-8 -*- -# Copyright (c) 2018 OpenStack Foundation -# All Rights Reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); you may -# not use this file except in compliance with the License. You may obtain -# a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT -# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the -# License for the specific language governing permissions and limitations -# under the License. - -import yaml - -from ansible.module_utils import tripleo_common_utils as tc -from ansible.module_utils.basic import AnsibleModule -from ansible.module_utils.openstack import openstack_full_argument_spec -from ansible.module_utils.openstack import openstack_module_kwargs -from ansible.module_utils.openstack import openstack_cloud_from_module - -from tripleo_common.utils import template as template_utils - -ANSIBLE_METADATA = { - 'metadata_version': '1.1', - 'status': ['preview'], - 'supported_by': 'community' -} - -DOCUMENTATION = ''' ---- -module: tripleo_templates_upload - -short_description: Upload Templates - -version_added: "2.8" - -description: - - "Upload Templates to plan" - -options: - container: - description: - - Overcloud plan container name - type: str - default: overcloud - templates_dir: - description: - - templates_dir - type: str - default: '/usr/share/openstack-tripleo-heat-templates/' -author: - - Rabi Mishra (@ramishra) -requirements: ["openstacksdk", "tripleo-common"] -''' - -EXAMPLES = ''' -- name: Upload templates to plan - tripleo_templates_upload: - container: overcloud - templates_dir: '/usr/share/openstack-tripleo-heat-templates/' -''' - - -def run_module(): - result = dict( - success=False, - changed=False, - error="", - ) - - argument_spec = openstack_full_argument_spec( - **yaml.safe_load(DOCUMENTATION)['options'] - ) - - module = AnsibleModule( - argument_spec, - supports_check_mode=False, - **openstack_module_kwargs() - ) - - try: - container = module.params.get('container') - templates_dir = module.params.get('templates_dir') - _, conn = openstack_cloud_from_module(module) - tripleo = tc.TripleOCommon(session=conn.session) - swift = tripleo.get_object_client() - template_utils.upload_templates_as_tarball( - swift, container, templates_dir) - result['success'] = True - result['changed'] = True - except Exception as err: - result['error'] = str(err) - result['msg'] = ("Error uploading templates for plan %s: %s" % ( - container, err)) - module.fail_json(**result) - - # in the event of a successful module execution, you will want to - # simple AnsibleModule.exit_json(), passing the key/value results - module.exit_json(**result) - - -def main(): - run_module() - - -if __name__ == '__main__': - main() diff --git a/tripleo_ansible/playbooks/cli-create-deployment-plan.yaml b/tripleo_ansible/playbooks/cli-create-deployment-plan.yaml deleted file mode 100644 index 7e0ec559b..000000000 --- a/tripleo_ansible/playbooks/cli-create-deployment-plan.yaml +++ /dev/null @@ -1,136 +0,0 @@ ---- -# Copyright 2019 Red Hat, Inc. -# All Rights Reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); you may -# not use this file except in compliance with the License. You may obtain -# a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT -# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the -# License for the specific language governing permissions and limitations -# under the License. - -- import_playbook: cli-undercloud-local-artifacts.yaml - vars: - stack: "{{ container | default('overcloud') }}" - - -- name: Create Deployment Plan - connection: "{{ (tripleo_target_host is defined) | ternary('ssh', 'local') }}" - hosts: "{{ tripleo_target_host | default('localhost') }}" - remote_user: "{{ tripleo_target_user | default(lookup('env', 'USER')) }}" - gather_facts: "{{ (tripleo_target_host is defined) | ternary(true, false) }}" - any_errors_fatal: true - vars: - container: overcloud - source_url: null - generate_passwords: true - disable_image_params_prepare: false - plan_environment: plan-environment.yaml - default_templates_dir: '/usr/share/openstack-tripleo-heat-templates/' - use_default_templates: false - hide_sensitive_logs: true - - handlers: - - name: Cleanup temp directory - file: - path: "{{ temp_dir.path }}" - state: absent - when: temp_dir is defined - - pre_tasks: - - name: Set facts from environment - set_fact: - auth_version: "{{ lookup('env', 'OS_IDENTITY_API_VERSION') }}" - os_auth_url: "{{ lookup('env', 'OS_AUTH_URL') }}" - os_username: "{{ lookup('env', 'OS_USERNAME') }}" - os_password: "{{ lookup('env', 'OS_PASSWORD') }}" - os_project_name: "{{ lookup('env', 'OS_PROJECT_NAME') }}" - run_once: true - no_log: "{{ hide_sensitive_logs | bool }}" - - tasks: - - name: crate container and upload templates - block: - - name: Create plan if does not exist - shell: > - swift --os-auth-url "{{ os_auth_url }}" - --os-username "{{ os_username }}" - --os-password "{{ os_password }}" - --os-project-name "{{ os_project_name }}" - --auth-version "{{ auth_version }}" - post "{{ container }}" --header 'x-container-meta-usage-tripleo:plan' - no_log: "{{ hide_sensitive_logs | bool }}" - - - name: Create temp directory - tempfile: - state: directory - suffix: "{{ '_' + container + '_import' }}" - register: temp_dir - notify: - - "Cleanup temp directory" - when: source_url is not none - - - name: Git clone remote url - git: - repo: "{{ source_url }}" - dest: "{{ temp_dir }}" - when: source_url is not none - - - name: Upload templates - tripleo_templates_upload: - container: "{{ container }}" - templates_dir: "{{ temp_dir.path }}" - when: source_url is not none - - - name: Upload default templates - tripleo_templates_upload: - container: "{{ container }}" - templates_dir: "{{ default_templates_dir }}" - when: use_default_templates|bool - - when: use_default_templates|bool or source_url is not none - - - name: Create plan environment if does not exist - os_object: - container: "{{ container }}" - name: plan-environment.yaml - state: present - filename: "{{ plan_environment | tht_abspath }}" - - - name: Check Plan file - stat: - path: "/var/lib/tripleo/stacks/{{ container }}/plan-environment.yaml" - register: plan_file - - - name: Write local plan copy - copy: - src: "{{ plan_environment | tht_abspath }}" - dest: "/var/lib/tripleo/stacks/{{ container }}/plan-environment.yaml" - remote_src: true - when: - - not (plan_file.stat.exists | bool) - - - name: Generate passwords and update plan - tripleo_passwords_rotate: - container: "{{ container }}" - when: generate_passwords|bool - no_log: "{{ hide_sensitive_logs | bool }}" - - - name: Prepare Container images and update plan - tripleo_image_params_prepare: - container: "{{ container }}" - with_roledata: false - when: not (disable_image_params_prepare | bool) - - - name: Add root stack name - tripleo_plan_parameters_update: - container: "{{ container }}" - parameters: - RootStackName: "{{ container }}" - parameter_key: parameter_defaults - validate: false diff --git a/tripleo_ansible/playbooks/cli-deploy-deployment-plan.yaml b/tripleo_ansible/playbooks/cli-deploy-deployment-plan.yaml deleted file mode 100644 index af54f90d9..000000000 --- a/tripleo_ansible/playbooks/cli-deploy-deployment-plan.yaml +++ /dev/null @@ -1,106 +0,0 @@ ---- -# Copyright 2019 Red Hat, Inc. -# All Rights Reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); you may -# not use this file except in compliance with the License. You may obtain -# a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT -# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the -# License for the specific language governing permissions and limitations -# under the License. - -- name: Deploy Deployment Plan - connection: "{{ (tripleo_target_host is defined) | ternary('ssh', 'local') }}" - hosts: "{{ tripleo_target_host | default('localhost') }}" - remote_user: "{{ tripleo_target_user | default(lookup('env', 'USER')) }}" - gather_facts: "{{ (tripleo_target_host is defined) | ternary(true, false) }}" - any_errors_fatal: true - vars: - container: overcloud - run_validations: false - timeout_mins: 240 - skip_deploy_identifier: false - - pre_tasks: - - name: Set ansible_home for for local connection - set_fact: - ansible_home: "{{ lookup('env', 'HOME') }}" - run_once: true - when: - - (tripleo_target_host is defined) | ternary('ssh', 'local') == 'local' - - tasks: - - name: Validations block - when: - - run_validations | bool - block: - - name: Check if validation enabled - set_fact: - validations_enabled: "{{ lookup('hiera', 'tripleo_validations_enabled') }}" - run_once: true - become: true - - # Pre-deployment validation - # NOTE(cloudnull): The stackrc file is sourced because validations are not - # 100% compatible with clouds.yaml at this time. - - name: Run Validations - shell: |- - source "{{ ansible_home }}/stackrc" - openstack --os-cloud undercloud tripleo validator run --group "pre-deployment" - when: - - validations_enabled | bool - - - name: Fail if validations are disabled - fail: - msg: >- - Run validations were enabled but via hiera information disabled. - Check the configuration and try again. - when: - - not (validations_enabled | bool) - - - name: Prepare Container images and update plan - tripleo_image_params_prepare: - container: "{{ container }}" - with_roledata: true - - - name: Get backup tempurl for GET - tripleo_swift_tempurl: - container: "{{container + '-swift-rings' }}" - object: "swift-rings.tar.gz" - method: GET - register: backup_get_tempurl - - - name: Get backup tempurl for POST - tripleo_swift_tempurl: - container: "{{container + '-swift-rings' }}" - object: "swift-rings.tar.gz" - method: PUT - register: backup_put_tempurl - - - name: Update plan with backup tempurl parameters - tripleo_plan_parameters_update: - container: "{{ container }}" - parameters: - SwiftRingGetTempurl: "{{ backup_get_tempurl.tempurl }}" - SwiftRingPutTempurl: "{{ backup_put_tempurl.tempurl }}" - parameter_key: parameter_defaults - validate: true - - - name: Deploy Plan - tripleo_plan_deploy: - container: "{{ container }}" - skip_deploy_identifier: "{{ skip_deploy_identifier }}" - timeout_mins: "{{ timeout_mins|int }}" - - - name: Wait for stack status - command: | - openstack --os-cloud undercloud stack show --no-resolve-outputs "{{ container }}" -c stack_status - register: check_status - until: "'IN_PROGRESS' not in check_status.stdout" - retries: "{{ (timeout_mins|int * 60 / 10)|int }}" - delay: 10 diff --git a/tripleo_ansible/playbooks/cli-update-deployment-plan.yaml b/tripleo_ansible/playbooks/cli-update-deployment-plan.yaml deleted file mode 100644 index 0b72a418d..000000000 --- a/tripleo_ansible/playbooks/cli-update-deployment-plan.yaml +++ /dev/null @@ -1,67 +0,0 @@ ---- -# Copyright 2019 Red Hat, Inc. -# All Rights Reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); you may -# not use this file except in compliance with the License. You may obtain -# a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT -# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the -# License for the specific language governing permissions and limitations -# under the License. - -- name: Update Deployment Plan - connection: "{{ (tripleo_target_host is defined) | ternary('ssh', 'local') }}" - hosts: "{{ tripleo_target_host | default('localhost') }}" - remote_user: "{{ tripleo_target_user | default(lookup('env', 'USER')) }}" - gather_facts: "{{ (tripleo_target_host is defined) | ternary(true, false) }}" - any_errors_fatal: true - vars: - container: overcloud - generate_passwords: true - reset_passwords: false - disable_image_params_prepare: false - hide_sensitive_logs: true - - tasks: - - name: Generate passwords if does not exist and update plan - tripleo_passwords_rotate: - container: "{{ container }}" - rotate_passwords: "{{ reset_passwords }}" - when: - - (generate_passwords | bool) or (reset_passwords | bool) - no_log: "{{ hide_sensitive_logs | bool }}" - - - name: Prepare Container images and update plan - tripleo_image_params_prepare: - container: "{{ container }}" - with_roledata: false - when: not (disable_image_params_prepare | bool) - - - name: Get backup tempurl for GET - tripleo_swift_tempurl: - container: "{{container + '-swift-rings' }}" - object: "swift-rings.tar.gz" - method: GET - register: backup_get_tempurl - - - name: Get backup tempurl for POST - tripleo_swift_tempurl: - container: "{{container + '-swift-rings' }}" - object: "swift-rings.tar.gz" - method: PUT - register: backup_put_tempurl - - - name: Update plan with root stack and backup tempurl parameters - tripleo_plan_parameters_update: - container: "{{ container }}" - parameters: - RootStackName: "{{ container }}" - SwiftRingGetTempurl: "{{ backup_get_tempurl.tempurl }}" - SwiftRingPutTempurl: "{{ backup_put_tempurl.tempurl }}" - parameter_key: parameter_defaults - validate: false