1
0

tmp.py 528 B

12345678910111213141516171819202122232425
  1. from contextlib import contextmanager as contextmanager
  2. import os
  3. import tempfile
  4. from .fs import remove_tree
  5. from .log import debug
  6. __all__ = ['TemporaryDirectory']
  7. @contextmanager
  8. def TemporaryDirectory():
  9. '''Create a temporary directory (Python 2 wrapper)
  10. '''
  11. tmpdir = tempfile.mkdtemp(prefix='python-appimage-')
  12. debug('MKDIR', tmpdir)
  13. pwd = os.getcwd()
  14. os.chdir(tmpdir)
  15. try:
  16. yield tmpdir
  17. finally:
  18. debug('REMOVE', tmpdir)
  19. os.chdir(pwd)
  20. remove_tree(tmpdir)