mirror of
https://github.com/ansible/awx.git
synced 2026-01-23 07:28:02 -03:30
339 lines
7.7 KiB
YAML
339 lines
7.7 KiB
YAML
---
|
|
- name: Generate a test ID
|
|
set_fact:
|
|
test_id: "{{ lookup('password', '/dev/null chars=ascii_letters length=16') }}"
|
|
when: test_id is not defined
|
|
|
|
- name: Generate names
|
|
set_fact:
|
|
username: "AWX-Collection-tests-user-user-{{ test_id }}"
|
|
|
|
- name: Create a User
|
|
user:
|
|
username: "{{ username }}"
|
|
first_name: Joe
|
|
password: "{{ 65535 | random | to_uuid }}"
|
|
state: present
|
|
register: result
|
|
|
|
- assert:
|
|
that:
|
|
- "result is changed"
|
|
|
|
- name: Create a User with exists
|
|
user:
|
|
username: "{{ username }}"
|
|
first_name: Joe
|
|
password: "{{ 65535 | random | to_uuid }}"
|
|
state: exists
|
|
register: result
|
|
|
|
- assert:
|
|
that:
|
|
- "result is not changed"
|
|
|
|
- name: Delete a User
|
|
user:
|
|
username: "{{ username }}"
|
|
first_name: Joe
|
|
password: "{{ 65535 | random | to_uuid }}"
|
|
state: absent
|
|
register: result
|
|
|
|
- assert:
|
|
that:
|
|
- "result is changed"
|
|
|
|
- name: Create a User with exists
|
|
user:
|
|
username: "{{ username }}"
|
|
first_name: Joe
|
|
password: "{{ 65535 | random | to_uuid }}"
|
|
state: exists
|
|
register: result
|
|
|
|
- assert:
|
|
that:
|
|
- "result is changed"
|
|
|
|
- name: Change a User by ID
|
|
user:
|
|
username: "{{ result.id }}"
|
|
last_name: User
|
|
email: joe@example.org
|
|
state: present
|
|
register: result
|
|
|
|
- assert:
|
|
that:
|
|
- "result is changed"
|
|
|
|
- name: Check idempotency
|
|
user:
|
|
username: "{{ username }}"
|
|
first_name: Joe
|
|
last_name: User
|
|
register: result
|
|
|
|
- assert:
|
|
that:
|
|
- "result is not changed"
|
|
|
|
- name: Rename a User
|
|
user:
|
|
username: "{{ username }}"
|
|
new_username: "{{ username }}-renamed"
|
|
email: joe@example.org
|
|
register: result
|
|
|
|
- assert:
|
|
that:
|
|
- "result is changed"
|
|
|
|
- name: Delete a User
|
|
user:
|
|
username: "{{ username }}-renamed"
|
|
email: joe@example.org
|
|
state: absent
|
|
register: result
|
|
|
|
- assert:
|
|
that:
|
|
- "result is changed"
|
|
|
|
- name: Create an Auditor
|
|
user:
|
|
first_name: Joe
|
|
last_name: Auditor
|
|
username: "{{ username }}"
|
|
password: "{{ 65535 | random | to_uuid }}"
|
|
email: joe@example.org
|
|
state: present
|
|
auditor: true
|
|
register: result
|
|
|
|
- assert:
|
|
that:
|
|
- "result is changed"
|
|
|
|
- name: Delete an Auditor
|
|
user:
|
|
username: "{{ username }}"
|
|
email: joe@example.org
|
|
state: absent
|
|
register: result
|
|
|
|
- assert:
|
|
that:
|
|
- "result is changed"
|
|
|
|
- name: Create a Superuser
|
|
user:
|
|
first_name: Joe
|
|
last_name: Super
|
|
username: "{{ username }}"
|
|
password: "{{ 65535 | random | to_uuid }}"
|
|
email: joe@example.org
|
|
state: present
|
|
superuser: true
|
|
register: result
|
|
|
|
- assert:
|
|
that:
|
|
- "result is changed"
|
|
|
|
- name: Delete a Superuser
|
|
user:
|
|
username: "{{ username }}"
|
|
email: joe@example.org
|
|
state: absent
|
|
register: result
|
|
|
|
- assert:
|
|
that:
|
|
- "result is changed"
|
|
|
|
- name: Test SSL parameter
|
|
user:
|
|
first_name: Joe
|
|
last_name: User
|
|
username: "{{ username }}"
|
|
password: "{{ 65535 | random | to_uuid }}"
|
|
email: joe@example.org
|
|
state: present
|
|
validate_certs: true
|
|
controller_host: http://foo.invalid
|
|
ignore_errors: true
|
|
register: result
|
|
|
|
- assert:
|
|
that:
|
|
- "'Unable to resolve controller_host' in result.msg or
|
|
'Can not verify ssl with non-https protocol' in result.exception"
|
|
|
|
- block:
|
|
- name: Generate an org name
|
|
set_fact:
|
|
org_name: "AWX-Collection-tests-organization-org-{{ test_id }}"
|
|
|
|
- name: Make sure {{ org_name }} is not there
|
|
organization:
|
|
name: "{{ org_name }}"
|
|
state: absent
|
|
register: result
|
|
|
|
- name: Create a new Organization
|
|
organization:
|
|
name: "{{ org_name }}"
|
|
galaxy_credentials:
|
|
- Ansible Galaxy
|
|
register: result
|
|
|
|
- assert:
|
|
that: "result is changed"
|
|
|
|
- name: Create a User to become admin of an organization {{ org_name }}
|
|
user:
|
|
username: "{{ username }}-orgadmin"
|
|
password: "{{ username }}-orgadmin"
|
|
state: present
|
|
organization: "{{ org_name }}"
|
|
register: result
|
|
|
|
- assert:
|
|
that:
|
|
- "result is changed"
|
|
|
|
- name: Add the user {{ username }}-orgadmin as an admin of the organization {{ org_name }}
|
|
role:
|
|
user: "{{ username }}-orgadmin"
|
|
role: admin
|
|
organization: "{{ org_name }}"
|
|
state: present
|
|
register: result
|
|
|
|
- assert:
|
|
that:
|
|
- "result is changed"
|
|
|
|
- name: Create a User as {{ username }}-orgadmin without using an organization (must fail)
|
|
user:
|
|
controller_username: "{{ username }}-orgadmin"
|
|
controller_password: "{{ username }}-orgadmin"
|
|
username: "{{ username }}"
|
|
first_name: Joe
|
|
password: "{{ 65535 | random | to_uuid }}"
|
|
state: present
|
|
register: result
|
|
ignore_errors: true
|
|
|
|
- assert:
|
|
that:
|
|
- "result is failed"
|
|
|
|
- name: Create a User as {{ username }}-orgadmin using an organization
|
|
user:
|
|
controller_username: "{{ username }}-orgadmin"
|
|
controller_password: "{{ username }}-orgadmin"
|
|
username: "{{ username }}"
|
|
first_name: Joe
|
|
password: "{{ 65535 | random | to_uuid }}"
|
|
state: present
|
|
organization: "{{ org_name }}"
|
|
register: result
|
|
|
|
- assert:
|
|
that:
|
|
- "result is changed"
|
|
|
|
- name: Change a User as {{ username }}-orgadmin by ID using an organization
|
|
user:
|
|
controller_username: "{{ username }}-orgadmin"
|
|
controller_password: "{{ username }}-orgadmin"
|
|
username: "{{ result.id }}"
|
|
last_name: User
|
|
email: joe@example.org
|
|
state: present
|
|
organization: "{{ org_name }}"
|
|
register: result
|
|
|
|
- assert:
|
|
that:
|
|
- "result is changed"
|
|
|
|
- name: Check idempotency as {{ username }}-orgadmin using an organization
|
|
user:
|
|
controller_username: "{{ username }}-orgadmin"
|
|
controller_password: "{{ username }}-orgadmin"
|
|
username: "{{ username }}"
|
|
first_name: Joe
|
|
last_name: User
|
|
organization: "{{ org_name }}"
|
|
register: result
|
|
|
|
- assert:
|
|
that:
|
|
- "result is not changed"
|
|
|
|
- name: Rename a User as {{ username }}-orgadmin using an organization
|
|
user:
|
|
controller_username: "{{ username }}-orgadmin"
|
|
controller_password: "{{ username }}-orgadmin"
|
|
username: "{{ username }}"
|
|
new_username: "{{ username }}-renamed"
|
|
email: joe@example.org
|
|
organization: "{{ org_name }}"
|
|
register: result
|
|
|
|
- assert:
|
|
that:
|
|
- "result is changed"
|
|
|
|
- name: Delete a User as {{ username }}-orgadmin using an organization
|
|
user:
|
|
controller_username: "{{ username }}-orgadmin"
|
|
controller_password: "{{ username }}-orgadmin"
|
|
username: "{{ username }}-renamed"
|
|
email: joe@example.org
|
|
state: absent
|
|
organization: "{{ org_name }}"
|
|
register: result
|
|
|
|
- assert:
|
|
that:
|
|
- "result is changed"
|
|
|
|
- name: Remove the user {{ username }}-orgadmin as an admin of the organization {{ org_name }}
|
|
role:
|
|
user: "{{ username }}-orgadmin"
|
|
role: admin
|
|
organization: "{{ org_name }}"
|
|
state: absent
|
|
register: result
|
|
|
|
- assert:
|
|
that:
|
|
- "result is changed"
|
|
|
|
- name: Delete the User {{ username }}-orgadmin
|
|
user:
|
|
username: "{{ username }}-orgadmin"
|
|
password: "{{ username }}-orgadmin"
|
|
state: absent
|
|
organization: "{{ org_name }}"
|
|
register: result
|
|
|
|
- assert:
|
|
that:
|
|
- "result is changed"
|
|
|
|
- name: Delete the Organization {{ org_name }}
|
|
organization:
|
|
name: "{{ org_name }}"
|
|
state: absent
|
|
register: result
|
|
|
|
- assert:
|
|
that: "result is changed"
|
|
...
|