Files
phpipam_scan_agent/playbooks/tasks/server/ipaddress.yaml

64 lines
1.6 KiB
YAML

---
- name: "Update IP Address' found - {{ scan_address.ipaddress.ip }}"
community.mysql.mysql_query:
login_host: "{{ nfc_c_mysql_host }}"
login_port: "{{ nfc_c_mysql_port | default(3306) | int }}"
login_user: "{{ nfc_c_mysql_user }}"
login_password: "{{ nfc_c_mysql_password }}"
login_db: 'phpipam'
query: |-
{% if
scan_address.rowcount[0] | int > 0
%}
UPDATE ipaddresses
SET
lastSeen = '{{ scan_address.ipaddress.lastSeen }}'
{% if scan_address.ipaddress.mac | default('') != '' %},
mac = '{{ scan_address.ipaddress.mac }}'
{% endif %}
WHERE
id = {{ scan_address.query_result[0][0].id | int }}
{% elif
scan_address.rowcount[0] | int == 0
%}
INSERT INTO ipaddresses
(
subnetId,
ip_addr,
description,
{% if scan_address.ipaddress.mac | default('') != '' %}mac,{% endif %}
note,
lastSeen
)
VALUES
(
{{ scan_address.ipaddress.subnetId | int }},
'{{ scan_address.ipaddress.ip | ip2ipam }}',
'-- autodiscovered --',
{% if scan_address.ipaddress.mac | default('') != '' %}
'{{ scan_address.ipaddress.mac }}',
{% endif %}
'This host was autodiscovered on {{ scan_address.ipaddress.lastSeen }}',
'{{ scan_address.ipaddress.lastSeen }}'
)
{% endif %}
single_transaction: true
when: >
scan_address.ipaddress.subnetId | int in agent_subnets