6 url: 'ssh://fbot@gerrit.opnfv.org:29418/releng'
7 refspec: '+refs/heads/*:refs/remotes/origin/* +refs/changes/*:refs/changes/*'
14 name: releng-patchset-created
18 - patchset-created-event
19 - comment-added-contains-event:
20 comment-contains-value: 'recheck'
21 - comment-added-contains-event:
22 comment-contains-value: 'reverify'
24 - project-compare-type: 'ANT'
25 project-pattern: 'releng'
27 - branch-compare-type: 'ANT'
28 branch-pattern: 'master'
31 name: releng-patchset-merged
36 - comment-added-contains-event:
37 comment-contains-value: 'remerge'
39 - project-compare-type: 'ANT'
40 project-pattern: 'releng'
42 - branch-compare-type: 'ANT'
43 branch-pattern: 'master'
46 name: releng-jjb-verify
49 sudo apt-get -o DPkg::Lock::Timeout=300 update && \
50 sudo DEBIAN_FRONTEND=noninteractive apt-get \
51 -o DPkg::Lock::Timeout=300 dist-upgrade -y
52 sudo DEBIAN_FRONTEND=noninteractive \
53 apt-get -o DPkg::Lock::Timeout=300 install jenkins-job-builder -y
54 jenkins-jobs test --recursive -o tmp jjb
58 name: releng-jjb-merge
61 sudo apt-get -o DPkg::Lock::Timeout=300 update && \
62 sudo DEBIAN_FRONTEND=noninteractive apt-get \
63 -o DPkg::Lock::Timeout=300 dist-upgrade -y
64 sudo DEBIAN_FRONTEND=noninteractive \
65 apt-get -o DPkg::Lock::Timeout=300 install jenkins-job-builder -y
66 jenkins-jobs update --recursive --delete-old jjb
76 name: releng-jjb-verify
78 - releng-patchset-created
89 name: releng-jjb-verify
94 name: releng-jjb-merge
96 - releng-patchset-merged
107 name: releng-jjb-merge
115 url: 'https://gerrit.opnfv.org/gerrit/{project}'
116 refspec: '+refs/heads/*:refs/remotes/origin/* +refs/changes/*:refs/changes/*'
123 name: releng-tox-patchset-created
127 - patchset-created-event
128 - comment-added-contains-event:
129 comment-contains-value: recheck
130 - comment-added-contains-event:
131 comment-contains-value: reverify
132 server-name: gerrit.opnfv.org
134 - project-compare-type: 'REG_EXP'
135 project-pattern: '^(?!functest).*'
137 - branch-compare-type: 'ANT'
138 branch-pattern: master
139 - branch-compare-type: 'ANT'
140 branch-pattern: stable/nile
141 - branch-compare-type: 'ANT'
142 branch-pattern: stable/moselle
148 [ -f tox.ini ] || exit 0
149 sudo apt-get -o DPkg::Lock::Timeout=300 update && \
150 sudo DEBIAN_FRONTEND=noninteractive apt-get \
151 -o DPkg::Lock::Timeout=300 dist-upgrade -y
152 sudo DEBIAN_FRONTEND=noninteractive \
153 apt-get -o DPkg::Lock::Timeout=300 install tox -y
157 name: releng-tox-node
166 - releng-tox-patchset-created
170 project: $GERRIT_PROJECT
183 name: releng-release-jobs
198 - 'releng-release-{stream}-verify'
199 - 'releng-release-{stream}-merge'
202 name: stream-parameter
209 name: 'releng-release-{stream}-verify'
220 default: ssh://fbot@gerrit.opnfv.org:29418/
223 server-name: 'gerrit.opnfv.org'
225 - patchset-created-event:
226 exclude-drafts: 'false'
227 exclude-trivial-rebase: 'false'
228 exclude-no-code-change: 'false'
229 - comment-added-contains-event:
230 comment-contains-value: 'recheck'
231 - comment-added-contains-event:
232 comment-contains-value: 'reverify'
234 - project-compare-type: 'ANT'
235 project-pattern: 'releng'
237 - branch-compare-type: 'ANT'
238 branch-pattern: '**/master'
241 pattern: 'releases/{stream}/**'
243 pattern: 'releases/schema.yaml'
245 pattern: 'releases/scripts/verify_schema.py'
248 sudo apt-get -o DPkg::Lock::Timeout=300 update && \
249 sudo DEBIAN_FRONTEND=noninteractive apt-get \
250 -o DPkg::Lock::Timeout=300 dist-upgrade -y
251 sudo DEBIAN_FRONTEND=noninteractive \
252 apt-get -o DPkg::Lock::Timeout=300 install python3-pygerrit2 \
253 python3-ruamel.yaml -y
254 - shell: !include-raw-escape:
258 name: 'releng-release-{stream}-merge'
269 default: ssh://fbot@gerrit.opnfv.org:29418/
273 - change-merged-event
274 - comment-added-contains-event:
275 comment-contains-value: 'remerge'
277 - project-compare-type: 'ANT'
278 project-pattern: 'releng'
280 - branch-compare-type: 'ANT'
281 branch-pattern: 'master'
284 pattern: 'releases/{stream}/**'
287 sudo apt-get -o DPkg::Lock::Timeout=300 update && \
288 sudo DEBIAN_FRONTEND=noninteractive apt-get \
289 -o DPkg::Lock::Timeout=300 dist-upgrade -y
290 sudo DEBIAN_FRONTEND=noninteractive \
291 apt-get -o DPkg::Lock::Timeout=300 install python3-pygerrit2 \
292 python3-ruamel.yaml -y
293 - shell: !include-raw-escape:
301 # Ensure we start with a clean environment
302 rm -f bash-violation.log python-violation.log yaml-violation.log violation.log
303 git --no-pager diff --diff-filter=MCRAT --name-only HEAD^1 > modified_files
310 if [[ -s violation.log ]]; then
312 echo "Reporting lint result...."
314 msg="Found syntax error and/or coding style violation(s) in the files modified by your patchset."
315 sed -i -e "1s#^#${msg}\n\n#" violation.log
316 cmd="gerrit review -p $GERRIT_PROJECT -m \"$(cat violation.log)\" $GERRIT_PATCHSET_REVISION --notify NONE"
317 ssh -o 'PubkeyAcceptedKeyTypes +ssh-rsa' -p 29418 fbot@gerrit.opnfv.org "$cmd"
319 # Make sure the caller job failed
328 echo "Checking bash code..."
329 for f in $(egrep '\.sh$' modified_files)
331 bash -n "$f" 2>> bash-violation.log
333 if [[ -s bash-violation.log ]]; then
334 echo -e "Bash syntax error(s)\n---" >> violation.log
335 sed -e 's/^/ /g' bash-violation.log >> violation.log
339 name: lint-python-code
344 sudo apt-get -o DPkg::Lock::Timeout=300 update && \
345 sudo DEBIAN_FRONTEND=noninteractive apt-get \
346 -o DPkg::Lock::Timeout=300 dist-upgrade -y
347 sudo DEBIAN_FRONTEND=noninteractive \
348 apt-get -o DPkg::Lock::Timeout=300 install flake8 -y
350 echo "Checking python code..."
351 for f in $(egrep '\.py$' modified_files)
353 flake8 "$f" >> python-violation.log
355 if [[ -s python-violation.log ]]; then
356 echo -e "Python violation(s)\n---" >> violation.log
357 sed -e 's/^/ /g' python-violation.log >> violation.log
366 sudo apt-get -o DPkg::Lock::Timeout=300 update && \
367 sudo DEBIAN_FRONTEND=noninteractive apt-get \
368 -o DPkg::Lock::Timeout=300 dist-upgrade -y
369 sudo DEBIAN_FRONTEND=noninteractive \
370 apt-get -o DPkg::Lock::Timeout=300 install yamllint -y
372 echo "Checking yaml file..."
373 for f in $(egrep '\.ya?ml$' modified_files)
375 yamllint "$f" >> yaml-violation.log
377 if [[ -s yaml-violation.log ]]; then
378 echo -e "YAML violation(s)\n---" >> violation.log
379 sed -e 's/^/ /g' yaml-violation.log >> violation.log
394 - 'releng-lint-verify'
397 name: 'releng-lint-verify'
406 server-name: 'gerrit.opnfv.org'
408 - patchset-created-event
409 - comment-added-contains-event:
410 comment-contains-value: recheck
411 - comment-added-contains-event:
412 comment-contains-value: reverify
414 - project-compare-type: 'ANT'
415 project-pattern: 'releng'
417 - branch-compare-type: 'ANT'
418 branch-pattern: 'master'
432 name: releng-generate-artifacts-index-pages
434 - releng-generate-artifacts-index-pages
437 name: releng-generate-artifacts-index-pages
447 - generate-artifact-html
450 name: generate-artifact-html
453 curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
454 echo "deb https://packages.cloud.google.com/apt cloud-sdk main" | sudo tee \
455 /etc/apt/sources.list.d/google-cloud-sdk.list
456 sudo apt-get -o DPkg::Lock::Timeout=300 update && \
457 sudo DEBIAN_FRONTEND=noninteractive apt-get \
458 -o DPkg::Lock::Timeout=300 install \
461 ./artifacts.opnfv.org.sh
464 name: releng-artifact-cleanup
466 - releng-artifact-cleanup
469 name: releng-artifact-cleanup
479 - releng-artifact-cleanup
482 name: releng-artifact-cleanup
485 curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
486 echo "deb https://packages.cloud.google.com/apt cloud-sdk main" | sudo tee \
487 /etc/apt/sources.list.d/google-cloud-sdk.list
488 sudo apt-get -o DPkg::Lock::Timeout=300 update && \
489 sudo DEBIAN_FRONTEND=noninteractive apt-get \
490 -o DPkg::Lock::Timeout=300 install \
492 $WORKSPACE/utils/retention_script.sh