diff options
author | Sander Vrijders <sander.vrijders@ugent.be> | 2017-06-16 17:58:40 +0200 |
---|---|---|
committer | Sander Vrijders <sander.vrijders@ugent.be> | 2017-06-19 11:35:38 +0200 |
commit | c76edec913dbdd847d6d5229d8b8cef090084cef (patch) | |
tree | fc25bb188d954b8ea79e6270aab50236e389b355 /rumba/model.py | |
parent | 67288b3505dab7e9ea74fc87d139301e945b4a78 (diff) | |
download | rumba-c76edec913dbdd847d6d5229d8b8cef090084cef.tar.gz rumba-c76edec913dbdd847d6d5229d8b8cef090084cef.zip |
rumba: Better placement of files created by Rumba
Temporary files such as ssh_info, the rspecs, logs, ... are now
created in /tmp/rumba to avoid too many files being created and never
removed. The VM images and jFed CLI are kept in ~/.cache/rumba to
avoid redownloading every reboot.
Closes #18, #19
Diffstat (limited to 'rumba/model.py')
-rw-r--r-- | rumba/model.py | 21 |
1 files changed, 17 insertions, 4 deletions
diff --git a/rumba/model.py b/rumba/model.py index affdcbf..f4f98d1 100644 --- a/rumba/model.py +++ b/rumba/model.py @@ -22,10 +22,25 @@ import abc import rumba.log as log - +import os +import stat logger = log.get_logger(__name__) +tmp_dir = '/tmp/rumba' +try: + os.mkdir(tmp_dir) + os.chmod(tmp_dir, stat.S_IRWXU | stat.S_IRWXG | stat.S_IRWXO) +except OSError: + # Already there, nothing to do + pass + +cache_dir = os.path.join(os.path.expanduser("~"), '.cache/rumba/') +try: + os.mkdir(cache_dir) +except OSError: + # Already there, nothing to do + pass # Represents generic testbed info # @@ -222,8 +237,6 @@ class Node: s += ", ".join(rl) s += " ]\n" - s += " Policies: [ " - return s def __hash__(self): @@ -628,7 +641,7 @@ class Experiment: break def dump_ssh_info(self): - f = open('ssh_info', 'w') + f = open(os.path.join(tmp_dir, 'ssh_info'), 'w') for node in self.nodes: f.write("%s;%s;%s;%s;%s\n" % (node.name, self.testbed.username, |