1 # this is the job configuration for bgs
12 - 'genesis-{installer}-verify'
13 - 'genesis-{installer}-merge'
14 - 'genesis-{installer}-daily-master'
16 # stream: branch with - in place of / (eg. stable-helium)
17 # branch: branch (eg. stable/helium)
24 ########################
26 ########################
29 name: 'genesis-{installer}-verify'
31 project-type: freestyle
38 artifactDaysToKeep: -1
44 default: $WORKSPACE/build_output
47 default: https://gerrit.opnfv.org/gerrit/genesis
55 credentials-id: '{ssh-credentials}'
56 refspec: '$GERRIT_REFSPEC'
57 choosing-strategy: 'gerrit'
60 - ssh-agent-credentials:
61 user: '{ssh-credentials}'
66 - patchset-created-event:
67 exclude-drafts: 'false'
68 exclude-trivial-rebase: 'false'
69 exclude-no-code-change: 'false'
70 - draft-published-event
71 - comment-added-contains-event:
72 comment-contains-value: 'recheck'
73 - comment-added-contains-event:
74 comment-contains-value: 'reverify'
76 - project-compare-type: 'ANT'
77 project-pattern: 'genesis'
79 - branch-compare-type: 'ANT'
80 branch-pattern: '**/master'
85 pattern: '{installer}/**'
89 - '{installer}-verify'
92 name: 'genesis-{installer}-merge'
94 # builder-merge job to run JJB update
96 # This job's purpose is to update all the JJB
98 project-type: freestyle
105 artifactDaysToKeep: -1
110 name: BUILD_DIRECTORY
111 default: $WORKSPACE/build_output
114 default: https://gerrit.opnfv.org/gerrit/genesis
121 - gerrit-trigger-scm:
122 credentials-id: '{ssh-credentials}'
124 choosing-strategy: 'default'
127 - ssh-agent-credentials:
128 user: '{ssh-credentials}'
133 - change-merged-event
134 - comment-added-contains-event:
135 comment-contains-value: 'remerge'
137 - project-compare-type: 'ANT'
138 project-pattern: 'genesis'
140 - branch-compare-type: 'ANT'
141 branch-pattern: '**/master'
146 pattern: '{installer}/**'
149 - '{installer}-merge'
152 name: 'genesis-{installer}-daily-master'
154 project-type: freestyle
160 name: BUILD_DIRECTORY
161 default: $WORKSPACE/build_output
162 description: "Directory where the build artifact will be located upon the completion of the build."
165 default: 'artifacts.opnfv.org/genesis/{installer}'
166 description: "URL to Google Storage."
169 default: '{installer}'
170 description: "Installer to use."
173 default: https://gerrit.opnfv.org/gerrit/genesis
176 default: origin/master
177 description: "Branch to build, deploy and test."
180 default: refs/heads/master
181 description: "Refspec to retrieve."
189 refspec: $GERRIT_REFSPEC
192 - pollscm: '@midnight'
197 artifactDaysToKeep: -1
198 artifactNumToKeep: -1
201 - '{installer}-daily-master'
203 ########################
205 ########################
216 # get the dependencies - temporary fix for RC0
217 [[ -d $WORKSPACE/foreman/build ]] || mkdir -p $WORKSPACE/foreman/build
218 cp /home/jenkins/Downloads/opnfv_iso/* $WORKSPACE/foreman/build/
220 # below lines perhaps need to be enabled in order to fetch images from internet
221 # as we are having disk space issues on ericsson-build slave
222 #wget http://ftp.riken.jp/Linux/centos/7.0.1406/isos/x86_64/CentOS-7.0-1406-x86_64-Minimal.iso
223 #wget http://download.virtualbox.org/virtualbox/rpm/fedora/20/x86_64/VirtualBox-4.3-4.3.26_98988_fedora18-1.x86_64.rpm
224 #wget http://repos.duss-janser.ch/vagrant/vagrant_1.7.2_x86_64.rpm
227 cd $WORKSPACE/foreman/ci
228 ./build.sh $BUILD_DIRECTORY
230 # list the build artifacts
231 ls -al $BUILD_DIRECTORY
242 name: foreman-daily-master
259 # set/create the cache location
260 OPNFV_FUEL_CACHE="$(dirname $WORKSPACE)/opnfv_fuel_cache"
261 [[ -d $OPNFV_FUEL_CACHE ]] || mkdir -p $OPNFV_FUEL_CACHE
264 cd $WORKSPACE/fuel/ci
265 ./build.sh -c file://$OPNFV_FUEL_CACHE $BUILD_DIRECTORY
267 # list the build artifacts
268 ls -al $BUILD_DIRECTORY
280 # set/create the cache location
281 OPNFV_FUEL_CACHE="$(dirname $WORKSPACE)/opnfv_fuel_cache"
282 [[ -d $OPNFV_FUEL_CACHE ]] || mkdir -p $OPNFV_FUEL_CACHE
285 cd $WORKSPACE/fuel/ci
286 ./build.sh -c file://$OPNFV_FUEL_CACHE $BUILD_DIRECTORY
288 # list the build artifacts
289 ls -al $BUILD_DIRECTORY
292 name: fuel-daily-master
301 # set/create the cache location
302 OPNFV_FUEL_CACHE="$(dirname $WORKSPACE)/opnfv_fuel_cache"
303 [[ -d $OPNFV_FUEL_CACHE ]] || mkdir -p $OPNFV_FUEL_CACHE
306 cd $WORKSPACE/fuel/ci
307 ./build.sh -f t -v $BUILD_ID -c file://$OPNFV_FUEL_CACHE $BUILD_DIRECTORY
316 # list the build artifacts
317 ls -al $BUILD_DIRECTORY
321 # save information regarding artifact into file
323 echo "OPNFV_GIT_URL=$(git config --get remote.origin.url)"
324 echo "OPNFV_GIT_SHA1=$(git rev-parse HEAD)"
325 echo "OPNFV_ARTIFACT_URL=$GS_URL/opnfv-$BUILD_ID.iso"
326 echo "OPNFV_BUILD_URL=$BUILD_URL"
327 echo "OPNFV_BUILD=OK"
328 ) > opnfv-$BUILD_ID.properties
330 # copy artifact property file as latest.properties
331 # so we can directly get info regarding latest artifact
332 /bin/cp -f opnfv-$BUILD_ID.properties latest.properties
334 # upload artifact and additional files to google storage
335 gsutil cp opnfv-$BUILD_ID.iso gs://$GS_URL/opnfv-$BUILD_ID.iso
336 gsutil cp opnfv-$BUILD_ID.properties gs://$GS_URL/opnfv-$BUILD_ID.properties
337 gsutil cp latest.properties gs://$GS_URL/latest.properties
346 # get the latest.properties file in order to get info regarding latest artifact
347 gsutil cp gs://$GS_URL/latest.properties latest.properties
349 # check if we got the file
350 [[ -f latest.properties ]] || exit 1
352 # source the file so we get OPNFV vars
353 source latest.properties
356 gsutil cp gs://$OPNFV_ARTIFACT_URL $WORKSPACE/opnfv.iso
359 ls -al $WORKSPACE/opnfv.iso
362 name: opensteak-verify
370 name: opensteak-merge
378 name: opensteak-daily-master
401 name: juju-daily-master