Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDaniel Narvaez <dwnarvaez@gmail.com>2012-12-15 10:00:41 (GMT)
committer Daniel Narvaez <dwnarvaez@gmail.com>2012-12-15 10:00:41 (GMT)
commite05bf4079ee41ec5a00b985bb2a45d4b2c32a2d5 (patch)
tree99a44d84d17a904ea5aef6049f6ee8f47af124f6
parent6d24aa66ebb5231ead47bf5f0924908b76acd622 (diff)
Separate build and runtime state
Otherwise it becomes problematic to support multiple profiles
-rw-r--r--.gitignore2
-rw-r--r--commands/common.py2
-rw-r--r--devbot/config.py22
-rw-r--r--devbot/state.py2
4 files changed, 18 insertions, 10 deletions
diff --git a/.gitignore b/.gitignore
index c1c5cba..563f199 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,6 +1,6 @@
*~
*.pyc
-home/
+state/
install/
build/
source/
diff --git a/commands/common.py b/commands/common.py
index 81a4da1..7ada2fe 100644
--- a/commands/common.py
+++ b/commands/common.py
@@ -21,7 +21,7 @@ def setup():
source_dir=os.path.join(base_dir, "source"),
build_dir=os.path.join(base_dir, "build"),
commands_dir=os.path.join(base_dir, "commands"),
- home_dir=os.path.join(base_dir, "home"),
+ state_dir=os.path.join(base_dir, "state"),
prefs_path=os.path.join(base_dir, "prefs"),
logs_dir=logs_dir,
relocatable=relocatable)
diff --git a/devbot/config.py b/devbot/config.py
index 31abe3d..bb131b8 100644
--- a/devbot/config.py
+++ b/devbot/config.py
@@ -26,6 +26,7 @@ system_lib_dirs = None
cache_home_dir = None
config_home_dir = None
data_home_dir = None
+build_state_dir = None
_source_dir = None
_build_dir = None
@@ -100,28 +101,35 @@ def setup(**kwargs):
global _build_dir
_build_dir = kwargs["build_dir"]
- _setup_home_dir(kwargs["home_dir"])
+ _setup_state_dir(kwargs["state_dir"])
_setup_install_dir(kwargs["install_dir"], kwargs["relocatable"])
-def _setup_home_dir(dir):
- _ensure_dir(dir)
+def _setup_state_dir(state_dir):
+ _ensure_dir(state_dir)
+
+ global build_state_dir
+ build_state_dir = os.path.join(state_dir, "build")
+ _ensure_dir(build_state_dir)
+
+ home_dir = os.path.join(state_dir, "home")
+ _ensure_dir(home_dir)
global cache_home_dir
- cache_home_dir = os.path.join(dir, "cache")
+ cache_home_dir = os.path.join(home_dir, "cache")
_ensure_dir(cache_home_dir)
global config_home_dir
- config_home_dir = os.path.join(dir, "config")
+ config_home_dir = os.path.join(home_dir, "config")
_ensure_dir(config_home_dir)
global data_home_dir
- data_home_dir = os.path.join(dir, "data")
+ data_home_dir = os.path.join(home_dir, "data")
_ensure_dir(data_home_dir)
def _setup_prefix_dir(dir, relocatable):
global prefix_dir
- real_prefix_path = os.path.join(config_home_dir, "real_prefix")
+ real_prefix_path = os.path.join(build_state_dir, "real_prefix")
if os.path.exists(real_prefix_path):
with open(real_prefix_path) as f:
diff --git a/devbot/state.py b/devbot/state.py
index 03d249e..258c594 100644
--- a/devbot/state.py
+++ b/devbot/state.py
@@ -6,7 +6,7 @@ from devbot import config
_state = None
def _get_state_path():
- return os.path.join(config.data_home_dir, "state.json")
+ return os.path.join(config.build_state_dir, "state.json")
def _get_state():
global _state