xoxys.cloudflare_dns/tasks/setup.yml

33 lines
1.3 KiB
YAML

---
- name: Install dependencies
pip:
name: "{{ item }}"
executable: "{{ corenetworks_dns_pip }}"
extra_args: --user
state: present
loop: "{{ corenetworks_dns_python_packages }}"
delegate_to: "{{ corenetworks_dns_delegate_to }}"
- name: Obtain an API token
corenetworks_token:
api_user: "{{ corenetworks_dns_api_user | default(omit) }}"
api_password: "{{ corenetworks_dns_api_password | default(omit) }}"
register: __corenetworks
when: corenetworks_dns_token is not defined
delegate_to: "{{ corenetworks_dns_delegate_to }}"
run_once: "{{ corenetworks_dns_token_run_once }}"
- name: Create DNS records
corenetworks_dns:
api_token: "{{ corenetworks_dns_token if corenetworks_dns_token is defined else __corenetworks.session.token }}"
zone: "{{ item.zone | default(corenetworks_dns_default_zone) }}"
record: "{{ item.record | default(omit) }}"
type: "{{ item.type | default(omit) }}"
solo: "{{ item.solo | default(omit) }}"
value: "{{ item.value | default(omit) }}"
state: "{{ item.state | default('present') }}"
loop: "{{ corenetworks_dns_records + corenetworks_dns_records_extra }}"
loop_control:
label: "{{ item.zone | default(corenetworks_dns_default_zone) }}:{{ item.record | default('@') }}"
delegate_to: "{{ corenetworks_dns_delegate_to }}"