Merge pull request #21 from ansible/devel

Rebase
This commit is contained in:
Sean Sullivan
2020-11-10 08:13:52 -06:00
committed by GitHub
284 changed files with 9133 additions and 4349 deletions

View File

@@ -73,8 +73,8 @@
- name: Test Inventory Source Update
tower_inventory_source_update:
name: "{{ inv_source2 }}"
inventory: "{{ inv_name }}"
inventory_source: "{{ inv_source2 }}"
organization: Default
register: result
@@ -84,8 +84,23 @@
- name: Test Inventory Source Update for All Sources
tower_inventory_source_update:
name: "{{ item.name }}"
inventory: "{{ inv_name }}"
organization: Default
wait: true
loop: "{{ query('awx.awx.tower_api', 'inventory_sources', query_params={ 'inventory': created_inventory.id }, expect_objects=True, return_objects=True) }}"
loop_control:
label: "{{ item.name }}"
register: result
- assert:
that:
- "result is changed"
- name: Test Inventory Source Update for All Sources (using inventory_source as alias for name)
tower_inventory_source_update:
inventory_source: "{{ item.name }}"
inventory: "{{ inv_name }}"
organization: Default
wait: true
loop: "{{ query('awx.awx.tower_api', 'inventory_sources', query_params={ 'inventory': created_inventory.id }, expect_objects=True, return_objects=True) }}"

View File

@@ -135,3 +135,49 @@
name: "{{ proj_name }}"
organization: Default
state: absent
# tower workflow wait test
- name: Generate a random string for test
set_fact:
test_id1: "{{ lookup('password', '/dev/null chars=ascii_letters length=16') }}"
when: test_id1 is not defined
- name: Generate names
set_fact:
wfjt_name2: "AWX-Collection-tests-tower_workflow_launch--wfjt1-{{ test_id1 }}"
- name: Create our workflow
tower_workflow_job_template:
name: "{{ wfjt_name2 }}"
state: present
- name: Add a node
tower_workflow_job_template_node:
workflow_job_template: "{{ wfjt_name2 }}"
unified_job_template: "Demo Job Template"
identifier: leaf
register: new_node
- name: Kick off a workflow
tower_workflow_launch:
workflow_template: "{{ wfjt_name2 }}"
ignore_errors: true
register: workflow
- name: Wait for the Workflow Job to finish
tower_job_wait:
job_id: "{{ workflow.job_info.id }}"
job_type: "workflow_jobs"
register: wait_workflow_results
# Make sure it worked and that we have some data in our results
- assert:
that:
- wait_workflow_results is successful
- "'elapsed' in wait_workflow_results"
- "'id' in wait_workflow_results"
- name: Clean up test workflow
tower_workflow_job_template:
name: "{{ wfjt_name2 }}"
state: absent

View File

@@ -9,6 +9,7 @@
demo_project_name: "AWX-Collection-tests-tower_workflow_job_template-proj-{{ test_id }}"
jt1_name: "AWX-Collection-tests-tower_workflow_job_template-jt1-{{ test_id }}"
jt2_name: "AWX-Collection-tests-tower_workflow_job_template-jt2-{{ test_id }}"
approval_node_name: "AWX-Collection-tests-tower_workflow_approval_node-{{ test_id }}"
lab1: "AWX-Collection-tests-tower_job_template-lab1-{{ test_id }}"
wfjt_name: "AWX-Collection-tests-tower_workflow_job_template-wfjt-{{ test_id }}"
email_not: "AWX-Collection-tests-tower_job_template-email-not-{{ test_id }}"
@@ -145,6 +146,68 @@
unified_job_template: "{{ jt1_name }}"
workflow: "{{ wfjt_name }}"
- name: Fail if no name is set for approval
tower_workflow_job_template_node:
identifier: approval_test
approval_node:
description: "{{ approval_node_name }}"
workflow: "{{ wfjt_name }}"
register: no_name_results
ignore_errors: true
- assert:
that:
- "no_name_results.msg == 'Approval node name is required to create approval node.'"
- name: Fail if absent and no identifier set
tower_workflow_job_template_node:
approval_node:
description: "{{ approval_node_name }}"
workflow: "{{ wfjt_name }}"
state: absent
register: no_identifier_results
ignore_errors: true
- assert:
that:
- "no_identifier_results.msg == 'missing required arguments: identifier'"
- name: Fail if present and no unified job template set
tower_workflow_job_template_node:
identifier: approval_test
workflow: "{{ wfjt_name }}"
register: no_unified_results
ignore_errors: true
- assert:
that:
- "no_unified_results.msg == 'state is present but any of the following are missing: unified_job_template, approval_node, success_nodes, always_nodes, failure_nodes'"
- name: Create approval node
tower_workflow_job_template_node:
identifier: approval_test
approval_node:
name: "{{ approval_node_name }}"
timeout: 900
workflow: "{{ wfjt_name }}"
- name: Create link for root node
tower_workflow_job_template_node:
identifier: root
workflow: "{{ wfjt_name }}"
success_nodes:
- approval_test
always_nodes:
- leaf
- name: Delete approval node
tower_workflow_job_template_node:
identifier: approval_test
approval_node:
name: "{{ approval_node_name }}"
state: absent
workflow: "{{ wfjt_name }}"
- name: Add started notifications to workflow job template
tower_workflow_job_template:
name: "{{ wfjt_name }}"