summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexandru Avadanii <Alexandru.Avadanii@enea.com>2017-09-03 00:07:24 +0200
committerAlexandru Avadanii <Alexandru.Avadanii@enea.com>2017-09-05 01:49:26 +0200
commitad0c91f390ff90ddf293ff6654e9db6cade227b4 (patch)
tree930f7386239fada829a35e14bc659cf557302a2d
parent444ec6314f41400bb4e1cb8dfd65f66083cb794e (diff)
fuel, armband: verify jobs: Enable virtual deploy
Enable virtual deploy phase for verify multijob for both projects. Since fuel-defaults already define SSH_KEY param, drop it from individual jobs. Fuel: - drop merge jobs, which used to perform virtual deploys based on ISO created during verify job; - cleanup fuel-download-artifact (rm support for merge/verify); Armband: - while at it, remove "opnfv-build-enea-defaults", preparing for arm-build2's retirement. JIRA: FUEL-278 JIRA: FUEL-287 Change-Id: I354d72d88187e41070f44c723ccc651a0bb9b021 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
-rw-r--r--jjb/armband/armband-ci-jobs.yml7
-rw-r--r--jjb/armband/armband-verify-jobs.yml25
-rw-r--r--jjb/fuel/fuel-daily-jobs.yml5
-rwxr-xr-xjjb/fuel/fuel-deploy.sh10
-rwxr-xr-xjjb/fuel/fuel-download-artifact.sh39
-rw-r--r--jjb/fuel/fuel-project-jobs.yml72
-rw-r--r--jjb/fuel/fuel-verify-jobs.yml25
-rw-r--r--jjb/fuel/fuel-weekly-jobs.yml1
-rw-r--r--jjb/global/slave-params.yml15
9 files changed, 56 insertions, 143 deletions
diff --git a/jjb/armband/armband-ci-jobs.yml b/jjb/armband/armband-ci-jobs.yml
index b27b053a4..d440d8374 100644
--- a/jjb/armband/armband-ci-jobs.yml
+++ b/jjb/armband/armband-ci-jobs.yml
@@ -82,6 +82,7 @@
use-build-blocker: true
blocking-jobs:
- '{installer}-os-.*?-{pod}-daily-.*'
+ - 'armband-verify-.*'
block-level: 'NODE'
wrappers:
@@ -215,10 +216,6 @@
name: GS_URL
default: artifacts.opnfv.org/$PROJECT{gs-pathname}
description: "URL to Google Storage."
- - string:
- name: SSH_KEY
- default: "/tmp/mcp.rsa"
- description: "Path to private SSH key to access environment nodes. For MCP deployments only."
########################
# trigger macros
@@ -283,4 +280,4 @@
- trigger:
name: 'fuel-os-odl_l3-nofeature-ha-armband-virtual-euphrates-trigger'
triggers:
- - timed: '' \ No newline at end of file
+ - timed: ''
diff --git a/jjb/armband/armband-verify-jobs.yml b/jjb/armband/armband-verify-jobs.yml
index 56f70d68b..b30fbafb2 100644
--- a/jjb/armband/armband-verify-jobs.yml
+++ b/jjb/armband/armband-verify-jobs.yml
@@ -21,11 +21,11 @@
#####################################
phase:
- 'basic':
- slave-label: 'opnfv-build-enea'
+ slave-label: 'armband-virtual'
- 'deploy-virtual':
- slave-label: 'opnfv-build-enea'
+ slave-label: 'armband-virtual'
- 'smoke-test':
- slave-label: 'opnfv-build-enea'
+ slave-label: 'armband-virtual'
#####################################
# jobs
#####################################
@@ -50,6 +50,11 @@
enabled: true
max-total: 4
option: 'project'
+ - build-blocker:
+ use-build-blocker: true
+ blocking-jobs:
+ - 'fuel-os-.*?-virtual-daily-.*'
+ block-level: 'NODE'
scm:
- git-scm-gerrit
@@ -94,7 +99,8 @@
- project-parameter:
project: '{project}'
branch: '{branch}'
- - 'opnfv-build-enea-defaults'
+ - 'armband-virtual-defaults':
+ installer: '{installer}'
- 'armband-verify-defaults':
gs-pathname: '{gs-pathname}'
@@ -155,7 +161,8 @@
- logrotate-default
- throttle:
enabled: true
- max-total: 6
+ max-total: 2
+ max-per-node: 1
option: 'project'
- build-blocker:
use-build-blocker: true
@@ -177,6 +184,8 @@
project: '{project}'
branch: '{branch}'
- '{slave-label}-defaults'
+ - 'armband-virtual-defaults':
+ installer: '{installer}'
- '{installer}-defaults'
- 'armband-verify-defaults':
gs-pathname: '{gs-pathname}'
@@ -199,10 +208,8 @@
- builder:
name: 'armband-verify-deploy-virtual-macro'
builders:
- - shell: |
- #!/bin/bash
-
- echo "Not activated!"
+ - shell:
+ !include-raw-escape: ../fuel/fuel-deploy.sh
- builder:
name: 'armband-verify-smoke-test-macro'
diff --git a/jjb/fuel/fuel-daily-jobs.yml b/jjb/fuel/fuel-daily-jobs.yml
index 488505edf..80fde32fa 100644
--- a/jjb/fuel/fuel-daily-jobs.yml
+++ b/jjb/fuel/fuel-daily-jobs.yml
@@ -140,6 +140,7 @@
blocking-jobs:
- 'fuel-os-.*?-{pod}-daily-.*'
- 'fuel-os-.*?-{pod}-weekly-.*'
+ - 'fuel-verify-.*'
block-level: 'NODE'
wrappers:
@@ -293,10 +294,6 @@
name: GS_URL
default: artifacts.opnfv.org/$PROJECT{gs-pathname}
description: "URL to Google Storage."
- - string:
- name: SSH_KEY
- default: "/tmp/mcp.rsa"
- description: "Path to private SSH key to access environment nodes. For MCP deployments only."
########################
# trigger macros
########################
diff --git a/jjb/fuel/fuel-deploy.sh b/jjb/fuel/fuel-deploy.sh
index ddaebc94a..18b2fd730 100755
--- a/jjb/fuel/fuel-deploy.sh
+++ b/jjb/fuel/fuel-deploy.sh
@@ -12,7 +12,7 @@ set -o pipefail
export TERM="vt220"
-if [[ "$BRANCH" != 'master' ]]; then
+if [[ "$BRANCH" =~ 'danube' ]]; then
# source the file so we get OPNFV vars
source latest.properties
@@ -21,11 +21,11 @@ if [[ "$BRANCH" != 'master' ]]; then
fi
# shellcheck disable=SC2153
-if [[ "${JOB_NAME}" =~ "merge" ]]; then
- # set simplest scenario for virtual deploys to run for merges
+if [[ "${JOB_NAME}" =~ 'verify' ]]; then
+ # set simplest scenario for virtual deploys to run for verify
DEPLOY_SCENARIO="os-nosdn-nofeature-ha"
-elif [[ "${BRANCH}" != 'master' ]]; then
- # for none-merge deployments
+elif [[ "${BRANCH}" =~ 'danube' ]]; then
+ # for Danube deployments (no artifact for current master or newer branches)
# checkout the commit that was used for building the downloaded artifact
# to make sure the ISO and deployment mechanism uses same versions
echo "Checking out ${OPNFV_GIT_SHA1}"
diff --git a/jjb/fuel/fuel-download-artifact.sh b/jjb/fuel/fuel-download-artifact.sh
index fa0c88b5d..02ca10305 100755
--- a/jjb/fuel/fuel-download-artifact.sh
+++ b/jjb/fuel/fuel-download-artifact.sh
@@ -16,15 +16,9 @@ set -o pipefail
# use proxy url to replace the normal URL, or googleusercontent.com will be blocked randomly
[[ "$NODE_NAME" =~ (zte) ]] && GS_URL=${GS_BASE_PROXY%%/*}/$GS_URL
-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 -L -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 -L -s -o $WORKSPACE/latest.properties http://$GS_URL/latest.properties
-fi
+# get the latest.properties file in order to get info regarding latest artifact
+echo "Downloading http://$GS_URL/latest.properties"
+curl -L -s -o $WORKSPACE/latest.properties http://$GS_URL/latest.properties
# check if we got the file
[[ -f $WORKSPACE/latest.properties ]] || exit 1
@@ -36,21 +30,18 @@ source $WORKSPACE/latest.properties
OPNFV_ARTIFACT=${OPNFV_ARTIFACT_URL/*\/}
echo "Using $OPNFV_ARTIFACT for deployment"
-# using ISOs for verify & merge jobs from local storage will be enabled later
-if [[ ! "$JOB_NAME" =~ (verify|merge) ]]; then
- # check if we already have the ISO to avoid redownload
- ISOSTORE="/iso_mount/opnfv_ci/${BRANCH##*/}"
- if [[ -f "$ISOSTORE/$OPNFV_ARTIFACT" ]]; then
- echo "ISO exists locally. Skipping the download and using the file from ISO store"
- ln -s $ISOSTORE/$OPNFV_ARTIFACT $WORKSPACE/opnfv.iso
- echo "--------------------------------------------------------"
- echo
- ls -al $WORKSPACE/opnfv.iso
- echo
- echo "--------------------------------------------------------"
- echo "Done!"
- exit 0
- fi
+# check if we already have the ISO to avoid redownload
+ISOSTORE="/iso_mount/opnfv_ci/${BRANCH##*/}"
+if [[ -f "$ISOSTORE/$OPNFV_ARTIFACT" ]]; then
+ echo "ISO exists locally. Skipping the download and using the file from ISO store"
+ ln -s $ISOSTORE/$OPNFV_ARTIFACT $WORKSPACE/opnfv.iso
+ echo "--------------------------------------------------------"
+ echo
+ ls -al $WORKSPACE/opnfv.iso
+ echo
+ echo "--------------------------------------------------------"
+ echo "Done!"
+ exit 0
fi
[[ "$NODE_NAME" =~ (zte) ]] && OPNFV_ARTIFACT_URL=${GS_BASE_PROXY%%/*}/$OPNFV_ARTIFACT_URL
diff --git a/jjb/fuel/fuel-project-jobs.yml b/jjb/fuel/fuel-project-jobs.yml
index e850a0acb..ab18b963d 100644
--- a/jjb/fuel/fuel-project-jobs.yml
+++ b/jjb/fuel/fuel-project-jobs.yml
@@ -19,84 +19,12 @@
disabled: true
jobs:
- - 'fuel-merge-deploy-virtual-{stream}'
- 'fuel-deploy-generic-daily-{stream}'
########################
# job templates
########################
- job-template:
- name: 'fuel-merge-deploy-virtual-{stream}'
-
- disabled: true
-
- concurrent: true
-
- properties:
- - logrotate-default
- - throttle:
- enabled: true
- max-total: 2
- max-per-node: 1
- option: 'project'
- - build-blocker:
- use-build-blocker: true
- blocking-jobs:
- - 'fuel-os-.*?-virtual-daily-.*'
- - 'fuel-merge-deploy-virtual-.*'
- block-level: 'NODE'
-
- parameters:
- - project-parameter:
- project: '{project}'
- branch: '{branch}'
- - 'fuel-virtual-defaults':
- installer: '{installer}'
- - '{installer}-defaults'
- - fuel-project-parameter:
- gs-pathname: '{gs-pathname}'
- scm:
- - git-scm
-
- wrappers:
- - ssh-agent-wrapper
-
- triggers:
- - gerrit:
- server-name: 'gerrit.opnfv.org'
- 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}'
- file-paths:
- - compare-type: ANT
- pattern: 'ci/**'
- - compare-type: ANT
- pattern: 'mcp/**'
- disable-strict-forbidden-file-verification: 'true'
- forbidden-file-paths:
- - compare-type: ANT
- pattern: 'docs/**'
- dependency-jobs: 'fuel-merge-build-{stream}'
-
- builders:
- - shell:
- !include-raw-escape: ./fuel-deploy.sh
- - shell:
- !include-raw-escape: ./fuel-workspace-cleanup.sh
-
- publishers:
- - email:
- recipients: fzhadaev@mirantis.com
- - email-jenkins-admins-on-failure
-
-- job-template:
name: 'fuel-deploy-generic-daily-{stream}'
concurrent: true
diff --git a/jjb/fuel/fuel-verify-jobs.yml b/jjb/fuel/fuel-verify-jobs.yml
index 899be9a4a..73d47637f 100644
--- a/jjb/fuel/fuel-verify-jobs.yml
+++ b/jjb/fuel/fuel-verify-jobs.yml
@@ -21,11 +21,11 @@
#####################################
phase:
- 'basic':
- slave-label: 'opnfv-build-ubuntu'
+ slave-label: 'fuel-virtual'
- 'deploy-virtual':
- slave-label: 'opnfv-build-ubuntu'
+ slave-label: 'fuel-virtual'
- 'smoke-test':
- slave-label: 'opnfv-build-ubuntu'
+ slave-label: 'fuel-virtual'
#####################################
# jobs
#####################################
@@ -50,6 +50,11 @@
enabled: true
max-total: 4
option: 'project'
+ - build-blocker:
+ use-build-blocker: true
+ blocking-jobs:
+ - 'fuel-os-.*?-virtual-daily-.*'
+ block-level: 'NODE'
scm:
- git-scm-gerrit
@@ -94,7 +99,8 @@
- project-parameter:
project: '{project}'
branch: '{branch}'
- - 'opnfv-build-ubuntu-defaults'
+ - 'fuel-virtual-defaults':
+ installer: '{installer}'
- 'fuel-verify-defaults':
gs-pathname: '{gs-pathname}'
@@ -155,7 +161,8 @@
- logrotate-default
- throttle:
enabled: true
- max-total: 6
+ max-total: 2
+ max-per-node: 1
option: 'project'
- build-blocker:
use-build-blocker: true
@@ -177,6 +184,8 @@
project: '{project}'
branch: '{branch}'
- '{slave-label}-defaults'
+ - 'fuel-virtual-defaults':
+ installer: '{installer}'
- '{installer}-defaults'
- 'fuel-verify-defaults':
gs-pathname: '{gs-pathname}'
@@ -199,10 +208,8 @@
- builder:
name: 'fuel-verify-deploy-virtual-macro'
builders:
- - shell: |
- #!/bin/bash
-
- echo "Not activated!"
+ - shell:
+ !include-raw-escape: ./fuel-deploy.sh
- builder:
name: 'fuel-verify-smoke-test-macro'
diff --git a/jjb/fuel/fuel-weekly-jobs.yml b/jjb/fuel/fuel-weekly-jobs.yml
index c681c6252..ba5d096af 100644
--- a/jjb/fuel/fuel-weekly-jobs.yml
+++ b/jjb/fuel/fuel-weekly-jobs.yml
@@ -72,6 +72,7 @@
blocking-jobs:
- 'fuel-os-.*?-{pod}-daily-.*'
- 'fuel-os-.*?-{pod}-weekly-.*'
+ - 'fuel-verify-.*'
block-level: 'NODE'
wrappers:
diff --git a/jjb/global/slave-params.yml b/jjb/global/slave-params.yml
index 75c4323e6..a4ee4d9f1 100644
--- a/jjb/global/slave-params.yml
+++ b/jjb/global/slave-params.yml
@@ -364,21 +364,6 @@
# Parameters for build slaves
#####################################################
- parameter:
- name: 'opnfv-build-enea-defaults'
- parameters:
- - label:
- name: SLAVE_LABEL
- default: 'opnfv-build-enea'
- - string:
- name: GIT_BASE
- default: https://gerrit.opnfv.org/gerrit/$PROJECT
- description: 'Git URL to use on this Jenkins Slave'
- - string:
- name: BUILD_DIRECTORY
- default: $WORKSPACE/build_output
- description: "Directory where the build artifact will be located upon the completion of the build."
-
-- parameter:
name: 'opnfv-build-centos-defaults'
parameters:
- label: