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
251 # get the dependencies - temporary fix for RC0
252 [[ -d $WORKSPACE/foreman/build ]] || mkdir -p $WORKSPACE/foreman/build
253 cp /home/jenkins/Downloads/opnfv_iso/* $WORKSPACE/foreman/build/
255 # below lines perhaps need to be enabled in order to fetch images from internet
256 # as we are having disk space issues on ericsson-build slave
257 #wget http://ftp.riken.jp/Linux/centos/7.0.1406/isos/x86_64/CentOS-7.0-1406-x86_64-Minimal.iso
258 #wget http://download.virtualbox.org/virtualbox/rpm/fedora/20/x86_64/VirtualBox-4.3-4.3.26_98988_fedora18-1.x86_64.rpm
259 #wget http://repos.duss-janser.ch/vagrant/vagrant_1.7.2_x86_64.rpm
262 cd $WORKSPACE/foreman/ci
263 ./build.sh $BUILD_DIRECTORY
272 # list the build artifacts
273 ls -al $BUILD_DIRECTORY
277 # save information regarding artifact into file
279 echo "OPNFV_GIT_URL=$(git config --get remote.origin.url)"
280 echo "OPNFV_GIT_SHA1=$(git rev-parse HEAD)"
281 echo "OPNFV_ARTIFACT_URL=$GS_URL/opnfv-$BUILD_ID.iso"
282 echo "OPNFV_BUILD_URL=$BUILD_URL"
283 echo "OPNFV_BUILD=OK"
284 ) > opnfv-$BUILD_ID.properties
286 # copy artifact property file as latest.properties
287 # so we can directly get info regarding latest artifact
288 /bin/cp -f opnfv-$BUILD_ID.properties latest.properties
290 # upload artifact and additional files to google storage
291 gsutil cp OPNFV-CentOS-7-x86_64-$BUILD_ID.iso gs://$GS_URL/opnfv-$BUILD_ID.iso
292 gsutil cp opnfv-$BUILD_ID.properties gs://$GS_URL/opnfv-$BUILD_ID.properties
293 gsutil cp latest.properties gs://$GS_URL/latest.properties
302 # get the latest.properties file in order to get info regarding latest artifact
303 gsutil cp gs://$GS_URL/latest.properties latest.properties
305 # check if we got the file
306 [[ -f latest.properties ]] || exit 1
308 # source the file so we get OPNFV vars
309 source latest.properties
312 gsutil cp gs://$OPNFV_ARTIFACT_URL $WORKSPACE/opnfv.iso
315 ls -al $WORKSPACE/opnfv.iso
327 # set/create the cache location
328 OPNFV_FUEL_CACHE="$(dirname $WORKSPACE)/opnfv_fuel_cache"
329 [[ -d $OPNFV_FUEL_CACHE ]] || mkdir -p $OPNFV_FUEL_CACHE
332 cd $WORKSPACE/fuel/ci
333 ./build.sh -c file://$OPNFV_FUEL_CACHE $BUILD_DIRECTORY
335 # list the build artifacts
336 ls -al $BUILD_DIRECTORY
348 # set/create the cache location
349 OPNFV_FUEL_CACHE="$(dirname $WORKSPACE)/opnfv_fuel_cache"
350 [[ -d $OPNFV_FUEL_CACHE ]] || mkdir -p $OPNFV_FUEL_CACHE
353 cd $WORKSPACE/fuel/ci
354 ./build.sh -c file://$OPNFV_FUEL_CACHE $BUILD_DIRECTORY
356 # list the build artifacts
357 ls -al $BUILD_DIRECTORY
360 name: fuel-daily-master
369 # set/create the cache location
370 OPNFV_FUEL_CACHE="$(dirname $WORKSPACE)/opnfv_fuel_cache"
371 [[ -d $OPNFV_FUEL_CACHE ]] || mkdir -p $OPNFV_FUEL_CACHE
374 cd $WORKSPACE/fuel/ci
375 ./build.sh -f t -v $BUILD_ID -c file://$OPNFV_FUEL_CACHE $BUILD_DIRECTORY
384 # list the build artifacts
385 ls -al $BUILD_DIRECTORY
389 # save information regarding artifact into file
391 echo "OPNFV_GIT_URL=$(git config --get remote.origin.url)"
392 echo "OPNFV_GIT_SHA1=$(git rev-parse HEAD)"
393 echo "OPNFV_ARTIFACT_URL=$GS_URL/opnfv-$BUILD_ID.iso"
394 echo "OPNFV_BUILD_URL=$BUILD_URL"
395 echo "OPNFV_BUILD=OK"
396 ) > opnfv-$BUILD_ID.properties
398 # copy artifact property file as latest.properties
399 # so we can directly get info regarding latest artifact
400 /bin/cp -f opnfv-$BUILD_ID.properties latest.properties
402 # upload artifact and additional files to google storage
403 gsutil cp opnfv-$BUILD_ID.iso gs://$GS_URL/opnfv-$BUILD_ID.iso
404 gsutil cp opnfv-$BUILD_ID.properties gs://$GS_URL/opnfv-$BUILD_ID.properties
405 gsutil cp latest.properties gs://$GS_URL/latest.properties
414 # get the latest.properties file in order to get info regarding latest artifact
415 gsutil cp gs://$GS_URL/latest.properties latest.properties
417 # check if we got the file
418 [[ -f latest.properties ]] || exit 1
420 # source the file so we get OPNFV vars
421 source latest.properties
424 gsutil cp gs://$OPNFV_ARTIFACT_URL $WORKSPACE/opnfv.iso
427 ls -al $WORKSPACE/opnfv.iso
430 name: opensteak-verify
438 name: opensteak-merge
446 name: opensteak-daily-master
469 name: juju-daily-master