tripleo-operator-ansible/roles/tripleo_config_generate_ansible/tasks/main.yml
Cédric Jeanneret 5a73e0a718 Add new parameter in order to get a kind of dry-run
A new global parameter is introduced:
tripleo_generate_scripts_only

It allows to get the roles running as usual, but it won't actually
execute the "shell" module.
With the "tripleo_generate_scripts", it allows to get everything ready
for manual investigations, with the generated scripts ready.

Of course, every role can be instructed to only generate scripts, using
the standard <role_name>_generate_scripts_only parameter.

Change-Id: I841743fb6c2c24e4a3d86598f99322022b27804d
2020-05-12 15:14:47 +02:00

42 lines
1.7 KiB
YAML

---
- name: Setup config generate ansible facts
set_fact:
_generate_cmd: >-
{{ tripleo_config_generate_ansible_os_cloud | ternary('', "source " ~ tripleo_config_generate_ansible_rc_file ~ "; ") }}
{{ openstack_bin }} tripleo config generate ansible
{{ tripleo_config_generate_ansible_deployment_user | ternary("--deployment-user $GENERATE_DEPLOYMENT_USER", '') }}
{{ tripleo_config_generate_ansible_output_dir | ternary("--output-dir $GENERATE_OUTPUT_DIR", '') }}
_generate_env:
GENERATE_DEPLOYMENT_USER: "{{ tripleo_config_generate_ansible_deployment_user }}"
GENERATE_OUTPUT_DIR: "{{ tripleo_config_generate_ansible_output_dir }}"
OS_CLOUD: "{{ tripleo_config_generate_ansible_os_cloud }}"
- name: Show debug information
when: tripleo_config_generate_ansible_debug|bool
block:
- name: Show the config generate ansible command
debug:
var: _generate_cmd
- name: Show the config generate ansible environment
debug:
var: _generate_env
- name: Write reproducer script
tripleo_shell_script:
dest: "{{ tripleo_config_generate_home_dir }}/tripleo_config_generate_ansible.sh"
shell_command: "{{ _generate_cmd }}"
shell_environment: "{{ _generate_env }}"
when: tripleo_config_generate_ansible_generate_scripts|bool
- name: tripleo config generate ansible
shell: "{{ _generate_cmd }}" # noqa 305
args:
chdir: "{{ tripleo_config_generate_ansible_home_dir }}"
warn: false
environment: "{{ _generate_env }}"
register: tripleo_config_generate_ansible_result
changed_when: true
when:
- not ansible_check_mode|bool
- not tripleo_config_generate_ansible_generate_scripts_only|bool