From a3ea0cbf8b509df09344c36802586572cd2bf25b Mon Sep 17 00:00:00 2001 From: Ryan Howe Date: Mon, 11 Feb 2019 16:28:42 -0500 Subject: [PATCH] Make sure that the user we expect has proper credentials set. When a cluster is installed the username in the loopback kubeconfig is equal to hostname of that local master. This changes the variable to equal a value of what would originally be set. Supersedes #10315 #10272 #10271 Fixes https://bugzilla.redhat.com/show_bug.cgi?id=1467775#c9 --- .../tasks/set_loopback_context.yml | 11 +++++++++++ roles/openshift_facts/library/openshift_facts.py | 2 +- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/roles/openshift_control_plane/tasks/set_loopback_context.yml b/roles/openshift_control_plane/tasks/set_loopback_context.yml index 215e26af49a..af640351550 100644 --- a/roles/openshift_control_plane/tasks/set_loopback_context.yml +++ b/roles/openshift_control_plane/tasks/set_loopback_context.yml @@ -16,6 +16,17 @@ - loopback_context_string not in l_loopback_config.stdout register: set_loopback_cluster +- command: > + {{ openshift_client_binary }} config set-credentials + --client-certificate=/etc/origin/master/openshift-master.crt + --client-key=/etc/origin/master/openshift-master.key + --embed-certs=true + {{ openshift.master.loopback_user }} + --config={{ openshift_master_loopback_config }} + when: + - set_loopback_cluster is changed + register: l_set_loopback_credentials + - command: > {{ openshift_client_binary }} config set-context --cluster={{ openshift.master.loopback_cluster_name }} diff --git a/roles/openshift_facts/library/openshift_facts.py b/roles/openshift_facts/library/openshift_facts.py index 86ac75edaaf..382307ff392 100755 --- a/roles/openshift_facts/library/openshift_facts.py +++ b/roles/openshift_facts/library/openshift_facts.py @@ -394,7 +394,7 @@ def set_url_facts_if_unset(facts): ports[prefix])) r_lhn = "{0}:{1}".format(hostname, ports['api']).replace('.', '-') - r_lhu = "system:openshift-master/{0}:{1}".format(api_hostname, ports['api']).replace('.', '-') + r_lhu = "system:openshift-master/{0}:{1}".format(hostname, ports['api']).replace('.', '-') facts['master'].setdefault('loopback_cluster_name', r_lhn) facts['master'].setdefault('loopback_context_name', "default/{0}/system:openshift-master".format(r_lhn)) facts['master'].setdefault('loopback_user', r_lhu)