aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--grs/Kernel.py3
-rw-r--r--grs/Log.py5
-rw-r--r--grs/MountDirectories.py6
-rw-r--r--grs/Populate.py5
-rw-r--r--grs/Seed.py5
5 files changed, 9 insertions, 15 deletions
diff --git a/grs/Kernel.py b/grs/Kernel.py
index 7dd76fa..16d2247 100644
--- a/grs/Kernel.py
+++ b/grs/Kernel.py
@@ -96,7 +96,8 @@ class Kernel():
cwd = os.getcwd()
os.chdir(image_dir)
- os.unlink(tarball_path)
+ if os.path.isfile(tarball_path):
+ os.unlink(tarball_path)
cmd = 'tar -Jcf %s .' % tarball_path
Execute(cmd, timeout=600, logfile=self.logfile)
os.chdir(cwd)
diff --git a/grs/Log.py b/grs/Log.py
index 91141e8..2a7ef9d 100644
--- a/grs/Log.py
+++ b/grs/Log.py
@@ -11,10 +11,7 @@ class Log():
def __init__(self, logfile = CONST.LOGFILE):
self.logfile = logfile
- try:
- os.makedirs(os.path.dirname(self.logfile))
- except FileExistsError:
- pass
+ os.makedirs(os.path.dirname(self.logfile), exist_ok=True)
open(self.logfile, 'a').close()
diff --git a/grs/MountDirectories.py b/grs/MountDirectories.py
index 43cd91a..16edc32 100644
--- a/grs/MountDirectories.py
+++ b/grs/MountDirectories.py
@@ -83,8 +83,7 @@ class MountDirectories():
# Here source_directory is assumet to be an abspath
# and we create it if it doesn't exist
source_directory = mount[0]
- if not os.path.isdir(source_directory):
- os.makedirs(source_directory)
+ os.makedirs(source_directory, mode=0o755, exist_ok=True)
target_directory = mount[1]
elif isinstance(mount, dict):
tmp = list(mount.values())
@@ -94,8 +93,7 @@ class MountDirectories():
tmp = list(mount.keys())
target_directory = tmp[0]
target_directory = os.path.join(self.portage_configroot, target_directory)
- if not os.path.isdir(target_directory):
- os.makedirs(target_directory)
+ os.makedirs(target_directory, mode=0o755, exist_ok=True)
if isinstance(mount, str):
cmd = 'mount --bind /%s %s' % (source_directory, target_directory)
elif isinstance(mount, list):
diff --git a/grs/Populate.py b/grs/Populate.py
index 504283c..75b7ed8 100644
--- a/grs/Populate.py
+++ b/grs/Populate.py
@@ -34,10 +34,7 @@ class Populate():
Execute(cmd, timeout=60, logfile = self. logfile)
# Add any extra files
- try:
- os.makedirs(self.etc)
- except FileExistsError:
- pass
+ os.makedirs(self.etc, mode=0o755, exist_ok=True)
with open(self.resolv_conf, 'w') as f:
f.write('nameserver %s' % self.nameserver)
diff --git a/grs/Seed.py b/grs/Seed.py
index 0da8354..76034cc 100644
--- a/grs/Seed.py
+++ b/grs/Seed.py
@@ -50,8 +50,9 @@ class Seed():
if os.path.isdir(directory):
shutil.move(directory, '%s.0' % directory)
# Now that all prevous directory are out of the way,
- # create a new empty directory
- os.makedirs(directory)
+ # create a new empty directory. Fail if the directory
+ # is still around.
+ os.makedirs(directory, mode=0o755, exist_ok=False)
# Download a stage tarball if we don't have one
if not os.path.isfile(self.filepath):