--- - name: Generate names set_fact: token_description: "AWX-Collection-tests-token-description-{{ lookup('password', '/dev/null chars=ascii_letters length=16') }}" - name: Try to use a token as a dict which is missing the token parameter job_list: controller_oauthtoken: not_token: "This has no token entry" register: results ignore_errors: true - assert: that: - results is failed - '"The provided dict in controller_oauthtoken did not properly contain the token entry" == results.msg' - name: Try to use a token as a list job_list: controller_oauthtoken: - dummy_token register: results ignore_errors: true - assert: that: - results is failed - '"The provided controller_oauthtoken type was not valid (list). Valid options are str or dict." == results.msg' - name: Try to delete a token with no existing_token or existing_token_id token: state: absent register: results ignore_errors: true - assert: that: - results is failed # We don't assert a message here because it's handled by ansible - name: Try to delete a token with both existing_token or existing_token_id token: existing_token: id: 1234 existing_token_id: 1234 state: absent register: results ignore_errors: true - assert: that: - results is failed # We don't assert a message here because it's handled by ansible - block: - name: Create a Token token: description: '{{ token_description }}' scope: "write" state: present register: new_token - name: Validate our token works by token job_list: controller_oauthtoken: "{{ controller_token.token }}" register: job_list - name: Validate our token works by object job_list: controller_oauthtoken: "{{ controller_token }}" register: job_list always: - name: Delete our Token with our own token token: existing_token: "{{ controller_token }}" controller_oauthtoken: "{{ controller_token }}" state: absent when: controller_token is defined register: results - assert: that: - results is changed or results is skipped - block: - name: Create a second token token: description: '{{ token_description }}' scope: "write" state: present register: results - assert: that: - results is changed always: - name: Delete the second Token with our own token token: existing_token_id: "{{ controller_token['id'] }}" controller_oauthtoken: "{{ controller_token }}" state: absent when: controller_token is defined register: results - assert: that: - results is changed or resuslts is skipped