X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=jjb%2Freleng-jobs.yaml;h=2adbc8d251e7cf13b65cd66a553f91f09ebd2d1f;hb=46a44f2dcbb44cf1db475ad8f6e5828a2c031b6b;hp=acc8f59f5b3b9a67f5a433c819a6afa6d7f26e07;hpb=fe2f0942e22b3ea45480f2d69b3408f6505a2c0c;p=releng%2Fbuilder.git diff --git a/jjb/releng-jobs.yaml b/jjb/releng-jobs.yaml index acc8f59f5..2adbc8d25 100644 --- a/jjb/releng-jobs.yaml +++ b/jjb/releng-jobs.yaml @@ -4,20 +4,26 @@ - '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 logrotate: - daysToKeep: 30 + daysToKeep: 7 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,25 +61,30 @@ 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 logrotate: - daysToKeep: 30 + daysToKeep: 7 numToKeep: 10 artifactDaysToKeep: -1 artifactNumToKeep: -1 @@ -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 # @@ -132,10 +151,10 @@ project-type: freestyle logrotate: - daysToKeep: 30 - numToKeep: 40 + daysToKeep: 7 + numToKeep: 3 artifactDaysToKeep: -1 - artifactNumToKeep: 5 + artifactNumToKeep: -1 parameters: - project-parameter: @@ -151,7 +170,8 @@ wrappers: - ssh-agent-credentials: - user: '{ssh-credentials}' + users: + - '{ssh-credentials}' triggers: - gerrit: @@ -168,10 +188,56 @@ 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' + disabled: true + 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: 7 + numToKeep: 3 + artifactDaysToKeep: -1 + artifactNumToKeep: -1 + + 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 +245,7 @@ - job-template: name: builder-check-poms + node: dynamic_verify project-type: freestyle @@ -190,14 +257,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: 3 + 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: