You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
69 lines
2.0 KiB
YAML
69 lines
2.0 KiB
YAML
---
|
|
- name: "Initilize VARs"
|
|
set_fact:
|
|
found_credential_id: ""
|
|
|
|
- name: "Get {{ job.name }} job_template credential id's from awx server"
|
|
uri:
|
|
url: "{{ awx_base_url }}/api/v2/job_templates/{{ awx_job_template_id }}/credentials"
|
|
method: GET
|
|
user: "{{ awx_rest_api_access_user }}"
|
|
password: "{{ awx_rest_api_access_pw }}"
|
|
return_content: true
|
|
validate_certs: false
|
|
force_basic_auth: yes
|
|
status_code: 200
|
|
register: awx_job_template_info
|
|
when: (awx_job_template_id | default("") | length > 0)
|
|
|
|
- name: Save result as variable (fact)
|
|
set_fact:
|
|
awx_job_template_info_json: "{{ awx_job_template_info.json }}"
|
|
|
|
- name: "Printing..."
|
|
debug:
|
|
msg: "{{ awx_job_template_info_json }}"
|
|
delegate_to: 127.0.0.1
|
|
become: false
|
|
when:
|
|
- debug
|
|
|
|
- name: "Search <{{ awx_credential_id }}> in <{{ job.name }}> job_template"
|
|
vars:
|
|
query: '[? id==`{{ awx_credential_id }}`].id'
|
|
set_fact:
|
|
found_credential_id: "{{ awx_job_template_info_json.results | json_query(query) | first | default(None) }}"
|
|
when: (awx_job_template_info_json.results is defined) and (awx_job_template_info_json.results | length > 0)
|
|
|
|
- name: "Printing..."
|
|
debug:
|
|
msg: "{{ awx_type_id }}"
|
|
delegate_to: 127.0.0.1
|
|
become: false
|
|
when:
|
|
- debug
|
|
- awx_type_id is defined
|
|
|
|
- name: "Add credential id {{ awx_credential_id }} to {{ job.name }} job_template"
|
|
uri:
|
|
url: "{{ awx_base_url }}/api/v2/job_templates/{{ awx_job_template_id }}/credentials/"
|
|
method: POST
|
|
user: "{{ awx_rest_api_access_user }}"
|
|
password: "{{ awx_rest_api_access_pw }}"
|
|
headers:
|
|
Content-Type: "application/json"
|
|
Accept: "application/json"
|
|
body_format: "json"
|
|
body: >
|
|
{
|
|
'associate': true,
|
|
'id': {{ awx_credential_id | int }}
|
|
}
|
|
force_basic_auth: true
|
|
validate_certs: false
|
|
status_code: 204
|
|
when: >
|
|
(found_credential_id | default("") | length == 0) and
|
|
(awx_credential_id is defined) and
|
|
(awx_job_template_id | default("") | length > 0)
|