diff --git a/playbooks/agent.yaml b/playbooks/agent.yaml index 262c0cd..11e08b6 100644 --- a/playbooks/agent.yaml +++ b/playbooks/agent.yaml @@ -15,7 +15,12 @@ file: tasks/agent_id.yaml + - name: Subnets + ansible.builtin.include_tasks: + file: tasks/subnets.yaml + vars: # ToDo: remove the below t4est vars + api_subnets: subnets api_scanagents: tools/scanagents nfc_c_path_cache: "{{ playbook_dir }}/../cache" nfc_c_cache_expire_time: 1800 diff --git a/playbooks/tasks/subnets.yaml b/playbooks/tasks/subnets.yaml new file mode 100644 index 0000000..fd7c8b0 --- /dev/null +++ b/playbooks/tasks/subnets.yaml @@ -0,0 +1,28 @@ +--- + +- name: Reset Subnet List + ansible.builtin.set_fact: + nfc_c_scan_agent_subnets: [] + + +- name: Get subnets to Scan + ansible.builtin.include_tasks: + file: tasks/api_call.yaml + vars: + api_client_name: "{{ client_name }}" + api_token: "{{ client_token }}" + api_path: "{{ api_subnets }}" + api_query_string: "filter_by=scanAgent&filter_value={{ nfc_c_scan_agent_id }}" + + +- name: Update Subnets List + ansible.builtin.set_fact: + nfc_c_scan_agent_subnets: "{{ nfc_c_scan_agent_subnets + [{ + 'id': network.id, + 'address': network.subnet + '/' + network.mask + }] }}" + loop: "{{ data | default ([]) }}" + loop_control: + loop_var: network + vars: + data: "{{ lookup('file', cache_filepath) }}"