This is mostly for testing purposes. The method has no way to
specify a directory independently from the file name, which it
makes it difficult to use with automated tests. It will get
refactored more later, but for now add a new kwarg that pass
in a dir to write to. Since a lot of callers are passing in
absolute paths (.e.g. "/etc/ceph/keyring"), we look for the
beginning slash and chop it off so that we can use os.path.join()
and write into something like /tmp/etc/ceph.
Signed-off-by: Travis Rhoden <trhoden@redhat.com>
write_file(keyring, monitor_keyring)
-def write_file(path, content):
+def write_file(path, content, directory=None):
+ if directory:
+ if path.startswith("/"):
+ path = path[1:]
+ path = os.path.join(directory, path)
with file(path, 'w') as f:
f.write(content)