| --- |
| # vim: sw=2 ts=2 sts=2 et : |
| |
| - job-template: |
| # |
| # job template for verifying gerrit changeset by shell script |
| # |
| # Required Variables: |
| # project-name: name of project |
| # area: area of project covered with this verification job |
| # project: name of scm repository to work on |
| # stream: name of stream used (set the same as branch if you're not sure) |
| # branch: git branch to work on |
| # script: build script to execute |
| # Optional Variables: |
| # pattern: trigger job only if modification covered file in pattern |
| # build-node: label(flavor) of jenkins slave |
| name: '{project-name}-{stream}-{area}-verify-shell' |
| node: '{build-node}' |
| type: freestyle |
| |
| pattern: '**' |
| |
| parameters: |
| - lf-infra-parameters: |
| branch: '{branch}' |
| project: '{project}' |
| stream: '{stream}' |
| lftools-version: '{lftools-version}' |
| |
| scm: |
| - gerrit-trigger-scm: |
| refspec: '$GERRIT_REFSPEC' |
| submodule-recursive: '{submodule-recursive}' |
| choosing-strategy: 'gerrit' |
| |
| triggers: |
| - gerrit-trigger-patch-submitted: |
| server: '{server-name}' |
| project: '{project}' |
| branch: '{branch}' |
| files: '{pattern}' |
| |
| builders: |
| - shell: '{script}' |
| |
| publishers: |
| - lf-infra-publish |
| |
| - job-template: |
| # Job template for merging a submission. triggered on |
| # gerrit-trigger-patch-merged, does scm, mvn with passed-in goals, then |
| # run script |
| # Required Variables: |
| # branch: git branch |
| # script: build script to execute |
| # mvn-settings: settings file for this specific job |
| # mvn-goals: space separated list of maven build goals (--version |
| # for noop, clean deploy for deploy [snapshot]) |
| name: '{project-name}-{stream}-merge-scm-mvn-script' |
| |
| project-type: freestyle |
| node: 'ubuntu1604-docker-8c-8g' |
| |
| properties: |
| - infra-properties: |
| build-days-to-keep: '{build-days-to-keep}' |
| |
| parameters: |
| - infra-parameters: |
| project: '{project}' |
| branch: '{branch}' |
| refspec: 'refs/heads/{branch}' |
| artifacts: '{archive-artifacts}' |
| - maven-exec: |
| maven-version: '{maven-version}' |
| |
| scm: |
| - gerrit-trigger-scm: |
| refspec: '' |
| choosing-strategy: 'default' |
| submodule-recursive: '{submodule-recursive}' |
| |
| wrappers: |
| - infra-wrappers: |
| build-timeout: '{build-timeout}' |
| |
| triggers: |
| - gerrit-trigger-patch-merged: |
| server: '{server-name}' |
| project: '{project}' |
| branch: '{branch}' |
| files: '**' |
| |
| builders: |
| - lf-infra-pre-build |
| - provide-maven-settings: |
| global-settings-file: 'global-settings' |
| settings-file: '{mvn-settings}' |
| - maven-target: |
| maven-version: '{maven-version}' |
| goals: '{mvn-goals}' |
| settings: '{mvn-settings}' |
| settings-type: cfp |
| global-settings: 'global-settings' |
| global-settings-type: cfp |
| - docker-login |
| - shell: '{script}' |
| |
| publishers: |
| - infra-shiplogs: |
| maven-version: '{maven-version}' |
| |
| |
| - 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}-two-scm-verify-script' |
| |
| project-type: freestyle |
| concurrent: true |
| node: '{build-node}' |
| |
| properties: |
| - infra-properties: |
| build-days-to-keep: '{build-days-to-keep}' |
| |
| parameters: |
| - infra-parameters: |
| project: '{project}' |
| branch: '{branch}' |
| refspec: 'refs/heads/{branch}' |
| artifacts: '{archive-artifacts}' |
| - maven-exec: |
| maven-version: '{maven-version}' |
| |
| scm: |
| - gerrit-trigger-scm: |
| refspec: '$GERRIT_REFSPEC' |
| choosing-strategy: 'gerrit' |
| submodule-recursive: '{submodule-recursive}' |
| - git-extra-project: |
| project: '{extra-project}' |
| refspec: '{extra-refspec}' |
| branch: '{extra-branch}' |
| checkout-dir: '{checkout-dir}' |
| |
| wrappers: |
| - infra-wrappers: |
| build-timeout: '{build-timeout}' |
| |
| triggers: |
| - gerrit-trigger-patch-submitted: |
| server: '{server-name}' |
| project: '{project}' |
| branch: '{branch}' |
| files: '**' |
| |
| builders: |
| - lf-infra-pre-build |
| - provide-maven-settings: |
| global-settings-file: 'global-settings' |
| settings-file: '{mvn-settings}' |
| # make sure maven gets installed / setup |
| - maven-target: |
| maven-version: '{maven-version}' |
| goals: '--version' |
| settings: '{mvn-settings}' |
| settings-type: cfp |
| global-settings: 'global-settings' |
| global-settings-type: cfp |
| - shell: '{script}' |
| |
| publishers: |
| - infra-shiplogs: |
| maven-version: '{maven-version}' |
| |
| |
| |
| # vim: sw=2 ts=2 sts=2 et : |
| |
| - job-template: |
| # Job template for two scm and script trigger - for docker merge |
| # |
| # Required Variables: |
| # branch: git branch |
| # build-node: what build node to run on |
| # script: build script to execute |
| |
| name: '{project-name}-{stream}-two-scm-merge-docker-script' |
| |
| project-type: freestyle |
| concurrent: true |
| node: '{build-node}' |
| |
| properties: |
| - infra-properties: |
| build-days-to-keep: '{build-days-to-keep}' |
| |
| parameters: |
| - infra-parameters: |
| project: '{project}' |
| branch: '{branch}' |
| refspec: 'refs/heads/{branch}' |
| artifacts: '{archive-artifacts}' |
| - maven-exec: |
| maven-version: '{maven-version}' |
| |
| scm: |
| - gerrit-trigger-scm: |
| refspec: '' |
| choosing-strategy: 'default' |
| submodule-recursive: '{submodule-recursive}' |
| - git-extra-project: |
| project: '{extra-project}' |
| refspec: '{extra-refspec}' |
| branch: '{extra-branch}' |
| checkout-dir: '{checkout-dir}' |
| |
| wrappers: |
| - infra-wrappers: |
| build-timeout: '{build-timeout}' |
| |
| triggers: |
| - gerrit-trigger-patch-merged: |
| server: '{server-name}' |
| project: '{project}' |
| branch: '{branch}' |
| files: '**' |
| |
| builders: |
| - lf-infra-pre-build |
| - provide-maven-settings: |
| global-settings-file: 'global-settings' |
| settings-file: '{mvn-settings}' |
| - docker-login |
| # make sure maven gets installed / setup |
| - maven-target: |
| maven-version: '{maven-version}' |
| goals: '--version' |
| settings: '{mvn-settings}' |
| settings-type: cfp |
| global-settings: 'global-settings' |
| global-settings-type: cfp |
| - shell: '{script}' |
| |
| publishers: |
| - infra-shiplogs: |
| maven-version: '{maven-version}' |
| |
| - job-template: |
| # Job template for two scm and script trigger - for docker daily release |
| # |
| # Required Variables: |
| # branch: git branch |
| # build-node: what build node to run on |
| # script: build script to execute |
| |
| name: '{project-name}-{stream}-two-scm-release-docker-script-manual' |
| |
| project-type: freestyle |
| concurrent: true |
| node: '{build-node}' |
| |
| properties: |
| - infra-properties: |
| build-days-to-keep: '{build-days-to-keep}' |
| |
| parameters: |
| - infra-parameters: |
| project: '{project}' |
| branch: '{branch}' |
| refspec: 'refs/heads/{branch}' |
| artifacts: '{archive-artifacts}' |
| - maven-exec: |
| maven-version: '{maven-version}' |
| |
| scm: |
| - gerrit-trigger-scm: |
| refspec: '' |
| choosing-strategy: 'default' |
| submodule-recursive: '{submodule-recursive}' |
| - git-extra-project: |
| project: '{extra-project}' |
| refspec: '{extra-refspec}' |
| branch: '{extra-branch}' |
| checkout-dir: '{checkout-dir}' |
| |
| wrappers: |
| - infra-wrappers: |
| build-timeout: '{build-timeout}' |
| |
| triggers: |
| - gerrit-trigger-release-manually: |
| server: '{server-name}' |
| project: '{project}' |
| branch: '{branch}' |
| |
| builders: |
| - lf-infra-pre-build |
| - provide-maven-settings: |
| global-settings-file: 'global-settings' |
| settings-file: '{mvn-settings}' |
| - docker-login |
| # make sure maven gets installed / setup |
| - maven-target: |
| maven-version: '{maven-version}' |
| goals: '--version' |
| settings: '{mvn-settings}' |
| settings-type: cfp |
| global-settings: 'global-settings' |
| global-settings-type: cfp |
| - shell: '{script}' |
| |
| publishers: |
| - infra-shiplogs: |
| maven-version: '{maven-version}' |
| |
| - job-template: |
| # 1. PULL the desired image |
| # 2. TAG it to the desired release name |
| # 3. PUSH the newly tagged image on release repo |
| |
| name: '{project-name}-docker-image-blessing' |
| |
| project-type: freestyle |
| concurrent: true |
| node: 'ubuntu1604-docker-8c-8g' |
| |
| parameters: |
| - string: |
| name: X |
| description: "x VERSION of the STAGING image to bless into this RELEASE VERSION |
| Example : 1" |
| - string: |
| name: Y |
| description: "y VERSION of the STAGING image to bless into this RELEASE VERSION |
| Example : 2" |
| - string: |
| name: Z |
| description: "z VERSION of the RELEASE VERSION |
| Example : 3" |
| - string: |
| name: PROJECT |
| default: '{project}' |
| |
| properties: |
| - infra-properties: |
| build-days-to-keep: '{build-days-to-keep}' |
| |
| wrappers: |
| - infra-wrappers: |
| build-timeout: '{build-timeout}' |
| |
| builders: |
| - lf-infra-pre-build |
| - provide-maven-settings: |
| global-settings-file: 'global-settings' |
| settings-file: '{mvn-settings}' |
| - docker-login |
| - shell: !include-raw: include-docker-blessing.sh |
| |
| publishers: |
| - infra-shiplogs: |
| maven-version: '{maven-version}' |