diff options
author | Robin H. Johnson <robbat2@gentoo.org> | 2007-12-15 05:58:36 -0800 |
---|---|---|
committer | Robin H. Johnson <robbat2@gentoo.org> | 2007-12-18 01:12:21 -0800 |
commit | 204c2e0781ce89fd8abb7f1249920ce90414f9f6 (patch) | |
tree | 08ccb761125a0276ae1c88037a59488a89e67ed6 /gitosis/util.py | |
parent | Pylint cleanups for run_hook.py. (diff) | |
download | gitosis-dakkar-204c2e0781ce89fd8abb7f1249920ce90414f9f6.tar.gz gitosis-dakkar-204c2e0781ce89fd8abb7f1249920ce90414f9f6.tar.bz2 gitosis-dakkar-204c2e0781ce89fd8abb7f1249920ce90414f9f6.zip |
Factor out functions with a common errno ignore block.
Diffstat (limited to 'gitosis/util.py')
-rw-r--r-- | gitosis/util.py | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/gitosis/util.py b/gitosis/util.py index ad0989c..4ae3d0c 100644 --- a/gitosis/util.py +++ b/gitosis/util.py @@ -3,6 +3,7 @@ Some utility functions for Gitosis """ import errno import os +import shutil from ConfigParser import NoSectionError, NoOptionError def mkdir(newdir, mode=0777): @@ -17,6 +18,30 @@ def mkdir(newdir, mode=0777): else: raise +def unlink(filename): + """ + Like os.unlink, but non-existing files do not raise an error. + """ + try: + os.unlink(filename) + except OSError, ex: + if ex.errno == errno.ENOENT: + pass + else: + raise + +def rmtree(directory): + """ + Like shutil.rmtree, but non-existing trees do not raise an error. + """ + try: + shutil.rmtree(directory) + except OSError, ex: + if ex.errno == errno.ENOENT: + pass + else: + raise + def getRepositoryDir(config): """ Find the location of the Git repositories. |