Есть ли простой способ создать объект конфигурации для Python клиента Kubernetes, передав переменную, содержащую YAML из kubeconfig?
Довольно легко сделать что-то вроде:
from kubernetes import client, config, watch
def main():
config.load_kube_config()
или
from kubernetes import client, config, watch
def main():
config.load_incluster_config()
Но я хотел бы создать конфигурацию на основе переменной с помощью YAML kubeconfig, скажем, у меня есть:
k8s_config = yaml.safe_load('''
apiVersion: v1
clusters:
- cluster:
insecure-skip-tls-verify: true
server: https://asdf.asdf:443
name: cluster
contexts:
- context:
cluster: cluster
user: admin
name: admin
current-context: admin
kind: Config
preferences: {}
users:
- name: admin
user:
client-certificate-data: LS0tVGYUZiL2sxZlRFTkQgQ0VSVElGSUNBVEUtLS0tLQo=
client-key-data: LS0tLS1CRUdJTiBSU0EgU0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQo=
''')
И я хотел бы загрузите его как:
config.KubeConfigLoader(k8s_config)
Причина в том, что я не могу сохранить содержимое kubeconfig перед загрузкой конфигурации.
Я получаю следующую ошибку: «Ошибка : модуль 'kubernetes.config' не имеет атрибута 'KubeConfigLoader' "