X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=jjb%2Freleng-jobs.yaml;h=8ce116a7faa95650a916c6ccc93a4bf57932f7b1;hb=ad0412a9ca3e543363507614a0b6c96d59310b95;hp=acc8f59f5b3b9a67f5a433c819a6afa6d7f26e07;hpb=c4d6b59be8b3f05e08afb576cf8a55f3c156ec65;p=releng%2Fbuilder.git diff --git a/jjb/releng-jobs.yaml b/jjb/releng-jobs.yaml index acc8f59f5..8ce116a7f 100644 --- a/jjb/releng-jobs.yaml +++ b/jjb/releng-jobs.yaml @@ -4,12 +4,18 @@ - 'builder-verify-jjb' - 'builder-verify-python' - 'builder-merge' + - 'builder-weekly' - 'builder-check-poms' + # Maven Sites + - 'builder-site-publish' + - 'builder-site-verify' + project: 'releng/builder' - job-template: name: builder-verify-jjb + node: jjbuilder project-type: freestyle @@ -17,7 +23,7 @@ daysToKeep: 30 numToKeep: 10 artifactDaysToKeep: -1 - artifactNumToKeep: -1 + artifactNumToKeep: 5 parameters: - project-parameter: @@ -33,7 +39,8 @@ wrappers: - ssh-agent-credentials: - user: '{ssh-credentials}' + users: + - '{ssh-credentials}' triggers: - gerrit: @@ -54,20 +61,25 @@ file-paths: - compare-type: ANT pattern: jjb/** - + - compare-type: ANT + pattern: jjb-templates/** builders: - shell: | - source /opt/virtualenv/jenkins-job-builder/bin/activate + pip freeze python scripts/jjb-autoupdate-project.py - jenkins-jobs test jjb/ + jenkins-jobs test --recursive -o job_output jjb/ + - releng-check-unicode publishers: + - archive-artifacts: + artifacts: 'job_output/*' - email-notification: email-prefix: '[releng]' - job-template: name: builder-verify-python + node: dynamic_verify project-type: freestyle @@ -91,7 +103,8 @@ wrappers: - ssh-agent-credentials: - user: '{ssh-credentials}' + users: + - '{ssh-credentials}' triggers: - gerrit: @@ -116,6 +129,11 @@ builders: - shell: | + virtualenv $WORKSPACE/venv + source $WORKSPACE/venv/bin/activate + pip install --upgrade pip + pip freeze + pip install flake8 flake8 scripts/ publishers: @@ -124,6 +142,7 @@ - job-template: name: 'builder-merge' + node: jjbuilder # builder-merge job to run JJB update # @@ -151,7 +170,8 @@ wrappers: - ssh-agent-credentials: - user: '{ssh-credentials}' + users: + - '{ssh-credentials}' triggers: - gerrit: @@ -168,10 +188,55 @@ file-paths: - compare-type: ANT pattern: jjb/** + - compare-type: ANT + pattern: jjb-templates/** builders: - shell: - !include-raw-escape include-raw-jjb-update.sh + !include-raw-escape: + - include-raw-jjb-update.sh + + publishers: + - email-notification: + email-prefix: '[releng]' + +- job-template: + name: 'builder-weekly' + node: jjbuilder + + # builder-weekly job to run JJB update weekly + # + # This job's purpose is to update all the JJB on a weekly (Sunday) + # basis with --flush-cache enabled to ensure jobs are okay + + project-type: freestyle + + logrotate: + daysToKeep: 30 + numToKeep: 40 + artifactDaysToKeep: -1 + artifactNumToKeep: 5 + + parameters: + - project-parameter: + project: '{project}' + + scm: + - git-scm: + credentials-id: '{ssh-credentials}' + branch: 'master' + + wrappers: + - ssh-agent-credentials: + users: + - '{ssh-credentials}' + + triggers: + - timed: 'H H * * 0' + + builders: + - shell: | + jenkins-jobs --flush-cache update --recursive jjb/ publishers: - email-notification: @@ -179,6 +244,7 @@ - job-template: name: builder-check-poms + node: dynamic_verify project-type: freestyle @@ -190,14 +256,152 @@ wrappers: - ssh-agent-credentials: - user: '{ssh-credentials}' + users: + - '{ssh-credentials}' triggers: - timed: 'H H * * 1' builders: - shell: - !include-raw-escape include-raw-check-poms.sh + !include-raw-escape: + - include-raw-check-poms.sh + + publishers: + - email-notification: + email-prefix: '[releng]' + + +### +### Maven Sites +### + +- job-template: + name: 'builder-site-publish' + node: dynamic_merge + concurrent: false + jdk: 'openjdk8' + + # This job's purpose is to publish maven site + + project-type: maven + + logrotate: + daysToKeep: 7 + numToKeep: 10 + artifactDaysToKeep: -1 + artifactNumToKeep: -1 + + parameters: + - project-parameter: + project: '{project}' + - gerrit-parameter: + branch: 'master' + + scm: + - gerrit-trigger-scm: + credentials-id: '{ssh-credentials}' + refspec: '' + choosing-strategy: 'default' + + wrappers: + - ssh-agent-credentials: + users: + - '{ssh-credentials}' + + triggers: + - gerrit: + server-name: 'OpenDaylight' + trigger-on: + - change-merged-event + - comment-added-contains-event: + comment-contains-value: 'republish' + projects: + - project-compare-type: 'ANT' + project-pattern: 'releng/builder' + branches: + - branch-compare-type: 'ANT' + branch-pattern: '**/master' + file-paths: + - compare-type: ANT + pattern: src/** + - compare-type: ANT + pattern: pom.xml + + maven: + maven-name: '{mvn33}' + root-pom: 'pom.xml' + goals: 'site:site site:deploy -Dstream=master' + maven-opts: '-Xmx1024m' + settings: '{releng-builder-settings}' + global-settings: '{odl-global-settings}' + + publishers: + - email-notification: + email-prefix: '[releng]' + +- job-template: + name: 'builder-site-verify' + node: dynamic_verify + concurrent: true + jdk: 'openjdk8' + + # This job's purpose is to verify maven site configuration + + project-type: maven + + logrotate: + daysToKeep: 7 + numToKeep: 10 + artifactDaysToKeep: -1 + artifactNumToKeep: -1 + + parameters: + - 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: + users: + - '{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' + projects: + - project-compare-type: 'ANT' + project-pattern: 'releng/builder' + branches: + - branch-compare-type: 'ANT' + branch-pattern: '**/master' + file-paths: + - compare-type: ANT + pattern: src/** + - compare-type: ANT + pattern: pom.xml + + maven: + maven-name: '{mvn33}' + root-pom: 'pom.xml' + goals: 'site:site -Dstream=master' + maven-opts: '-Xmx1024m' + settings: '{autorelease-settings}' + global-settings: '{odl-global-settings}' publishers: - email-notification: