Skip to content

Commit f7cc6a0

Browse files
committed
Merge master into release branch for 1.0.0a4
2 parents df62727 + 9d5a68d commit f7cc6a0

File tree

4 files changed

+24
-20
lines changed

4 files changed

+24
-20
lines changed

CHANGELOG.md

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,8 @@
1-
# v1.0.0-alpha.3
1+
# v1.0.0a4
2+
3+
- Bugfix: Fixed broken config loader #77
4+
5+
# v1.0.0a3
26

37
- Add context switch to kube config loader #46
48
- Add default kube config location #64

kubernetes/config/kube_config.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@ def as_file(self):
7979
if use_data_if_no_file:
8080
self._file = _create_temp_file_with_content(
8181
base64.decodestring(self._data.encode()))
82-
if not os.path.isfile(self._file):
82+
if self._file and not os.path.isfile(self._file):
8383
raise ConfigException("File does not exists: %s" % self._file)
8484
return self._file
8585

@@ -157,15 +157,15 @@ def _load_gcp_token(self):
157157
# Ignore configs in auth-provider and rely on GoogleCredentials
158158
# caching and refresh mechanism.
159159
# TODO: support gcp command based token ("cmd-path" config).
160-
self.token = self._get_google_credentials()
160+
self.token = "Bearer %s" % self._get_google_credentials()
161161
return self.token
162162

163163
def _load_user_token(self):
164164
token = FileOrData(
165165
self._user, 'tokenFile', 'token',
166166
file_base_path=self._config_base_path).as_data()
167167
if token:
168-
self.token = token
168+
self.token = "Bearer %s" % token
169169
return True
170170

171171
def _load_user_pass_token(self):

kubernetes/config/kube_config_test.py

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,8 @@
2626
load_kube_config, list_kube_config_contexts,
2727
new_client_from_config)
2828

29+
BEARER_TOKEN_FORMAT = "Bearer %s"
30+
2931
NON_EXISTING_FILE = "zz_non_existing_file_472398324"
3032

3133

@@ -407,7 +409,8 @@ def test_no_user_context(self):
407409
self.assertEqual(expected, actual)
408410

409411
def test_simple_token(self):
410-
expected = FakeConfig(host=TEST_HOST, token=TEST_DATA_BASE64)
412+
expected = FakeConfig(host=TEST_HOST,
413+
token=BEARER_TOKEN_FORMAT % TEST_DATA_BASE64)
411414
actual = FakeConfig()
412415
KubeConfigLoader(
413416
config_dict=self.TEST_KUBE_CONFIG,
@@ -420,10 +423,12 @@ def test_load_user_token(self):
420423
config_dict=self.TEST_KUBE_CONFIG,
421424
active_context="simple_token")
422425
self.assertTrue(loader._load_user_token())
423-
self.assertEqual(TEST_DATA_BASE64, loader.token)
426+
self.assertEqual(BEARER_TOKEN_FORMAT % TEST_DATA_BASE64, loader.token)
424427

425428
def test_gcp(self):
426-
expected = FakeConfig(host=TEST_HOST, token=TEST_ANOTHER_DATA_BASE64)
429+
expected = FakeConfig(
430+
host=TEST_HOST,
431+
token=BEARER_TOKEN_FORMAT % TEST_ANOTHER_DATA_BASE64)
427432
actual = FakeConfig()
428433
KubeConfigLoader(
429434
config_dict=self.TEST_KUBE_CONFIG,
@@ -439,7 +444,8 @@ def test_load_gcp_token(self):
439444
active_context="gcp",
440445
get_google_credentials=lambda: TEST_ANOTHER_DATA_BASE64)
441446
self.assertTrue(loader._load_gcp_token())
442-
self.assertEqual(TEST_ANOTHER_DATA_BASE64, loader.token)
447+
self.assertEqual(BEARER_TOKEN_FORMAT % TEST_ANOTHER_DATA_BASE64,
448+
loader.token)
443449

444450
def test_user_pass(self):
445451
expected = FakeConfig(host=TEST_HOST, token=TEST_BASIC_TOKEN)
@@ -458,13 +464,6 @@ def test_load_user_pass_token(self):
458464
self.assertEqual(TEST_BASIC_TOKEN, loader.token)
459465

460466
def test_ssl_no_cert_files(self):
461-
expected = FakeConfig(
462-
host=TEST_SSL_HOST,
463-
token=TEST_DATA_BASE64,
464-
cert_file=TEST_CLIENT_CERT,
465-
key_file=TEST_CLIENT_KEY,
466-
ssl_ca_cert=TEST_CERTIFICATE_AUTH
467-
)
468467
actual = FakeConfig()
469468
loader = KubeConfigLoader(
470469
config_dict=self.TEST_KUBE_CONFIG,
@@ -475,7 +474,7 @@ def test_ssl_no_cert_files(self):
475474
def test_ssl(self):
476475
expected = FakeConfig(
477476
host=TEST_SSL_HOST,
478-
token=TEST_DATA_BASE64,
477+
token=BEARER_TOKEN_FORMAT % TEST_DATA_BASE64,
479478
cert_file=self._create_temp_file(TEST_CLIENT_CERT),
480479
key_file=self._create_temp_file(TEST_CLIENT_KEY),
481480
ssl_ca_cert=self._create_temp_file(TEST_CERTIFICATE_AUTH)
@@ -513,7 +512,7 @@ def test_set_active_context(self):
513512
def test_ssl_with_relative_ssl_files(self):
514513
expected = FakeConfig(
515514
host=TEST_SSL_HOST,
516-
token=TEST_DATA_BASE64,
515+
token=BEARER_TOKEN_FORMAT % TEST_DATA_BASE64,
517516
cert_file=self._create_temp_file(TEST_CLIENT_CERT),
518517
key_file=self._create_temp_file(TEST_CLIENT_KEY),
519518
ssl_ca_cert=self._create_temp_file(TEST_CERTIFICATE_AUTH)
@@ -539,7 +538,8 @@ def test_ssl_with_relative_ssl_files(self):
539538
shutil.rmtree(temp_dir)
540539

541540
def test_load_kube_config(self):
542-
expected = FakeConfig(host=TEST_HOST, token=TEST_DATA_BASE64)
541+
expected = FakeConfig(host=TEST_HOST,
542+
token=BEARER_TOKEN_FORMAT % TEST_DATA_BASE64)
543543
config_file = self._create_temp_file(yaml.dump(self.TEST_KUBE_CONFIG))
544544
actual = FakeConfig()
545545
load_kube_config(config_file=config_file,context="simple_token",
@@ -564,7 +564,7 @@ def test_new_client_from_config(self):
564564
client = new_client_from_config(
565565
config_file=config_file, context="simple_token")
566566
self.assertEqual(TEST_HOST, client.config.host)
567-
self.assertEqual(TEST_DATA_BASE64,
567+
self.assertEqual(BEARER_TOKEN_FORMAT % TEST_DATA_BASE64,
568568
client.config.api_key['authorization'])
569569

570570

setup.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,6 @@
4747
'kubernetes.client.models', 'scripts'],
4848
include_package_data=True,
4949
long_description="""\
50-
Python client for talk to a kubernetes cluster.
50+
Python client for kubernetes http://kubernetes.io/
5151
"""
5252
)

0 commit comments

Comments
 (0)