From 32d6a693de99021d2cd44fb4235e929caf7b4a6d Mon Sep 17 00:00:00 2001
From: Christian Breunig <christian@breunig.cc>
Date: Mon, 1 Apr 2024 20:27:24 +0200
Subject: xml: T5738: extend VRF building blocks with common constraint
 definition

---
 interface-definitions/include/constraint/vrf.xml.i | 6 ++++++
 interface-definitions/include/interface/vrf.xml.i  | 1 +
 interface-definitions/vrf.xml.in                   | 5 +----
 3 files changed, 8 insertions(+), 4 deletions(-)
 create mode 100644 interface-definitions/include/constraint/vrf.xml.i

diff --git a/interface-definitions/include/constraint/vrf.xml.i b/interface-definitions/include/constraint/vrf.xml.i
new file mode 100644
index 000000000..a1922bb6d
--- /dev/null
+++ b/interface-definitions/include/constraint/vrf.xml.i
@@ -0,0 +1,6 @@
+<!-- include start from constraint/vrf.xml.i -->
+<constraint>
+  <validator name="vrf-name"/>
+</constraint>
+<constraintErrorMessage>VRF instance name must be 15 characters or less and can not\nbe named as regular network interfaces.\nA name must starts from a letter.\n</constraintErrorMessage>
+<!-- include end -->
diff --git a/interface-definitions/include/interface/vrf.xml.i b/interface-definitions/include/interface/vrf.xml.i
index 8605f56e8..ef0058f86 100644
--- a/interface-definitions/include/interface/vrf.xml.i
+++ b/interface-definitions/include/interface/vrf.xml.i
@@ -9,6 +9,7 @@
     <completionHelp>
       <path>vrf name</path>
     </completionHelp>
+    #include <include/constraint/vrf.xml.i>
   </properties>
 </leafNode>
 <!-- include end -->
diff --git a/interface-definitions/vrf.xml.in b/interface-definitions/vrf.xml.in
index 25f26d0cc..94ed96e4b 100644
--- a/interface-definitions/vrf.xml.in
+++ b/interface-definitions/vrf.xml.in
@@ -16,10 +16,7 @@
       <tagNode name="name">
         <properties>
           <help>Virtual Routing and Forwarding instance</help>
-          <constraint>
-            <validator name="vrf-name"/>
-          </constraint>
-          <constraintErrorMessage>VRF instance name must be 15 characters or less and can not\nbe named as regular network interfaces.\nA name must starts from a letter.\n</constraintErrorMessage>
+          #include <include/constraint/vrf.xml.i>
           <valueHelp>
             <format>txt</format>
             <description>VRF instance name</description>
-- 
cgit v1.2.3