Merge "Install python-tox for docker"
[ci-management.git] / jjb / global-templates-helm.yaml
1 ---
2 ###########
3 # ANCHORS #
4 ###########
5 - helm_job_boiler_plate: &helm_job_boiler_plate
6     name: helm_job_boiler_plate
7
8     ######################
9     # Default parameters #
10     ######################
11
12     branch: master
13     submodule-recursive: true
14
15     # default params for helm jobs
16     pre_build_script: ''
17     post_build_script: ''
18
19     #####################
20     # Job Configuration #
21     #####################
22
23     project-type: freestyle
24     node: '{build-node}'
25
26     properties:
27       - lf-infra-properties:
28           build-days-to-keep: '{build-days-to-keep}'
29
30     parameters:
31       - lf-infra-parameters:
32           branch: '{branch}'
33           project: '{project}'
34           stream: '{stream}'
35           lftools-version: '{lftools-version}'
36
37     wrappers:
38       - lf-infra-wrappers:
39           build-timeout: '{build-timeout}'
40           jenkins-ssh-credential: '{jenkins-ssh-credential}'
41
42     publishers:
43       - lf-infra-publish
44
45 - helm_verify_boiler_plate: &helm_verify_boiler_plate
46     name: helm_verify_boiler_plate
47
48     concurrent: true
49
50     scm:
51       - gerrit-trigger-scm:
52           refspec: '$GERRIT_REFSPEC'
53           choosing-strategy: 'default'
54           submodule-recursive: '{submodule-recursive}'
55
56     triggers:
57       - gerrit-trigger-patch-submitted:
58           status-context: '{project}-Helm-Verify'
59           server: '{server-name}'
60           project: '{project}'
61           branch: '{branch}'
62           files: '{files}'
63
64 - helm_merge_boiler_plate: &helm_merge_boiler_plate
65     name: helm_merge_boiler_plate
66
67     scm:
68       - gerrit-trigger-scm:
69           refspec: '$GERRIT_REFSPEC'
70           choosing-strategy: 'default'
71           submodule-recursive: '{submodule-recursive}'
72
73     triggers:
74       - gerrit-trigger-patch-merged:
75           server: '{server-name}'
76           project: '{project}'
77           branch: '{branch}'
78           files: '{files}'
79       - pollscm:
80           cron: ''
81
82 #################
83 # JOB TEMPLATES #
84 #################
85 - job-template:
86     name: '{project-name}-{stream}-verify-helm'
87     # Job template for helm verify jobs
88
89     <<: *helm_job_boiler_plate
90     # yamllint disable-line rule:key-duplicates
91     <<: *helm_verify_boiler_plate
92
93     builders:
94       - shell: '{pre_build_script}'
95       - shell: '{build_script}'
96       - shell: '{post_build_script}'
97
98 - job-template:
99     name: '{project-name}-{stream}-merge-helm'
100     # Job template for Helm merge jobs
101
102     <<: *helm_job_boiler_plate
103     # yamllint disable-line rule:key-duplicates
104     <<: *helm_merge_boiler_plate
105
106     builders:
107       - shell: '{pre_build_script}'
108       - shell: '{build_script}'
109       - shell: '{post_build_script}'
110
111 - job-template:
112     name: '{project-name}-{subproject}-{stream}-verify-helm'
113     # Job template for helm verify jobs
114
115     <<: *helm_job_boiler_plate
116     # yamllint disable-line rule:key-duplicates
117     <<: *helm_verify_boiler_plate
118
119     builders:
120       - shell: '{pre_build_script}'
121       - shell: '{build_script}'
122       - shell: '{post_build_script}'
123
124 - job-template:
125     name: '{project-name}-{subproject}-{stream}-merge-helm'
126     # Job template for helm merge jobs
127
128     <<: *helm_job_boiler_plate
129     # yamllint disable-line rule:key-duplicates
130     <<: *helm_merge_boiler_plate
131
132     builders:
133       - shell: '{pre_build_script}'
134       - shell: '{build_script}'
135       - shell: '{post_build_script}'
136
137 - job-template:
138     name: '{project-name}-{stream}-update-helm-weekly'
139     # Job template for weekly helm update jobs
140     #
141     # Required Variables:
142     #     branch:    git branch (eg. stable/lithium or master)
143     <<: *helm_job_boiler_plate
144
145     scm:
146       - lf-infra-gerrit-scm:
147           jenkins-ssh-credential: '{jenkins-ssh-credential}'
148           git-url: '$GIT_URL/$PROJECT'
149           refspec: '$GERRIT_REFSPEC'
150           branch: '$GERRIT_BRANCH'
151           submodule-recursive: true
152           choosing-strategy: default
153
154     builders:
155       - shell: '{pre_build_script}'
156       - shell: '{build_script}'
157       - shell: '{post_build_script}'
158
159     triggers:
160       # 11 AM UTC
161       - timed: 'H 11 * * *'
162       - gerrit-trigger-release-manually:
163           server: '{server-name}'
164           project: '{project}'
165           branch: '{branch}'
166