77 lines
2.1 KiB
YAML
77 lines
2.1 KiB
YAML
---
|
|
|
|
|
|
- name: "Update IP Address' found - {{ scan_address.ipaddress.ip }}"
|
|
community.mysql.mysql_query:
|
|
login_host: "{{ nofusscomputing_phpipam_scan_server.mysql_host }}"
|
|
login_port: "{{ nofusscomputing_phpipam_scan_server.mysql_port | default(3306) | int }}"
|
|
login_user: "{{ nofusscomputing_phpipam_scan_server.mysql_user }}"
|
|
login_password: "{{ nofusscomputing_phpipam_scan_server.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.hostname | default('') != '' %},
|
|
|
|
hostname = '{{ scan_address.ipaddress.hostname }}'
|
|
|
|
{% endif %}
|
|
|
|
{% 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.hostname | default('') != '' %}hostname,{% endif %}
|
|
{% 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.hostname | default('') != '' %}
|
|
|
|
'{{ scan_address.ipaddress.hostname }}',
|
|
|
|
{% endif %}
|
|
|
|
{% 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
|