diff options
author | 2015-11-23 08:48:17 -0800 | |
---|---|---|
committer | 2015-11-23 08:48:17 -0800 | |
commit | 21e6159d981bc45301b3727423336d08a49fe53f (patch) | |
tree | f3507a6d9a7aeaddad15d5baeb2d25c76f9a64d2 /jjb/ci-management-jobs.yaml | |
parent | 883d77c5c804b0f1e9f1370c89f8fe38672188b5 (diff) |
Initial JJB self-hosting job definitions
These are the base definitions for having Jenkins validate and merge the
JJB jobs that manage the Jenkins instance.
Change-Id: Ic028248bc6cacb86d4db8c1e0f5f924640892c99
Signed-off-by: Andrew Grimberg <agrimberg@linuxfoundation.org>
Diffstat (limited to 'jjb/ci-management-jobs.yaml')
-rw-r--r-- | jjb/ci-management-jobs.yaml | 154 |
1 files changed, 154 insertions, 0 deletions
diff --git a/jjb/ci-management-jobs.yaml b/jjb/ci-management-jobs.yaml new file mode 100644 index 000000000..7b2540c6c --- /dev/null +++ b/jjb/ci-management-jobs.yaml @@ -0,0 +1,154 @@ +- project: + name: ci-management-jobs + jobs: + - 'ci-management-verify-jjb' + - 'ci-management-merge' + - 'ci-management-weekly' + + project: 'ci-management' + +- job-template: + name: ci-management-verify-jjb + + project-type: freestyle + + logrotate: + daysToKeep: 30 + 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' + - comment-added-contains-event: + comment-contains-value: 'reverify' + projects: + - project-compare-type: 'ANT' + project-pattern: 'ci-management' + branches: + - branch-compare-type: 'ANT' + branch-pattern: '**/master' + file-paths: + - compare-type: ANT + pattern: jjb/* + - compare-type: ANT + pattern: jjb-templates/** + + builders: + - shell: | + jenkins-jobs test jjb/ + - ci-management-check-unicode + +- job-template: + name: 'ci-management-merge' + + project-type: freestyle + + logrotate: + daysToKeep: 30 + numToKeep: 40 + artifactDaysToKeep: -1 + artifactNumToKeep: 5 + + 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: + trigger-on: + - change-merged-event + - comment-added-contains-event: + comment-contains-value: 'remerge' + projects: + - project-compare-type: 'ANT' + project-pattern: 'ci-management' + branches: + - branch-compare-type: 'ANT' + branch-pattern: '**/master' + file-paths: + - compare-type: ANT + pattern: jjb/** + - compare-type: ANT + pattern: jjb-templates/** + + builders: + - shell: + !include-raw-escape include-raw-jjb-update.sh + +- job-template: + name: 'ci-management-weekly' + + # ci-management-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 properly configured in Jenkins + + 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 jjb/ + + |