summaryrefslogtreecommitdiffstats
path: root/ansible/deployment_poc/tasks/netbox_query_ip.yml
diff options
context:
space:
mode:
Diffstat (limited to 'ansible/deployment_poc/tasks/netbox_query_ip.yml')
-rw-r--r--ansible/deployment_poc/tasks/netbox_query_ip.yml18
1 files changed, 17 insertions, 1 deletions
diff --git a/ansible/deployment_poc/tasks/netbox_query_ip.yml b/ansible/deployment_poc/tasks/netbox_query_ip.yml
index f0ed7b7..a4cea59 100644
--- a/ansible/deployment_poc/tasks/netbox_query_ip.yml
+++ b/ansible/deployment_poc/tasks/netbox_query_ip.yml
@@ -1,4 +1,17 @@
---
+- name: Query existing address
+ ansible.builtin.uri:
+ url: "{{ endpoint }}/ipam/ip-addresses?virtual_machine_id={{ id }}"
+ client_cert: "{{ cert }}"
+ client_key: "{{ key }}"
+ method: GET
+ return_content: yes
+ headers:
+ Accept: application/json
+ Authorization: "Token {{ token }}"
+ register: nb_ip_1
+ delegate_to: localhost
+
- name: Query available address
ansible.builtin.uri:
url: "{{ endpoint }}/ipam/prefixes/{{ prefix_id }}/available-ips/?limit=1"
@@ -9,6 +22,9 @@
headers:
Accept: application/json
Authorization: "Token {{ token }}"
- register: nb_ip
+ register: nb_ip_2
delegate_to: localhost
+ when: "nb_ip_1.json.count|int == 0 or (nb_ip_1.json.results[0].status is defined and nb_ip_1.json.results[0].status.value != 'active')"
+ tags:
+ - init_dp