cloudflare_dns
Ansible Роль: Cloudflare DNS
Ansible роль для управления Cloudflare DNS. Основана на cloudflare_dns, официальном модуле Ansible.
Предварительные требования
- Существующая учетная запись Cloudflare.
- Доступ к глобальному API ключу учетной записи Cloudflare.
Переменные роли
Доступные переменные перечислены ниже с их значениями по умолчанию (см. defaults/main.yml
):
cloudflare_dns_account_email: [email protected]
Электронная почта учетной записи Cloudflare.
cloudflare_dns_account_api_token: 123abc456efg
Глобальный API токен учетной записи Cloudflare.
cloudflare_dns_zone: example.org
Зона DNS по умолчанию.
cloudflare_dns_records:
- name: foo
value: 127.0.0.1
Используйте cloudflare_dns_records
, чтобы указать свои DNS записи.
cloudflare_dns_records:
- name: foo
value: 127.0.0.1
zone: example.com
Используйте zone
, чтобы переопределить зону DNS для конкретной записи DNS.
cloudflare_dns_records:
- name: foo
value: 127.0.0.1
state: absent
Добавьте state: absent
, чтобы убедиться, что запись DNS удалена.
cloudflare_dns_host_records:
- name: "{{ inventory_hostname }}"
value: "{{ hostvars[inventory_hostname].ansible_default_ipv4.address }}"
DNS записи для ресурсов инвентаря создаются автоматически на основе приведенного выше шаблона.
cloudflare_dns_all_records: "{{ cloudflare_dns_host_records + cloudflare_dns_records }}"
Все управляемые записи DNS объединяются в переменной cloudflare_dns_all_records
.
Теги
Теги могут использоваться для ограничения выполнения роли конкретной задачей. Доступны следующие теги:
cloudflare_dns
,config
: Охватывает весь жизненный цикл роли.
Зависимости
Отсутствуют.
Пример плейбука
- hosts: all
roles:
- nl2go.cloudflare_dns
Разработка
Используйте docker-molecule следуя инструкциям, чтобы запустить Molecule или установите Molecule локально (не рекомендуется, могут возникнуть конфликты версий).
Обеспечьте учетные данные API Cloudflare с помощью переменных окружения:
export [email protected]
export CLOUDFLARE_DNS_ACCOUNT_API_TOKEN=123abc456efg
Используйте следующее для запуска тестов:
molecule test --all
Сопровождающие
Лицензия
Смотрите файл LICENSE.md для подробностей.
Информация об авторе
Эта роль была создана в 2020 году компанией Newsletter2Go GmbH.
ansible-galaxy install nl2go/ansible-role-cloudflare-dns