--- - name: Creating the environment file on undercloud template: src: "{{ environment_file }}" dest: "{{ working_dir }}/environment" mode: 0600 - name: Load the workarounds script on the undercloud template: src: "{{ workarounds_script }}" dest: "{{ working_dir }}/workarounds.sh" mode: 0755 when: apply_workarounds - name: Execute workarounds script on the undercloud shell: > "{{ working_dir }}/workarounds.sh" when: apply_workarounds - name: Get overcloud-ha-test-suite on undercloud and controllers shell: > rm -rf tripleo-director-ha-test-suite; git clone https://github.com/rscarazz/tripleo-director-ha-test-suite/ tripleo-director-ha-test-suite; delegate_to: "{{ item }}" with_items: - "undercloud" - "{{ groups['controller'] }}" - name: Include test sequence depending on release include_vars: dir: "vars" files_matching: "test_list_{{ release }}.yml" - name: Create directory on the undercloud to store test results file: path={{ validate_ha_logs_dir }} state=directory # Test: failed actions - block: - name: HA test - Failed actions (overcloud) delegate_to: overcloud-controller-0 shell: > {{ overcloud_working_dir }}/tripleo-director-ha-test-suite/TD-ha-test-suite.sh -t {{ overcloud_working_dir }}/tripleo-director-ha-test-suite/test/test_check-failed-actions register: test_ha_failed_actions_cmd always: - name: copy stdout test result to undercloud and check command copy: content="{{ test_ha_failed_actions_cmd.stdout }}" dest="{{ validate_ha_logs_dir }}/test_ha_failed_actions_stdout.log" rescue: - name: copy stderr test result to undercloud and check command copy: content="{{ test_ha_failed_actions_cmd.stderr }}" dest="{{ validate_ha_logs_dir }}/test_ha_failed_actions_stderr.log" when: test_ha_failed_actions|bool # Test: Master/Slave - block: - name: HA test - Master/Slave core resource stop and start (overcloud) delegate_to: overcloud-controller-0 shell: > {{ overcloud_working_dir }}/tripleo-director-ha-test-suite/TD-ha-test-suite.sh -t {{ overcloud_working_dir }}/tripleo-director-ha-test-suite/test/test_master-slave -r {{ overcloud_working_dir }}/tripleo-director-ha-test-suite/recovery/recovery_master-slave register: test_ha_master_slave_cmd always: - name: copy stdout test result to undercloud and check command copy: content="{{ test_ha_master_slave_cmd.stdout }}" dest="{{ validate_ha_logs_dir }}/test_ha_master_slave_stdout.log" rescue: - name: copy stderr test result to undercloud and check command copy: content="{{ test_ha_master_slave_cmd.stderr }}" dest="{{ validate_ha_logs_dir }}/test_ha_master_slave_stderr.log" when: test_ha_master_slave|bool # Test: Keystone removal - block: - name: HA test Keystone removal (overcloud) delegate_to: overcloud-controller-0 shell: > {{ overcloud_working_dir }}/tripleo-director-ha-test-suite/TD-ha-test-suite.sh -t {{ overcloud_working_dir }}/tripleo-director-ha-test-suite/test/test_keystone-constraint-removal -r {{ overcloud_working_dir }}/tripleo-director-ha-test-suite/recovery/recovery_keystone-constraint-removal register: test_ha_keystone_constraint_removal_cmd always: - name: copy stdout test result to undercloud and check command copy: content="{{ test_ha_keystone_constraint_removal_cmd.stdout }}" dest="{{ validate_ha_logs_dir }}/test_ha_keystone_constraint_removal_stdout.log" rescue: - name: copy stderr test result to undercloud and check command copy: content="{{ test_ha_keystone_constraint_removal_cmd.stderr }}" dest="{{ validate_ha_logs_dir }}/test_ha_keystone_constraint_removal_stderr.log" when: test_ha_keystone_constraint_removal|bool # Test: NG A - block: - name: HA test NG A (overcloud) delegate_to: overcloud-controller-0 shell: > {{ overcloud_working_dir }}/tripleo-director-ha-test-suite/TD-ha-test-suite.sh -t {{ overcloud_working_dir }}/tripleo-director-ha-test-suite/test/test_pacemaker-light-a -r {{ overcloud_working_dir }}/tripleo-director-ha-test-suite/recovery/recovery_pacemaker-light register: test_ha_ng_a_cmd always: - name: copy stdout test result to undercloud and check command copy: content="{{ test_ha_ng_a_cmd.stdout }}" dest="{{ validate_ha_logs_dir }}/test_ha_ng_a_stdout.log" rescue: - name: copy stderr test result to undercloud and check command copy: content="{{ test_ha_ng_a_cmd.stderr }}" dest="{{ validate_ha_logs_dir }}/test_ha_ng_a_stderr.log" when: test_ha_ng_a|bool # Test: NG B - block: - name: HA test NG B (overcloud) delegate_to: overcloud-controller-0 shell: > {{ overcloud_working_dir }}/tripleo-director-ha-test-suite/TD-ha-test-suite.sh -t {{ overcloud_working_dir }}/tripleo-director-ha-test-suite/test/test_pacemaker-light-b -r {{ overcloud_working_dir }}/tripleo-director-ha-test-suite/recovery/recovery_pacemaker-light register: test_ha_ng_b_cmd always: - name: copy stdout test result to undercloud and check command copy: content="{{ test_ha_ng_b_cmd.stdout }}" dest="{{ validate_ha_logs_dir }}/test_ha_ng_b_stdout.log" rescue: - name: copy stderr test result to undercloud and check command copy: content="{{ test_ha_ng_b_cmd.stderr }}" dest="{{ validate_ha_logs_dir }}/test_ha_ng_b_stderr.log" when: test_ha_ng_b|bool # Test: NG C - block: - name: HA test NG C (overcloud) delegate_to: overcloud-controller-0 shell: > {{ overcloud_working_dir }}/tripleo-director-ha-test-suite/TD-ha-test-suite.sh -t {{ overcloud_working_dir }}/tripleo-director-ha-test-suite/test/test_pacemaker-light-c -r {{ overcloud_working_dir }}/tripleo-director-ha-test-suite/recovery/recovery_pacemaker-light register: test_ha_ng_c_cmd always: - name: copy stdout test result to undercloud and check command copy: content="{{ test_ha_ng_c_cmd.stdout }}" dest="{{ validate_ha_logs_dir }}/test_ha_ng_c_stdout.log" rescue: - name: copy stderr test result to undercloud and check command copy: content="{{ test_ha_ng_c_cmd.stderr }}" dest="{{ validate_ha_logs_dir }}/test_ha_ng_c_stderr.log" when: test_ha_ng_c|bool # Test: Instance deployment - block: - name: HA Test instance deploy on the overcloud (undercloud) shell: > {{ working_dir }}/tripleo-director-ha-test-suite/TD-ha-test-suite.sh -t {{ working_dir }}/tripleo-director-ha-test-suite/test/test_instance-creation -r {{ working_dir }}/tripleo-director-ha-test-suite/recovery/recovery_instance-creation -u register: test_ha_instance_cmd always: - name: copy stdout test result to undercloud and check command copy: content="{{ test_ha_instance_cmd.stdout }}" dest="{{ validate_ha_logs_dir }}/test_ha_instance_stdout.log" rescue: - name: copy stderr test result to undercloud and check command copy: content="{{ test_ha_instance_cmd.stderr }}" dest="{{ validate_ha_logs_dir }}/test_ha_instance_stderr.log" when: test_ha_instance|bool