File: //lib/python3.9/site-packages/ansible_collections/cisco/ise/playbooks/trustsec_nbarapp.yml
---
- hosts: ise_servers
gather_facts: false
vars:
ise_login: &ise_login
ise_hostname: "{{ ise_hostname }}"
ise_username: "{{ ise_username }}"
ise_password: "{{ ise_password }}"
ise_verify: "{{ ise_verify }}"
ise_debug: "{{ ise_debug }}"
tasks:
# - name: '[Get Nbar Apps]'
# cisco.ise.trustsec_nbar_app_info:
# <<: *ise_login
# page: 1
# size: 100
# register: nbar_app_all
# - name: '[Print Nbar Apps]'
# ansible.builtin.debug:
# var: nbar_app_all
- name: Get Nbar App filtered by name
cisco.ise.trustsec_nbar_app_info:
<<: *ise_login
filter: name.EQ.hyperwave-isp
register: nbar_app_filtered
- name: Get Nbar App by id
cisco.ise.trustsec_nbar_app_info:
<<: *ise_login
id: "{{ nbar_app_filtered.ise_responses[0].id }}"
when:
- nbar_app_filtered is defined
- nbar_app_filtered.ise_responses is defined
- nbar_app_filtered.ise_responses | length > 0
register: nbar_app_by_id
- name: Print Nbar App by id
ansible.builtin.debug:
var: nbar_app_by_id
- name: Create Nbar App duplicate
cisco.ise.trustsec_nbar_app:
<<: *ise_login
state: present
name: "{{ nbar_app_by_id.ise_response[0].name}}-2"
description: "{{ nbar_app_by_id.ise_response[0].description|int + 1 }}"
networkIdentities:
- ports: "{{ nbar_app_by_id.ise_response[0].networkIdentities[0].ports|int +1 }}"
protocol: "{{ nbar_app_by_id.ise_response[0].networkIdentities[0].protocol }}"
- ports: "{{ nbar_app_by_id.ise_response[0].networkIdentities[1].ports|int +1 }}"
protocol: "{{ nbar_app_by_id.ise_response[0].networkIdentities[1].protocol }}"
when:
- nbar_app_by_id is defined
- nbar_app_by_id.ise_response is defined
- nbar_app_by_id.ise_response | length == 1
register: nbar_app_manage
- name: Print Create Nbar
ansible.builtin.debug:
var: nbar_app_manage
- name: Update Nbar App duplicate
cisco.ise.trustsec_nbar_app:
<<: *ise_login
state: present
name: "{{ nbar_app_by_id.ise_response[0].name}}-2"
description: "{{ nbar_app_by_id.ise_response[0].description|int + 1 }}"
networkIdentities:
- ports: "{{ nbar_app_by_id.ise_response[0].networkIdentities[0].ports|int +2 }}"
protocol: "{{ nbar_app_by_id.ise_response[0].networkIdentities[0].protocol }}"
- ports: "{{ nbar_app_by_id.ise_response[0].networkIdentities[1].ports|int +2 }}"
protocol: "{{ nbar_app_by_id.ise_response[0].networkIdentities[1].protocol }}"
when:
- nbar_app_by_id is defined
- nbar_app_by_id.ise_response is defined
- nbar_app_by_id.ise_response | length == 1
register: nbar_app_manage
- name: Print Update Nbar
ansible.builtin.debug:
var: nbar_app_manage
- name: Delete Nbar App duplicate
cisco.ise.trustsec_nbar_app:
<<: *ise_login
state: absent
name: "{{ nbar_app_by_id.ise_response[0].name}}-2"
description: "{{ nbar_app_by_id.ise_response[0].description|int + 1 }}"
networkIdentities:
- ports: "{{ nbar_app_by_id.ise_response[0].networkIdentities[0].ports|int +1 }}"
protocol: "{{ nbar_app_by_id.ise_response[0].networkIdentities[0].protocol }}"
- ports: "{{ nbar_app_by_id.ise_response[0].networkIdentities[1].ports|int +1 }}"
protocol: "{{ nbar_app_by_id.ise_response[0].networkIdentities[1].protocol }}"
when:
- nbar_app_by_id is defined
- nbar_app_by_id.ise_response is defined
- nbar_app_by_id.ise_response | length == 1
register: nbar_app_manage
- name: "Print Delete Nbar"
ansible.builtin.debug:
var: nbar_app_manage