You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cordova.apache.org by an...@apache.org on 2015/04/20 08:11:13 UTC
cordova-medic git commit: [CB-8805] Added ability to specify a custom
repos config file via forced builds.
Repository: cordova-medic
Updated Branches:
refs/heads/master cd54cfdc9 -> 639f9a6d6
[CB-8805] Added ability to specify a custom repos config file via forced builds.
Project: http://git-wip-us.apache.org/repos/asf/cordova-medic/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-medic/commit/639f9a6d
Tree: http://git-wip-us.apache.org/repos/asf/cordova-medic/tree/639f9a6d
Diff: http://git-wip-us.apache.org/repos/asf/cordova-medic/diff/639f9a6d
Branch: refs/heads/master
Commit: 639f9a6d62f1a780ff69260690e1e990083a8ed2
Parents: cd54cfd
Author: Dmitry Blotsky <dm...@gmail.com>
Authored: Tue Mar 31 07:43:24 2015 -0400
Committer: Dmitry Blotsky <dm...@gmail.com>
Committed: Thu Apr 16 18:33:42 2015 -0700
----------------------------------------------------------------------
buildbot-conf/cordova.conf | 34 ++++++++++++++++++++++++++--------
1 file changed, 26 insertions(+), 8 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cordova-medic/blob/639f9a6d/buildbot-conf/cordova.conf
----------------------------------------------------------------------
diff --git a/buildbot-conf/cordova.conf b/buildbot-conf/cordova.conf
index 2a02827..f65d264 100644
--- a/buildbot-conf/cordova.conf
+++ b/buildbot-conf/cordova.conf
@@ -9,6 +9,7 @@ from buildbot.config import BuilderConfig
from buildbot.process.properties import renderer
from buildbot.process.properties import Interpolate as I
+from buildbot.process.properties import Property as P
from buildbot.steps.source.git import Git
from buildbot.steps.transfer import FileDownload
@@ -29,9 +30,10 @@ medic_config = parse_config_file(MEDIC_CONFIG_FILE)
projects_config = parse_config_file(PROJECTS_CONFIG_FILE)
# constants
-DEFAULT_REPO_NAME = 'src'
-BASE_WORKDIR = '.'
-TEST_APP_NAME = 'mobilespec'
+DEFAULT_REPO_NAME = 'src'
+BASE_WORKDIR = '.'
+TEST_APP_NAME = 'mobilespec'
+REPOS_PROPERTY_NAME = 'repositories_config'
OSX = 'osx'
LINUX = 'linux'
@@ -90,6 +92,12 @@ def can_find_running_tasks(step):
(step.build.getProperty('platform') is not None)
)
+def dont_use_default_repos(step):
+ return not use_default_repos(step)
+
+def use_default_repos(step):
+ return step.build.getProperty(REPOS_PROPERTY_NAME) is None
+
# renderers
@renderer
def render_platform_repo_name(props):
@@ -182,8 +190,11 @@ def RMRF(path, description=None, **kwargs):
def Set(name, value, **kwargs):
return DescribedStep(SetProperty, 'setting ' + name, property=name, value=value, **kwargs)
-def Download(mastersrc, slavedest):
- return FileDownload(mastersrc=mastersrc, slavedest=slavedest, workdir=BASE_WORKDIR)
+def Download(mastersrc, slavedest, description, **kwargs):
+ # NOTE:
+ # the FileDownload step has a bug and requires the
+ # 'description' parameter to be a list
+ return FileDownload(mastersrc=mastersrc, slavedest=slavedest, description=[description], workdir=BASE_WORKDIR, **kwargs)
####### SLAVES
@@ -212,7 +223,7 @@ get_medic_steps = [
plugins_cleanup_steps = [
# set build properties
- Set('repositoryname', render_repo_name),
+ Set('repository_name', render_repo_name),
# kill running emulators
SH(
@@ -236,8 +247,15 @@ plugins_cleanup_steps = [
common_plugins_steps = plugins_cleanup_steps + get_medic_steps + [
# download medic's config to slave
- Download(mastersrc=PROJECTS_CONFIG_FILE, slavedest='cordova-medic/cordova-repos.json'),
- Download(mastersrc=MEDIC_CONFIG_FILE, slavedest='cordova-medic/config.json'),
+ Download(mastersrc=MEDIC_CONFIG_FILE, slavedest='cordova-medic/config.json', description='downloading master\'s config'),
+
+ # download repo config
+ # NOTE:
+ # only one of these steps should be executed; thanks
+ # to Buildbot there is no good if-else construct for
+ # builds, so we have two steps with 'doStepIf's
+ SH(command=['curl', P(REPOS_PROPERTY_NAME), '--output', 'cordova-medic/cordova-repos.json'], description='downloading custom repo config', doStepIf=dont_use_default_repos),
+ Download(mastersrc=PROJECTS_CONFIG_FILE, slavedest='cordova-medic/cordova-repos.json', description='downloading default repo config', doStepIf=use_default_repos),
# clone all repos
MedicClone(config_path='cordova-medic/cordova-repos.json', excludes=['cordova-medic']),
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org