Merge pull request #10 from ansible/devel

Rebase from devel
This commit is contained in:
Sean Sullivan
2020-09-09 07:49:37 -05:00
committed by GitHub
105 changed files with 2859 additions and 1233 deletions

View File

@@ -82,9 +82,9 @@
that:
- "result is changed"
- name: Re-create the Org-specific credential (new school)
- name: Re-create the Org-specific credential (new school) with an ID
tower_credential:
name: "{{ ssh_cred_name1 }}"
name: "{{ result.id }}"
organization: Default
credential_type: 'Machine'
state: present

View File

@@ -1,105 +1,113 @@
---
- name: Generate a random string for test
set_fact:
test_id: "{{ lookup('password', '/dev/null chars=ascii_letters length=16') }}"
when: test_id is not defined
- name: Generate names
set_fact:
src_cred_name: src_cred
target_cred_name: target_cred
src_cred_name: "AWX-Collection-tests-tower_credential_input_source-src_cred-{{ test_id }}"
target_cred_name: "AWX-Collection-tests-tower_credential_input_source-target_cred-{{ test_id }}"
- name: Add Tower credential Lookup
tower_credential:
description: Credential for Testing Source
name: "{{ src_cred_name }}"
credential_type: CyberArk AIM Central Credential Provider Lookup
inputs:
url: "https://cyberark.example.com"
app_id: "My-App-ID"
organization: Default
register: result
- block:
- name: Add Tower credential Lookup
tower_credential:
description: Credential for Testing Source
name: "{{ src_cred_name }}"
credential_type: CyberArk AIM Central Credential Provider Lookup
inputs:
url: "https://cyberark.example.com"
app_id: "My-App-ID"
organization: Default
register: src_cred_result
- assert:
that:
- "result is changed"
- assert:
that:
- "src_cred_result is changed"
- name: Add Tower credential Target
tower_credential:
description: Credential for Testing Target
name: "{{ target_cred_name }}"
credential_type: Machine
inputs:
username: user
organization: Default
register: result
- name: Add Tower credential Target
tower_credential:
description: Credential for Testing Target
name: "{{ target_cred_name }}"
credential_type: Machine
inputs:
username: user
organization: Default
register: target_cred_result
- assert:
that:
- "result is changed"
- assert:
that:
- "target_cred_result is changed"
- name: Add credential Input Source
tower_credential_input_source:
input_field_name: password
target_credential: "{{ target_cred_name }}"
source_credential: "{{ src_cred_name }}"
metadata:
object_query: "Safe=MY_SAFE;Object=AWX-user"
object_query_format: "Exact"
state: present
- name: Add credential Input Source
tower_credential_input_source:
input_field_name: password
target_credential: "{{ target_cred_result.id }}"
source_credential: "{{ src_cred_result.id }}"
metadata:
object_query: "Safe=MY_SAFE;Object=AWX-user"
object_query_format: "Exact"
state: present
register: result
- assert:
that:
- "result is changed"
- assert:
that:
- "result is changed"
- name: Add Second Tower credential Lookup
tower_credential:
description: Credential for Testing Source Change
name: "{{ src_cred_name }}-2"
credential_type: CyberArk AIM Central Credential Provider Lookup
inputs:
url: "https://cyberark-prod.example.com"
app_id: "My-App-ID"
organization: Default
register: result
- name: Add Second Tower credential Lookup
tower_credential:
description: Credential for Testing Source Change
name: "{{ src_cred_name }}-2"
credential_type: CyberArk AIM Central Credential Provider Lookup
inputs:
url: "https://cyberark-prod.example.com"
app_id: "My-App-ID"
organization: Default
register: result
- name: Change credential Input Source
tower_credential_input_source:
input_field_name: password
target_credential: "{{ target_cred_name }}"
source_credential: "{{ src_cred_name }}-2"
state: present
- name: Change credential Input Source
tower_credential_input_source:
input_field_name: password
target_credential: "{{ target_cred_name }}"
source_credential: "{{ src_cred_name }}-2"
state: present
- assert:
that:
- "result is changed"
- assert:
that:
- "result is changed"
- name: Remove a Tower credential source
tower_credential_input_source:
input_field_name: password
target_credential: "{{ target_cred_name }}"
state: absent
register: result
always:
- name: Remove a Tower credential source
tower_credential_input_source:
input_field_name: password
target_credential: "{{ target_cred_name }}"
state: absent
register: result
- assert:
that:
- "result is changed"
- assert:
that:
- "result is changed"
- name: Remove Tower credential Lookup
tower_credential:
name: "{{ src_cred_name }}"
organization: Default
credential_type: CyberArk AIM Central Credential Provider Lookup
state: absent
register: result
- name: Remove Tower credential Lookup
tower_credential:
name: "{{ src_cred_name }}"
organization: Default
credential_type: CyberArk AIM Central Credential Provider Lookup
state: absent
register: result
- name: Remove Alt Tower credential Lookup
tower_credential:
name: "{{ src_cred_name }}-2"
organization: Default
credential_type: CyberArk AIM Central Credential Provider Lookup
state: absent
register: result
- name: Remove Alt Tower credential Lookup
tower_credential:
name: "{{ src_cred_name }}-2"
organization: Default
credential_type: CyberArk AIM Central Credential Provider Lookup
state: absent
register: result
- name: Remove Tower credential
tower_credential:
name: "{{ target_cred_name }}"
organization: Default
credential_type: Machine
state: absent
register: result
- name: Remove Tower credential
tower_credential:
name: "{{ target_cred_name }}"
organization: Default
credential_type: Machine
state: absent
register: result

View File

@@ -18,7 +18,7 @@
- name: Remove a Tower credential type
tower_credential_type:
name: "{{ cred_type_name }}"
name: "{{ result.id }}"
state: absent
register: result

View File

@@ -14,11 +14,12 @@
name: "{{ inv_name }}"
organization: Default
state: present
register: result
- name: Create a Group
tower_group:
name: "{{ group_name1 }}"
inventory: "{{ inv_name }}"
inventory: "{{ result.id }}"
state: present
variables:
foo: bar
@@ -30,7 +31,7 @@
- name: Delete a Group
tower_group:
name: "{{ group_name1 }}"
name: "{{ result.id }}"
inventory: "{{ inv_name }}"
state: absent
register: result

View File

@@ -9,11 +9,12 @@
name: "{{ inv_name }}"
organization: Default
state: present
register: result
- name: Create a Host
tower_host:
name: "{{ host_name }}"
inventory: "{{ inv_name }}"
inventory: "{{ result.id }}"
state: present
variables:
foo: bar
@@ -25,7 +26,7 @@
- name: Delete a Host
tower_host:
name: "{{ host_name }}"
name: "{{ result.id }}"
inventory: "{{ inv_name }}"
state: absent
register: result

View File

@@ -19,11 +19,11 @@
host: "https://openshift.org"
bearer_token: "asdf1234"
verify_ssl: false
register: result
register: cred_result
- assert:
that:
- "result is changed"
- "cred_result is changed"
- name: Create an Instance Group
tower_instance_group:
@@ -37,10 +37,22 @@
that:
- "result is changed"
- name: Update an Instance Group
tower_instance_group:
name: "{{ result.id }}"
policy_instance_percentage: 34
policy_instance_minimum: 24
state: present
register: result
- assert:
that:
- "result is changed"
- name: Create a container group
tower_instance_group:
name: "{{ group_name2 }}"
credential: "{{ cred_name1 }}"
credential: "{{ cred_result.id }}"
register: result
- assert:

View File

@@ -29,7 +29,7 @@
tower_inventory:
name: "{{ inv_name1 }}"
organization: Default
insights_credential: "{{ cred_name1 }}"
insights_credential: "{{ result.id }}"
state: present
register: result
@@ -39,7 +39,7 @@
- name: Test Inventory module idempotency
tower_inventory:
name: "{{ inv_name1 }}"
name: "{{ result.id }}"
organization: Default
insights_credential: "{{ cred_name1 }}"
state: present

View File

@@ -16,6 +16,7 @@
host: https://example.org:5000
password: passw0rd
domain: test
register: credential_result
- name: Add a Tower inventory
tower_inventory:
@@ -28,7 +29,7 @@
name: "{{ openstack_inv_source }}"
description: Source for Test inventory
inventory: "{{ openstack_inv }}"
credential: "{{ openstack_cred }}"
credential: "{{ credential_result.id }}"
overwrite: true
update_on_launch: true
source_vars:
@@ -42,7 +43,7 @@
- name: Delete the inventory source with an invalid cred, source_project, sourece_script specified
tower_inventory_source:
name: "{{ openstack_inv_source }}"
name: "{{ result.id }}"
inventory: "{{ openstack_inv }}"
credential: "Does Not Exit"
source_project: "Does Not Exist"

View File

@@ -0,0 +1,116 @@
---
- name: Generate a test ID
set_fact:
test_id: "{{ lookup('password', '/dev/null chars=ascii_letters length=16') }}"
- name: Generate names
set_fact:
project_name: "AWX-Collection-tests-tower_inventory_source_update-project-{{ test_id }}"
inv_name: "AWX-Collection-tests-tower_inventory_source_update-inv-{{ test_id }}"
inv_source1: "AWX-Collection-tests-tower_inventory_source_update-source1-{{ test_id }}"
inv_source2: "AWX-Collection-tests-tower_inventory_source_update-source2-{{ test_id }}"
inv_source3: "AWX-Collection-tests-tower_inventory_source_update-source3-{{ test_id }}"
org_name: "AWX-Collection-tests-tower_inventory_source_update-org-{{ test_id }}"
- block:
- name: "Create a new organization"
tower_organization:
name: "{{ org_name }}"
register: created_org
- name: Create a git project without credentials
tower_project:
name: "{{ project_name }}"
organization: "{{ org_name }}"
scm_type: git
scm_url: https://github.com/ansible/test-playbooks
wait: true
- name: Create an Inventory
tower_inventory:
name: "{{ inv_name }}"
organization: "{{ org_name }}"
state: present
- name: Create another inventory w/ same name, different org
tower_inventory:
name: "{{ inv_name }}"
organization: Default
state: present
register: created_inventory
- name: Create an Inventory Source (specifically connected to the randomly generated org)
tower_inventory_source:
name: "{{ inv_source1 }}"
source: scm
source_project: "{{ project_name }}"
source_path: inventories/inventory.ini
description: Source for Test inventory
organization: "{{ created_org.id }}"
inventory: "{{ inv_name }}"
- name: Create Another Inventory Source
tower_inventory_source:
name: "{{ inv_source2 }}"
source: scm
source_project: "{{ project_name }}"
source_path: inventories/create_10_hosts.ini
description: Source for Test inventory
organization: Default
inventory: "{{ inv_name }}"
- name: Create Yet Another Inventory Source (to make lookup plugin find multiple inv sources)
tower_inventory_source:
name: "{{ inv_source3 }}"
source: scm
source_project: "{{ project_name }}"
source_path: inventories/create_100_hosts.ini
description: Source for Test inventory
organization: Default
inventory: "{{ inv_name }}"
- name: Test Inventory Source Update
tower_inventory_source_update:
inventory: "{{ inv_name }}"
inventory_source: "{{ inv_source2 }}"
organization: Default
register: result
- assert:
that:
- "result is changed"
- name: Test Inventory Source Update for All Sources
tower_inventory_source_update:
inventory: "{{ inv_name }}"
inventory_source: "{{ item.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"
always:
- name: Delete Inventory
tower_inventory:
name: "{{ inv_name }}"
organization: Default
state: absent
- name: Delete Project
tower_project:
name: "{{ project_name }}"
organization: Default
state: absent
- name: "Remove the organization"
tower_organization:
name: "{{ org_name }}"
state: absent

View File

@@ -22,14 +22,14 @@
state: present
scm_type: git
scm_url: https://github.com/ansible/ansible-tower-samples.git
register: result
register: proj_result
- name: Create Credential1
tower_credential:
name: "{{ cred1 }}"
organization: Default
kind: tower
register: cred1_result
- name: Create Credential2
tower_credential:
@@ -84,19 +84,19 @@
credentials: ["{{ cred1 }}", "{{ cred2 }}"]
job_type: run
state: present
register: result
register: jt1_result
- assert:
that:
- "result is changed"
- "jt1_result is changed"
- name: Add a credential to this JT
tower_job_template:
name: "{{ jt1 }}"
project: "{{ proj1 }}"
project: "{{ proj_result.id }}"
playbook: hello_world.yml
credentials:
- "{{ cred1 }}"
- "{{ cred1_result.id }}"
register: result
- assert:
@@ -105,7 +105,7 @@
- name: Try to add the same credential to this JT
tower_job_template:
name: "{{ jt1 }}"
name: "{{ jt1_result.id }}"
project: "{{ proj1 }}"
playbook: hello_world.yml
credentials:

View File

@@ -0,0 +1,66 @@
---
- name: Generate a random string for test
set_fact:
test_id: "{{ lookup('password', '/dev/null chars=ascii_letters length=16') }}"
when: test_id is not defined
- name: Generate names
set_fact:
project_name1: "AWX-Collection-tests-tower_project_update-project-{{ test_id }}"
- name: Create a git project without credentials without waiting
tower_project:
name: "{{ project_name1 }}"
organization: Default
scm_type: git
scm_url: https://github.com/ansible/test-playbooks
wait: false
register: project_create_result
- assert:
that:
- project_create_result is changed
- name: Update a project without waiting
tower_project_update:
name: "{{ project_name1 }}"
organization: Default
wait: false
register: result
- assert:
that:
- result is changed
- name: Update a project and wait
tower_project_update:
name: "{{ project_name1 }}"
organization: Default
wait: true
register: result
- assert:
that:
- result is successful
- name: Update a project by ID
tower_project_update:
name: "{{ project_create_result.id }}"
organization: Default
wait: true
register: result
- assert:
that:
- result is successful
- name: Delete the test project 1
tower_project:
name: "{{ project_name1 }}"
organization: Default
state: absent
register: result
- assert:
that:
- result is changed

View File

@@ -15,9 +15,9 @@
that:
- "result is changed"
- name: Change a User
- name: Change a User by ID
tower_user:
username: "{{ username }}"
username: "{{ result.id }}"
last_name: User
email: joe@example.org
state: present