From dc981997d37990cfc0ad5dceccf50850acd17f55 Mon Sep 17 00:00:00 2001
From: Aleksandr Kurbatov <ak@geant.org>
Date: Mon, 2 Dec 2024 18:49:12 +0000
Subject: [PATCH 1/5] P to PE: PRE and POST checks
---
.../routers/nokia/checks_single_command.j2 | 1 +
.../promote_p_to_pe/tasks/command_checks.yaml | 10 ++++++++++
.../roles/promote_p_to_pe/tasks/main.yml | 18 ++++++++++++++----
.../roles/promote_p_to_pe/vars/main.yml | 14 ++++++++++++++
4 files changed, 39 insertions(+), 4 deletions(-)
create mode 120000 geant/gap_ansible/roles/bc_templates/routers/nokia/checks_single_command.j2
create mode 100644 geant/gap_ansible/roles/promote_p_to_pe/tasks/command_checks.yaml
diff --git a/geant/gap_ansible/roles/bc_templates/routers/nokia/checks_single_command.j2 b/geant/gap_ansible/roles/bc_templates/routers/nokia/checks_single_command.j2
new file mode 120000
index 00000000..86b25070
--- /dev/null
+++ b/geant/gap_ansible/roles/bc_templates/routers/nokia/checks_single_command.j2
@@ -0,0 +1 @@
+../../../base_config_checks/templates/base_config_single_command.j2
\ No newline at end of file
diff --git a/geant/gap_ansible/roles/promote_p_to_pe/tasks/command_checks.yaml b/geant/gap_ansible/roles/promote_p_to_pe/tasks/command_checks.yaml
new file mode 100644
index 00000000..4d95f8c4
--- /dev/null
+++ b/geant/gap_ansible/roles/promote_p_to_pe/tasks/command_checks.yaml
@@ -0,0 +1,10 @@
+- name: "Execute {{ item.command }}"
+ ansible.netcommon.netconf_rpc:
+ rpc: action
+ xmlns: "urn:ietf:params:xml:ns:yang:1"
+ content: "{{ lookup('ansible.builtin.template', 'routers/{{ subscription.router.vendor }}/checks_single_command.j2') }}"
+ display: json
+ register: out
+- name: "Results of {{ item.command }}"
+ ansible.builtin.debug:
+ msg: "{{out.output['rpc-reply']['nokiaoper:results']['nokiaoper:md-cli-output-block'].split('\n')}}"
diff --git a/geant/gap_ansible/roles/promote_p_to_pe/tasks/main.yml b/geant/gap_ansible/roles/promote_p_to_pe/tasks/main.yml
index d7a7208a..9df015e2 100644
--- a/geant/gap_ansible/roles/promote_p_to_pe/tasks/main.yml
+++ b/geant/gap_ansible/roles/promote_p_to_pe/tasks/main.yml
@@ -43,10 +43,10 @@
- name: Print the ID
ansible.builtin.debug:
msg: "{{ opid }}"
-
-- name: Include ISIS overload tasks
- when: verb in ['set_isis_overload', 'remove_isis_overload']
- ansible.builtin.include_tasks: configure_isis_overload.yaml
+#
+# - name: Include ISIS overload tasks
+# when: verb in ['set_isis_overload', 'remove_isis_overload']
+# ansible.builtin.include_tasks: configure_isis_overload.yaml
- name: Include templates compilation
when: verb in [ 'deploy_pe_base_config', 'update_sdp_mesh' , 'deploy_routing_instances', 'delete_default_routes' ]
@@ -56,6 +56,16 @@
when: verb in [ 'deploy_pe_base_config', 'update_sdp_mesh', 'deploy_routing_instances', 'delete_default_routes' ]
ansible.builtin.include_tasks: deploy.yaml
+- name: PRE checks
+ when: verb == "post_checks"
+ ansible.builtin.include_tasks: check_commands.yaml
+ loop: "{{ pre_check_commands }}"
+
+- name: POST checks
+ when: verb == "post_checks"
+ ansible.builtin.include_tasks: check_commands.yaml
+ loop: "{{ post_check_commands }}"
+
- name: Check VPRNs
when: verb == "check_base_ris"
loop: "{{ pe_vprns }}"
diff --git a/geant/gap_ansible/roles/promote_p_to_pe/vars/main.yml b/geant/gap_ansible/roles/promote_p_to_pe/vars/main.yml
index 21a8dbcc..dcecb7e8 100644
--- a/geant/gap_ansible/roles/promote_p_to_pe/vars/main.yml
+++ b/geant/gap_ansible/roles/promote_p_to_pe/vars/main.yml
@@ -16,3 +16,17 @@ lo_ipv4_address: "{{ subscription.router.router_lo_ipv4_address }}"
lo_ipv6_address: "{{ subscription.router.router_lo_ipv6_address }}"
router_tier: "{{ subscription.router.router_site.site_tier }}"
router_role: "{{ subscription.router.router_role }}"
+
+post_check_commands:
+ - command: show router * route-table summary
+ description: Route summary
+ - command: show router ldp session
+ description: Check ldp
+ - command: show service sdp
+ description: SDP summary
+ - command: show router origin-validation rpki-session
+ description: Show RPKI sessions
+
+pre_check_commands:
+ - command: show router * route-table summary
+ description: Route summary
--
GitLab
From 64abb6c1d6c320eaffab97a0dc27281213b5c741 Mon Sep 17 00:00:00 2001
From: Aleksandr Kurbatov <ak@geant.org>
Date: Mon, 2 Dec 2024 18:52:40 +0000
Subject: [PATCH 2/5] Taks file rename
---
geant/gap_ansible/roles/promote_p_to_pe/tasks/main.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/geant/gap_ansible/roles/promote_p_to_pe/tasks/main.yml b/geant/gap_ansible/roles/promote_p_to_pe/tasks/main.yml
index 9df015e2..16eabc11 100644
--- a/geant/gap_ansible/roles/promote_p_to_pe/tasks/main.yml
+++ b/geant/gap_ansible/roles/promote_p_to_pe/tasks/main.yml
@@ -58,12 +58,12 @@
- name: PRE checks
when: verb == "post_checks"
- ansible.builtin.include_tasks: check_commands.yaml
+ ansible.builtin.include_tasks: command_checks.yaml
loop: "{{ pre_check_commands }}"
- name: POST checks
when: verb == "post_checks"
- ansible.builtin.include_tasks: check_commands.yaml
+ ansible.builtin.include_tasks: command_checks.yaml
loop: "{{ post_check_commands }}"
- name: Check VPRNs
--
GitLab
From e202b2e2b513d08709075aabbac2fd9b9fcb0011 Mon Sep 17 00:00:00 2001
From: Aleksandr Kurbatov <ak@geant.org>
Date: Tue, 3 Dec 2024 09:42:41 +0000
Subject: [PATCH 3/5] Add pre_ and post_checks verbs into list of verbs
---
geant/gap_ansible/roles/promote_p_to_pe/vars/main.yml | 2 ++
1 file changed, 2 insertions(+)
diff --git a/geant/gap_ansible/roles/promote_p_to_pe/vars/main.yml b/geant/gap_ansible/roles/promote_p_to_pe/vars/main.yml
index dcecb7e8..e56bd463 100644
--- a/geant/gap_ansible/roles/promote_p_to_pe/vars/main.yml
+++ b/geant/gap_ansible/roles/promote_p_to_pe/vars/main.yml
@@ -11,6 +11,8 @@ verbs:
- deploy_routing_instances # Deploy standard PE VPRNs
- update_sdp_mesh # Upadate SDP mesh on other Nokia PE routers with this promoted router
- check_base_ris # Check BGP summary for base VPRNs
+ - pre_checks
+ - post_checks
lo_ipv4_address: "{{ subscription.router.router_lo_ipv4_address }}"
lo_ipv6_address: "{{ subscription.router.router_lo_ipv6_address }}"
--
GitLab
From 707ddc2ec549813310157e71477ef2560731f1c2 Mon Sep 17 00:00:00 2001
From: Aleksandr Kurbatov <ak@geant.org>
Date: Tue, 3 Dec 2024 17:14:00 +0000
Subject: [PATCH 4/5] update p-to-pe check command list
---
geant/gap_ansible/roles/promote_p_to_pe/vars/main.yml | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/geant/gap_ansible/roles/promote_p_to_pe/vars/main.yml b/geant/gap_ansible/roles/promote_p_to_pe/vars/main.yml
index e56bd463..f247eb32 100644
--- a/geant/gap_ansible/roles/promote_p_to_pe/vars/main.yml
+++ b/geant/gap_ansible/roles/promote_p_to_pe/vars/main.yml
@@ -31,4 +31,6 @@ post_check_commands:
pre_check_commands:
- command: show router * route-table summary
- description: Route summary
+ - command: show router route-table summary | match ISIS
+ - command: show router isis interface | match '^[a-z]'
+ - command: show router isis adjacency | match '^[a-z]'
--
GitLab
From d096d0f760bb83ab06be2e855ff73d714a5be91b Mon Sep 17 00:00:00 2001
From: Aleksandr Kurbatov <ak@geant.org>
Date: Tue, 3 Dec 2024 18:09:32 +0000
Subject: [PATCH 5/5] P-to-PE - updated list of pre and post check commands
According to the NE Test Plan.
---
.../roles/promote_p_to_pe/vars/main.yml | 45 +++++++++++++++----
1 file changed, 37 insertions(+), 8 deletions(-)
diff --git a/geant/gap_ansible/roles/promote_p_to_pe/vars/main.yml b/geant/gap_ansible/roles/promote_p_to_pe/vars/main.yml
index f247eb32..b6ad21f8 100644
--- a/geant/gap_ansible/roles/promote_p_to_pe/vars/main.yml
+++ b/geant/gap_ansible/roles/promote_p_to_pe/vars/main.yml
@@ -20,17 +20,46 @@ router_tier: "{{ subscription.router.router_site.site_tier }}"
router_role: "{{ subscription.router.router_role }}"
post_check_commands:
- - command: show router * route-table summary
- description: Route summary
- - command: show router ldp session
- description: Check ldp
+ - command: show router route-table summary | match ISIS
+ - command: show router isis interface | match '^[a-z]'
+ - command: show router isis adjacency | match '^[a-z]'
+ - command: show router mpls interface | match '^[a-z]'
+ - command: show router rsvp interface | match '^[a-z]'
+ - command: show router rsvp neighbor | match '^[1-9]'
+ - command: show router rsvp session | match "Up"
+ - command: show router pim interface | match "Up"
+ - command: show router pim neighbor | match '^[a-z|A-Z]'
+ - command: show router pim status | match '(State|RPF Table)'
+ - command: show router pim group | match '^[1-9]' | no-more
+ - command: show router route-table mcast-ipv4 summary
+ - command: show router route-table mcast-ipv6 summary
+ - command: show router bgp summary group "iGEANT"
+ - command: show router bgp summary group "iGEANT6"
+ - command: show router bgp summary group "iGEANT-P-ONLY"
+ - command: show router bgp summary group "iGEANT6-P-ONLY"
- command: show service sdp
- description: SDP summary
- - command: show router origin-validation rpki-session
- description: Show RPKI sessions
+ - command: show router route-table 0.0.0.0/0
+ - command: show router route-table ::/0
+ - command: show router Base route-table summary
+ - command: show router 21320 route-table summary
+ - command: show cflowd status | match '(Timeout|Retrans)'
+ - command: show cflowd collector | match '^[0-9]'
+ - command: show router Base origin-validation rpki-session detail
+ - command: show router Base bgp routes 5.150.67.0/24 detail | match '(Network|Final|Community|Attri)'
+ - command: show router Base bgp routes community ext:4300:0 | count
+ - command: show router Base bgp routes community ext:4300:1 | count
pre_check_commands:
- - command: show router * route-table summary
- command: show router route-table summary | match ISIS
- command: show router isis interface | match '^[a-z]'
- command: show router isis adjacency | match '^[a-z]'
+ - command: show router mpls interface | match '^[a-z]'
+ - command: show router rsvp interface | match '^[a-z]'
+ - command: show router rsvp neighbor | match '^[1-9]'
+ - command: show router rsvp session | match "Up"
+ - command: show router pim interface | match "Up"
+ - command: show router pim neighbor | match '^[a-z|A-Z]'
+ - command: show router pim status | match '(State|RPF Table)'
+ - command: show router pim group | match '^[1-9]' | no-more
+ - command: show router route-table mcast-ipv4 summary
+ - command: show router route-table mcast-ipv6 summary
--
GitLab