vFW CNF fix for issue with config-deploy operation
[demo.git] / heat / vFW_CNF_CDS / automation / config.py
1 # ============LICENSE_START=======================================================
2 # Copyright (C) 2021 Orange
3 # ================================================================================
4 # Licensed under the Apache License, Version 2.0 (the "License");
5 # you may not use this file except in compliance with the License.
6 # You may obtain a copy of the License at
7 #
8 #      http://www.apache.org/licenses/LICENSE-2.0
9 #
10 # Unless required by applicable law or agreed to in writing, software
11 # distributed under the License is distributed on an "AS IS" BASIS,
12 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 # See the License for the specific language governing permissions and
14 # limitations under the License.
15 #
16 # ============LICENSE_END=========================================================
17
18 class Config:
19     SCENARIO = 1
20     # 1 - default configuration values like set below
21     # 2 - extra ssh service that comes from the profile
22     # 3 - extra ssh service that comes from config + verification of the CNF status
23     # change requires new onboarding
24
25     #### REGION DETAILS ####
26     COMPLEX_ID = "complex"
27     CLOUD_OWNER = "k8sCloudOwner"
28     CLOUD_REGION = "kud-1"
29     AVAILABILITY_ZONE_NAME = "k8s-availability-zone"
30     HYPERVISOR_TYPE = "k8s"
31     TENANT_NAME = "kud-1"
32     K8S_NAMESPACE = "vfirewall"
33     K8S_VERSION = "1.18.9"
34     CUSTOMER_RESOURCE_DEFINITIONS = []
35 # Uncomment, if you want to run on non KUD k8s cluster
36 #    CUSTOMER_RESOURCE_DEFINITIONS = ["crds/crd1",
37 #                                     "crds/crd2"]
38
39     CLUSTER_KUBECONFIG_PATH = "artifacts/cluster_kubeconfig"
40
41     #### SERVICE DETAILS ####
42     NATIVE = True
43     SKIP_POST_INSTANTIATION = True
44     GLOBAL_CUSTOMER_ID = "customer_cnf"
45     VSPFILE = "vsp/vfw_k8s_demo.zip"
46     if NATIVE:
47         VSPFILE = "vsp/native_vfw_k8s_demo.zip"
48
49     PROFILE_NAME = "vfw-cnf-cds-base-profile"
50     PROFILE_SOURCE = PROFILE_NAME
51     RELEASE_NAME = "vfw-1"
52
53     VENDOR = "vendor_cnf"
54     SERVICENAME = "vfw_k8s_demo_CNF_KUD" + "_" + str(SCENARIO)
55     VSPNAME = "VSP_" + SERVICENAME
56     VFNAME = "VF_" + SERVICENAME
57     SERVICE_INSTANCE_NAME = "INSTANCE_" + SERVICENAME + "_1"
58     SDNC_ARTIFACT_NAME = "vnf"
59
60     # INSERT PARAMS FOR VNF HERE AS "name" : "value" PAIR
61     VNF_PARAM_LIST = {
62         "k8s-rb-profile-namespace": K8S_NAMESPACE,
63         "k8s-rb-profile-k8s-version": K8S_VERSION
64     }
65
66     VF_MODULE_PREFIX = ""
67     if NATIVE:
68         VF_MODULE_PREFIX = "helm_"
69
70     VF_MODULE_PARAM_LIST = {
71         VF_MODULE_PREFIX + "base_template": {
72             "k8s-rb-profile-name": PROFILE_NAME,
73             "k8s-rb-profile-source": PROFILE_SOURCE,
74             "k8s-rb-instance-release-name": RELEASE_NAME + "-base"
75         },
76         VF_MODULE_PREFIX + "vfw": {
77             "k8s-rb-profile-name": PROFILE_NAME,
78             "k8s-rb-profile-source": PROFILE_SOURCE,
79             "k8s-rb-instance-release-name": RELEASE_NAME + "-vfw"
80         },
81         VF_MODULE_PREFIX + "vpkg": {
82             "k8s-rb-profile-name": PROFILE_NAME,
83             "k8s-rb-profile-source": PROFILE_SOURCE,
84             "k8s-rb-instance-release-name": RELEASE_NAME + "-vpkg"
85         },
86         VF_MODULE_PREFIX + "vsn": {
87             "k8s-rb-profile-name": PROFILE_NAME,
88             "k8s-rb-profile-source": PROFILE_SOURCE,
89             "k8s-rb-instance-release-name": RELEASE_NAME + "-vsn"
90         }
91     }
92
93     ######## DEFAULT VALUES ########
94     OWNING_ENTITY = "OE-Demonstration"
95     PROJECT = "Project-Demonstration"
96     PLATFORM = "test"
97     LINE_OF_BUSINESS = "LOB-Demonstration"
98
99     ######## SCENARIOS #############
100
101     ########     1    #############
102     if SCENARIO == 1:
103         SKIP_POST_INSTANTIATION = True
104         VF_MODULE_PARAM_LIST[VF_MODULE_PREFIX + "vpkg"]["k8s-rb-profile-name"] = PROFILE_NAME
105         VF_MODULE_PARAM_LIST[VF_MODULE_PREFIX + "vpkg"]["k8s-rb-profile-source"] = PROFILE_SOURCE
106     ########     2    #############
107     elif SCENARIO == 2:
108         SKIP_POST_INSTANTIATION = True
109         VF_MODULE_PARAM_LIST[VF_MODULE_PREFIX + "vpkg"]["k8s-rb-profile-name"] = "vfw-cnf-cds-vpkg-profile"
110         VF_MODULE_PARAM_LIST[VF_MODULE_PREFIX + "vpkg"]["k8s-rb-profile-source"] = "vfw-cnf-cds-vpkg-profile"
111         VF_MODULE_PARAM_LIST[VF_MODULE_PREFIX + "vpkg"]["vpg-management-port"] = "31922"
112     ########     3    #############
113     elif SCENARIO == 3:
114         SKIP_POST_INSTANTIATION = False
115         VF_MODULE_PARAM_LIST[VF_MODULE_PREFIX + "vpkg"]["k8s-rb-profile-name"] = PROFILE_NAME
116         VF_MODULE_PARAM_LIST[VF_MODULE_PREFIX + "vpkg"]["k8s-rb-profile-source"] = PROFILE_SOURCE
117         VF_MODULE_PARAM_LIST[VF_MODULE_PREFIX + "vpkg"]["k8s-rb-config-template-name"] = "ssh-service-config"
118         VF_MODULE_PARAM_LIST[VF_MODULE_PREFIX + "vpkg"]["k8s-rb-config-template-source"] = "ssh-service-config"
119         VF_MODULE_PARAM_LIST[VF_MODULE_PREFIX + "vpkg"]["k8s-rb-config-name"] = "ssh-service-config"
120         VF_MODULE_PARAM_LIST[VF_MODULE_PREFIX + "vpkg"]["k8s-rb-config-value-source"] = "ssh-service-config"
121     else:
122         raise Exception("Not Implemented Scenario")