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
233 # remove the BUILD_DIRECTORY to reclaim some space
234 /bin/rm -rf $BUILD_DIRECTORY
245 name: foreman-daily-master
254 # get the dependencies - temporary fix for RC0
255 [[ -d $WORKSPACE/foreman/build ]] || mkdir -p $WORKSPACE/foreman/build
256 cp /home/jenkins/Downloads/opnfv_iso/* $WORKSPACE/foreman/build/
258 # below lines perhaps need to be enabled in order to fetch images from internet
259 # as we are having disk space issues on ericsson-build slave
260 #wget http://ftp.riken.jp/Linux/centos/7.0.1406/isos/x86_64/CentOS-7.0-1406-x86_64-Minimal.iso
261 #wget http://download.virtualbox.org/virtualbox/rpm/fedora/20/x86_64/VirtualBox-4.3-4.3.26_98988_fedora18-1.x86_64.rpm
262 #wget http://repos.duss-janser.ch/vagrant/vagrant_1.7.2_x86_64.rpm
265 cd $WORKSPACE/foreman/ci
266 ./build.sh -v $BUILD_ID $BUILD_DIRECTORY
275 # list the build artifacts
276 ls -al $BUILD_DIRECTORY
280 # save information regarding artifact into file
282 echo "OPNFV_GIT_URL=$(git config --get remote.origin.url)"
283 echo "OPNFV_GIT_SHA1=$(git rev-parse HEAD)"
284 echo "OPNFV_ARTIFACT_URL=$GS_URL/opnfv-$BUILD_ID.iso"
285 echo "OPNFV_BUILD_URL=$BUILD_URL"
286 echo "OPNFV_BUILD=OK"
287 ) > opnfv-$BUILD_ID.properties
289 # copy artifact property file as latest.properties
290 # so we can directly get info regarding latest artifact
291 /bin/cp -f opnfv-$BUILD_ID.properties latest.properties
293 # upload artifact and additional files to google storage
294 gsutil cp OPNFV-CentOS-7-x86_64-$BUILD_ID.iso gs://$GS_URL/opnfv-$BUILD_ID.iso
295 gsutil cp opnfv-$BUILD_ID.properties gs://$GS_URL/opnfv-$BUILD_ID.properties
296 gsutil cp latest.properties gs://$GS_URL/latest.properties
305 # get the latest.properties file in order to get info regarding latest artifact
306 gsutil cp gs://$GS_URL/latest.properties latest.properties
308 # check if we got the file
309 [[ -f latest.properties ]] || exit 1
311 # source the file so we get OPNFV vars
312 source latest.properties
315 gsutil cp gs://$OPNFV_ARTIFACT_URL $WORKSPACE/opnfv.iso
318 ls -al $WORKSPACE/opnfv.iso
320 # remove the BUILD_DIRECTORY and downlaoded artifact to reclaim some space
321 /bin/rm -rf $BUILD_DIRECTORY
322 /bin/rm -rf $WORKSPACE/opnfv.iso
334 # set/create the cache location
335 OPNFV_FUEL_CACHE="$(dirname $WORKSPACE)/opnfv_fuel_cache"
336 [[ -d $OPNFV_FUEL_CACHE ]] || mkdir -p $OPNFV_FUEL_CACHE
339 cd $WORKSPACE/fuel/ci
340 ./build.sh -c file://$OPNFV_FUEL_CACHE $BUILD_DIRECTORY
342 # list the build artifacts
343 ls -al $BUILD_DIRECTORY
345 # remove the BUILD_DIRECTORY to reclaim some space
346 /bin/rm -rf $BUILD_DIRECTORY
358 # set/create the cache location
359 OPNFV_FUEL_CACHE="$(dirname $WORKSPACE)/opnfv_fuel_cache"
360 [[ -d $OPNFV_FUEL_CACHE ]] || mkdir -p $OPNFV_FUEL_CACHE
363 cd $WORKSPACE/fuel/ci
364 ./build.sh -c file://$OPNFV_FUEL_CACHE $BUILD_DIRECTORY
366 # list the build artifacts
367 ls -al $BUILD_DIRECTORY
369 # remove the BUILD_DIRECTORY to reclaim some space
370 /bin/rm -rf $BUILD_DIRECTORY
373 name: fuel-daily-master
382 # set/create the cache location
383 OPNFV_FUEL_CACHE="$(dirname $WORKSPACE)/opnfv_fuel_cache"
384 [[ -d $OPNFV_FUEL_CACHE ]] || mkdir -p $OPNFV_FUEL_CACHE
387 cd $WORKSPACE/fuel/ci
388 ./build.sh -f t -v $BUILD_ID -c file://$OPNFV_FUEL_CACHE $BUILD_DIRECTORY
397 # list the build artifacts
398 ls -al $BUILD_DIRECTORY
402 # save information regarding artifact into file
404 echo "OPNFV_GIT_URL=$(git config --get remote.origin.url)"
405 echo "OPNFV_GIT_SHA1=$(git rev-parse HEAD)"
406 echo "OPNFV_ARTIFACT_URL=$GS_URL/opnfv-$BUILD_ID.iso"
407 echo "OPNFV_BUILD_URL=$BUILD_URL"
408 echo "OPNFV_BUILD=OK"
409 ) > opnfv-$BUILD_ID.properties
411 # copy artifact property file as latest.properties
412 # so we can directly get info regarding latest artifact
413 /bin/cp -f opnfv-$BUILD_ID.properties latest.properties
415 # upload artifact and additional files to google storage
416 gsutil cp opnfv-$BUILD_ID.iso gs://$GS_URL/opnfv-$BUILD_ID.iso
417 gsutil cp opnfv-$BUILD_ID.properties gs://$GS_URL/opnfv-$BUILD_ID.properties
418 gsutil cp latest.properties gs://$GS_URL/latest.properties
427 # get the latest.properties file in order to get info regarding latest artifact
428 gsutil cp gs://$GS_URL/latest.properties latest.properties
430 # check if we got the file
431 [[ -f latest.properties ]] || exit 1
433 # source the file so we get OPNFV vars
434 source latest.properties
437 gsutil cp gs://$OPNFV_ARTIFACT_URL $WORKSPACE/opnfv.iso
440 ls -al $WORKSPACE/opnfv.iso
442 # remove the BUILD_DIRECTORY and downlaoded artifact to reclaim some space
443 /bin/rm -rf $BUILD_DIRECTORY
444 /bin/rm -rf $WORKSPACE/opnfv.iso
447 name: opensteak-verify
455 name: opensteak-merge
463 name: opensteak-daily-master
486 name: juju-daily-master