matrix-docker-ansible-deploy/roles/custom/matrix-registration/tasks/generate_token.yml

53 lines
1.7 KiB
YAML
Raw Normal View History

---
2020-09-01 12:46:05 +02:00
- name: Fail if playbook called incorrectly
ansible.builtin.fail:
2020-09-01 12:46:05 +02:00
msg: "The `one_time` variable needs to be provided to this playbook, via --extra-vars"
when: "one_time is not defined or one_time not in ['yes', 'no']"
- name: Fail if playbook called incorrectly
ansible.builtin.fail:
2020-09-01 12:46:05 +02:00
msg: "The `ex_date` variable (expiration date) needs to be provided to this playbook, via --extra-vars"
when: "ex_date is not defined or ex_date == '<date>'"
- name: Call matrix-registration token creation API
ansible.builtin.uri:
2020-09-01 12:46:05 +02:00
url: "{{ matrix_registration_api_token_endpoint }}"
follow_redirects: none
validate_certs: "{{ matrix_registration_api_validate_certs }}"
headers:
Content-Type: application/json
Authorization: "SharedSecret {{ matrix_registration_admin_secret }}"
method: POST
body_format: json
body: |
{
"one_time": {{ 'true' if one_time == 'yes' else 'false' }},
2022-07-18 10:22:05 +02:00
"ex_date": {{ ex_date | to_json }}
2020-09-01 12:46:05 +02:00
}
check_mode: false
2020-09-01 12:46:05 +02:00
register: matrix_registration_api_result
- ansible.builtin.set_fact:
2020-09-01 12:46:05 +02:00
matrix_registration_api_result_message: >-
matrix-registration result:
Direct registration link (with the token prefilled):
{{ matrix_registration_api_register_endpoint }}?token={{ matrix_registration_api_result.json.name }}
Full token details are:
{{ matrix_registration_api_result.json }}
check_mode: false
2020-09-01 12:46:05 +02:00
- name: Inject result message into matrix_playbook_runtime_results
ansible.builtin.set_fact:
2020-09-01 12:46:05 +02:00
matrix_playbook_runtime_results: |
{{
2022-07-18 10:22:05 +02:00
matrix_playbook_runtime_results | default([])
2020-09-01 12:46:05 +02:00
+
[matrix_registration_api_result_message]
}}
check_mode: false