Add k8s ingress and metallb features

- enable ingress-nginx and metallb features
  for the configurations:
  - cookiecutter-context-k8s-sl
  - cookied-cicd-k8s-genie
  - cookied-bm-k8s-contrail

- add 'external' network on cfg, ctl, cmp and prx nodes

- enable DHCP in 'external' network for auto configuration
  of the external interfaces

- get the status of the ingress and metallb features from
  the salt pillar instead of environment variables to
  run the tests on the existing deployments

Related-Task: PROD-22687
Closes-Bug: PROD-24580

Change-Id: Ifee60814718abc604008af5e2058a6db1bf92d6d
diff --git a/tcp_tests/templates/cookied-cicd-k8s-calico-sl/underlay.yaml b/tcp_tests/templates/cookied-cicd-k8s-calico-sl/underlay.yaml
index 6f69b81..132a382 100644
--- a/tcp_tests/templates/cookied-cicd-k8s-calico-sl/underlay.yaml
+++ b/tcp_tests/templates/cookied-cicd-k8s-calico-sl/underlay.yaml
@@ -135,6 +135,13 @@
             default_{{ HOSTNAME_CID01 }}: +91
             default_{{ HOSTNAME_CID02 }}: +92
             default_{{ HOSTNAME_CID03 }}: +93
+            default_{{ HOSTNAME_CTL01 }}: +11
+            default_{{ HOSTNAME_CTL02 }}: +12
+            default_{{ HOSTNAME_CTL03 }}: +13
+            default_{{ HOSTNAME_CMP01 }}: +101
+            default_{{ HOSTNAME_CMP02 }}: +102
+            default_{{ HOSTNAME_CMP03 }}: +103
+            default_{{ HOSTNAME_CMP04 }}: +104
             default_{{ HOSTNAME_PRX01 }}: +221
             default_{{ HOSTNAME_PRX02 }}: +222
 
@@ -176,7 +183,7 @@
 
           external:
             address_pool: external-pool01
-            dhcp: false
+            dhcp: true
             forward:
               mode: nat
 
@@ -212,20 +219,26 @@
                   bus: ide
                   # source_image: !os_env CFG01_CONFIG_PATH # no source image required.
                                                             # it will be uploaded after config drive generation
-              interfaces:
+              interfaces: &all_interfaces
                 - label: ens3
                   l2_network_device: admin
                   interface_model: *interface_model
                 - label: ens4
                   l2_network_device: private
                   interface_model: *interface_model
-              network_config:
+                - label: ens5
+                  l2_network_device: external
+                  interface_model: *interface_model
+              network_config: &all_network_config
                 ens3:
                   networks:
                     - admin
                 ens4:
                   networks:
                     - private
+                ens5:
+                  networks:
+                    - external
 
           - name: {{ HOSTNAME_KVM01 }}
             role: salt_minion
@@ -418,8 +431,8 @@
                   cloudinit_meta_data: *cloudinit_meta_data
                   cloudinit_user_data: *cloudinit_user_data_1604
 
-              interfaces: *interfaces
-              network_config: *network_config
+              interfaces: *all_interfaces
+              network_config: *all_network_config
 
           - name: {{ HOSTNAME_CTL02 }}
             role: salt_minion
@@ -444,8 +457,8 @@
                   cloudinit_meta_data: *cloudinit_meta_data
                   cloudinit_user_data: *cloudinit_user_data_1604
 
-              interfaces: *interfaces
-              network_config: *network_config
+              interfaces: *all_interfaces
+              network_config: *all_network_config
 
           - name: {{ HOSTNAME_CTL03 }}
             role: salt_minion
@@ -470,8 +483,8 @@
                   cloudinit_meta_data: *cloudinit_meta_data
                   cloudinit_user_data: *cloudinit_user_data_1604
 
-              interfaces: *interfaces
-              network_config: *network_config
+              interfaces: *all_interfaces
+              network_config: *all_network_config
 
           - name: {{ HOSTNAME_CMP01 }}
             role: salt_minion
@@ -496,8 +509,8 @@
                   cloudinit_meta_data: *cloudinit_meta_data
                   cloudinit_user_data: *cloudinit_user_data_1604
 
-              interfaces: *interfaces
-              network_config: *network_config
+              interfaces: *all_interfaces
+              network_config: *all_network_config
 
           - name: {{ HOSTNAME_CMP02 }}
             role: salt_minion
@@ -522,8 +535,8 @@
                   cloudinit_meta_data: *cloudinit_meta_data
                   cloudinit_user_data: *cloudinit_user_data_1604
 
-              interfaces: *interfaces
-              network_config: *network_config
+              interfaces: *all_interfaces
+              network_config: *all_network_config
 
           - name: {{ HOSTNAME_CMP03 }}
             role: salt_minion
@@ -548,8 +561,8 @@
                   cloudinit_meta_data: *cloudinit_meta_data
                   cloudinit_user_data: *cloudinit_user_data_1604
 
-              interfaces: *interfaces
-              network_config: *network_config
+              interfaces: *all_interfaces
+              network_config: *all_network_config
 
           - name: {{ HOSTNAME_CMP04 }}
             role: salt_minion
@@ -574,8 +587,8 @@
                   cloudinit_meta_data: *cloudinit_meta_data
                   cloudinit_user_data: *cloudinit_user_data_1604
 
-              interfaces: *interfaces
-              network_config: *network_config
+              interfaces: *all_interfaces
+              network_config: *all_network_config
 
           - name: {{ HOSTNAME_MON01 }}
             role: salt_minion
@@ -834,8 +847,8 @@
                   cloudinit_meta_data: *cloudinit_meta_data
                   cloudinit_user_data: *cloudinit_user_data_1604_swp
 
-              interfaces: *interfaces
-              network_config: *network_config
+              interfaces: *all_interfaces
+              network_config: *all_network_config
 
           - name: {{ HOSTNAME_PRX02 }}
             role: salt_minion
@@ -860,5 +873,5 @@
                   cloudinit_meta_data: *cloudinit_meta_data
                   cloudinit_user_data: *cloudinit_user_data_1604_swp
 
-              interfaces: *interfaces
-              network_config: *network_config
+              interfaces: *all_interfaces
+              network_config: *all_network_config