gheesh / ansible-ovh-dns Goto Github PK
View Code? Open in Web Editor NEWAnsible module for accessing the OVH DNS API
License: GNU General Public License v3.0
Ansible module for accessing the OVH DNS API
License: GNU General Public License v3.0
Hello. I quick see the code and find that ip_reverse only supports IPv4?
Is there planned support for IPv6 reverse records?
First, thanks for the merge ! (and for this module).
I just want to draw attention on the fact I mistakenly push on the proposed branch another feature that was not described in PR summary. The merged code includes a diff support for the role. Diff is done by dumping before and after dict values as YAML.
I'm fairly confident it is working as I use it to help me to reconciliate an unsynchronized inventory and live state (missing entries, updated live entries, ...). It was not intended to be part of this PR, and I originally think to create a separate PR, but I push it on the wrong branch :-/
If you don't agree with this feature, or think it is not done the right way, feel free to revert 58dd4f1. I'd be glad it fits your needs.
Sorry for the inconvenience.
When tenantName is set to "" value module clears all A DNS records.
I think it should clear abc.com A record, not all A records in a zone.
Thanks for the module is what I search. But it will not work. There is no ovh module installed but it is.
(.py_ansible) 18:31:07[siefke]{ansible} $ ansible-playbook playbooks/service/ovh_dns.yml -vv
ansible-playbook [core 2.12.6]
config file = /home/siefke/Öffentlich/projects/coding/ansible/ansible.cfg
configured module search path = ['/home/siefke/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
ansible python module location = /home/siefke/.py_ansible/lib/python3.10/site-packages/ansible
ansible collection location = /home/siefke/.ansible/collections:/usr/share/ansible/collections
executable location = /home/siefke/.py_ansible/bin/ansible-playbook
python version = 3.10.4 (main, May 14 2022, 05:21:19) [GCC 12.1.0]
jinja version = 3.1.2
libyaml = True
Using /home/siefke/Öffentlich/projects/coding/ansible/ansible.cfg as config file
redirecting (type: callback) ansible.builtin.yaml to community.general.yaml
redirecting (type: callback) ansible.builtin.yaml to community.general.yaml
Skipping callback 'default', as we already have a stdout callback.
Skipping callback 'minimal', as we already have a stdout callback.
Skipping callback 'oneline', as we already have a stdout callback.
PLAYBOOK: ovh_dns.yml ************************************************************************************************************************************************************************************************************************
1 plays in playbooks/service/ovh_dns.yml
PLAY [localhost] *****************************************************************************************************************************************************************************************************************************
META: ran handlers
TASK [Create a A record for subdomain] *******************************************************************************************************************************************************************************************************
task path: /home/siefke/Öffentlich/projects/coding/ansible/playbooks/service/ovh_dns.yml:7
fatal: [localhost]: FAILED! => changed=false
msg: ovh python module is required to run this module.
to retry, use: --limit @/home/siefke/.ansible/retry-files/ovh_dns.retry
PLAY RECAP ***********************************************************************************************************************************************************************************************************************************
localhost : ok=0 changed=0 unreachable=0 failed=1 skipped=0 rescued=0 ignored=0
(.py_ansible) 18:31:17[siefke]{ansible} $ pip show ovh
Name: ovh
Version: 1.0.0
Summary: "Official module to perform HTTP requests to the OVHcloud APIs"
Home-page: https://api.ovh.com
Author: OVHcloud team - Romain Beuque
Author-email: [email protected]
License: BSD
Location: /home/siefke/.py_ansible/lib/python3.10/site-packages
Requires: requests
Required-by:
Need the module a specific version of Ansible / python-ovh?
Hi,
First, thank you for sharing this.
I am using your module which works well so far for records type A, AAAA.
Now I am facing a different need which is using SRV type and I am getting errors:
item:
domain: xxxxx.fr
name: _node-exporter._tcp
state: present
type: SRV
value: 0 8100 server.bonnel.xxxxx.fr
module_stderr: |-
Traceback (most recent call last):
File "<stdin>", line 102, in <module>
File "<stdin>", line 94, in _ansiballz_main
File "<stdin>", line 40, in invoke_module
File "/usr/lib/python3.6/runpy.py", line 205, in run_module
return _run_module_code(code, init_globals, run_name, mod_spec)
File "/usr/lib/python3.6/runpy.py", line 96, in _run_module_code
mod_name, mod_spec, pkg_name, script_name)
File "/usr/lib/python3.6/runpy.py", line 85, in _run_code
exec(code, run_globals)
File "/tmp/ansible_ovh_dns_payload_xvfetxji/ansible_ovh_dns_payload.zip/ansible/modules/ovh_dns.py", line 314, in <module>
File "/tmp/ansible_ovh_dns_payload_xvfetxji/ansible_ovh_dns_payload.zip/ansible/modules/ovh_dns.py", line 297, in main
File "/usr/local/lib/python3.6/dist-packages/ovh/client.py", line 377, in post
return self.call('POST', _target, kwargs, _need_auth)
File "/usr/local/lib/python3.6/dist-packages/ovh/client.py", line 446, in call
response=result)
ovh.exceptions.BadParametersError: Destination invalide
OVH-Query-ID: EU.ext-2.5f904c1a.14365.60c9f130-f42e-432c-bb08-c9cc2c91b895
Have you ever encountered this kind of problem?
Hey! Haven't you thought about creating a pull request with your module to ansible-modues-extra?
Hi,
I try to add multiple google MX entries for a domain, and when I check the result, there is only one MX record in the OVH panel.
Sorry, I have not debugged the code, but do you have any idea?
Thank you
- name: Add MX 10 alt3.aspmx.l.google.com.
ovh_dns:
state: present
domain: DOMAIN
name:
type: MX
value: "10 alt3.aspmx.l.google.com."
- name: Add MX 10 alt4.aspmx.l.google.com.
ovh_dns:
state: present
domain: DOMAIN
name:
type: MX
value: "10 alt4.aspmx.l.google.com."
- name: Add MX 1 aspmx.l.google.com.
ovh_dns:
state: present
domain: DOMAIN
name:
type: MX
value: "1 aspmx.l.google.com."
- name: Add 5 alt2.aspmx.l.google.com.
ovh_dns:
state: present
domain: DOMAIN
name:
type: MX
value: "5 alt2.aspmx.l.google.com."
- name: Add 5 alt1.aspmx.l.google.com.
ovh_dns:
state: present
domain: DOMAIN
name:
type: MX
value: "5 alt1.aspmx.l.google.com."
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.