vFW CNF updates after integration tests
[demo.git] / heat / vFW_CNF_CDS / automation / config.py
index f5d39c1..5732d4b 100755 (executable)
@@ -1,5 +1,5 @@
 # ============LICENSE_START=======================================================
-# Copyright (C) 2020 Orange
+# Copyright (C) 2021 Orange
 # ================================================================================
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
 # ============LICENSE_END=========================================================
 
 class Config:
+    SCENARIO = 1
+    # 1 - default configuration values like set below
+    # 2 - extra ssh service that comes from the profile
+    # 3 - extra ssh service that comes from config + verification of the CNF status
+    # change requires new onboarding
+
     #### REGION DETAILS ####
-    NATIVE = False
     COMPLEX_ID = "complex"
     CLOUD_OWNER = "k8sCloudOwner"
-    CLOUD_REGION = "k8s-region-1"
+    CLOUD_REGION = "kud-1"
     AVAILABILITY_ZONE_NAME = "k8s-availability-zone"
     HYPERVISOR_TYPE = "k8s"
-    TENANT_NAME = "k8s-tenant-1"
+    TENANT_NAME = "kud-1"
     K8S_NAMESPACE = "vfirewall"
+    K8S_VERSION = "1.18.9"
     CUSTOMER_RESOURCE_DEFINITIONS = []
 # Uncomment, if you want to run on non KUD k8s cluster
 #    CUSTOMER_RESOURCE_DEFINITIONS = ["crds/crd1",
 #                                     "crds/crd2"]
 
     CLUSTER_KUBECONFIG_PATH = "artifacts/cluster_kubeconfig"
-    ONAP_KUBECONFIG_PATH = "artifacts/onap_kubeconfig"
 
     #### SERVICE DETAILS ####
+    NATIVE = True
+    SKIP_POST_INSTANTIATION = True
     GLOBAL_CUSTOMER_ID = "customer_cnf"
     VSPFILE = "vsp/vfw_k8s_demo.zip"
     if NATIVE:
         VSPFILE = "vsp/native_vfw_k8s_demo.zip"
+
+    PROFILE_NAME = "vfw-cnf-cds-base-profile"
+    PROFILE_SOURCE = PROFILE_NAME
+    RELEASE_NAME = "vfw-1"
+
     VENDOR = "vendor_cnf"
-    SERVICENAME = "vfw_k8s_demo_CNF"
+    SERVICENAME = "vfw_k8s_demo_CNF_KUD" + "_" + str(SCENARIO)
     VSPNAME = "VSP_" + SERVICENAME
     VFNAME = "VF_" + SERVICENAME
-    SERVICE_INSTANCE_NAME = "INSTANCE_" + SERVICENAME
+    SERVICE_INSTANCE_NAME = "INSTANCE_" + SERVICENAME + "_1"
     SDNC_ARTIFACT_NAME = "vnf"
+
+    # INSERT PARAMS FOR VNF HERE AS "name" : "value" PAIR
+    VNF_PARAM_LIST = {
+        "k8s-rb-profile-namespace": K8S_NAMESPACE,
+        "k8s-rb-profile-k8s-version": K8S_VERSION
+    }
+
     VF_MODULE_PREFIX = ""
     if NATIVE:
         VF_MODULE_PREFIX = "helm_"
 
-    VF_MODULE_LIST = {VF_MODULE_PREFIX + "base_template":
-                          {"name": VF_MODULE_PREFIX + "base_template",
-                           "k8s-rb-profile-name": "vfw-cnf-cds-base-profile",
-                           "k8s-rb-profile-namespace": K8S_NAMESPACE},
-                      VF_MODULE_PREFIX + "vfw":
-                          {"name": VF_MODULE_PREFIX + "vfw",
-                           "k8s-rb-profile-name": "vfw-cnf-cds-base-profile",
-                           "k8s-rb-profile-namespace": K8S_NAMESPACE},
-                      VF_MODULE_PREFIX + "vpkg":
-                          {"name": VF_MODULE_PREFIX + "vpkg",
-                           "k8s-rb-profile-name": "vfw-cnf-cds-base-profile",
-                           "k8s-rb-profile-namespace": K8S_NAMESPACE},
-                      VF_MODULE_PREFIX + "vsn":
-                          {"name": VF_MODULE_PREFIX + "vsn",
-                           "k8s-rb-profile-name": "vfw-cnf-cds-base-profile",
-                           "k8s-rb-profile-namespace": K8S_NAMESPACE}}
+    VF_MODULE_PARAM_LIST = {
+        VF_MODULE_PREFIX + "base_template": {
+            "k8s-rb-profile-name": PROFILE_NAME,
+            "k8s-rb-profile-source": PROFILE_SOURCE,
+            "k8s-rb-instance-release-name": RELEASE_NAME + "-base"
+        },
+        VF_MODULE_PREFIX + "vfw": {
+            "k8s-rb-profile-name": PROFILE_NAME,
+            "k8s-rb-profile-source": PROFILE_SOURCE,
+            "k8s-rb-instance-release-name": RELEASE_NAME + "-vfw"
+        },
+        VF_MODULE_PREFIX + "vpkg": {
+            "k8s-rb-profile-name": PROFILE_NAME,
+            "k8s-rb-profile-source": PROFILE_SOURCE,
+            "k8s-rb-instance-release-name": RELEASE_NAME + "-vpkg"
+        },
+        VF_MODULE_PREFIX + "vsn": {
+            "k8s-rb-profile-name": PROFILE_NAME,
+            "k8s-rb-profile-source": PROFILE_SOURCE,
+            "k8s-rb-instance-release-name": RELEASE_NAME + "-vsn"
+        }
+    }
 
     ######## DEFAULT VALUES ########
     OWNING_ENTITY = "OE-Demonstration"
     PROJECT = "Project-Demonstration"
     PLATFORM = "test"
     LINE_OF_BUSINESS = "LOB-Demonstration"
+
+    ######## SCENARIOS #############
+
+    ########     1    #############
+    if SCENARIO == 1:
+        SKIP_POST_INSTANTIATION = True
+        VF_MODULE_PARAM_LIST[VF_MODULE_PREFIX + "vpkg"]["k8s-rb-profile-name"] = PROFILE_NAME
+        VF_MODULE_PARAM_LIST[VF_MODULE_PREFIX + "vpkg"]["k8s-rb-profile-source"] = PROFILE_SOURCE
+    ########     2    #############
+    elif SCENARIO == 2:
+        SKIP_POST_INSTANTIATION = True
+        VF_MODULE_PARAM_LIST[VF_MODULE_PREFIX + "vpkg"]["k8s-rb-profile-name"] = "vfw-cnf-cds-vpkg-profile"
+        VF_MODULE_PARAM_LIST[VF_MODULE_PREFIX + "vpkg"]["k8s-rb-profile-source"] = "vfw-cnf-cds-vpkg-profile"
+        VF_MODULE_PARAM_LIST[VF_MODULE_PREFIX + "vpkg"]["vpg-management-port"] = "31922"
+    ########     3    #############
+    elif SCENARIO == 3:
+        SKIP_POST_INSTANTIATION = False
+        VF_MODULE_PARAM_LIST[VF_MODULE_PREFIX + "vpkg"]["k8s-rb-profile-name"] = PROFILE_NAME
+        VF_MODULE_PARAM_LIST[VF_MODULE_PREFIX + "vpkg"]["k8s-rb-profile-source"] = PROFILE_SOURCE
+        VF_MODULE_PARAM_LIST[VF_MODULE_PREFIX + "vpkg"]["k8s-rb-config-template-name"] = "ssh-service-config"
+        VF_MODULE_PARAM_LIST[VF_MODULE_PREFIX + "vpkg"]["k8s-rb-config-name"] = "ssh-service-config"
+    else:
+        raise Exception("Not Implemented Scenario")