env variables

master
SLW\ARNAUA 2023-06-01 17:12:58 +02:00
parent f6d15c2ec7
commit dad9708f64
3 changed files with 48 additions and 27 deletions

18
Jenkinsfile vendored
View File

@ -16,18 +16,12 @@ pipeline {
}
environment {
EMEA_PROD_API_TOKEN = credentials('EUPROD_TOKEN_VAR')
EMEA_PROD_ENV_URL = 'https://xxu26128.live.dynatrace.com'
EMEA_PREPROD_API_TOKEN = credentials('EUPREPROD_TOKEN_VAR')
EMEA_PREPROD_ENV_URL = 'https://qqk70169.live.dynatrace.com'
NA_PROD_API_TOKEN = credentials('NAPROD_TOKEN_VAR')
NA_PROD_ENV_URL = 'https://wgv50241.live.dynatrace.com'
NA_PREPROD_API_TOKEN = credentials('NAPREPROD_TOKEN_VAR')
NA_PREPROD_ENV_URL = 'https://onb44935.live.dynatrace.com'
CN_PROD_API_TOKEN = credentials('CNPROD_TOKEN_VAR')
CN_PROD_ENV_URL= 'https://dynatracemgd-tsp.bmwgroup.net/e/b921f1b9-c00e-4031-b9d1-f5a0d530757b'
CN_PREPROD_API_TOKEN = credentials('CNPREPROD_TOKEN_VAR')
CN_PREPROD_ENV_URL = 'https://dynatracemgd-tsp.bmwgroup.net/e/ab88c03b-b7fc-45f0-9115-9e9ecc0ced35'
EUPROD_TOKEN_VAR = credentials('EUPROD_TOKEN_VAR')
EUPREPROD_TOKEN_VAR = credentials('EUPREPROD_TOKEN_VAR')
NAPROD_TOKEN_VAR = credentials('NAPROD_TOKEN_VAR')
NAPREPROD_TOKEN_VAR = credentials('NAPREPROD_TOKEN_VAR')
CNPROD_TOKEN_VAR = credentials('CNPROD_TOKEN_VAR')
CNPREPROD_TOKEN_VAR = credentials('CNPREPROD_TOKEN_VAR')
}
stages {

31
environment.yaml Normal file
View File

@ -0,0 +1,31 @@
---
euprod:
- name: "euprod"
- env-url: "https://xxu26128.live.dynatrace.com"
- env-token-name: "EUPROD_TOKEN_VAR"
- jenkins: "https://jaws.bmwgroup.net/opapm/"
eupreprod:
- name: "eupreprod"
- env-url: "https://qqk70169.live.dynatrace.com"
- env-token-name: "EUPREPROD_TOKEN_VAR"
- jenkins: "https://jaws.bmwgroup.net/opapm/"
naprod:
- name: "naprod"
- env-url: "https://wgv50241.live.dynatrace.com"
- env-token-name: "NAPROD_TOKEN_VAR"
- jenkins: "https://jaws.bmwgroup.net/opapm/"
napreprod:
- name: "napreprod"
- env-url: "https://onb44935.live.dynatrace.com"
- env-token-name: "NAPREPROD_TOKEN_VAR"
- jenkins: "https://jaws.bmwgroup.net/opapm/"
cnprod:
- name: "cnprod"
- env-url: "https://dyna-synth-cn.bmwgroup.com.cn/e/b921f1b9-c00e-4031-b9d1-f5a0d530757b"
- env-token-name: "CNPROD_TOKEN_VAR"
- jenkins: "https://jaws-china.bmwgroup.net/opmaas/"
cnpreprod:
- name: "cnpreprod"
- env-url: "https://dynatracemgd-tsp.bmwgroup.net/e/ab88c03b-b7fc-45f0-9115-9e9ecc0ced35"
- env-token-name: "CNPREPROD_TOKEN_VAR"
- jenkins: "https://jaws-china.bmwgroup.net/opmaas/"

View File

@ -8,18 +8,13 @@ import hcl
from dotenv import load_dotenv
from decouple import config
from glob import glob
import yaml
def setEnv(env, time, path, dashboard):
# os.environ[env + "_ENV_URL"] = getJenkinsEnvironmentVariable()
print(str(config("EMEA_PROD_API_TOKEN")))
# os.environ['DYNATRACE_ENV_URL'] = str(os.environ.get(env + "_ENV_URL"))
# os.environ['DYNATRACE_API_TOKEN'] = str(os.environ.get(env + "_API_TOKEN"))
# os.environ['DYNATRACE_TARGET_FOLDER'] = str(path + time + "_" + env + dashboard)
def setEnv(doc, timestamp, outputFolder, config):
os.environ['DYNATRACE_ENV_URL'] = dict(doc[1])
os.environ['DYNATRACE_API_TOKEN'] = config(dict(doc[2]))
os.environ['DYNATRACE_TARGET_FOLDER'] = str(outputFolder + timestamp + "_" + doc[0] + config)
return os.environ
@ -52,13 +47,14 @@ if __name__ == "__main__":
if(len(sys.argv) == 1):
timestamp = time.strftime("%Y%m%d-%H%M%S")
outputFolder = "./output/"
environments = ["EMEA_PROD", "EMEA_PREPROD", "NA_PROD", "NA_PREPROD", "CN_PROD", "CN_PREPROD"]
environments = ["euprod", "eupreprod", "naprod", "napreprod", "cnprod", "cnpreprod"]
with open(os.path.basename("./environment.yaml")) as file:
env_doc = yaml.safe_load(file)
for environment in environments:
load_dotenv()
setEnv(environment, timestamp, outputFolder, "")
for item, doc in env_doc.items():
setEnv(doc, timestamp, outputFolder, "_configurations")
runProcess("Export", ["sudo", "/opt/workspace/coco_apm_dynatrace_terraform_backup_exporter/terraform-provider-dynatrace_v1.30.2" , "-export", "-id"])
# setEnv(environment, timestamp, outputFolder, "_DASHBOARDS")
# setEnv(environment, timestamp, outputFolder, "_dashboards")
# runProcess("Export", ["sudo", bin, "-export", "-id", "dynatrace_dashboard"])
print("Finished!")