Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
ansible / cisco / dnac / playbooks / discovery.yml
Size: Mime:
- hosts: dnac_servers
  vars_files:
    - credentials.yml
  gather_facts: no
  tasks:

  - name: Find discovery
    cisco.dnac.discovery_range_info:
      dnac_host: "{{dnac_host}}"
      dnac_username: "{{dnac_username}}"
      dnac_password: "{{dnac_password}}"
      dnac_verify: "{{dnac_verify}}"
      dnac_debug: "{{dnac_debug}}"
      startIndex: 1
      recordsToReturn: 500
    register: discovery_range_result

  - name: Set fact of filtered discoveries
    set_fact:
      discoveries_filtered: "{{discovery_range_result.dnac_response.response | selectattr('name', 'equalto', 'start_discovery_test2')}}"
    when:
      - discovery_range_result is defined
      - discovery_range_result.dnac_response is defined
      - discovery_range_result.dnac_response.response is defined
    register: discovery_filtered_results

  - name: Set fact of filtered discovery
    set_fact:
      discovery_filtered: "{{discovery_filtered_results.ansible_facts.discoveries_filtered|first}}"
    when:
      - discovery_filtered_results is defined
      - discovery_filtered_results.ansible_facts is defined
      - discovery_filtered_results.ansible_facts.discoveries_filtered is defined
      - discovery_filtered_results.ansible_facts.discoveries_filtered|length > 0
    register: discovery_filtered_result

  - name: Set fact of filtered discovery id
    set_fact:
      discovery_filtered_id: "{{discovery_filtered_result.ansible_facts.discovery_filtered.id}}"
    when:
      - discovery_filtered_result is defined
      - discovery_filtered_result.ansible_facts is defined
      - discovery_filtered_result.ansible_facts.discovery_filtered is defined
    register: discovery_filtered_result_id

  - name: Create a discovery
    cisco.dnac.discovery:
      dnac_host: "{{dnac_host}}"
      dnac_username: "{{dnac_username}}"
      dnac_password: "{{dnac_password}}"
      dnac_verify: "{{dnac_verify}}"
      dnac_debug: "{{dnac_debug}}"
      validate_response_schema: False
      state: present
      cdpLevel: 16
      discoveryType: "CDP"
      globalCredentialIdList: ["90acbab8-03d5-4726-9c19-e1e51a40b3cd", "f979d842-f6fd-456a-8137-2cb5113cd2e8"]
      ipAddressList: "10.10.22.22"
      name: "start_discovery_test2"
      protocolOrder: "ssh"
      # id: "67"
      # enablePasswordList: [""]
      # userNameList: [""]
      # passwordList: [""]
      # ipFilterList: [""]
      # httpReadCredential:
      #   port: 0
      #   secure: false
      # deviceIds: " "
      # discoveryCondition: "In Progress"
      # discoveryStatus: "Active"
      # isAutoCdp: true
      # preferredMgmtIPMethod: "None"
      # retry: 3
      # timeout: 5
      # httpWriteCredential:
      #   port: 0
      #   secure: false
    register: discovery_result
    when:
      - discovery_filtered_result_id is not defined

  - name: Update a discovery
    cisco.dnac.discovery:
      dnac_host: "{{dnac_host}}"
      dnac_username: "{{dnac_username}}"
      dnac_password: "{{dnac_password}}"
      dnac_verify: "{{dnac_verify}}"
      dnac_debug: "{{dnac_debug}}"
      validate_response_schema: False
      state: present
      cdpLevel: 16
      discoveryType: "CDP"
      globalCredentialIdList: ["90acbab8-03d5-4726-9c19-e1e51a40b3cd", "f979d842-f6fd-456a-8137-2cb5113cd2e8"]
      ipAddressList: "10.10.22.22"
      name: "start_discovery_test2"
      protocolOrder: "ssh"
      id: "{{discovery_filtered_result_id.ansible_facts.discovery_filtered_id}}"
      # enablePasswordList: [""]
      # userNameList: [""]
      # passwordList: [""]
      # ipFilterList: [""]
      # httpReadCredential:
      #   port: 0
      #   secure: false
      # deviceIds: " "
      # discoveryCondition: "In Progress"
      # discoveryStatus: "Active"
      # isAutoCdp: true
      # preferredMgmtIPMethod: "None"
      # retry: 3
      # timeout: 5
      # httpWriteCredential:
      #   port: 0
      #   secure: false
    register: discovery_result
    when:
      - discovery_filtered_result_id is defined

  - name: Show discovery result
    debug:
      msg: "{{ discovery_result }}"
    when: 
      - discovery_result is defined