X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=jjb%2Freleng-jobs.yaml;h=8ce116a7faa95650a916c6ccc93a4bf57932f7b1;hb=ad0412a9ca3e543363507614a0b6c96d59310b95;hp=ac7a2cda15d02da5278007338cca5e71806279e3;hpb=06173ce115d065036c556e8d0723f43a653c4b37;p=releng%2Fbuilder.git diff --git a/jjb/releng-jobs.yaml b/jjb/releng-jobs.yaml index ac7a2cda1..8ce116a7f 100644 --- a/jjb/releng-jobs.yaml +++ b/jjb/releng-jobs.yaml @@ -4,9 +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 @@ -14,27 +23,32 @@ daysToKeep: 30 numToKeep: 10 artifactDaysToKeep: -1 - artifactNumToKeep: -1 + artifactNumToKeep: 5 parameters: + - project-parameter: + project: '{project}' - gerrit-parameter: branch: 'master' scm: - gerrit-trigger-scm: credentials-id: '{ssh-credentials}' - scm-url: 'ssh://jenkins-releng@git.opendaylight.org:29418/releng/builder' refspec: '$GERRIT_REFSPEC' choosing-strategy: 'gerrit' wrappers: - ssh-agent-credentials: - user: '{ssh-credentials}' + users: + - '{ssh-credentials}' triggers: - gerrit: trigger-on: - - patchset-created-event + - 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' @@ -47,19 +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 - jenkins-jobs test jjb/ + pip freeze + python scripts/jjb-autoupdate-project.py + 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 @@ -70,24 +90,29 @@ artifactNumToKeep: -1 parameters: + - project-parameter: + project: '{project}' - gerrit-parameter: branch: 'master' scm: - gerrit-trigger-scm: credentials-id: '{ssh-credentials}' - scm-url: 'ssh://jenkins-releng@git.opendaylight.org:29418/releng/builder' refspec: '$GERRIT_REFSPEC' choosing-strategy: 'gerrit' wrappers: - ssh-agent-credentials: - user: '{ssh-credentials}' + users: + - '{ssh-credentials}' triggers: - gerrit: trigger-on: - - patchset-created-event + - 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' @@ -104,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: @@ -112,6 +142,7 @@ - job-template: name: 'builder-merge' + node: jjbuilder # builder-merge job to run JJB update # @@ -126,19 +157,21 @@ artifactNumToKeep: 5 parameters: + - project-parameter: + project: '{project}' - gerrit-parameter: branch: 'master' scm: - gerrit-trigger-scm: credentials-id: '{ssh-credentials}' - scm-url: 'ssh://jenkins-releng@git.opendaylight.org:29418/releng/builder' refspec: '' choosing-strategy: 'default' wrappers: - ssh-agent-credentials: - user: '{ssh-credentials}' + users: + - '{ssh-credentials}' triggers: - gerrit: @@ -155,10 +188,220 @@ file-paths: - compare-type: ANT pattern: jjb/** + - compare-type: ANT + pattern: jjb-templates/** + + builders: + - shell: + !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: + email-prefix: '[releng]' + +- job-template: + name: builder-check-poms + node: dynamic_verify + + project-type: freestyle + + logrotate: + daysToKeep: 1 + numToKeep: 1 + artifactDaysToKeep: -1 + artifactNumToKeep: -1 + + wrappers: + - ssh-agent-credentials: + users: + - '{ssh-credentials}' + + triggers: + - timed: 'H H * * 1' builders: - shell: - !include-raw-escape include-raw-jjb-update.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: