Skip to content

verify_directory should respect umask #101

Closed
@sqlalchemy-bot

Description

@sqlalchemy-bot

Migrated issue, originally created by Anonymous

Currently util.verify_directory is hardcoding the mode of 0750 in its call to os.makedirs. The following patch checks the umask and passes mode along accordingly:

Index: lib/mako/util.py
===================================================================
--- lib/mako/util.py    (revision 439)
+++ lib/mako/util.py    (working copy)
@@ -17,6 +17,7 @@
     from StringIO import StringIO
 
 import codecs, re, weakref, os, time
+import subprocess
 
 try:
     import threading
@@ -38,7 +39,10 @@
     while not os.path.exists(dir):
         try:
             tries += 1
-            os.makedirs(dir, 0750)
+            umask, _ = subprocess.Popen(['sh', '-c', 'umask'], stdout=subprocess.PIPE).communicate()
+            umask = int(umask, 8)
+            mode = int(oct(0777 ^ umask), 8)
+            os.makedirs(dir, mode)
         except:
             if tries > 5:
                 raise

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions