diff options
author | Joshua Harlow <harlowja@yahoo-inc.com> | 2012-06-11 20:11:44 -0700 |
---|---|---|
committer | Joshua Harlow <harlowja@yahoo-inc.com> | 2012-06-11 20:11:44 -0700 |
commit | 1f120980a3217289f4bad02b813053664732e4bf (patch) | |
tree | bc462f3196962dec334226707856f1a89895d2a8 | |
parent | 08fa7fc2fb32764eac25fba9d83f61ce1243aa7b (diff) | |
download | vyos-cloud-init-1f120980a3217289f4bad02b813053664732e4bf.tar.gz vyos-cloud-init-1f120980a3217289f4bad02b813053664732e4bf.zip |
Rename sem class to file sem class, add clear_all methods, add empty methods to dummy sem class.
-rw-r--r-- | cloudinit/helpers.py | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/cloudinit/helpers.py b/cloudinit/helpers.py index 16548001..e5f33a26 100644 --- a/cloudinit/helpers.py +++ b/cloudinit/helpers.py @@ -49,8 +49,14 @@ class DummySemaphores(object): def has_run(self, _name, _freq): return False + def clear(self, _name, _freq): + return True + + def clear_all(self): + pass + -class Semaphores(object): +class FileSemaphores(object): def __init__(self, sem_path): self.sem_path = sem_path @@ -71,6 +77,12 @@ class Semaphores(object): return False return True + def clear_all(self): + try: + util.del_dir(self.sem_path) + except (IOError, OSError): + pass + def _acquire(self, name, freq): if self.has_run(name, freq): return None @@ -117,7 +129,7 @@ class Runners(object): if not sem_path: return None if sem_path not in self.sems: - self.sems[sem_path] = Semaphores(sem_path) + self.sems[sem_path] = FileSemaphores(sem_path) return self.sems[sem_path] def run(self, name, functor, args, freq=None, clear_on_fail=False): |