Merge "Change from using chef to local config files"
[integration.git] / bootstrap / vagrant-onap / lib / files / kubectl_config_generator.py
1 import requests
2 import os
3 import base64
4
5 RANCHER_URL = str(os.environ['RANCHER_URL'])
6 RANCHER_ENVIRONMENT_ID = str(os.environ['RANCHER_ENVIRONMENT'])
7 data = requests.post(RANCHER_URL + '/v1/projects/' + RANCHER_ENVIRONMENT_ID + '/apikeys',
8                      {"accountId": RANCHER_ENVIRONMENT_ID,
9                       "description": "ONAP on Kubernetes",
10                       "name": "ONAP on Kubernetes",
11                       "publicValue": "string",
12                       "secretValue": "password"})
13 json_dct = data.json()
14 access_key = json_dct['publicValue']
15 secret_key = json_dct['secretValue']
16 auth_header = 'Basic ' + base64.b64encode(access_key + ':' + secret_key)
17 token = "\"" + str(base64.b64encode(auth_header)) + "\""
18 dct = \
19 """
20 apiVersion: v1
21 kind: Config
22 clusters:
23 - cluster:
24     api-version: v1
25     insecure-skip-tls-verify: true
26     server: "{}/r/projects/{}/kubernetes:6443"
27   name: "onap_on_kubernetes"
28 contexts:
29 - context:
30     cluster: "onap_on_kubernetes"
31     user: "onap_on_kubernetes"
32   name: "onap_on_kubernetes"
33 current-context: "onap_on_kubernetes"
34 users:
35 - name: "onap_on_kubernetes"
36   user:
37     token: {}
38 """.format(RANCHER_URL, RANCHER_ENVIRONMENT_ID, token)
39 with open("config", "w") as file:
40     file.write(dct)