summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorlj1412 <lji@research.att.com>2017-02-17 22:21:06 +0000
committerLusheng Ji <lji@research.att.com>2017-02-18 19:46:08 +0000
commitf75ed99361b3dfa731583352259525b17aaeec89 (patch)
tree7d034cc7b0cc81eabfbc7710734f52fe21895333
parent93b644286cbc0706aab65e81fef5713b8272291a (diff)
new script template and pgass' use
Change-Id: I7e08f11433690e48a8751184abc955d3d5ec7446 Signed-off-by: lj1412 <lji@research.att.com>
-rw-r--r--jjb/dcae/pgaas.yaml35
-rwxr-xr-x[-rw-r--r--]jjb/dcae/script-pgaas-daily-release.sh (renamed from jjb/dcae/include-raw-pgaas.sh)15
-rwxr-xr-xjjb/dcae/script-pgaas-merge.sh33
-rwxr-xr-xjjb/dcae/script-pgaas-verify.sh33
-rw-r--r--jjb/global-templates-script.yaml427
5 files changed, 510 insertions, 33 deletions
diff --git a/jjb/dcae/pgaas.yaml b/jjb/dcae/pgaas.yaml
index fa18bcec1..78643a82a 100644
--- a/jjb/dcae/pgaas.yaml
+++ b/jjb/dcae/pgaas.yaml
@@ -3,19 +3,7 @@
- project:
name: dcae-pgaas
project-name: 'dcae-pgaas'
- jobs:
- - '{project-name}-{stream}-two-scm-verify-script'
-
-
- # 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
-
+ stream: 'master'
project: 'dcae/pgaas'
stream:
- 'master':
@@ -24,9 +12,18 @@
files: '**'
archive-artifacts: ''
build-node: ubuntu1604-basebuild-4c-4g
- extra-project: 'dcae/utils/buildtools'
- extra-branch: 'master'
- extra-refspec: 'refs/heads/{branch}'
- checkout-dir: 'buildtools'
- script:
- !include-raw-escape: 'include-raw-pgaas.sh'
+ mvn-goals: '--version'
+ mvn-goals-versioning: '--version'
+ jobs:
+ - '{project-name}-{stream}-daily-release-scm-mvn-script':
+ maven-deploy-properties: |
+ deployAtEnd=true
+ script:
+ !include-raw-escape: 'script-pgaas-daily-release.sh'
+ - '{project-name}-{stream}-merge-scm-mvn-script':
+ script:
+ !include-raw-escape: 'script-pgaas-merge.sh'
+ - '{project-name}-{stream}-verify-scm-mvn-script':
+ script:
+ !include-raw-escape: 'script-pgaas-verify.sh'
+
diff --git a/jjb/dcae/include-raw-pgaas.sh b/jjb/dcae/script-pgaas-daily-release.sh
index cd84b03b4..0a4e3434a 100644..100755
--- a/jjb/dcae/include-raw-pgaas.sh
+++ b/jjb/dcae/script-pgaas-daily-release.sh
@@ -18,14 +18,13 @@ echo "machine nexus.openecomp.org login ${USER} password ${PASS}" > "${NETRC}"
echo $NEXUS_RAW
-export REPACKAGEDEBIANUPLOAD="set -x; curl -k \
- --netrc-file '${NETRC}' \
- --upload-file '{0}' \
- '${NEXUS_RAW}/org.openecomp.dcae.pgaas/deb-snapshots/{2}/{1}'"
-export REPACKAGEDEBIANUPLOAD2="set -x; curl -k \
- --netrc-file '${NETRC}' \
- --upload-file '{0}' \
- '${NEXUS_RAW}/org.openecomp.dcae.pgaas/deb-snapshots/{2}/{4}-LATEST.deb'"
+
+REPO="${NEXUS_RAW}/org.openecomp.dcae.pgaas/deb-snapshots"
+
+export REPACKAGEDEBIANUPLOAD="set -x; curl -k --netrc-file '${NETRC}' \
+ --upload-file '{0}' '${REPO}/{2}/{1}'"
+export REPACKAGEDEBIANUPLOAD2="set -x; curl -k --netrc-file '${NETRC}' \
+ --upload-file '{0}' '${REPO}/{2}/{4}-LATEST.deb'"
make debian
echo "================= ENDING SCRIPT TO CREATE DEBIAN FILES ================="
diff --git a/jjb/dcae/script-pgaas-merge.sh b/jjb/dcae/script-pgaas-merge.sh
new file mode 100755
index 000000000..0a4e3434a
--- /dev/null
+++ b/jjb/dcae/script-pgaas-merge.sh
@@ -0,0 +1,33 @@
+#!/bin/bash
+# Create a debian package and push to remote repo
+#
+echo "============== STARTING SCRIPT TO CREATE DEBIAN FILES ================="
+
+export BUILD_NUMBER="${BUILD_ID}"
+export PATH=$PATH:${WORKSPACE}/buildtools/bin
+
+export NEXUS_RAW="${NEXUSPROXY}/content/sites/raw"
+USER=$(xpath -q -e \
+ "//servers/server[id='ecomp-raw']/username/text()" "$SETTINGS_FILE")
+PASS=$(xpath -q -e \
+ "//servers/server[id='ecomp-raw']/password/text()" "$SETTINGS_FILE")
+
+# Create a netrc file for use with curl
+export NETRC=$(mktemp)
+echo "machine nexus.openecomp.org login ${USER} password ${PASS}" > "${NETRC}"
+
+echo $NEXUS_RAW
+
+
+REPO="${NEXUS_RAW}/org.openecomp.dcae.pgaas/deb-snapshots"
+
+export REPACKAGEDEBIANUPLOAD="set -x; curl -k --netrc-file '${NETRC}' \
+ --upload-file '{0}' '${REPO}/{2}/{1}'"
+export REPACKAGEDEBIANUPLOAD2="set -x; curl -k --netrc-file '${NETRC}' \
+ --upload-file '{0}' '${REPO}/{2}/{4}-LATEST.deb'"
+make debian
+echo "================= ENDING SCRIPT TO CREATE DEBIAN FILES ================="
+
+#echo "============= STARTING SCRIPT TO CREATE JAVADOCS FILES ================"
+#make upload-javadocs
+#echo "============= ENDING SCRIPT TO CREATE JAVADOCS FILES =================="
diff --git a/jjb/dcae/script-pgaas-verify.sh b/jjb/dcae/script-pgaas-verify.sh
new file mode 100755
index 000000000..51c802f60
--- /dev/null
+++ b/jjb/dcae/script-pgaas-verify.sh
@@ -0,0 +1,33 @@
+#!/bin/bash
+# Create a debian package and push to remote repo
+#
+echo "============== STARTING SCRIPT TO CREATE DEBIAN FILES ================="
+
+export BUILD_NUMBER="${BUILD_ID}"
+export PATH=$PATH:${WORKSPACE}/buildtools/bin
+
+export NEXUS_RAW="${NEXUSPROXY}/content/sites/raw"
+USER=$(xpath -q -e \
+ "//servers/server[id='ecomp-raw']/username/text()" "$SETTINGS_FILE")
+PASS=$(xpath -q -e \
+ "//servers/server[id='ecomp-raw']/password/text()" "$SETTINGS_FILE")
+
+# Create a netrc file for use with curl
+export NETRC=$(mktemp)
+echo "machine nexus.openecomp.org login ${USER} password ${PASS}" > "${NETRC}"
+
+echo $NEXUS_RAW
+
+
+REPO="${NEXUS_RAW}/org.openecomp.dcae.devnull/"
+
+export REPACKAGEDEBIANUPLOAD="set -x; curl -k --netrc-file '${NETRC}' \
+ --upload-file '{0}' '${REPO}/{2}/{1}'"
+export REPACKAGEDEBIANUPLOAD2="set -x; curl -k --netrc-file '${NETRC}' \
+ --upload-file '{0}' '${REPO}/{2}/{4}-LATEST.deb'"
+make debian
+echo "================= ENDING SCRIPT TO CREATE DEBIAN FILES ================="
+
+#echo "============= STARTING SCRIPT TO CREATE JAVADOCS FILES ================"
+#make upload-javadocs
+#echo "============= ENDING SCRIPT TO CREATE JAVADOCS FILES =================="
diff --git a/jjb/global-templates-script.yaml b/jjb/global-templates-script.yaml
index 83593727b..dbe7850f4 100644
--- a/jjb/global-templates-script.yaml
+++ b/jjb/global-templates-script.yaml
@@ -1,6 +1,427 @@
---
# vim: sw=2 ts=2 sts=2 et :
+
+- job-template:
+ # Job template for verify a submission. triggered on gerrit-trigger-patch-submitted, does
+ # scm, mvn with passed in goals, then run script
+ #
+ # Required Variables:
+ # branch: git branch
+ # build-node: what build node to run on
+ # script: build script to execute
+ # mvn-settings: settings file for this specific job
+ # mvn-goals: space separated list of maven build goals (e.g. clean, install
+ # etc, --version for noop)
+ name: '{project-name}-{stream}-verify-scm-mvn-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}'
+ - maven-target:
+ maven-version: 'mvn33'
+ goals: '{mvn-goals}'
+ settings: '{mvn-settings}'
+ settings-type: cfp
+ global-settings: 'global-settings'
+ global-settings-type: cfp
+ - docker-login
+ - shell: '{script}'
+
+
+
+- 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
+ # build-node: what build node to run on
+ # 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 [version must be snapshot])
+ name: '{project-name}-{stream}-merge-scm-mvn-script'
+
+ project-type: freestyle
+ 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: ''
+ choosing-strategy: 'default'
+
+ wrappers:
+ - ecomp-infra-wrappers:
+ build-timeout: '{build-timeout}'
+
+ triggers:
+ - gerrit-trigger-patch-merged:
+ server: '{server-name}'
+ project: '{project}'
+ branch: '{branch}'
+ files: '**'
+
+ builders:
+ - provide-maven-settings:
+ global-settings-file: 'global-settings'
+ settings-file: '{mvn-settings}'
+ - maven-target:
+ maven-version: 'mvn33'
+ goals: '{mvn-goals}'
+ settings: '{mvn-settings}'
+ settings-type: cfp
+ global-settings: 'global-settings'
+ global-settings-type: cfp
+ - docker-login
+ - shell: '{script}'
+
+
+
+
+- job-template:
+ # Job template for daily-release a submission. triggered on timer, does scm,
+ # mvn with passed-in goals, then run script
+ #
+ # Required Variables:
+ # branch: git branch
+ # build-node: what build node to run on
+ # script: build script to execute
+ # mvn-goals-versioning: space separated list of maven build goals (--version for no op,
+ # or versions:set versions:update-child-modules versions:commit or --version)
+ # mvn-goals: space separated list of maven build goals (--version for noop, or clean deploy)
+ name: '{project-name}-{stream}-daily-release-scm-mvn-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: ''
+ choosing-strategy: 'default'
+
+ wrappers:
+ - ecomp-infra-wrappers:
+ build-timeout: '{build-timeout}'
+
+ triggers:
+ # 11 AM UTC
+ - timed: 'H 11 * * *'
+
+ builders:
+ - provide-maven-settings:
+ global-settings-file: 'global-settings'
+ settings-file: '{mvn-settings}'
+ - inject:
+ properties-file: version.properties
+ - maven-target:
+ maven-version: 'mvn33'
+ goals: '{mvn-goals-versioning}'
+ properties:
+ - 'newVersion=${{release_version}}'
+ settings: '{mvn-settings}'
+ settings-type: cfp
+ global-settings: 'global-settings'
+ global-settings-type: cfp
+
+ - maven-target:
+ maven-version: 'mvn33'
+ goals: '{mvn-goals}'
+ properties:
+ - '{maven-deploy-properties}'
+ settings: '{mvn-settings}'
+ settings-type: cfp
+ global-settings: 'global-settings'
+ global-settings-type: cfp
+ - docker-login
+ - shell: '{script}'
+
+
+
+
+- job-template:
+ # Job template for verifying a submission. triggered on gerrit-trigger-patch-submitted,
+ # does scm 2 repos, mvn with passed-in goals, then run script
+ #
+ # 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
+ # mvn-goals: space separated list of maven build goals (e.g. clean, install etc,
+ # --version for noop)
+
+ name: '{project-name}-{stream}-verify-2scm-mvn-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}'
+ - maven-target:
+ maven-version: 'mvn33'
+ goals: '{mvn-goals}'
+ settings: '{mvn-settings}'
+ settings-type: cfp
+ global-settings: 'global-settings'
+ global-settings-type: cfp
+ - docker-login
+ - shell: '{script}'
+
+
+
+- job-template:
+ # Job template for merged submission. triggered on gerrit-trigger-patch-merged,
+ # does scm of 2 repos, mvn with passed in goals, then run script
+ #
+ # 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
+ # mvn-goals: space separated list of maven build goals (--version for no op,
+ # clean deploy for mvn project)
+
+ name: '{project-name}-{stream}-merge-2scm-mvn-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: ''
+ choosing-strategy: 'default'
+ - 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-merged:
+ server: '{server-name}'
+ project: '{project}'
+ branch: '{branch}'
+ files: '**'
+
+ builders:
+ - provide-maven-settings:
+ global-settings-file: 'global-settings'
+ settings-file: '{mvn-settings}'
+ - maven-target:
+ maven-version: 'mvn33'
+ goals: '{mvn-goals}'
+ settings: '{mvn-settings}'
+ settings-type: cfp
+ global-settings: 'global-settings'
+ global-settings-type: cfp
+ - docker-login
+ - shell: '{script}'
+
+
+
+- job-template:
+ # Job template for merged submission. triggered on gerrit-trigger-patch-merged,
+ # does scm x2, mvn with passed-in goals, then run script
+ #
+ # 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
+ # mvn-goals: space separated list of maven build goals (--version for no op,
+ # clean deploy for mvn project)
+ # mvn-goals-versioning: space separated list of maven build goals (--version for no op,
+ # clean deploy for mvn project)
+
+ name: '{project-name}-{stream}-daily-release-2scm-mvn-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: ''
+ choosing-strategy: 'default'
+ - 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:
+ - timed: 'H 11 * * *'
+
+ builders:
+ - provide-maven-settings:
+ global-settings-file: 'global-settings'
+ settings-file: '{mvn-settings}'
+ - inject:
+ properties-file: version.properties
+ - maven-target:
+ maven-version: 'mvn33'
+ goals: '{mvn-goals-versioning}'
+ properties:
+ - 'newVersion=${{release_version}}'
+ settings: '{mvn-settings}'
+ settings-type: cfp
+ global-settings: 'global-settings'
+ global-settings-type: cfp
+
+ - maven-target:
+ maven-version: 'mvn33'
+ goals: '{mvn-goals}'
+ settings: '{mvn-settings}'
+ settings-type: cfp
+ global-settings: 'global-settings'
+ global-settings-type: cfp
+ - docker-login
+ - shell: '{script}'
+
+
+
+
+
- job-template:
# Job template for basic scm and script trigger
#
@@ -25,8 +446,6 @@
branch: '{branch}'
refspec: 'refs/heads/{branch}'
artifacts: '{archive-artifacts}'
- - maven-exec:
- maven-version: 'mvn33'
scm:
- gerrit-trigger-scm:
@@ -93,8 +512,6 @@
branch: '{branch}'
refspec: 'refs/heads/{branch}'
artifacts: '{archive-artifacts}'
- - maven-exec:
- maven-version: 'mvn33'
scm:
- gerrit-trigger-scm:
@@ -173,8 +590,6 @@
branch: '{branch}'
refspec: 'refs/heads/{branch}'
artifacts: '{archive-artifacts}'
- - maven-exec:
- maven-version: 'mvn33'
scm:
- gerrit-trigger-scm: