summaryrefslogtreecommitdiff
path: root/cloudinit/config/cc_write_files.py
diff options
context:
space:
mode:
authorScott Moser <smoser@ubuntu.com>2016-04-05 20:43:05 -0400
committerScott Moser <smoser@ubuntu.com>2016-04-05 20:43:05 -0400
commit6a660b490ee6384055d2afb07f8cac1628168ba2 (patch)
treeb730249941ebcd9e6053ec2eae97b56c2224311e /cloudinit/config/cc_write_files.py
parent35802e8866be53016779f4f1eae9f026ccd18a61 (diff)
downloadvyos-cloud-init-6a660b490ee6384055d2afb07f8cac1628168ba2.tar.gz
vyos-cloud-init-6a660b490ee6384055d2afb07f8cac1628168ba2.zip
write_files: fix decompression of content
When provided with gzipped data, an exception would be raised because of a conversion to string. This fixes the issue and adds a test for write_files. LP: #1565638
Diffstat (limited to 'cloudinit/config/cc_write_files.py')
-rw-r--r--cloudinit/config/cc_write_files.py4
1 files changed, 2 insertions, 2 deletions
diff --git a/cloudinit/config/cc_write_files.py b/cloudinit/config/cc_write_files.py
index 4b03ea91..351cfc8c 100644
--- a/cloudinit/config/cc_write_files.py
+++ b/cloudinit/config/cc_write_files.py
@@ -92,10 +92,10 @@ def decode_perms(perm, default, log):
def extract_contents(contents, extraction_types):
- result = str(contents)
+ result = contents
for t in extraction_types:
if t == 'application/x-gzip':
- result = util.decomp_gzip(result, quiet=False)
+ result = util.decomp_gzip(result, quiet=False, decode=False)
elif t == 'application/base64':
result = base64.b64decode(result)
elif t == UNKNOWN_ENC: