diff options
-rw-r--r-- | jjb/fuel/fuel-ci-jobs-master.yml | 152 | ||||
-rw-r--r-- | jjb/fuel/fuel-ci-jobs.yml | 71 | ||||
-rwxr-xr-x | jjb/fuel/fuel-deploy-master.sh (renamed from jjb/fuel/fuel-deploy-new.sh) | 12 | ||||
-rwxr-xr-x | jjb/fuel/fuel-deploy.sh | 2 |
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 |