54 lines
1.7 KiB
YAML
54 lines
1.7 KiB
YAML
---
|
|
|
|
|
|
- name: Match Scan Addresses to DB Details
|
|
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: |-
|
|
SELECT
|
|
id, description, state, note, lastSeen
|
|
FROM ipaddresses
|
|
WHERE
|
|
{% if ipaddress.id is defined %}
|
|
id='{{ ipaddress.id }}'
|
|
AND
|
|
{% endif %}
|
|
ip_addr='{{ ipaddress.ip | ip2ipam }}'
|
|
single_transaction: true
|
|
register: mysql_query_find_ipaddress
|
|
loop: "{{ scan_result }}"
|
|
loop_control:
|
|
loop_var: ipaddress
|
|
|
|
|
|
- name: Update Subnet Discovery Time
|
|
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: |-
|
|
UPDATE
|
|
subnets
|
|
SET
|
|
lastDiscovery = '{{ ('%Y-%m-%d %H:%M:%S' | strftime) }}'
|
|
WHERE
|
|
subnet = '{{ (inbound_data.scan.subnet | split('/'))[0] | ip2ipam }}'
|
|
single_transaction: true
|
|
|
|
|
|
- name: Update IP Addresses
|
|
ansible.builtin.include_tasks:
|
|
file: tasks/server/ipaddress.yaml
|
|
loop: "{{ mysql_query_find_ipaddress.results | default([]) }}"
|
|
loop_control:
|
|
loop_var: scan_address
|
|
label: "{{ scan_address }}"
|