Addressing review comments

This commit is contained in:
Konstantinos Tsakalozos
2017-10-17 22:31:22 +03:00
parent 95fec2dc3f
commit 9a28e9b125
4 changed files with 22 additions and 34 deletions

View File

@@ -24,7 +24,7 @@ from charms.reactive import when
from charms.reactive import when_not
from charms.reactive.helpers import data_changed
from charmhelpers.core import hookenv, unitdata
from charmhelpers.core import hookenv
from shlex import split
@@ -32,7 +32,7 @@ from subprocess import check_call
from subprocess import check_output
db = unitdata.kv()
USER = 'system:e2e'
@hook('upgrade-charm')
@@ -91,15 +91,16 @@ def install_snaps():
@when('tls_client.ca.saved', 'tls_client.client.certificate.saved',
'tls_client.client.key.saved', 'kubernetes-master.available',
'kubernetes-e2e.installed', 'e2e.auth.bootstrapped')
'kubernetes-e2e.installed', 'e2e.auth.bootstrapped',
'kube-control.auth.available')
@when_not('kubeconfig.ready')
def prepare_kubeconfig_certificates(master):
def prepare_kubeconfig_certificates(master, kube_control):
''' Prepare the data to feed to create the kubeconfig file. '''
layer_options = layer.options('tls-client')
# Get all the paths to the tls information required for kubeconfig.
ca = layer_options.get('ca_certificate_path')
creds = db.get('credentials')
creds = kube_control.get_auth_credentials(USER)
data_changed('kube-control.creds', creds)
servers = get_kube_api_servers(master)
@@ -124,19 +125,16 @@ def request_credentials(kube_control):
""" Request authorization creds."""
# Ask for a user, although we will be using the 'client_token'
user = 'system:e2e'
kube_control.set_auth_request(user)
kube_control.set_auth_request(USER)
@when('kube-control.auth.available')
def catch_change_in_creds(kube_control):
"""Request a service restart in case credential updates were detected."""
user = 'system:e2e'
creds = kube_control.get_auth_credentials(user)
creds = kube_control.get_auth_credentials(USER)
if creds \
and data_changed('kube-control.creds', creds) \
and creds['user'] == user:
db.set('credentials', creds)
and creds['user'] == USER:
set_state('e2e.auth.bootstrapped')