summaryrefslogtreecommitdiff
path: root/cloudinit/util.py
diff options
context:
space:
mode:
authorAndrew Jorgensen <ajorgens@amazon.com>2014-12-05 14:34:10 -0800
committerScott Moser <smoser@brickies.net>2017-06-15 13:20:58 -0400
commit0fe6a0607408d387f4b0d4482b95afbc5d3f3909 (patch)
treee93fe72e4dd1b27d1331ae70c16042b8ecadc2ee /cloudinit/util.py
parentb23d9d7c5c112612dbaaf8c8371c9e735500b2eb (diff)
downloadvyos-cloud-init-0fe6a0607408d387f4b0d4482b95afbc5d3f3909.tar.gz
vyos-cloud-init-0fe6a0607408d387f4b0d4482b95afbc5d3f3909.zip
write_file(s): Print permissions as octal, not decimal
Unix file modes are usually represented as octal, but they were being interpreted as decimal, for example 0o644 would be printed as '420'. Reviewed-by: Tom Kirchner <tjk@amazon.com>
Diffstat (limited to 'cloudinit/util.py')
-rw-r--r--cloudinit/util.py6
1 files changed, 5 insertions, 1 deletions
diff --git a/cloudinit/util.py b/cloudinit/util.py
index 415ca374..ec68925e 100644
--- a/cloudinit/util.py
+++ b/cloudinit/util.py
@@ -1751,8 +1751,12 @@ def write_file(filename, content, mode=0o644, omode="wb", copy_mode=False):
else:
content = decode_binary(content)
write_type = 'characters'
+ try:
+ mode_r = "%o" % mode
+ except TypeError:
+ mode_r = "%r" % mode
LOG.debug("Writing to %s - %s: [%s] %s %s",
- filename, omode, mode, len(content), write_type)
+ filename, omode, mode_r, len(content), write_type)
with SeLinuxGuard(path=filename):
with open(filename, omode) as fh:
fh.write(content)