orchestra/remote: extend mktemp() to accept data 1634/head
authorRishabh Dave <ridave@redhat.com>
Fri, 26 Mar 2021 09:26:11 +0000 (14:56 +0530)
committerRishabh Dave <ridave@redhat.com>
Wed, 31 Mar 2021 03:14:27 +0000 (08:44 +0530)
Extend remote.Remote.mktemp() to accept data as a parameter and write
the data to the temporary file after it is created.

Signed-off-by: Rishabh Dave <ridave@redhat.com>
teuthology/orchestra/remote.py

index a9c4c0fd1d780924b35646a9969c7a2291cbdb61..bedfcc6f45ede6a43d2a59fbf46c1f42f75a4626 100644 (file)
@@ -229,20 +229,28 @@ class Remote(object):
 
         return self.sh(args).strip()
 
-    def mktemp(self, suffix=None, parentdir=None):
+    def mktemp(self, suffix=None, parentdir=None, data=None):
         """
-        Make a remote temporary file
+        Make a remote temporary file.
+
+        :param suffix:      suffix for the temporary file
+        :param parentdir:   parent dir where temp file should be created
+        :param data:        write data to the file if provided
 
         Returns: the path of the temp file created.
         """
         args = ['mktemp']
-
         if suffix:
             args.append('--suffix=%s' % suffix)
         if parentdir:
             args.append('--tmpdir=%s' % parentdir)
 
-        return self.sh(args).strip()
+        path = self.sh(args).strip()
+
+        if data:
+            self.write_file(path=path, data=data)
+
+        return path
 
     def sh(self, script, **kwargs):
         """