From 62269642ce0e0e56d68d495b6c4d27327c9ed649 Mon Sep 17 00:00:00 2001 From: Leandro Dorileo Date: Wed, 10 Aug 2011 01:09:05 -0400 Subject: scripts/combo-layer: a simple way to script the combo-layer conf This small patch introduces a a very simple and basic way to script the combo-layer conf file. With that a combo can be shared with no need to change its config - associated to the use of environment variables for example. *Similar* to bitbake it considers every value starting with @ to be a python script. So local_repo could be easily configured as: [bitbake] local_repo = @os.getenv("LOCAL_REPO_DIR") + "/bitbake" or any more sophisticated python syntax. This version updates the config file description so users can be aware of. Signed-off-by: Leandro Dorileo --- scripts/combo-layer | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/scripts/combo-layer b/scripts/combo-layer index d1291751fa..07b3382f0a 100755 --- a/scripts/combo-layer +++ b/scripts/combo-layer @@ -79,6 +79,14 @@ local_repo_dir = ~/src/oecore dest_dir = . last_revision = +# it's also possible to embed python code in the config values. Similar +# to bitbake it considers every value starting with @ to be a python script. +# So local_repo could be easily configured using an environment variable as: +# +# [bitbake] +# local_repo = @os.getenv("LOCAL_REPO_DIR") + "/bitbake" +# + # more components ... """ @@ -91,7 +99,10 @@ last_revision = for repo in self.parser.sections(): self.repos[repo] = {} for (name, value) in self.parser.items(repo): - self.repos[repo][name] = value + if value.startswith("@"): + self.repos[repo][name] = eval(value.strip("@")) + else: + self.repos[repo][name] = value def update(self, repo, option, value): self.parser.set(repo, option, value) -- cgit v1.2.3