Merge "MULTICLOUD-Refactor CLM project block"
[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     build_script: ''
18     post_build_script: ''
19
20     #####################
21     # Job Configuration #
22     #####################
23
24     project-type: freestyle
25     node: '{build-node}'
26
27     properties:
28       - lf-infra-properties:
29           build-days-to-keep: '{build-days-to-keep}'
30
31     parameters:
32       - lf-infra-parameters:
33           branch: '{branch}'
34           project: '{project}'
35           stream: '{stream}'
36           lftools-version: '{lftools-version}'
37
38     wrappers:
39       - lf-infra-wrappers:
40           build-timeout: '{build-timeout}'
41           jenkins-ssh-credential: '{jenkins-ssh-credential}'
42
43     publishers:
44       - lf-infra-publish
45
46 #################
47 # JOB TEMPLATES #
48 #################
49 - job-template:
50     name: '{project-name}-{stream}-verify-helm'
51     # Job template for helm verify jobs
52
53     <<: *helm_job_boiler_plate
54
55     scm:
56       - gerrit-trigger-scm:
57           refspec: '$GERRIT_REFSPEC'
58           choosing-strategy: 'gerrit'
59           submodule-recursive: '{submodule-recursive}'
60
61     triggers:
62       - gerrit-trigger-helm-patch-submitted:
63           status-context: '{project}-Helm-Verify'
64           server: '{server-name}'
65           project: '{project}'
66           branch: '{branch}'
67           files: '{files}'
68
69     builders:
70       - lf-infra-pre-build
71       - shell: '{obj:pre_build_script}'
72       - shell: '{obj:build_script}'
73
74 - job-template:
75     name: '{project-name}-{stream}-merge-helm'
76     # Job template for Helm merge jobs
77
78     <<: *helm_job_boiler_plate
79
80     scm:
81       - gerrit-trigger-scm:
82           refspec: ''
83           choosing-strategy: 'default'
84           submodule-recursive: '{submodule-recursive}'
85
86     triggers:
87       - gerrit-trigger-helm-patch-merged:
88           server: '{server-name}'
89           project: '{project}'
90           branch: '{branch}'
91           files: '{files}'
92
93     builders:
94       - lf-infra-pre-build
95       - lf-provide-maven-settings:
96           global-settings-file: '{mvn-global-settings}'
97           settings-file: '{mvn-settings}'
98       - shell: '{obj:pre_build_script}'
99       - shell: '{obj:build_script}'
100       - lf-infra-create-netrc:
101           server-id: oom-helm
102       - inject:
103           properties-content: |
104             BUILD_TYPE=snapshot
105       - shell: '{obj:post_build_script}'
106       - lf-provide-maven-settings-cleanup
107
108 - job-template:
109     name: '{project-name}-{stream}-stage-helm'
110     # Job template for Helm stage jobs
111
112     <<: *helm_job_boiler_plate
113
114     scm:
115       - gerrit-trigger-scm:
116           refspec: ''
117           choosing-strategy: 'default'
118           submodule-recursive: '{submodule-recursive}'
119
120     triggers:
121       - pollscm:
122           cron: '0 22 * * *'
123       - gerrit:
124           trigger-on:
125             - comment-added-contains-event:
126                 comment-contains-value: '^stage-helm$'
127
128     builders:
129       - lf-infra-pre-build
130       - lf-provide-maven-settings:
131           global-settings-file: '{mvn-global-settings}'
132           settings-file: '{mvn-settings}'
133       - shell: '{obj:pre_build_script}'
134       - shell: '{obj:build_script}'
135       - lf-infra-create-netrc:
136           server-id: oom-helm
137       - inject:
138           properties-content: |
139             BUILD_TYPE=staging
140       - shell: '{obj:post_build_script}'
141       - lf-provide-maven-settings-cleanup
142
143 - job-template:
144     name: '{project-name}-{subproject}-{stream}-verify-helm'
145     # Job template for helm verify jobs
146
147     <<: *helm_job_boiler_plate
148
149     disabled: true
150     builders:
151       - lf-infra-pre-build
152       - shell: '{pre_build_script}'
153       - shell: '{build_script}'
154       - shell: '{post_build_script}'
155
156 - job-template:
157     name: '{project-name}-{subproject}-{stream}-merge-helm'
158     # Job template for helm merge jobs
159
160     <<: *helm_job_boiler_plate
161
162     disabled: true
163     builders:
164       - lf-infra-pre-build
165       - shell: '{pre_build_script}'
166       - shell: '{build_script}'
167       - shell: '{post_build_script}'
168
169 - job-template:
170     name: '{project-name}-{stream}-update-helm-weekly'
171     # Job template for weekly helm update jobs
172     #
173     # Required Variables:
174     #     branch:    git branch (eg. stable/lithium or master)
175     <<: *helm_job_boiler_plate
176
177     disabled: true
178     scm:
179       - lf-infra-gerrit-scm:
180           jenkins-ssh-credential: '{jenkins-ssh-credential}'
181           git-url: '$GIT_URL/$PROJECT'
182           refspec: '$GERRIT_REFSPEC'
183           branch: '$GERRIT_BRANCH'
184           submodule-recursive: true
185           choosing-strategy: default
186
187     builders:
188       - lf-infra-pre-build
189       - shell: '{pre_build_script}'
190       - shell: '{build_script}'
191       - shell: '{post_build_script}'
192
193     triggers:
194       # 11 AM UTC
195       - timed: '@daily'
196       - gerrit-trigger-release-manually:
197           server: '{server-name}'
198           project: '{project}'
199           branch: '{branch}'
200