def gen_kubeconfig(self, component, server='localhost'):
"""Generate kubeconfig"""
kubeconfig = loads(files['kubeconfig'].decode(), object_pairs_hook=OrderedDict)
kubeconfig['users'][0]['user']['client-certificate'] = 'tls/client/{}.crt'.format(component)
kubeconfig['clusters'][0]['cluster']['server'] = 'https://' + server + ':6443'
kubeconfig = compress((dumps(kubeconfig, indent=2) + '\n').encode())
self.add_files([
{
'filesystem': 'root',
'path': '/etc/kubernetes/kubeconfig-' + component,
'mode': 416, # 0640
'contents': {
'source': 'data:,' + quote(kubeconfig),
'compression': 'gzip'
}
}
])
评论列表
文章目录