diff options
author | 2017-02-08 12:40:56 -0800 | |
---|---|---|
committer | 2017-02-08 12:40:56 -0800 | |
commit | 1ac7c2ddcc72a358175e821b8191e3cb13304ae7 (patch) | |
tree | 777c4b95763675c5e99a54fcf5bba31859d01f48 | |
parent | 8ccaba19a050e63c2be2625a69ac9b4e952898ef (diff) |
Add script verify and multi-scm script verify
* Add example templates for doing verify jobs that use a script instead of
maven
* Add new 'git-extra-project' macro for doing git checkouts that are not
the base project checkout. These _must_ be checked out to a specified
subdirectory
* Add example template that does two git checkouts
Change-Id: I522da87d591ee819a8fd67c22e25906b851a581e
Signed-off-by: Andrew Grimberg <agrimberg@linuxfoundation.org>
-rw-r--r-- | jjb/global-macros.yaml | 19 | ||||
-rw-r--r-- | jjb/global-templates-script.yaml | 132 |
2 files changed, 150 insertions, 1 deletions
diff --git a/jjb/global-macros.yaml b/jjb/global-macros.yaml index d2068a828..a9681033f 100644 --- a/jjb/global-macros.yaml +++ b/jjb/global-macros.yaml @@ -1,6 +1,8 @@ --- # Global macros +# vim: sw=2 ts=2 sts=2 et : + # BUILDERS - builder: name: ci-management-check-unicode @@ -160,7 +162,7 @@ url: '$GIT_BASE' refspec: '' branches: - - 'origin/${branch}' + - 'origin/{branch}' skip-tag: true wipe-workspace: true timeout: 30 @@ -205,6 +207,21 @@ timeout: 30 wipe-workspace: true +- scm: + name: git-extra-project + scm: + - git: + credentials-id: 'ecomp-jenkins-ssh' + url: '$GIT_NO_PROJECT/{project}' + refspec: '{refspec}' + branches: + - 'origin/{branch}' + skip-tag: true + timeoute: 30 + wipe-workspace: false + basedir: '{checkout-dir}' + + # TRIGGERS # This is a single macro to use for all jobs who vote on every (relevant) patch diff --git a/jjb/global-templates-script.yaml b/jjb/global-templates-script.yaml new file mode 100644 index 000000000..9dd5dce8b --- /dev/null +++ b/jjb/global-templates-script.yaml @@ -0,0 +1,132 @@ +--- +# vim: sw=2 ts=2 sts=2 et : + +- job-template: + # Job template for basic scm and script trigger + # + # Required Variables: + # branch: git branch + # build-node: what build node to run on + # script: build script to execute + + name: '{project-name}-{stream}-verify-script' + + project-type: freestyle + concurrent: true + node: '{build-node}' + + properties: + - ecomp-infra-properties: + build-days-to-keep: '{build-days-to-keep}' + + parameters: + - ecomp-infra-parameters: + project: '{project}' + branch: '{branch}' + refspec: 'refs/heads/{branch}' + artifacts: '{archive-artifacts}' + + scm: + - gerrit-trigger-scm: + refspec: '$GERRIT_REFSPEC' + choosing-strategy: 'gerrit' + + wrappers: + - ecomp-infra-wrappers: + build-timeout: '{build-timeout}' + + triggers: + - gerrit-trigger-patch-submitted: + server: '{server-name}' + project: '{project}' + branch: '{branch}' + files: '**' + + builders: + - provide-maven-settings: + global-settings-file: 'global-settings' + settings-file: '{mvn-settings}' + # make sure maven gets installed / setup + - maven-target: + maven-version: 'mvn33' + goals: '--version' + settings: '{mvn-settings}' + settings-type: cfp + global-settings: 'global-settings' + global-settings-type: cfp + - shell: '{script}' + +# publishers: +# - ecomp-infra-shiplogs: +# maven-version: 'mvn33' + +- job-template: + # Job template for 2 scm and script trigger + # + # Required Variables: + # branch: git branch + # build-node: what build node to run on + # script: build script to execute + # extra-project: extra gerrit project to checkout + # extra-refspec: refspec for the extra project + # extra-branch: branch to checkout for the extra project + # checkout-dir: directory to checkout the extra project to + # DO NOT SET THIS TO anything that translates to + # $WORKSPACE as it will destroy the initial + # project checkout + + name: '{project-name}-{stream}-multi-scm-verify-script' + + project-type: freestyle + concurrent: true + node: '{build-node}' + + properties: + - ecomp-infra-properties: + build-days-to-keep: '{build-days-to-keep}' + + parameters: + - ecomp-infra-parameters: + project: '{project}' + branch: '{branch}' + refspec: 'refs/heads/{branch}' + artifacts: '{archive-artifacts}' + + scm: + - gerrit-trigger-scm: + refspec: '$GERRIT_REFSPEC' + choosing-strategy: 'gerrit' + - git-extra-project: + project: '{extra-project}' + refspec: '{extra-refspec}' + branch: '{extra-branch}' + checkout-dir: '{checkout-dir}' + + wrappers: + - ecomp-infra-wrappers: + build-timeout: '{build-timeout}' + + triggers: + - gerrit-trigger-patch-submitted: + server: '{server-name}' + project: '{project}' + branch: '{branch}' + files: '**' + + builders: + - provide-maven-settings: + global-settings-file: 'global-settings' + settings-file: '{mvn-settings}' + # make sure maven gets installed / setup + - maven-target: + maven-version: 'mvn33' + goals: '--version' + settings: '{mvn-settings}' + settings-type: cfp + global-settings: 'global-settings' + global-settings-type: cfp + - shell: '{script}' + +# publishers: +# - ecomp-infra-shiplogs: +# maven-version: 'mvn33' |