diff options
-rw-r--r-- | .gitignore | 3 | ||||
-rwxr-xr-x | jjb/fuel/fuel-build.sh | 32 | ||||
-rw-r--r-- | jjb/fuel/fuel-ci-jobs.yml | 227 | ||||
-rwxr-xr-x | jjb/fuel/fuel-deploy-virtual.sh | 2 | ||||
-rwxr-xr-x | jjb/fuel/fuel-deploy.sh | 25 | ||||
-rwxr-xr-x | jjb/fuel/fuel-download-artifact.sh | 4 | ||||
-rwxr-xr-x | jjb/fuel/fuel-lab-reconfig.sh | 2 | ||||
-rw-r--r-- | jjb/fuel/fuel-project-jobs.yml (renamed from jjb/fuel/fuel.yml) | 225 | ||||
-rwxr-xr-x | jjb/fuel/fuel-upload-artifact.sh | 27 | ||||
-rw-r--r-- | jjb/fuel/opnfv-fuel.yml | 124 | ||||
-rw-r--r-- | jjb/functest/functest-ci-jobs.yml (renamed from jjb/functest/functest.yml) | 129 | ||||
-rw-r--r-- | jjb/functest/functest-project-jobs.yml | 62 | ||||
-rw-r--r-- | jjb/joid/joid-ci-jobs.yml (renamed from jjb/joid/joid.yml) | 80 | ||||
-rw-r--r-- | jjb/joid/joid-project-jobs.yml | 62 | ||||
-rw-r--r-- | jjb/opnfv/installer-params.yml | 4 | ||||
-rw-r--r-- | jjb/opnfv/slave-params.yml | 60 | ||||
-rw-r--r-- | jjb/yardstick/yardstick-ci-jobs.yml (renamed from jjb/yardstick/yardstick.yml) | 197 | ||||
-rw-r--r-- | jjb/yardstick/yardstick-project-jobs.yml | 118 |
18 files changed, 816 insertions, 567 deletions
diff --git a/.gitignore b/.gitignore index c23a0d69f..2884629e6 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,5 @@ -*.swp +*~ +.*.sw? /build/ /output/ /releng/ diff --git a/jjb/fuel/fuel-build.sh b/jjb/fuel/fuel-build.sh index 00617ce54..6ccfb6f0e 100755 --- a/jjb/fuel/fuel-build.sh +++ b/jjb/fuel/fuel-build.sh @@ -3,13 +3,41 @@ set -o errexit set -o nounset set -o pipefail +cd $WORKSPACE + +# check to see if we already have an artifact on artifacts.opnfv.org +# for this commit +echo "Checking to see if we already built and stored Fuel ISO for this commit" + +LATEST_ISO_PROPERTIES=$WORKSPACE/latest.iso.properties +curl -s -o $LATEST_ISO_PROPERTIES http://$GS_URL/latest.properties 2>/dev/null + +# get metadata of latest ISO +LATEST_ISO_SHA1=$(grep OPNFV_GIT_SHA1 $LATEST_ISO_PROPERTIES | cut -d'=' -f2) +LATEST_ISO_URL=$(grep OPNFV_ARTIFACT_URL $LATEST_ISO_PROPERTIES | cut -d'=' -f2) + +# get current SHA1 +CURRENT_SHA1=$(git rev-parse HEAD) + +if [[ "$CURRENT_SHA1" == "$LATEST_ISO_SHA1" ]]; then + echo "An ISO has already been built for this commit" + echo " $LATEST_ISO_URL" + echo "Nothing new to build. Exiting." + touch $WORKSPACE/.noupload + exit 0 +else + echo "This commit has not been built yet. Proceeding with the build." + /bin/rm -f $LATEST_ISO_PROPERTIES + echo +fi + # log info to console -echo "Starting the build of $INSTALLER. This could take some time..." +echo "Starting the build of $INSTALLER_TYPE. This could take some time..." echo "--------------------------------------------------------" echo # create the cache directory if it doesn't exist -[[ -d $CACHE_DIRECTORY ]] || mkdir -p $CACHE_DIRECTORY +mkdir -p $CACHE_DIRECTORY # set OPNFV_ARTIFACT_VERSION if [[ "$JOB_NAME" =~ "merge" ]]; then diff --git a/jjb/fuel/fuel-ci-jobs.yml b/jjb/fuel/fuel-ci-jobs.yml new file mode 100644 index 000000000..fa0f666d6 --- /dev/null +++ b/jjb/fuel/fuel-ci-jobs.yml @@ -0,0 +1,227 @@ +- project: + + name: 'fuel' + + project: 'fuel' + + installer: 'fuel' + +#-------------------------------- +# BRANCH ANCHORS +#-------------------------------- + master: &master + stream: master + branch: '{stream}' + gs-pathname: '' + brahmaputra: &brahmaputra + stream: brahmaputra + branch: 'stable/{stream}' + gs-pathname: '/{stream}' +#-------------------------------- +# POD, INSTALLER, AND BRANCH MAPPING +#-------------------------------- +# Current Mapping +#-------------------------------- +# everything runs against master branch +#-------------------------------- + pod: + - opnfv-jump-2: + <<: *master + - ericsson-pod1: + <<: *master + - ericsson-pod2: + <<: *master +#-------------------------------- +# Milestone E Mapping +# !!!DO NOT ENABLE!!! +#-------------------------------- +# brahmaputra +#-------------------------------- +# - opnfv-jump-2: +# <<: *brahmaputra + +# please check the triggers before enabling any of the controllers!!! + sdn-controller: + - 'nosdn': + disabled: false + - 'odl': + disabled: true + - 'onos': + disabled: true + - 'opencontrail': + disabled: true + + jobs: + - 'fuel-{sdn-controller}-{pod}-daily-{stream}' + - 'fuel-build-{pod}-daily-{stream}' + - 'fuel-deploy-{pod}-daily-{stream}' + +######################## +# job templates +######################## +- job-template: + name: 'fuel-{sdn-controller}-{pod}-daily-{stream}' + + project-type: multijob + + disabled: '{obj:disabled}' + + concurrent: false + + wrappers: + - build-name: + name: '$BUILD_NUMBER - SDN: $SDN_CONTROLLER Feature: $OPNFV_FEATURE' + + triggers: + - 'fuel-{pod}-trigger' + + parameters: + - project-parameter: + project: '{project}' + - '{pod}-defaults' + - '{installer}-defaults' + - string: + name: SDN_CONTROLLER + default: '{sdn-controller}' + - string: + name: OPNFV_FEATURE + default: 'none' + - fuel-ci-parameter: + gs-pathname: '{gs-pathname}' + + scm: + - git-scm: + credentials-id: '{ssh-credentials}' + refspec: '' + branch: '{branch}' + + builders: + - multijob: + name: build + condition: SUCCESSFUL + projects: + - name: 'fuel-build-{pod}-daily-{stream}' + git-revision: true + kill-phase-on: FAILURE + - multijob: + name: deploy + condition: SUCCESSFUL + projects: + - name: 'fuel-deploy-{pod}-daily-{stream}' + current-parameters: true + git-revision: true + kill-phase-on: FAILURE + - multijob: + name: functest + condition: COMPLETED + projects: + - name: 'functest-fuel-{pod}-daily-{stream}' + current-parameters: true + kill-phase-on: NEVER + - multijob: + name: yardstick + condition: COMPLETED + projects: + - name: 'yardstick-fuel-{pod}-daily-{stream}' + current-parameters: true + kill-phase-on: NEVER + +- job-template: + name: 'fuel-build-{pod}-daily-{stream}' + + parameters: + - project-parameter: + project: '{project}' + - 'ericsson-ca-build-1-defaults' + - '{installer}-defaults' + - fuel-ci-parameter: + gs-pathname: '{gs-pathname}' + + scm: + - git-scm: + credentials-id: '{ssh-credentials}' + refspec: '' + branch: '{branch}' + + wrappers: + - timeout: + timeout: 360 + fail: true + + builders: + - shell: + !include-raw ./fuel-build.sh + - shell: + !include-raw ./fuel-upload-artifact.sh + - shell: + !include-raw ./fuel-workspace-cleanup.sh + + publishers: + - email: + recipients: jonas.bjurel@ericsson.com stefan.k.berg@ericsson.com + +- job-template: + name: 'fuel-deploy-{pod}-daily-{stream}' + + parameters: + - project-parameter: + project: '{project}' + - '{pod}-defaults' + - '{installer}-defaults' + - fuel-ci-parameter: + gs-pathname: '{gs-pathname}' + + scm: + - git-scm: + credentials-id: '{ssh-credentials}' + refspec: '' + branch: '{branch}' + + wrappers: + - build-name: + name: '$BUILD_NUMBER - SDN: $SDN_CONTROLLER Feature: $OPNFV_FEATURE' + + builders: + - shell: + !include-raw ./fuel-download-artifact.sh + - shell: + !include-raw ./fuel-deploy.sh + + publishers: + - email: + recipients: jonas.bjurel@ericsson.com stefan.k.berg@ericsson.com +######################## +# parameter macros +######################## +- parameter: + name: fuel-ci-parameter + parameters: + - string: + name: BUILD_DIRECTORY + default: $WORKSPACE/build_output + description: "Directory where the build artifact will be located upon the completion of the build." + - string: + name: CACHE_DIRECTORY + default: $HOME/opnfv/cache/$INSTALLER_TYPE + description: "Directory where the cache to be used during the build is located." + - string: + name: GS_URL + default: artifacts.opnfv.org/$PROJECT{gs-pathname} + description: "URL to Google Storage." +######################## +# trigger macros +######################## +# trigger for opnfv-jump-2 is set to run 1 hour ahead of others +# to prevent doing unnecessary builds +- trigger: + name: 'fuel-opnfv-jump-2-trigger' + triggers: + - timed: '0 2 * * *' +- trigger: + name: 'fuel-ericsson-pod1-trigger' + triggers: + - timed: '0 3 * * *' +- trigger: + name: 'fuel-ericsson-pod2-trigger' + triggers: + - timed: '0 3 * * *' diff --git a/jjb/fuel/fuel-deploy-virtual.sh b/jjb/fuel/fuel-deploy-virtual.sh index 626a65060..1b644354b 100755 --- a/jjb/fuel/fuel-deploy-virtual.sh +++ b/jjb/fuel/fuel-deploy-virtual.sh @@ -22,7 +22,7 @@ CONFDIR=$WORKSPACE/deploy/templates/virtual_environment_noha/conf BRIDGE=pxebr # log info to console -echo "Starting the deployment for a merged change using $INSTALLER. This could take some time..." +echo "Starting the deployment for a merged change using $INSTALLER_TYPE. This could take some time..." echo "--------------------------------------------------------" echo diff --git a/jjb/fuel/fuel-deploy.sh b/jjb/fuel/fuel-deploy.sh index b617bcf01..bd2db3e65 100755 --- a/jjb/fuel/fuel-deploy.sh +++ b/jjb/fuel/fuel-deploy.sh @@ -11,39 +11,38 @@ echo "Using $(echo $OPNFV_ARTIFACT_URL | cut -d'/' -f3) for deployment" # create TMPDIR if it doesn't exist export TMPDIR=$HOME/tmpdir -[[ -d $TMPDIR ]] || mkdir -p $TMPDIR +mkdir -p $TMPDIR # change permissions down to TMPDIR chmod a+x $HOME chmod a+x $TMPDIR -# set CONFDIR, BRIDGE -CONFDIR=$WORKSPACE/deploy/templates/hardware_environment/conf/linux_foundation_lab/pod2 +# set BRIDGE BRIDGE=pxebr # clone genesis repo and checkout the SR1 tag -echo "Cloning genesis repo" -cd $WORKSPACE -GIT_SSL_NO_VERIFY=true git clone https://gerrit.opnfv.org/gerrit/genesis genesis -cd genesis -git checkout arno.2015.2.0 +#echo "Cloning genesis repo" +#cd $WORKSPACE +#GIT_SSL_NO_VERIFY=true git clone https://gerrit.opnfv.org/gerrit/genesis genesis +#cd genesis +#git checkout arno.2015.2.0 # cleanup first -sudo $WORKSPACE/genesis/common/ci/clean.sh -base_config $WORKSPACE/genesis/foreman/ci/inventory/lf_pod2_ksgen_settings.yml +#sudo $WORKSPACE/genesis/common/ci/clean.sh -base_config $WORKSPACE/genesis/foreman/ci/inventory/lf_pod2_ksgen_settings.yml # prepare for Fuel Deployment -sudo $WORKSPACE/genesis/common/ci/setup.sh +#sudo $WORKSPACE/genesis/common/ci/setup.sh # log info to console -echo "Starting the deployment using $INSTALLER. This could take some time..." +echo "Starting the deployment using $INSTALLER_TYPE. This could take some time..." echo "--------------------------------------------------------" echo # start the deployment echo "Issuing command" -echo "sudo $WORKSPACE/ci/deploy.sh -iso $WORKSPACE/opnfv.iso -dea $CONFDIR/dea.yaml -dha $CONFDIR/dha.yaml -s $TMPDIR -b $BRIDGE -nh" +echo "sudo $WORKSPACE/ci/deploy.sh -iso $WORKSPACE/opnfv.iso -dea $POD_CONF_DIR/dea.yaml -dha $POD_CONF_DIR/dha.yaml -s $TMPDIR -b $BRIDGE -nh" -sudo $WORKSPACE/ci/deploy.sh -iso $WORKSPACE/opnfv.iso -dea $CONFDIR/dea.yaml -dha $CONFDIR/dha.yaml -s $TMPDIR -b $BRIDGE -nh +sudo $WORKSPACE/ci/deploy.sh -iso $WORKSPACE/opnfv.iso -dea $POD_CONF_DIR/dea.yaml -dha $POD_CONF_DIR/dha.yaml -s $TMPDIR -b $BRIDGE -nh echo echo "--------------------------------------------------------" diff --git a/jjb/fuel/fuel-download-artifact.sh b/jjb/fuel/fuel-download-artifact.sh index 05dc05e05..917bc97a0 100755 --- a/jjb/fuel/fuel-download-artifact.sh +++ b/jjb/fuel/fuel-download-artifact.sh @@ -4,10 +4,12 @@ set -o nounset set -o pipefail if [[ "$JOB_NAME" =~ "merge" ]]; then + echo "Downloading http://$GS_URL/opnfv-gerrit-$GERRIT_CHANGE_NUMBER.properties" # get the properties file for the Fuel ISO built for a merged change curl -s -o $WORKSPACE/latest.properties http://$GS_URL/opnfv-gerrit-$GERRIT_CHANGE_NUMBER.properties else # get the latest.properties file in order to get info regarding latest artifact + echo "Downloading http://$GS_URL/latest.properties" curl -s -o $WORKSPACE/latest.properties http://$GS_URL/latest.properties fi @@ -18,7 +20,7 @@ fi source latest.properties # log info to console -echo "Downloading the $INSTALLER artifact using URL http://$OPNFV_ARTIFACT_URL" +echo "Downloading the $INSTALLER_TYPE artifact using URL http://$OPNFV_ARTIFACT_URL" echo "This could take some time..." echo "--------------------------------------------------------" echo diff --git a/jjb/fuel/fuel-lab-reconfig.sh b/jjb/fuel/fuel-lab-reconfig.sh index a79bc2c51..55bb5dd9d 100755 --- a/jjb/fuel/fuel-lab-reconfig.sh +++ b/jjb/fuel/fuel-lab-reconfig.sh @@ -19,7 +19,7 @@ if ! GIT_SSL_NO_VERIFY=true git clone https://gerrit.opnfv.org/gerrit/releng; th fi # log info to console -echo "Starting the lab reconfiguration for $INSTALLER..." +echo "Starting the lab reconfiguration for $INSTALLER_TYPE..." echo "--------------------------------------------------------" echo diff --git a/jjb/fuel/fuel.yml b/jjb/fuel/fuel-project-jobs.yml index f8eabb0b6..d28d52973 100644 --- a/jjb/fuel/fuel.yml +++ b/jjb/fuel/fuel-project-jobs.yml @@ -2,36 +2,32 @@ # Job configuration for fuel ######################## - project: - - name: fuel + name: fuel-project-jobs project: 'fuel' installer: 'fuel' +# only master branch is enabled at the moment to keep no of jobs sane + stream: + - master: + branch: '{stream}' + gs-pathname: '' +# - brahmaputra: +# branch: 'stable/{stream}' +# gs-pathname: '/{stream}' + jobs: - 'fuel-verify-build-{stream}' - 'fuel-merge-build-{stream}' - 'fuel-merge-deploy-virtual-{stream}' - - 'fuel-daily-{stream}' - - 'fuel-build-{stream}' - - 'fuel-deploy-{stream}' - - 'fuel-lab-reconfig-{stream}' - - stream: - - master: - branch: 'master' - gs-pathname: '' ######################## # job templates ######################## - - job-template: name: 'fuel-verify-build-{stream}' - node: ericsson-build - concurrent: true properties: @@ -44,8 +40,9 @@ project: '{project}' - gerrit-parameter: branch: '{branch}' - - fuel-parameter: - installer: '{installer}' + - 'ericsson-ca-build-1-defaults' + - '{installer}-defaults' + - fuel-project-parameter: gs-pathname: '{gs-pathname}' scm: @@ -90,8 +87,6 @@ - job-template: name: 'fuel-merge-build-{stream}' - node: ericsson-build - concurrent: true properties: @@ -104,9 +99,10 @@ project: '{project}' - gerrit-parameter: branch: '{branch}' - - fuel-parameter: - installer: '{installer}' - gs-pathname: '' + - 'ericsson-ca-build-1-defaults' + - '{installer}-defaults' + - fuel-project-parameter: + gs-pathname: '{gs-pathname}' scm: - gerrit-trigger-scm: credentials-id: '{ssh-credentials}' @@ -144,8 +140,6 @@ - job-template: name: 'fuel-merge-deploy-virtual-{stream}' - node: fuel-deploy-virtual - concurrent: true properties: @@ -159,9 +153,10 @@ project: '{project}' - gerrit-parameter: branch: '{branch}' - - fuel-parameter: - installer: '{installer}' - gs-pathname: '' + - 'fuel-deploy-virtual-defaults' + - '{installer}-defaults' + - fuel-project-parameter: + gs-pathname: '{gs-pathname}' scm: - gerrit-trigger-scm: credentials-id: '{ssh-credentials}' @@ -198,195 +193,21 @@ - email: recipients: jonas.bjurel@ericsson.com stefan.k.berg@ericsson.com -- job-template: - name: 'fuel-daily-{stream}' - - node: ericsson-build - - disabled: false - - triggers: - - 'fuel-{strem}-trigger' - - parameters: - - project-parameter: - project: '{project}' - - fuel-parameter: - installer: '{installer}' - gs-pathname: '{gs-pathname}' - - scm: - - git-scm: - credentials-id: '{ssh-credentials}' - refspec: '' - branch: '{branch}' - - builders: - - trigger-builds: - - project: 'fuel-build-{stream}' - git-revision: true - block: true - - trigger-builds: - - project: 'fuel-deploy-{stream}' - git-revision: true - block: true - - trigger-builds: - - project: 'functest-fuel-opnfv-jump-2-daily-{stream}' - block: true - block-thresholds: - build-step-failure-threshold: 'never' - failure-threshold: 'never' - unstable-threshold: 'FAILURE' - - trigger-builds: - - project: 'yardstick-fuel-opnfv-jump-2-daily-{stream}' - block: true - block-thresholds: - build-step-failure-threshold: 'never' - failure-threshold: 'never' - unstable-threshold: 'FAILURE' - - trigger-builds: - - project: 'bottlenecks-daily-fuel-lf-{stream}' - block: true - block-thresholds: - build-step-failure-threshold: 'never' - failure-threshold: 'never' - unstable-threshold: 'FAILURE' - - triggers: - - 'fuel-{stream}-daily-trigger' - -- job-template: - name: 'fuel-build-{stream}' - - node: ericsson-build - - parameters: - - project-parameter: - project: '{project}' - - fuel-parameter: - installer: '{installer}' - gs-pathname: '{gs-pathname}' - - scm: - - git-scm: - credentials-id: '{ssh-credentials}' - refspec: '' - branch: '{branch}' - - wrappers: - - timeout: - timeout: 360 - fail: true - - builders: - - shell: - !include-raw ./fuel-build.sh - - shell: - !include-raw ./fuel-upload-artifact.sh - - shell: - !include-raw ./fuel-workspace-cleanup.sh - - publishers: - - email: - recipients: jonas.bjurel@ericsson.com stefan.k.berg@ericsson.com - -- job-template: - name: 'fuel-deploy-{stream}' - - disabled: false - - node: opnfv-jump-2 - - parameters: - - project-parameter: - project: '{project}' - - fuel-parameter: - installer: '{installer}' - gs-pathname: '{gs-pathname}' - - string: - name: GIT_BASE - default: ssh://gerrit.opnfv.org:29418/$PROJECT - description: "POD2 has some issues with cloning using https so that's why GIT_BASE is overriden here again." - - scm: - - git-scm: - credentials-id: '{ssh-credentials}' - refspec: '' - branch: '{branch}' - - builders: - - shell: - !include-raw ./fuel-download-artifact.sh - - shell: - !include-raw ./fuel-deploy.sh - - publishers: - - email: - recipients: jonas.bjurel@ericsson.com stefan.k.berg@ericsson.com - -- job-template: - name: 'fuel-lab-reconfig-{stream}' - - disabled: true - - parameters: - - project-parameter: - project: '{project}' - - fuel-parameter: - installer: '{installer}' - gs-pathname: '{gs-pathname}' - - string: - name: GIT_BASE - default: ssh://gerrit.opnfv.org:29418/$PROJECT - description: "Used for overriding the GIT URL coming from parameters macro." - - scm: - - git-scm: - credentials-id: '{ssh-credentials}' - refspec: '' - branch: '{branch}' - - properties: - - build-blocker: - use-build-blocker: true - blocking-jobs: - - "apex-daily.*" - - builders: - - shell: - !include-raw ./fuel-lab-reconfig.sh - ######################## # parameter macros ######################## - parameter: - name: fuel-parameter + name: fuel-project-parameter parameters: - string: - name: INSTALLER - default: '{installer}' - description: "Installer to use." - - string: name: BUILD_DIRECTORY default: $WORKSPACE/build_output description: "Directory where the build artifact will be located upon the completion of the build." - string: name: CACHE_DIRECTORY - default: $HOME/opnfv/cache/$INSTALLER + default: $HOME/opnfv/cache/$INSTALLER_TYPE description: "Directory where the cache to be used during the build is located." - string: - name: GIT_BASE - default: https://gerrit.opnfv.org/gerrit/$PROJECT - description: "Used for overriding the GIT URL coming from Global Jenkins configuration in case if the stuff is done on none-LF HW." - - string: name: GS_URL default: artifacts.opnfv.org/$PROJECT{gs-pathname} description: "URL to Google Storage." - -######################## -# trigger macros -######################## -- trigger: - name: 'fuel-master-daily-trigger' - triggers: - - timed: '0 3 * * *' diff --git a/jjb/fuel/fuel-upload-artifact.sh b/jjb/fuel/fuel-upload-artifact.sh index b998e6a6a..fc350235e 100755 --- a/jjb/fuel/fuel-upload-artifact.sh +++ b/jjb/fuel/fuel-upload-artifact.sh @@ -3,8 +3,15 @@ set -o errexit set -o nounset set -o pipefail +# check if we built something +if [ -f $WORKSPSACE/.noupload ]; then + echo "Nothing new to upload. Exiting." + /bin/rm -f $WORKSPSACE/.noupload + exit 0 +fi + # log info to console -echo "Uploading the $INSTALLER artifact. This could take some time..." +echo "Uploading the $INSTALLER_TYPE artifact. This could take some time..." echo "--------------------------------------------------------" echo @@ -12,14 +19,26 @@ echo source $WORKSPACE/opnfv.properties # upload artifact and additional files to google storage -gsutil cp $BUILD_DIRECTORY/opnfv-$OPNFV_ARTIFACT_VERSION.iso gs://$GS_URL/opnfv-$OPNFV_ARTIFACT_VERSION.iso > gsutil.iso.log 2>&1 -gsutil cp $WORKSPACE/opnfv.properties gs://$GS_URL/opnfv-$OPNFV_ARTIFACT_VERSION.properties > gsutil.properties.log 2>&1 +gsutil cp $BUILD_DIRECTORY/opnfv-$OPNFV_ARTIFACT_VERSION.iso \ + gs://$GS_URL/opnfv-$OPNFV_ARTIFACT_VERSION.iso > gsutil.iso.log 2>&1 +gsutil cp $WORKSPACE/opnfv.properties \ + gs://$GS_URL/opnfv-$OPNFV_ARTIFACT_VERSION.properties > gsutil.properties.log 2>&1 if [[ ! "$JOB_NAME" =~ (verify|merge) ]]; then - gsutil cp $WORKSPACE/opnfv.properties gs://$GS_URL/latest.properties > gsutil.latest.log 2>&1 + gsutil cp $WORKSPACE/opnfv.properties \ + gs://$GS_URL/latest.properties > gsutil.latest.log 2>&1 elif [[ "$JOB_NAME" =~ "merge" ]]; then echo "Uploaded Fuel ISO for a merged change" fi +gsutil -m setmeta \ + -h "Content-Type:text/html" \ + -h "Cache-Control:private, max-age=0, no-transform" \ + gs://$GS_URL/*.properties > /dev/null 2>&1 + +gsutil -m setmeta \ + -h "Cache-Control:private, max-age=0, no-transform" \ + gs://$GS_URL/*.iso > /dev/null 2>&1 + echo echo "--------------------------------------------------------" echo "Done!" diff --git a/jjb/fuel/opnfv-fuel.yml b/jjb/fuel/opnfv-fuel.yml deleted file mode 100644 index 393f919d0..000000000 --- a/jjb/fuel/opnfv-fuel.yml +++ /dev/null @@ -1,124 +0,0 @@ -######################## -# Job configuration for fuel -######################## -- project: - - name: 'opnfv-fuel' - - installer: 'fuel' - - controller: - - 'odl' - - 'onos' - - 'opencontrail' - - pod: - - 'opnfv-jump-2' - - 'ericsson-pod1' - - loop: - - 'daily' - - # ignore these as these will not exist in real job - dummy-phase: - - build - - deploy - - functest - - yardstick - - stream: - - master: - branch: 'master' - gs-pathname: '' - - jobs: - - 'tmp_fuel-{controller}-{pod}-{loop}-{stream}' - - 'tmp_fuel-{dummy-phase}-{pod}-{loop}-{stream}' - -######################## -# job templates -######################## -- job-template: - name: 'tmp_fuel-{controller}-{pod}-{loop}-{stream}' - - project-type: multijob - - parameters: - - project-parameter: - project: '{installer}' - - 'ericsson-ca-build-1-defaults' - - '{installer}-defaults' - - string: - name: CONTROLLER - default: '{controller}' - - string: - name: FEATURE - default: 'none' - - scm: - - git-scm: - credentials-id: '{ssh-credentials}' - refspec: '' - branch: '{branch}' - - builders: - - multijob: - name: build - condition: SUCCESSFUL - projects: - - name: 'tmp_fuel-build-{loop}-{stream}' - kill-phase-on: FAILURE - current-parameters: true - - multijob: - name: deploy - condition: SUCCESSFUL - projects: - - name: 'tmp_fuel-deploy-{pod}-{loop}-{stream}' - kill-phase-on: FAILURE - current-parameters: true - - multijob: - name: functest - projects: - - name: 'tmp_fuel-test-{pod}-{loop}-{stream}' - current-parameters: true - - multijob: - name: yardstick - projects: - - name: 'tmp_fuel-test-{pod}-{loop}-{stream}' - current-parameters: true - - -- job-template: - name: 'tmp_fuel-{dummy-phase}-{pod}-{loop}-{stream}' - - disabled: false - - concurrent: false - - wrappers: - - build-name: - name: '$BUILD_NUMBER: {installer} $CONTROLLER' - - parameters: - - project-parameter: - project: '{installer}' - - '{pod}-defaults' - - '{installer}-defaults' - - string: - name: CONTROLLER - default: 'none' - - string: - name: FEATURE - default: 'none' - - scm: - - git-scm: - credentials-id: '{ssh-credentials}' - refspec: '' - branch: '{branch}' - - builders: - - shell: | - #!/bin/bash - echo "Hello World from OPNFV $INSTALLER_TYPE" - echo "Running $INSTALLER_TYPE with controller $CONTROLLER" diff --git a/jjb/functest/functest.yml b/jjb/functest/functest-ci-jobs.yml index 5aa178bc3..df57efbb6 100644 --- a/jjb/functest/functest.yml +++ b/jjb/functest/functest-ci-jobs.yml @@ -6,19 +6,89 @@ project: '{name}' +#-------------------------------- +# BRANCH ANCHORS +#-------------------------------- + master: &master + stream: master + branch: '{stream}' + gs-pathname: '' + brahmaputra: &brahmaputra + stream: brahmaputra + branch: 'stable/{stream}' + gs-pathname: '/{stream}' +#-------------------------------- +# POD, INSTALLER, AND BRANCH MAPPING +#-------------------------------- +# Current Mapping +#-------------------------------- +# everything runs against master branch +#-------------------------------- pod: + - huawei-us-deploy-bare-1: + installer: compass + <<: *master + - intel-pod5: + installer: joid + <<: *master - intel-us-deploy-virtual-2: installer: apex + <<: *master - opnfv-jump-2: installer: fuel + <<: *master + - ericsson-pod1: + installer: fuel + <<: *master + - ericsson-pod2: + installer: fuel + <<: *master - orange-test1: installer: fuel + <<: *master - orange-pod2: installer: joid - - huawei-us-deploy-bare-1: - installer: compass - - intel-pod5: - installer: joid + <<: *master +#-------------------------------- +# Milestone E Mapping +# !!!DO NOT ENABLE!!! +#-------------------------------- +# brahmaputra +#-------------------------------- +# - huawei-us-deploy-bare-1: +# installer: compass +# <<: *brahmaputra +# - intel-pod5: +# installer: joid +# <<: *brahmaputra +# - opnfv-jump-1: +# installer: apex +# <<: *brahmaputra +# - opnfv-jump-2: +# installer: fuel +# <<: *brahmaputra +#-------------------------------- +# master +#-------------------------------- +# - ericsson-pod2: +# installer: fuel +# <<: *master +# - intelpod2-jumphost: +# installer: apex +# <<: *master +# - intel-pod6: +# installer: joid +# <<: *master +# - intel-pod8: +# installer: compass +# <<: *master +# - orange-test1: +# installer: fuel +# <<: *master +# - orange-pod2: +# installer: joid +# <<: *master +#-------------------------------- testsuite: - 'daily' @@ -26,15 +96,6 @@ jobs: - 'functest-{installer}-{pod}-{testsuite}-{stream}' - - 'functest-verify-{stream}' - - stream: - - master: - branch: 'master' - gs-pathname: '' -# - brahmaputra: -# branch: 'stable/brahmaputra' -# gs-pathname: '/brahmaputra' ################################ # job template @@ -44,7 +105,7 @@ wrappers: - build-name: - name: '$BUILD_NUMBER: $FUNCTEST_SUITE_NAME $SDN_CONTROLLER $OPNFV_FEATURE' + name: '$BUILD_NUMBER Suite: $FUNCTEST_SUITE_NAME SDN: $SDN_CONTROLLER Feature: $OPNFV_FEATURE' parameters: - project-parameter: @@ -52,7 +113,8 @@ - '{pod}-defaults' - '{installer}-defaults' - 'functest-{testsuite}-parameter' - - functest-parameter + - functest-parameter: + gs-pathname: '{gs-pathname}' scm: - git-scm: @@ -63,43 +125,6 @@ builders: - 'functest-{testsuite}-builder' -- job-template: - name: 'functest-verify-{stream}' - - parameters: - - project-parameter: - project: '{project}' - - gerrit-parameter: - branch: '{branch}' - scm: - - gerrit-trigger-scm: - credentials-id: '{ssh-credentials}' - refspec: '$GERRIT_REFSPEC' - choosing-strategy: 'gerrit' - - triggers: - - gerrit: - trigger-on: - - patchset-created-event: - exclude-drafts: 'false' - exclude-trivial-rebase: 'false' - exclude-no-code-change: 'false' - - draft-published-event - - comment-added-contains-event: - comment-contains-value: 'recheck' - - comment-added-contains-event: - comment-contains-value: 'reverify' - projects: - - project-compare-type: 'ANT' - project-pattern: 'functest' - branches: - - branch-compare-type: 'ANT' - branch-pattern: '**/{branch}' - - builders: - - shell: | - echo "Nothing to verify!" - ######################## # parameter macros ######################## diff --git a/jjb/functest/functest-project-jobs.yml b/jjb/functest/functest-project-jobs.yml new file mode 100644 index 000000000..e2a5c1afd --- /dev/null +++ b/jjb/functest/functest-project-jobs.yml @@ -0,0 +1,62 @@ +################################################### +# All the jobs except verify have been removed! +# They will only be enabled on request by projects! +################################################### +- project: + name: functest-project-jobs + + project: 'functest' + + jobs: + - 'functest-verify-{stream}' + +# only master branch is enabled at the moment to keep no of jobs sane + stream: + - master: + branch: 'master' + gs-pathname: '' +# - brahmaputra: +# branch: 'stable/brahmaputra' +# gs-pathname: '/brahmaputra' + +- job-template: + name: 'functest-verify-{stream}' + + parameters: + - project-parameter: + project: '{project}' + - gerrit-parameter: + branch: '{branch}' + - 'opnfv-build-defaults' + + scm: + - gerrit-trigger-scm: + credentials-id: '{ssh-credentials}' + refspec: '$GERRIT_REFSPEC' + choosing-strategy: 'gerrit' + + triggers: + - gerrit: + trigger-on: + - patchset-created-event: + exclude-drafts: 'false' + exclude-trivial-rebase: 'false' + exclude-no-code-change: 'false' + - draft-published-event + - comment-added-contains-event: + comment-contains-value: 'recheck' + - comment-added-contains-event: + comment-contains-value: 'reverify' + projects: + - project-compare-type: 'ANT' + project-pattern: '{project}' + branches: + - branch-compare-type: 'ANT' + branch-pattern: '**/{branch}' + forbidden-file-paths: + - compare-type: ANT + pattern: 'docs/**|.gitignore' + + builders: + - shell: | + echo "Nothing to verify!" diff --git a/jjb/joid/joid.yml b/jjb/joid/joid-ci-jobs.yml index 90b3df682..af81aacb2 100644 --- a/jjb/joid/joid.yml +++ b/jjb/joid/joid-ci-jobs.yml @@ -7,8 +7,49 @@ project: '{name}' - installer: 'joid' - + installer: '{name}' + +#-------------------------------- +# BRANCH ANCHORS +#-------------------------------- + master: &master + stream: master + branch: '{stream}' + gs-pathname: '' + brahmaputra: &brahmaputra + stream: brahmaputra + branch: 'stable/{stream}' + gs-pathname: '/{stream}' +#-------------------------------- +# POD, INSTALLER, AND BRANCH MAPPING +#-------------------------------- +# Current Mapping +#-------------------------------- +# everything runs against master branch +#-------------------------------- + pod: + - intel-pod5: + <<: *master + - orange-pod2: + <<: *master +#-------------------------------- +# Milestone E Mapping +# !!!DO NOT ENABLE!!! +#-------------------------------- +# brahmaputra +#-------------------------------- +# - intel-pod5: +# <<: *brahmaputra +#-------------------------------- +# master +#-------------------------------- +# - intel-pod6: +# <<: *master +# - orange-pod2: +# <<: *master +#-------------------------------- + +# please check the triggers before enabling any of the controllers!!! sdn-controller: - 'nosdn': disabled: true @@ -19,19 +60,6 @@ - 'opencontrail': disabled: true - pod: - - 'intel-pod5' - - 'orange-pod2' - -# only master branch is enabled at the moment to keep no of jobs sane - stream: - - master: - branch: '{stream}' - gs-pathname: '' -# - brahmaputra: -# branch: 'stable/{stream}' -# gs-pathname: '{stream}' - jobs: - 'joid-{sdn-controller}-{pod}-daily-{stream}' - 'joid-deploy-{pod}-daily-{stream}' @@ -48,6 +76,13 @@ concurrent: false + wrappers: + - build-name: + name: '$BUILD_NUMBER - SDN: $SDN_CONTROLLER Feature: $OPNFV_FEATURE' + + triggers: + - 'joid-{pod}-trigger' + parameters: - project-parameter: project: '{project}' @@ -80,7 +115,7 @@ wrappers: - build-name: - name: '$BUILD_NUMBER: $INSTALLER_TYPE $SDN_CONTROLLER' + name: '$BUILD_NUMBER - SDN: $SDN_CONTROLLER Feature: $OPNFV_FEATURE' parameters: - project-parameter: @@ -183,3 +218,16 @@ ./clean.sh - shell: !include-raw ./joid-deploy.sh +######################## +# trigger macros +######################## +- trigger: + name: 'joid-intel-pod5-trigger' + triggers: + - timed: '0 3 * * *' +# timer trigger is commented out since we do not know if the automatic runs should +# be enabled on orange-pod2 +- trigger: + name: 'joid-orange-pod2-trigger' + triggers: + - timed: '#0 3 * * *' diff --git a/jjb/joid/joid-project-jobs.yml b/jjb/joid/joid-project-jobs.yml new file mode 100644 index 000000000..987b3f9e1 --- /dev/null +++ b/jjb/joid/joid-project-jobs.yml @@ -0,0 +1,62 @@ +################################################### +# All the jobs except verify have been removed! +# They will only be enabled on request by projects! +################################################### +- project: + name: joid-project-jobs + + project: 'joid' + + jobs: + - 'joid-verify-{stream}' + +# only master branch is enabled at the moment to keep no of jobs sane + stream: + - master: + branch: '{stream}' + gs-pathname: '' +# - brahmaputra: +# branch: 'stable/{stream}' +# gs-pathname: '/{stream}' + +- job-template: + name: 'joid-verify-{stream}' + + parameters: + - project-parameter: + project: '{project}' + - gerrit-parameter: + branch: '{branch}' + - 'opnfv-build-defaults' + + scm: + - gerrit-trigger-scm: + credentials-id: '{ssh-credentials}' + refspec: '$GERRIT_REFSPEC' + choosing-strategy: 'gerrit' + + triggers: + - gerrit: + trigger-on: + - patchset-created-event: + exclude-drafts: 'false' + exclude-trivial-rebase: 'false' + exclude-no-code-change: 'false' + - draft-published-event + - comment-added-contains-event: + comment-contains-value: 'recheck' + - comment-added-contains-event: + comment-contains-value: 'reverify' + projects: + - project-compare-type: 'ANT' + project-pattern: '{project}' + branches: + - branch-compare-type: 'ANT' + branch-pattern: '**/{branch}' + forbidden-file-paths: + - compare-type: ANT + pattern: 'docs/**|.gitignore' + + builders: + - shell: | + echo "Nothing to verify!" diff --git a/jjb/opnfv/installer-params.yml b/jjb/opnfv/installer-params.yml index 1bd1ce737..dc170f79a 100644 --- a/jjb/opnfv/installer-params.yml +++ b/jjb/opnfv/installer-params.yml @@ -57,6 +57,10 @@ name: OPNFV_FEATURE default: 'none' description: 'OPNFV Feature to activate' + - string: + name: DEPLOY_SCENARIO + default: 'test' + description: 'OPNFV Deployment Scenario' - parameter: name: 'joid-defaults' diff --git a/jjb/opnfv/slave-params.yml b/jjb/opnfv/slave-params.yml index e36a0b684..ddc1786cd 100644 --- a/jjb/opnfv/slave-params.yml +++ b/jjb/opnfv/slave-params.yml @@ -15,7 +15,7 @@ - string: name: GIT_BASE default: https://gerrit.opnfv.org/gerrit/$PROJECT - description: 'Git URL to use on the jumphost' + description: 'Git URL to use on this Jenkins Slave' - string: name: SSH_KEY default: /root/.ssh/id_rsa @@ -38,7 +38,11 @@ - string: name: GIT_BASE default: ssh://gerrit.opnfv.org:29418/$PROJECT - description: 'Git URL to use on the jumphost' + description: 'Git URL to use on this Jenkins Slave' + - string: + name: POD_CONF_DIR + default: $WORKSPACE/deploy/templates/hardware_environment/conf/linux_foundation_lab/pod2 + description: 'Directory where POD configuration files are located.' - parameter: name: 'ericsson-pod1-defaults' @@ -57,7 +61,11 @@ - string: name: GIT_BASE default: https://gerrit.opnfv.org/gerrit/$PROJECT - description: 'Git URL to use on the jumphost' + description: 'Git URL to use on this Jenkins Slave' + - string: + name: POD_CONF_DIR + default: $WORKSPACE/deploy/templates/hardware_environment/conf/ericsson_montreal_lab/pod1 + description: 'Directory where POD configuration files are located.' - parameter: name: 'ericsson-pod2-defaults' @@ -76,7 +84,11 @@ - string: name: GIT_BASE default: https://gerrit.opnfv.org/gerrit/$PROJECT - description: 'Git URL to use on the jumphost' + description: 'Git URL to use on this Jenkins Slave' + - string: + name: POD_CONF_DIR + default: $WORKSPACE/deploy/templates/hardware_environment/conf/ericsson_montreal_lab/pod2 + description: 'Directory where POD configuration files are located.' - parameter: name: 'intelpod2-jumphost-defaults' @@ -95,7 +107,7 @@ - string: name: GIT_BASE default: https://gerrit.opnfv.org/gerrit/$PROJECT - description: 'Git URL to use on the jumphost' + description: 'Git URL to use on this Jenkins Slave' - string: name: SSH_KEY default: /root/.ssh/id_rsa @@ -114,7 +126,7 @@ - string: name: GIT_BASE default: https://gerrit.opnfv.org/gerrit/$PROJECT - description: 'Git URL to use on the jumphost' + description: 'Git URL to use on this Jenkins Slave' - parameter: name: 'intel-pod5-defaults' @@ -133,7 +145,7 @@ - string: name: GIT_BASE default: https://gerrit.opnfv.org/gerrit/$PROJECT - description: 'Git URL to use on the jumphost' + description: 'Git URL to use on this Jenkins Slave' - parameter: name: 'intel-pod6-defaults' @@ -152,7 +164,7 @@ - string: name: GIT_BASE default: https://gerrit.opnfv.org/gerrit/$PROJECT - description: 'Git URL to use on the jumphost' + description: 'Git URL to use on this Jenkins Slave' - parameter: name: 'intel-pod8-defaults' @@ -171,7 +183,7 @@ - string: name: GIT_BASE default: https://gerrit.opnfv.org/gerrit/$PROJECT - description: 'Git URL to use on the jumphost' + description: 'Git URL to use on this Jenkins Slave' - parameter: name: 'huawei-us-deploy-bare-1-defaults' @@ -190,7 +202,7 @@ - string: name: GIT_BASE default: https://gerrit.opnfv.org/gerrit/$PROJECT - description: 'Git URL to use on the jumphost' + description: 'Git URL to use on this Jenkins Slave' - parameter: name: 'opnfv-build-defaults' @@ -207,7 +219,7 @@ - string: name: GIT_BASE default: https://gerrit.opnfv.org/gerrit/$PROJECT - description: 'Git URL to use on the slave' + description: 'Git URL to use on this Jenkins Slave' - parameter: name: 'intel-us-build-1-defaults' @@ -222,7 +234,7 @@ - string: name: GIT_BASE default: https://gerrit.opnfv.org/gerrit/$PROJECT - description: 'Git URL to use on the slave' + description: 'Git URL to use on this Jenkins Slave' - parameter: name: 'intel-us-build-2-defaults' @@ -237,7 +249,7 @@ - string: name: GIT_BASE default: https://gerrit.opnfv.org/gerrit/$PROJECT - description: 'Git URL to use on the slave' + description: 'Git URL to use on this Jenkins Slave' - parameter: name: 'ericsson-ca-build-1-defaults' @@ -252,7 +264,7 @@ - string: name: GIT_BASE default: https://gerrit.opnfv.org/gerrit/$PROJECT - description: 'Git URL to use on the slave' + description: 'Git URL to use on this Jenkins Slave' - parameter: name: 'zte-build-1' @@ -267,7 +279,7 @@ - string: name: GIT_BASE default: https://gerrit.opnfv.org/gerrit/$PROJECT - description: 'Git URL to use on the slave' + description: 'Git URL to use on this Jenkins Slave' - parameter: name: 'orange-pod2-defaults' @@ -286,7 +298,7 @@ - string: name: GIT_BASE default: https://gerrit.opnfv.org/gerrit/$PROJECT - description: 'Git URL to use on the jumphost' + description: 'Git URL to use on this Jenkins Slave' - string: name: LAB_CONFIG default: "/home/opnfv/repos/functest" @@ -310,26 +322,26 @@ - string: name: GIT_BASE default: https://gerrit.opnfv.org/gerrit/$PROJECT - description: 'Git URL to use on the jumphost' + description: 'Git URL to use on this Jenkins Slave' - parameter: - name: 'intel-us-deploy-virtual-1-defaults' + name: 'fuel-deploy-virtual-defaults' parameters: - node: name: SLAVE_NAME description: 'Slave name on Jenkins' allowed-slaves: - intel-us-deploy-virtual-1 +# ericsson slave has been excluded until the issues are identified and solved +# - ericsson-ca-deploy-virtual-1 default-slaves: - intel-us-deploy-virtual-1 - - string: - name: INSTALLER_VERSION - default: latest - description: 'Version of the installer to deploy' +# ericsson slave has been excluded until the issues are identified and solved +# - ericsson-ca-deploy-virtual-1 - string: name: GIT_BASE default: https://gerrit.opnfv.org/gerrit/$PROJECT - description: 'Git URL to use on the jumphost' + description: 'Git URL to use on this Jenkins Slave' - parameter: name: 'intel-us-deploy-virtual-2-defaults' @@ -348,7 +360,7 @@ - string: name: GIT_BASE default: https://gerrit.opnfv.org/gerrit/$PROJECT - description: 'Git URL to use on the jumphost' + description: 'Git URL to use on this Jenkins Slave' - string: name: SSH_KEY default: /root/.ssh/id_rsa diff --git a/jjb/yardstick/yardstick.yml b/jjb/yardstick/yardstick-ci-jobs.yml index e5c306a56..470bf68b9 100644 --- a/jjb/yardstick/yardstick.yml +++ b/jjb/yardstick/yardstick-ci-jobs.yml @@ -1,131 +1,88 @@ +################################### +# job configuration for functest +################################### - project: name: yardstick project: '{name}' +#-------------------------------- +# BRANCH ANCHORS +#-------------------------------- + master: &master + stream: master + branch: '{stream}' + gs-pathname: '' + brahmaputra: &brahmaputra + stream: brahmaputra + branch: 'stable/{stream}' + gs-pathname: '{stream}' +#-------------------------------- +# POD, INSTALLER, AND BRANCH MAPPING +#-------------------------------- +# Current Mapping +#-------------------------------- +# everything runs against master branch +#-------------------------------- pod: - opnfv-jump-2: installer: fuel + <<: *master - ericsson-pod1: installer: fuel + <<: *master + - ericsson-pod2: + installer: fuel + <<: *master - huawei-us-deploy-bare-1: installer: compass - + <<: *master +#-------------------------------- +# Milestone E Mapping +# !!!DO NOT ENABLE!!! +#-------------------------------- +# brahmaputra +#-------------------------------- +# - huawei-us-deploy-bare-1: +# installer: compass +# <<: *brahmaputra +# - intel-pod5: +# installer: joid +# <<: *brahmaputra +# - opnfv-jump-1: +# installer: apex +# <<: *brahmaputra +# - opnfv-jump-2: +# installer: fuel +# <<: *brahmaputra +#-------------------------------- +# master +#-------------------------------- +# - ericsson-pod1: +# installer: fuel +# <<: *master +# - ericsson-pod2: +# installer: fuel +# <<: *master +#-------------------------------- loop: - daily jobs: - 'yardstick-{installer}-{pod}-{loop}-{stream}' - - 'yardstick-merge-{stream}' - - 'yardstick-verify-{stream}' - - stream: - - master: - branch: 'master' - gs-pathname: '' -# - brahmaputra: -# branch: 'stable/brahmaputra' -# gs-pathname: '/brahmaputra' - -- job-template: - name: 'yardstick-verify-{stream}' - - parameters: - - project-parameter: - project: '{project}' - - gerrit-parameter: - branch: '{branch}' - - 'ericsson-ca-build-1-defaults' - - scm: - - gerrit-trigger-scm: - credentials-id: '{ssh-credentials}' - refspec: '$GERRIT_REFSPEC' - choosing-strategy: 'gerrit' - - triggers: - - gerrit: - trigger-on: - - patchset-created-event: - exclude-drafts: 'false' - exclude-trivial-rebase: 'false' - exclude-no-code-change: 'false' - - draft-published-event - - comment-added-contains-event: - comment-contains-value: 'recheck' - - comment-added-contains-event: - comment-contains-value: 'reverify' - projects: - - project-compare-type: 'ANT' - project-pattern: '{project}' - branches: - - branch-compare-type: 'ANT' - branch-pattern: '**/{branch}' - - builders: - - shell: | - #!/bin/bash - set -o errexit - set -o pipefail - - echo "Running unit tests..." - cd $WORKSPACE - virtualenv $WORKSPACE/yardstick_venv - source $WORKSPACE/yardstick_venv/bin/activate - easy_install -U setuptools - python setup.py develop - ./run_tests.sh - deactivate - -- job-template: - name: 'yardstick-merge-{stream}' - - parameters: - - project-parameter: - project: '{project}' - - gerrit-parameter: - branch: '{branch}' - - 'ericsson-ca-build-1-defaults' - - scm: - - gerrit-trigger-scm: - credentials-id: '{ssh-credentials}' - refspec: '' - choosing-strategy: 'default' - - triggers: - - gerrit: - trigger-on: - - change-merged-event - - comment-added-contains-event: - comment-contains-value: 'remerge' - projects: - - project-compare-type: 'ANT' - project-pattern: '{project}' - branches: - - branch-compare-type: 'ANT' - branch-pattern: '**/{branch}' - - builders: - - shell: | - #!/bin/bash - set -o errexit - set -o pipefail - - echo "Running unit tests..." - cd $WORKSPACE - virtualenv $WORKSPACE/yardstick_venv - source $WORKSPACE/yardstick_venv/bin/activate - easy_install -U setuptools - python setup.py develop - ./run_tests.sh - deactivate +################################ +# job templates +################################ - job-template: name: 'yardstick-{installer}-{pod}-{loop}-{stream}' disabled: false + wrappers: + - build-name: + name: '$BUILD_NUMBER - SDN: $SDN_CONTROLLER Feature: $OPNFV_FEATURE' + parameters: - project-parameter: project: '{project}' @@ -141,10 +98,7 @@ - git-scm: credentials-id: '{ssh-credentials}' refspec: '' - branch: master - - triggers: - - 'yardstick-trigger-{pod}' + branch: '{branch}' builders: - 'yardstick-cleanup' @@ -227,6 +181,14 @@ description: 'Arguments to use in order to choose the backend DB' - parameter: + name: 'yardstick-params-ericsson-pod2' + parameters: + - string: + name: YARDSTICK_DB_BACKEND + default: 'none' + description: 'Arguments to use in order to choose the backend DB' + +- parameter: name: 'yardstick-params-opnfv-jump-2' parameters: - string: @@ -241,20 +203,3 @@ name: YARDSTICK_DB_BACKEND default: 'none' description: 'Arguments to use in order to choose the backend DB' -######################## -# trigger macros -######################## -- trigger: - name: 'yardstick-trigger-ericsson-pod1' - triggers: - - timed: '@midnight' - -- trigger: - name: 'yardstick-trigger-opnfv-jump-2' - triggers: - - timed: '#@midnight' - -- trigger: - name: 'yardstick-trigger-huawei-us-deploy-bare-1' - triggers: - - timed: '#@midnight' diff --git a/jjb/yardstick/yardstick-project-jobs.yml b/jjb/yardstick/yardstick-project-jobs.yml new file mode 100644 index 000000000..193b69284 --- /dev/null +++ b/jjb/yardstick/yardstick-project-jobs.yml @@ -0,0 +1,118 @@ +################################################### +# All the jobs except verify have been removed! +# They will only be enabled on request by projects! +################################################### +- project: + name: yardstick-project-jobs + + project: 'yardstick' + + jobs: + - 'yardstick-verify-{stream}' + - 'yardstick-merge-{stream}' + +# only master branch is enabled at the moment to keep no of jobs sane + stream: + - master: + branch: 'master' + gs-pathname: '' +# - brahmaputra: +# branch: 'stable/brahmaputra' +# gs-pathname: '/brahmaputra' + +################################ +# job templates +################################ + +- job-template: + name: 'yardstick-verify-{stream}' + + parameters: + - project-parameter: + project: '{project}' + - gerrit-parameter: + branch: '{branch}' + - 'ericsson-ca-build-1-defaults' + + scm: + - gerrit-trigger-scm: + credentials-id: '{ssh-credentials}' + refspec: '$GERRIT_REFSPEC' + choosing-strategy: 'gerrit' + + triggers: + - gerrit: + trigger-on: + - patchset-created-event: + exclude-drafts: 'false' + exclude-trivial-rebase: 'false' + exclude-no-code-change: 'false' + - draft-published-event + - comment-added-contains-event: + comment-contains-value: 'recheck' + - comment-added-contains-event: + comment-contains-value: 'reverify' + projects: + - project-compare-type: 'ANT' + project-pattern: '{project}' + branches: + - branch-compare-type: 'ANT' + branch-pattern: '**/{branch}' + builders: + - shell: | + #!/bin/bash + set -o errexit + set -o pipefail + + echo "Running unit tests..." + cd $WORKSPACE + virtualenv $WORKSPACE/yardstick_venv + source $WORKSPACE/yardstick_venv/bin/activate + easy_install -U setuptools + python setup.py develop + ./run_tests.sh + deactivate + +- job-template: + name: 'yardstick-merge-{stream}' + + parameters: + - project-parameter: + project: '{project}' + - gerrit-parameter: + branch: '{branch}' + - 'ericsson-ca-build-1-defaults' + + scm: + - gerrit-trigger-scm: + credentials-id: '{ssh-credentials}' + refspec: '' + choosing-strategy: 'default' + + triggers: + - gerrit: + trigger-on: + - change-merged-event + - comment-added-contains-event: + comment-contains-value: 'remerge' + projects: + - project-compare-type: 'ANT' + project-pattern: '{project}' + branches: + - branch-compare-type: 'ANT' + branch-pattern: '**/{branch}' + + builders: + - shell: | + #!/bin/bash + set -o errexit + set -o pipefail + + echo "Running unit tests..." + cd $WORKSPACE + virtualenv $WORKSPACE/yardstick_venv + source $WORKSPACE/yardstick_venv/bin/activate + easy_install -U setuptools + python setup.py develop + ./run_tests.sh + deactivate |