summaryrefslogtreecommitdiff
path: root/packages
diff options
context:
space:
mode:
authorRick Wright <rickw@google.com>2019-05-22 12:59:31 -0700
committerZach Marano <zmarano@google.com>2019-05-22 12:59:31 -0700
commit02edad3872b4511fcfd0ba26d644d75999baf091 (patch)
tree924cbf1f84001fe2ef655b8ee26a5922e63909c7 /packages
parent35ecbe603cc6a4d92410ee80c9f5cc4d13143d67 (diff)
downloadgoogle-compute-image-packages-02edad3872b4511fcfd0ba26d644d75999baf091.tar.gz
Encode hostkey value to utf-8 (needed for Python 3). (#775)
Diffstat (limited to 'packages')
-rwxr-xr-xpackages/python-google-compute-engine/google_compute_engine/instance_setup/instance_setup.py1
-rw-r--r--packages/python-google-compute-engine/google_compute_engine/instance_setup/tests/instance_setup_test.py3
2 files changed, 3 insertions, 1 deletions
diff --git a/packages/python-google-compute-engine/google_compute_engine/instance_setup/instance_setup.py b/packages/python-google-compute-engine/google_compute_engine/instance_setup/instance_setup.py
index e72534c..d65f642 100755
--- a/packages/python-google-compute-engine/google_compute_engine/instance_setup/instance_setup.py
+++ b/packages/python-google-compute-engine/google_compute_engine/instance_setup/instance_setup.py
@@ -169,6 +169,7 @@ class InstanceSetup(object):
"""Write a host key to guest attributes, ignoring errors."""
headers = {'Metadata-Flavor': 'Google'}
url = '%s/%s/%s' % (GUEST_ATTRIBUTES_URL, HOSTKEY_NAMESPACE, key_type)
+ key_value = key_value.encode('utf-8')
req = PutRequest(url, key_value, headers)
try:
response = urlrequest.urlopen(req)
diff --git a/packages/python-google-compute-engine/google_compute_engine/instance_setup/tests/instance_setup_test.py b/packages/python-google-compute-engine/google_compute_engine/instance_setup/tests/instance_setup_test.py
index a59ae0c..4cc33cf 100644
--- a/packages/python-google-compute-engine/google_compute_engine/instance_setup/tests/instance_setup_test.py
+++ b/packages/python-google-compute-engine/google_compute_engine/instance_setup/tests/instance_setup_test.py
@@ -335,6 +335,7 @@ class InstanceSetupTest(unittest.TestCase):
def testWriteHostKeyToGuestAttributes(self, mock_put, mock_urlopen):
key_type = 'ssh-rsa'
key_value = 'asdfasdf'
+ encoded_key_value = key_value.encode('utf-8')
expected_url = ('http://metadata.google.internal/computeMetadata/v1beta1/'
'instance/guest-attributes/hostkeys/%s' % key_type)
headers = {'Metadata-Flavor': 'Google'}
@@ -343,7 +344,7 @@ class InstanceSetupTest(unittest.TestCase):
self.mock_setup, key_type, key_value)
self.mock_logger.info.assert_called_with(
'Wrote %s host key to guest attributes.', key_type)
- mock_put.assert_called_with(expected_url, key_value, headers)
+ mock_put.assert_called_with(expected_url, encoded_key_value, headers)
mock_urlopen.side_effect = instance_setup.urlerror.HTTPError(
'http://foo', 403, 'Forbidden', {}, None)