From 5e99a92addaa0991825045d57ac020c22010dad4 Mon Sep 17 00:00:00 2001
From: Aleksandr Kurbatov <ak@geant.org>
Date: Wed, 23 Oct 2024 18:37:40 +0100
Subject: [PATCH] add support for validation into role

---
 .../gap_ansible/roles/edge_port/tasks/deploy.yaml | 15 ++++++++++++++-
 1 file changed, 14 insertions(+), 1 deletion(-)

diff --git a/geant/gap_ansible/roles/edge_port/tasks/deploy.yaml b/geant/gap_ansible/roles/edge_port/tasks/deploy.yaml
index df45f818..f6e3ee63 100644
--- a/geant/gap_ansible/roles/edge_port/tasks/deploy.yaml
+++ b/geant/gap_ansible/roles/edge_port/tasks/deploy.yaml
@@ -1,3 +1,4 @@
+---
 - name: Perform "{{ verb }}" Edge port on  "{{ inventory_hostname }}" [CHECK ONLY][NOKIA]
   when: >-
       dry_run | ansible.builtin.bool
@@ -7,10 +8,21 @@
     content: "{{ lookup('ansible.builtin.template', '{{ router.vendor }}/edge_port_{{ verb }}.j2') }}"
     commit: true
     validate: true
+    config_mode: private
   diff: true
   register: output
   check_mode: true
 
+
+- name: Fail if there is any diff
+  ansible.builtin.fail:
+    msg: Base config drift detected!!!
+  when: >
+    output.changed | ansible.builtin.bool
+    and
+    is_verification_workflow | ansible.builtin.bool
+
+
 - name: Perform "{{ verb }}" Edge port on  "{{ inventory_hostname }}" [FOR REAL][NOKIA]
   when: >-
       not (dry_run | ansible.builtin.bool)
@@ -19,7 +31,8 @@
     default_operation: merge
     content: "{{ lookup('ansible.builtin.template', '{{ router.vendor }}/edge_port_{{ verb }}.j2') }}"
     commit: true
-    validate: true
+    commit_comment: "{{ commit_comment }}"
+    config_mode: private
   diff: true
   register: output
   check_mode: false
-- 
GitLab