summaryrefslogtreecommitdiffstats
path: root/jjb/genesis/genesis-fuel.yml
diff options
context:
space:
mode:
authorAric Gardner <agardner@linuxfoundation.org>2015-04-13 09:41:47 -0400
committerAric Gardner <agardner@linuxfoundation.org>2015-04-13 11:50:23 -0400
commit151cfc32953ec4106f2ee5811d9f989302069b50 (patch)
tree7af141a775e43ff819f7ae45a0f228f00944e4b7 /jjb/genesis/genesis-fuel.yml
parent242b28dddfffa834500fd5efb22272e1fe74dd3f (diff)
Split up genesis.yml into its component installers so that we can specify nodes
Change-Id: I97fecab46df84687e73d5e98bed96cacc2e8cb0a JIRA:0000 Signed-off-by: Aric Gardner <agardner@linuxfoundation.org>
Diffstat (limited to 'jjb/genesis/genesis-fuel.yml')
-rw-r--r--jjb/genesis/genesis-fuel.yml321
1 files changed, 321 insertions, 0 deletions
diff --git a/jjb/genesis/genesis-fuel.yml b/jjb/genesis/genesis-fuel.yml
new file mode 100644
index 000000000..6d297aa5a
--- /dev/null
+++ b/jjb/genesis/genesis-fuel.yml
@@ -0,0 +1,321 @@
+# this is the job configuration for bgs
+- project:
+
+ name: genesis-fuel
+
+ installer:
+ - fuel
+ jobs:
+ - 'genesis-fuel-verify'
+ - 'genesis-fuel-merge'
+ - 'genesis-fuel-daily-{stream}'
+
+ # stream: branch with - in place of / (eg. stable-helium)
+ # branch: branch (eg. stable/helium)
+ stream:
+ - master:
+ branch: 'master'
+
+ project: 'genesis'
+
+########################
+# job templates
+########################
+
+- job-template:
+ name: 'genesis-fuel-verify'
+
+ project-type: freestyle
+
+ node: ericsson-build
+
+ logrotate:
+ daysToKeep: 30
+ numToKeep: 10
+ artifactDaysToKeep: -1
+ artifactNumToKeep: -1
+
+ parameters:
+ - string:
+ name: BUILD_DIRECTORY
+ default: $WORKSPACE/build_output
+ - string:
+ name: GIT_BASE
+ default: https://gerrit.opnfv.org/gerrit/genesis
+ - project-parameter:
+ project: '{project}'
+ - gerrit-parameter:
+ branch: 'master'
+
+ scm:
+ - gerrit-trigger-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: '$GERRIT_REFSPEC'
+ choosing-strategy: 'gerrit'
+
+ wrappers:
+ - ssh-agent-credentials:
+ user: '{ssh-credentials}'
+
+ 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: 'genesis'
+ branches:
+ - branch-compare-type: 'ANT'
+ branch-pattern: '**/master'
+ file-paths:
+ - compare-type: ANT
+ pattern: 'common/**'
+ - compare-type: ANT
+ pattern: 'fuel/**'
+
+
+ builders:
+ - 'fuel-verify'
+
+- job-template:
+ name: 'genesis-fuel-merge'
+
+ # builder-merge job to run JJB update
+ #
+ # This job's purpose is to update all the JJB
+
+ project-type: freestyle
+
+ node: ericsson-build
+
+ logrotate:
+ daysToKeep: 30
+ numToKeep: 40
+ artifactDaysToKeep: -1
+ artifactNumToKeep: 5
+
+ parameters:
+ - string:
+ name: BUILD_DIRECTORY
+ default: $WORKSPACE/build_output
+ - string:
+ name: GIT_BASE
+ default: https://gerrit.opnfv.org/gerrit/genesis
+ - project-parameter:
+ project: '{project}'
+ - gerrit-parameter:
+ branch: 'master'
+
+ scm:
+ - gerrit-trigger-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: ''
+ choosing-strategy: 'default'
+
+ wrappers:
+ - ssh-agent-credentials:
+ user: '{ssh-credentials}'
+
+ triggers:
+ - gerrit:
+ trigger-on:
+ - change-merged-event
+ - comment-added-contains-event:
+ comment-contains-value: 'remerge'
+ projects:
+ - project-compare-type: 'ANT'
+ project-pattern: 'genesis'
+ branches:
+ - branch-compare-type: 'ANT'
+ branch-pattern: '**/master'
+ file-paths:
+ - compare-type: ANT
+ pattern: 'common/**'
+ - compare-type: ANT
+ pattern: 'fuel/**'
+
+ builders:
+ - 'fuel-merge'
+
+- job-template:
+ name: 'genesis-fuel-daily-{stream}'
+
+ project-type: freestyle
+
+ node: ericsson-build
+
+ 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: GS_URL
+ default: 'artifacts.opnfv.org/genesis/fuel'
+ description: "URL to Google Storage."
+ - string:
+ name: INSTALLER
+ default: 'fuel'
+ description: "Installer to use."
+ - string:
+ name: GIT_BASE
+ default: https://gerrit.opnfv.org/gerrit/genesis
+ - string:
+ name: GERRIT_BRANCH
+ default: origin/master
+ description: "Branch to build, deploy and test."
+ - string:
+ name: GERRIT_REFSPEC
+ default: refs/heads/master
+ description: "Refspec to retrieve."
+
+ scm:
+ - git:
+ skip-tag: true
+ url: $GIT_BASE
+ branches:
+ - $GERRIT_BRANCH
+ refspec: $GERRIT_REFSPEC
+
+ triggers:
+ - pollscm: '@midnight'
+
+ logrotate:
+ daysToKeep: 30
+ numToKeep: 10
+ artifactDaysToKeep: -1
+ artifactNumToKeep: -1
+
+ builders:
+ - 'fuel-daily-master'
+
+
+- builder:
+ name: fuel-verify
+ builders:
+ - shell: |
+ #!/bin/bash
+ set -o errexit
+ set -o nounset
+ set -o pipefail
+ set -x
+
+ # set/create the cache location
+ OPNFV_FUEL_CACHE="$(dirname $WORKSPACE)/opnfv_fuel_cache"
+ [[ -d $OPNFV_FUEL_CACHE ]] || mkdir -p $OPNFV_FUEL_CACHE
+
+ # do the build
+ cd $WORKSPACE/fuel/ci
+ ./build.sh -c file://$OPNFV_FUEL_CACHE $BUILD_DIRECTORY
+
+ # list the build artifacts
+ ls -al $BUILD_DIRECTORY
+
+ # remove the BUILD_DIRECTORY to reclaim some space
+ /bin/rm -rf $BUILD_DIRECTORY
+
+- builder:
+ name: fuel-merge
+ builders:
+ - shell: |
+ #!/bin/bash
+ set -o errexit
+ set -o nounset
+ set -o pipefail
+ set -x
+
+ # set/create the cache location
+ OPNFV_FUEL_CACHE="$(dirname $WORKSPACE)/opnfv_fuel_cache"
+ [[ -d $OPNFV_FUEL_CACHE ]] || mkdir -p $OPNFV_FUEL_CACHE
+
+ # do the build
+ cd $WORKSPACE/fuel/ci
+ ./build.sh -c file://$OPNFV_FUEL_CACHE $BUILD_DIRECTORY
+
+ # list the build artifacts
+ ls -al $BUILD_DIRECTORY
+
+ # remove the BUILD_DIRECTORY to reclaim some space
+ /bin/rm -rf $BUILD_DIRECTORY
+
+- builder:
+ name: fuel-daily-master
+ builders:
+ - shell: |
+ #!/bin/bash
+ set -o errexit
+ set -o nounset
+ set -o pipefail
+ set -x
+
+ # set/create the cache location
+ OPNFV_FUEL_CACHE="$(dirname $WORKSPACE)/opnfv_fuel_cache"
+ [[ -d $OPNFV_FUEL_CACHE ]] || mkdir -p $OPNFV_FUEL_CACHE
+
+ # do the build
+ cd $WORKSPACE/fuel/ci
+ ./build.sh -f t -v $BUILD_ID -c file://$OPNFV_FUEL_CACHE $BUILD_DIRECTORY
+
+ - shell: |
+ #!/bin/bash
+ set -o errexit
+ set -o nounset
+ set -o pipefail
+ set -x
+
+ # list the build artifacts
+ ls -al $BUILD_DIRECTORY
+
+ cd $BUILD_DIRECTORY
+
+ # save information regarding artifact into file
+ (
+ echo "OPNFV_GIT_URL=$(git config --get remote.origin.url)"
+ echo "OPNFV_GIT_SHA1=$(git rev-parse HEAD)"
+ echo "OPNFV_ARTIFACT_URL=$GS_URL/opnfv-$BUILD_ID.iso"
+ echo "OPNFV_BUILD_URL=$BUILD_URL"
+ echo "OPNFV_BUILD=OK"
+ ) > opnfv-$BUILD_ID.properties
+
+ # copy artifact property file as latest.properties
+ # so we can directly get info regarding latest artifact
+ /bin/cp -f opnfv-$BUILD_ID.properties latest.properties
+
+ # upload artifact and additional files to google storage
+ gsutil cp opnfv-$BUILD_ID.iso gs://$GS_URL/opnfv-$BUILD_ID.iso
+ gsutil cp opnfv-$BUILD_ID.properties gs://$GS_URL/opnfv-$BUILD_ID.properties
+ gsutil cp latest.properties gs://$GS_URL/latest.properties
+
+ - shell: |
+ #!/bin/bash
+ set -o errexit
+ set -o nounset
+ set -o pipefail
+ set -x
+
+ # get the latest.properties file in order to get info regarding latest artifact
+ gsutil cp gs://$GS_URL/latest.properties latest.properties
+
+ # check if we got the file
+ [[ -f latest.properties ]] || exit 1
+
+ # source the file so we get OPNFV vars
+ source latest.properties
+
+ # download the file
+ gsutil cp gs://$OPNFV_ARTIFACT_URL $WORKSPACE/opnfv.iso
+
+ # list the file
+ ls -al $WORKSPACE/opnfv.iso
+
+ # remove the BUILD_DIRECTORY and downlaoded artifact to reclaim some space
+ /bin/rm -rf $BUILD_DIRECTORY
+ /bin/rm -rf $WORKSPACE/opnfv.iso