|
6 | 6 | # - else
|
7 | 7 | # skip
|
8 | 8 |
|
| 9 | +- ansible.builtin.include_role: |
| 10 | + name: ndfc_vpc_config_get |
| 11 | + |
| 12 | +- ansible.builtin.include_role: |
| 13 | + name: ndfc_device_config_get |
| 14 | + vars: |
| 15 | + device_name: "{{ vpc_config.peer_1 }}" |
| 16 | + |
| 17 | +# TODO: Use ndfc_device_info_get here (see ndfc_vpc_interface_config_merged) |
9 | 18 | # set_fact for p1_serial, p1_vpc, p1_db_id
|
10 |
| -- name: main query FABRIC {{ fabric_name }} VPC {{ vpc_name }} vpc_peer_1 {{ ip }} |
| 19 | +- name: main query FABRIC {{ device_config.switch_fabric }} VPC {{ vpc_name }} vpc_peer_1 {{ device_config.ip }} |
11 | 20 | cisco.dcnm.dcnm_inventory:
|
12 |
| - fabric: "{{ fabric_name }}" |
| 21 | + fabric: "{{ device_config.switch_fabric }}" |
13 | 22 | state: query
|
14 | 23 | config:
|
15 |
| - - seed_ip: "{{ ip }}" |
| 24 | + - seed_ip: "{{ device_config.ip }}" |
16 | 25 | register: mr1
|
17 | 26 | vars:
|
18 |
| - mq1: "[?fabric == '{{ fabric_name }}'] | [?vpc_name == '{{ vpc_name }}'].peer_1_ip | [0]" |
19 |
| - ip: "{{ vpc_peers | json_query(mq1)}}" |
| 27 | + ansible_connection: httpapi |
| 28 | + |
20 | 29 | - name: main set_fact p1_serial, p1_vpc, p1_db_id
|
21 | 30 | set_fact:
|
22 | 31 | p1_serial: "{{ mr1.response | json_query(mq2) }}"
|
|
27 | 36 | mq3: "[0].isVpcConfigured"
|
28 | 37 | mq4: "[0].switchDbID"
|
29 | 38 |
|
| 39 | +- ansible.builtin.include_role: |
| 40 | + name: ndfc_device_config_get |
| 41 | + vars: |
| 42 | + device_name: "{{ vpc_config.peer_2 }}" |
| 43 | + |
| 44 | +# TODO: Use ndfc_device_info_get here (see ndfc_vpc_interface_config_merged) |
30 | 45 | # set_fact for p2_serial, p2_vpc, p2_db_id
|
31 |
| -- name: main query FABRIC {{ fabric_name }} VPC {{ vpc_name }} vpc_peer_2 |
| 46 | +- name: main query FABRIC {{ device_config.switch_fabric }} VPC {{ vpc_name }} vpc_peer_2 |
32 | 47 | cisco.dcnm.dcnm_inventory:
|
33 |
| - fabric: "{{ fabric_name }}" |
| 48 | + fabric: "{{ device_config.switch_fabric }}" |
34 | 49 | state: query
|
35 | 50 | config:
|
36 |
| - - seed_ip: "{{ ip }}" |
| 51 | + - seed_ip: "{{ device_config.ip }}" |
37 | 52 | register: mr2
|
38 | 53 | vars:
|
39 |
| - mq5: "[?fabric == '{{ fabric_name }}'] | [?vpc_name == '{{ vpc_name }}'].peer_2_ip | [0]" |
40 |
| - ip: "{{ vpc_peers | json_query(mq5)}}" |
| 54 | + ansible_connection: httpapi |
| 55 | + # mq5: "[?fabric == '{{ device_config.switch_fabric }}'] | [?vpc_name == '{{ vpc_name }}'].peer_2_ip | [0]" |
| 56 | + # ip: "{{ vpc_peers | json_query(mq5)}}" |
| 57 | + |
41 | 58 | - name: main set_fact p2_serial, p2_vpc, p2_db_id
|
42 | 59 | set_fact:
|
43 | 60 | p2_serial: "{{ mr2.response | json_query(mq6) }}"
|
|
49 | 66 | mq8: "[0].switchDbID"
|
50 | 67 |
|
51 | 68 | # Conditionally create vpc peering
|
52 |
| -- name: main REST create VPC Peers fabric_name {{ fabric_name }} vpc_name {{ vpc_name }} configured {{ p1_vpc }}/{{ p2_vpc }} serial_number {{ p1_serial }}/{{ p2_serial }}" |
| 69 | +- name: main REST create VPC Peers fabric_name {{ device_config.switch_fabric }} vpc_name {{ vpc_name }} configured {{ p1_vpc }}/{{ p2_vpc }} serial_number {{ p1_serial }}/{{ p2_serial }}" |
53 | 70 | cisco.dcnm.dcnm_rest:
|
54 | 71 | method: POST
|
55 | 72 | path: "/appcenter/cisco/ndfc/api/v1/lan-fabric/rest/vpcpair"
|
56 | 73 | json_data: "{{ vars_dict | to_json }}"
|
57 | 74 | vars:
|
| 75 | + ansible_connection: httpapi |
58 | 76 | vars_dict:
|
59 | 77 | peerOneId: "{{ p1_serial }}"
|
60 | 78 | peerTwoId: "{{ p2_serial }}"
|
|
0 commit comments