blob: a03db4dbff1dc69b01b3b2f70023fab0bdb624a2 [file] [log] [blame]
Zack Williamsce60d712018-05-27 15:27:57 -07001---
Zack Williams12783ac2018-06-12 15:13:12 -07002# CORD docker image building + dockerhub publishing tasks
Zack Williamsce60d712018-05-27 15:27:57 -07003
4- project:
5 name: imagebuilder
6
7 # add repos that have documentation to the project list in both jobs
8 jobs:
9 - 'publish-imagebuilder':
Zack Williams5fee0022018-06-11 14:42:54 -070010 project-regexp: '{imagebuilder-projects-regexp}'
Zack Williamsce60d712018-05-27 15:27:57 -070011 branch-regexp: '{supported-branches-regexp}'
Zack Williams12783ac2018-06-12 15:13:12 -070012# dependency-jobs: 'version-tag'
Zack Williamsce60d712018-05-27 15:27:57 -070013
14- job-template:
15 id: publish-imagebuilder
16 name: 'publish-imagebuilder'
17 description: |
18 Created by {id} job-template from ci-management/jjb/helm.yaml
19
20 triggers:
21 - cord-infra-gerrit-trigger-merge:
22 gerrit-server-name: '{gerrit-server-name}'
23 project-regexp: '{project-regexp}'
24 branch-regexp: '{branch-regexp}'
25 file-include-regexp: '{all-files-regexp}'
26 dependency-jobs: '{dependency-jobs}'
27
28 properties:
29 - cord-infra-properties:
30 build-days-to-keep: '{build-days-to-keep}'
31 artifact-num-to-keep: '{artifact-num-to-keep}'
32
33 wrappers:
34 - lf-infra-wrappers:
35 build-timeout: '{build-timeout}'
36 jenkins-ssh-credential: '{jenkins-ssh-credential}'
37
38 parameters:
39 - string:
40 name: executorNode
Zack Williams675a7552018-05-29 16:14:09 -070041 default: 'imagebuilder'
Zack Williamsce60d712018-05-27 15:27:57 -070042 description: 'Name of the Jenkins node to run the job on'
43
44 - string:
45 name: manifestUrl
46 default: '{gerrit-server-url}/{cord-repo-manifest}'
47 description: 'URL to the repo manifest'
48
49 - string:
50 name: manifestBranch
51 default: '$GERRIT_BRANCH'
52 description: 'Name of the repo branch to use'
53
Zack Williams12783ac2018-06-12 15:13:12 -070054# NOTE: May need to parameters that give the ability to rebuild from a specific
55# tag or commit on a branch.
56
Zack Williamsce60d712018-05-27 15:27:57 -070057 - bool:
58 name: build
59 default: false
60 description: 'Rebuild all containers (same as "docker build --no-cache")'
61
62 - bool:
63 name: force
64 default: false
65 description: 'Force remove obsolete tags/images (same as "docker rmi --force")'
66
Zack Williams5e09c952018-06-12 10:19:48 -070067 - string:
68 name: failureEmail
69 default: '{failure-email-address}, $GERRIT_PATCHSET_UPLOADER_EMAIL'
70 description: 'On job failure, send an email to these addresses'
Zack Williamsce60d712018-05-27 15:27:57 -070071
72 project-type: pipeline
73 concurrent: false
74
75 dsl: !include-raw-escape: pipeline/imagebuilder.groovy
76