summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFatih Degirmenci <fatih.degirmenci@ericsson.com>2016-01-11 23:28:21 +0100
committerFatih Degirmenci <fatih.degirmenci@ericsson.com>2016-01-11 23:50:19 +0100
commit5a86cde3055933d671d5c90a8b25a56275d29d36 (patch)
tree1dbb4db0dee2f51f684d1582d785b3db542196ad
parent4af37962364745bd3cddb53d131fad9bf374f0cf (diff)
Fuel: Switch to new scenario/pod descriptions and enable 7 scenarios
This change - enables 7 scenarios by creating jobs for them: os_ha, os_odl-l2_ha, os_odl-l3_ha, os_onos_ha, os_kvm_ha, os_ovs_ha, os_kvm_ovs_ha. - enables the use of new scenario descriptions - enables the use of new pod descriptions Please note that - all of the above is only valid for Ericsson POD2. - no triggers have been defined as of yet. Jobs will manually be triggered in the beginning for CI development purposes. Apart from this, new jjb file and shell script have been created temporarily in order not to break brahmaputra deployments. These files will be merged once the fuel changes are cherry-picked to brahmaputra branch. Change-Id: I86479bde24aaaab415ca669aa55d706ba06e7fe4 Signed-off-by: Fatih Degirmenci <fatih.degirmenci@ericsson.com>
-rw-r--r--jjb/fuel/fuel-ci-jobs-master.yml152
-rw-r--r--jjb/fuel/fuel-ci-jobs.yml71
-rwxr-xr-xjjb/fuel/fuel-deploy-master.sh (renamed from jjb/fuel/fuel-deploy-new.sh)12
-rwxr-xr-xjjb/fuel/fuel-deploy.sh2
4 files changed, 178 insertions, 59 deletions
diff --git a/jjb/fuel/fuel-ci-jobs-master.yml b/jjb/fuel/fuel-ci-jobs-master.yml
new file mode 100644
index 000000000..f69827e7a
--- /dev/null
+++ b/jjb/fuel/fuel-ci-jobs-master.yml
@@ -0,0 +1,152 @@
+- project:
+
+ name: 'fuel-master'
+
+ project: 'fuel'
+
+ installer: '{project}'
+
+#--------------------------------
+# BRANCH ANCHORS
+#--------------------------------
+ master: &master
+ stream: master
+ branch: '{stream}'
+ gs-pathname: ''
+#--------------------------------
+# POD, INSTALLER, AND BRANCH MAPPING
+#--------------------------------
+ pod:
+ - ericsson-pod2:
+ <<: *master
+#--------------------------------
+
+# new scenario descriptions
+ scenario:
+ - 'os_ha'
+ - 'os_odl-l2_ha'
+ - 'os_odl-l3_ha'
+ - 'os_onos_ha'
+ - 'os_kvm_ha'
+ - 'os_ovs_ha'
+ - 'os_kvm_ovs_ha'
+
+ jobs:
+ - 'fuel-{scenario}-{pod}-daily-{stream}'
+ - 'fuel-deploy-{pod}-daily-{stream}-development'
+
+########################
+# job templates - new type of defining the scenario
+########################
+- job-template:
+ name: 'fuel-{scenario}-{pod}-daily-{stream}'
+
+ project-type: multijob
+
+ disabled: '{obj:disabled}'
+
+ concurrent: false
+
+ properties:
+ - throttle:
+ enabled: true
+ max-total: 1
+ max-per-node: 1
+
+ wrappers:
+ - build-name:
+ name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
+
+ parameters:
+ - project-parameter:
+ project: '{project}'
+ - '{pod}-defaults'
+ - '{installer}-defaults'
+ - string:
+ name: DEPLOY_SCENARIO
+ default: '{scenario}'
+ - fuel-ci-parameter:
+ gs-pathname: '{gs-pathname}'
+
+ scm:
+ - git-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: ''
+ branch: '{branch}'
+
+ builders:
+ - 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-deploy-{pod}-daily-{stream}-development'
+
+ concurrent: false
+
+ properties:
+ - throttle:
+ enabled: true
+ max-total: 1
+ max-per-node: 1
+
+ parameters:
+ - project-parameter:
+ project: 'fuel'
+ - 'ericsson-pod2-defaults'
+ - 'fuel-defaults'
+ - fuel-ci-parameter-new:
+ gs-pathname: ''
+
+ scm:
+ - git-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: ''
+ branch: 'master'
+
+ wrappers:
+ - build-name:
+ name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
+
+ builders:
+ - shell:
+ !include-raw-escape: ./fuel-download-artifact.sh
+ - shell:
+ !include-raw-escape: ./fuel-deploy-master.sh
+########################
+# parameter macros
+########################
+- parameter:
+ name: fuel-ci-parameter-new
+ 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."
diff --git a/jjb/fuel/fuel-ci-jobs.yml b/jjb/fuel/fuel-ci-jobs.yml
index 452d03712..3a6213cf0 100644
--- a/jjb/fuel/fuel-ci-jobs.yml
+++ b/jjb/fuel/fuel-ci-jobs.yml
@@ -38,21 +38,13 @@
sdn-controller:
- 'nosdn':
disabled: false
-# commented out below controllers to get nosdn scenario settled first
-# - 'odl':
-# disabled: true
-# - 'onos':
-# disabled: true
-# - 'opencontrail':
-# disabled: true
jobs:
- 'fuel-{sdn-controller}-{pod}-daily-{stream}'
- 'fuel-deploy-{pod}-daily-{stream}'
- - 'fuel-deploy-{pod}-daily-{stream}-wip'
########################
-# job templates
+# job templates - old type of defining the scenario
########################
- job-template:
name: 'fuel-{sdn-controller}-{pod}-daily-{stream}'
@@ -147,52 +139,10 @@
wrappers:
- build-name:
- name: '$BUILD_NUMBER - SDN: $SDN_CONTROLLER Scenario: $DEPLOY_SCENARIO'
-
- builders:
- - shell:
- !include-raw-escape: ./fuel-download-artifact.sh
- - shell:
- !include-raw-escape: ./fuel-deploy.sh
-
- publishers:
- - email:
- recipients: jonas.bjurel@ericsson.com stefan.k.berg@ericsson.com
-
-- job-template:
- name: 'fuel-deploy-{pod}-daily-{stream}-wip'
-
- concurrent: false
-
- properties:
- - throttle:
- enabled: true
- max-total: 1
- max-per-node: 1
-
- parameters:
- - project-parameter:
- project: 'fuel'
- - 'ericsson-pod2-defaults'
- - 'fuel-defaults'
- - fuel-ci-parameter:
- gs-pathname: ''
-
- scm:
- - git-scm:
- credentials-id: '{ssh-credentials}'
- refspec: ''
- branch: 'master'
-
- wrappers:
- - build-name:
name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
builders:
- - shell:
- !include-raw-escape: ./fuel-download-artifact.sh
- - shell:
- !include-raw-escape: ./fuel-deploy-new.sh
+ - 'builder-{stream}'
publishers:
- email:
@@ -216,6 +166,23 @@
default: artifacts.opnfv.org/$PROJECT{gs-pathname}
description: "URL to Google Storage."
########################
+# builder macros
+########################
+- builder:
+ name: 'builder-master'
+ builders:
+ - shell:
+ !include-raw-escape: ./fuel-download-artifact.sh
+ - shell:
+ !include-raw-escape: ./fuel-deploy-master.sh
+- builder:
+ name: 'builder-brahmaputra'
+ builders:
+ - shell:
+ !include-raw-escape: ./fuel-download-artifact.sh
+ - shell:
+ !include-raw-escape: ./fuel-deploy.sh
+########################
# trigger macros
########################
# trigger for opnfv-jump-2 is set to run 1 hour ahead of others
diff --git a/jjb/fuel/fuel-deploy-new.sh b/jjb/fuel/fuel-deploy-master.sh
index 1e362bc8f..bdb4ed370 100755
--- a/jjb/fuel/fuel-deploy-new.sh
+++ b/jjb/fuel/fuel-deploy-master.sh
@@ -7,12 +7,12 @@ set -o pipefail
source latest.properties
# echo the info about artifact that is used during the deployment
-echo "Using $(echo $OPNFV_ARTIFACT_URL | cut -d'/' -f3) for deployment"
+echo "Using ${OPNFV_ARTIFACT_URL/*\/} for deployment"
# 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"
-#git checkout $OPNFV_GIT_SHA1 --quiet
+echo "Checking out $OPNFV_GIT_SHA1"
+git checkout $OPNFV_GIT_SHA1 --quiet
# set deployment parameters
BRIDGE=pxebr
@@ -30,15 +30,15 @@ chmod a+x $TMPDIR
# clone the securedlab repo
cd $WORKSPACE
echo "Cloning securedlab repo"
-git clone ssh://jenkins-ericsson@gerrit.opnfv.org:29418/securedlab
+git clone ssh://jenkins-ericsson@gerrit.opnfv.org:29418/securedlab --quiet
# construct the command
-DEPLOY_COMMAND="sudo $WORKSPACE/ci/deploy.sh -b file://$WORKSPACE/securedlab -l $LAB_NAME -p $POD_NAME -s $DEPLOY_SCENARIO -i $WORKSPACE/opnfv.iso -H -B $BRIDGE -S $TMPDIR"
+DEPLOY_COMMAND="sudo $WORKSPACE/ci/deploy.sh -b file://$WORKSPACE/securedlab -l $LAB_NAME -p $POD_NAME -s $DEPLOY_SCENARIO -i file://$WORKSPACE/opnfv.iso -H -B $BRIDGE -S $TMPDIR"
# log info to console
echo "Deployment parameters"
-echo "Scenario: $DEPLOY_SCENARIO"
echo "--------------------------------------------------------"
+echo "Scenario: $DEPLOY_SCENARIO"
echo "Lab: $LAB_NAME"
echo "POD: $POD_NAME"
echo "ISO: $(echo $OPNFV_ARTIFACT_URL | cut -d'/' -f3)"
diff --git a/jjb/fuel/fuel-deploy.sh b/jjb/fuel/fuel-deploy.sh
index 334307448..f31aa951b 100755
--- a/jjb/fuel/fuel-deploy.sh
+++ b/jjb/fuel/fuel-deploy.sh
@@ -7,7 +7,7 @@ set -o pipefail
source latest.properties
# echo the info about artifact that is used during the deployment
-echo "Using $(echo $OPNFV_ARTIFACT_URL | cut -d'/' -f3) for deployment"
+echo "Using ${OPNFV_ARTIFACT_URL/*\/} for deployment"
# checkout the commit that was used for building the downloaded artifact
# to make sure the ISO and deployment mechanism uses same versions