{"id":23503157,"url":"https://github.com/kpfleming/ansible-powerdns-auth","last_synced_at":"2025-04-15T21:34:47.325Z","repository":{"id":38309553,"uuid":"249221091","full_name":"kpfleming/ansible-powerdns-auth","owner":"kpfleming","description":"Ansible modules which manage content in a PowerDNS Authoritative server.","archived":false,"fork":false,"pushed_at":"2024-12-20T12:06:03.000Z","size":5648,"stargazers_count":12,"open_issues_count":4,"forks_count":6,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-29T01:34:36.769Z","etag":null,"topics":["ansible","dns","powerdns","powerdns-authoritative","powerdns-authoritative-server"],"latest_commit_sha":null,"homepage":"https://kpfleming.github.io/ansible-powerdns-auth/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kpfleming.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":".github/CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null},"funding":{"github":"kpfleming","liberapay":"kpfleming"}},"created_at":"2020-03-22T16:11:00.000Z","updated_at":"2024-12-20T12:04:01.000Z","dependencies_parsed_at":"2024-02-07T18:28:16.911Z","dependency_job_id":"7ec4f39c-78aa-4991-aa1d-838a426067cc","html_url":"https://github.com/kpfleming/ansible-powerdns-auth","commit_stats":null,"previous_names":[],"tags_count":26,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kpfleming%2Fansible-powerdns-auth","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kpfleming%2Fansible-powerdns-auth/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kpfleming%2Fansible-powerdns-auth/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kpfleming%2Fansible-powerdns-auth/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kpfleming","download_url":"https://codeload.github.com/kpfleming/ansible-powerdns-auth/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":249158030,"owners_count":21222042,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ansible","dns","powerdns","powerdns-authoritative","powerdns-authoritative-server"],"created_at":"2024-12-25T08:15:41.701Z","updated_at":"2025-04-15T21:34:47.304Z","avatar_url":"https://github.com/kpfleming.png","language":"Python","funding_links":["https://github.com/sponsors/kpfleming","https://liberapay.com/kpfleming"],"categories":[],"sub_categories":[],"readme":"# ansible-powerdns-auth\n\n\u003ca href=\"https://opensource.org\"\u003e\u003cimg height=\"150\" align=\"left\" src=\"https://opensource.org/files/OSIApprovedCropped.png\" alt=\"Open Source Initiative Approved License logo\"\u003e\u003c/a\u003e\n[![CI](https://github.com/kpfleming/ansible-powerdns-auth/workflows/CI/badge.svg)](https://github.com/kpfleming/ansible-powerdns-auth/actions?query=workflow%3ACI)\n[![Python](https://img.shields.io/badge/python-3.9+-blue.svg)](https://www.python.org/downloads/release/python-3920/)\n[![License - Apache 2.0](https://img.shields.io/badge/License-Apache%202.0-9400d3.svg)](https://spdx.org/licenses/Apache-2.0.html)\n[![Code Style and Quality - Ruff](https://img.shields.io/badge/Code%20Quality-Ruff-red.svg)](https://github.com/astral-sh/ruff)\n\nThis repo contains the `kpfleming.powerdns_auth` Ansible\nCollection. The collection includes modules to work with [PowerDNS\nAuthoritative servers][2].\n\nOpen Source software: [Apache License 2.0][3]\n\n## \u0026nbsp;\n\n## External requirements\n\nThe modules require the [Bravado][4] package for parsing the\nSwagger/OpenAPI specification of the PowerDNS Authoritative Server\nAPI.\n\nAs of PowerDNS Authoritative Server 4.9.x, the Swagger API\nspecification is not completely compliant, and as a result the\nvalidation packages used by Bravado will not accept it. In order to\nwork around this problem, older versions of the validation packages\ncan be installed, like this:\n\n```shell\npip install -r requirements.txt\n```\n\nThis command can be executed in the environment on the Ansible\ncontroller if the roles will be used only on 'localhost'; if they will\nbe used on Ansible-managed nodes, then the packages from the\nrequirements file will need to be installed there:\n\n```yaml\n- name: manage dependencies needed for powerdns_auth modules\n  ansible.builtin.pip:\n    name:\n      - bravado\n      - jsonschema\u003c4\n      - swagger-spec-validator==2.6.0\n```\n\nAdd suitable parameters if the packages should be installed into a\nvirtual environment on the managed node.\n\n## Included content\n\n* Modules:\n  * PowerDNS Authoritative Server:\n    - kpfleming.powerdns_auth.tsigkey: manage TSIG keys\n    - kpfleming.powerdns_auth.zone: manage zones\n\n## Using this collection\n\nIn order to use this collection, you need to install it using the\n`ansible-galaxy` CLI:\n\n    ansible-galaxy collection install kpfleming.powerdns_auth\n\nYou can also include it in a `requirements.yml` file and install it\nvia `ansible-galaxy collection install -r requirements.yml` using the\nformat:\n\n```yaml\ncollections:\n  - name: kpfleming.powerdns_auth\n```\n\nSee [Ansible Using collections][5] for more details.\n\nDocumentation of the collections's modules and their arguments/return\nvalues can be found [here][1].\n\n## Contributing to this collection\n\nIf you want to develop new content for this collection or improve what\nis already here, the easiest way to work on the collection is to clone\nit into one of the configured [`COLLECTIONS_PATH`][6], and work on it\nthere.\n\nYou can find more information in the [developer guide for\ncollections][7], and in the [Ansible Community Guide][8].\n\n## More information\n\n- [Ansible Collection overview](https://github.com/ansible-collections/overview)\n- [Ansible User guide](https://docs.ansible.com/ansible/latest/user_guide/index.html)\n- [Ansible Developer guide](https://docs.ansible.com/ansible/latest/dev_guide/index.html)\n- [Ansible Collections Checklist](https://github.com/ansible-collections/overview/blob/master/collection_requirements.rst)\n\n[1]: https://kpfleming.github.io/ansible-powerdns-auth\n[2]: https://www.powerdns.com/auth.html\n[3]: https://spdx.org/licenses/Apache-2.0.html\n[4]: https://pypi.org/project/bravado/\n[5]: https://docs.ansible.com/ansible/latest/user_guide/collections_using.html\n[6]: https://docs.ansible.com/ansible/latest/reference_appendices/config.html#collections-paths\n[7]: https://docs.ansible.com/ansible/devel/dev_guide/developing_collections.html#contributing-to-collections\n[8]: https://docs.ansible.com/ansible/latest/community/index.html\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkpfleming%2Fansible-powerdns-auth","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkpfleming%2Fansible-powerdns-auth","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkpfleming%2Fansible-powerdns-auth/lists"}