--- # Copyright 2020 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: Derive parameters 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: plan: overcloud persist_params_in_plan: true pre_tasks: - name: Set local connection user facts set_fact: ansible_home: "{{ lookup('env', 'HOME') }}" ansible_user: "{{ lookup('env', 'USER') }}" run_once: true when: - (tripleo_target_host is defined) | ternary('ssh', 'local') == 'local' tasks: - name: Get flatten params tripleo_get_flatten_stack: container: "{{ plan }}" register: tripleo_get_flatten_params when: - tripleo_get_flatten_params is undefined - name: Get role list tripleo_get_role_list: container: "{{ plan }}" valid: false register: tripleo_role_list when: - tripleo_role_list is undefined - name: Fail if stack_data has not been extracted when: - tripleo_get_flatten_params.stack_data is not defined fail: msg: "{{ plan }} is mising stack_data" - name: Derive params for each role include_role: name: tripleo_derived_parameters vars: tripleo_plan_name: "{{ plan }}" tripleo_role_name: "{{ outer_item }}" tripleo_environment_parameters: "{{ tripleo_get_flatten_params.stack_data.environment_parameters }}" tripleo_heat_resource_tree: "{{ tripleo_get_flatten_params.stack_data.heat_resource_tree }}" loop: "{{ tripleo_role_list.roles }}" loop_control: loop_var: outer_item