diff options
Diffstat (limited to 'ipaserver/dnssec/temp.py')
-rw-r--r-- | ipaserver/dnssec/temp.py | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/ipaserver/dnssec/temp.py b/ipaserver/dnssec/temp.py new file mode 100644 index 000000000..e97d3a0b8 --- /dev/null +++ b/ipaserver/dnssec/temp.py @@ -0,0 +1,22 @@ +# +# Copyright (C) 2014 FreeIPA Contributors see COPYING for license +# + +import errno +import shutil +import tempfile + +class TemporaryDirectory(object): + def __init__(self, root): + self.root = root + + def __enter__(self): + self.name = tempfile.mkdtemp(dir=self.root) + return self.name + + def __exit__(self, exc_type, exc_value, traceback): + try: + shutil.rmtree(self.name) + except OSError as e: + if e.errno != errno.ENOENT: + raise |