Pass a mode to os.fdopen in invirt-build-conf and invirt-submit-build.
authorEvan Broder <broder@mit.edu>
Thu, 26 Nov 2009 15:15:42 +0000 (10:15 -0500)
committerEvan Broder <broder@mit.edu>
Thu, 26 Nov 2009 15:15:42 +0000 (10:15 -0500)
By default, os.fdopen opens files in read-only mode.

svn path=/trunk/packages/invirt-dev/; revision=2569

invirt-build-conf
invirt-submit-build

index 7ebd542..b5a8d3d 100755 (executable)
@@ -30,14 +30,14 @@ def main():
     # a temporary path and moved to its final resting place on
     # .close(). Oh well.
     conf_fd, conf_name = tempfile.mkstemp()
-    conf = os.fdopen(conf_fd)
+    conf = os.fdopen(conf_fd, 'r+')
     build_handler = '/usr/sbin/invirt-submit-build'
 
     for pocket in config.git.pockets:
         acl = authz.expandAdmin(getattr(config.git.pockets, pocket).acl, None)
 
         acl_fd, acl_name = tempfile.mkstemp()
-        acl_fd = os.fdopen(acl_fd)
+        acl_fd = os.fdopen(acl_fd, 'r+')
         print >>acl_fd, '\n'.join(userToPrinc(a) for a in acl)
 
         acl_path = os.path.join('/etc/remctl/acl/build-%s' % pocket)
index 713f3da..7115bf6 100755 (executable)
@@ -44,7 +44,7 @@ def main():
     # written the file out, first write the queue entry to a temporary
     # file, and then move it into the queue directory.
     q_fd, q_name = tempfile.mkstemp()
-    q = os.fdopen(q_fd)
+    q = os.fdopen(q_fd, 'r+')
     print >>q, "%s %s %s %s" % (pocket, package, commit, principal)
     os.rename(q_name, q_path)