Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/devbot/state.py
diff options
context:
space:
mode:
authorDaniel Narvaez <dwnarvaez@gmail.com>2012-12-25 17:39:56 (GMT)
committer Daniel Narvaez <dwnarvaez@gmail.com>2012-12-25 17:39:56 (GMT)
commit3022a9c90a374a9c6ba402b6aede0a503bf6315e (patch)
tree86129b34ecb5655a7b22f2bb1cc4e45d734fd01c /devbot/state.py
parent1226f3dabfef23217d6052b42e18eb7340f5a7f4 (diff)
Allow the config to require a full build
Diffstat (limited to 'devbot/state.py')
-rw-r--r--devbot/state.py15
1 files changed, 14 insertions, 1 deletions
diff --git a/devbot/state.py b/devbot/state.py
index 3cb3e42..b44652f 100644
--- a/devbot/state.py
+++ b/devbot/state.py
@@ -6,6 +6,7 @@ from devbot import config
from devbot import git
_BUILT_MODULES = "builtmodules"
+_FULL_BUILD = "fullbuild"
_SYSTEM_CHECK = "syscheck"
def _get_state_path(name):
@@ -76,13 +77,25 @@ def system_check_touch():
system_check["commit"] = _get_root_commit_id()
_save_state(_SYSTEM_CHECK, system_check)
+def full_build_is_required():
+ full_build = _load_state(_FULL_BUILD)
+ if not full_build:
+ return True
+
+ return not (full_build["last"] == config.get_full_build())
+
+def full_build_touch():
+ full_build = _load_state(_FULL_BUILD, {})
+ full_build["last"] = config.get_full_build()
+ _save_state(_FULL_BUILD, full_build)
+
def clean():
_state = None
print "Deleting state"
try:
- for name in _BUILT_MODULES, _SYSTEM_CHECK:
+ for name in _BUILT_MODULES, _SYSTEM_CHECK, _FULL_BUILD:
os.unlink(_get_state_path(name))
except OSError:
pass