1 # SPDX-License-Identifier: Apache-2.0
2 ##############################################################################
3 # Copyright (c) 2019 The Linux Foundation and others.
4 # All rights reserved. This program and the accompanying materials
5 # are made available under the terms of the Apache License, Version 2.0
6 # which accompanies this distribution, and is available at
7 # http://www.apache.org/licenses/LICENSE-2.0
8 ##############################################################################
14 - lf_release_common: &lf_release_common
15 name: lf-release-common
21 project-type: freestyle
25 - lf-infra-properties:
35 - lf_release_verify: &lf_release_verify
36 name: lf-release-verify
38 ######################
39 # Default parameters #
40 ######################
45 git-url: "$GIT_URL/$PROJECT"
46 gerrit-skip-vote: false
47 use-release-file: true
49 gerrit_verify_triggers:
50 - patchset-created-event:
52 exclude-trivial-rebase: false
53 exclude-no-code-change: false
54 - draft-published-event
55 - comment-added-contains-event:
56 comment-contains-value: "^Patch Set[ ]+[0-9]+:([ ]+|[\n]+)(recheck|reverify)$"
62 disabled: "{disable-job}"
65 - lf-infra-parameters:
67 branch: "$GERRIT_BRANCH"
68 stream: "$GERRIT_BRANCH"
69 - lf-build-with-parameters-maven-release:
70 use-release-file: "{use-release-file}"
75 condition-kind: regex-match
76 regex: "^.*-docker-.*"
79 - lf-provide-maven-settings:
80 global-settings-file: "global-settings"
81 settings-file: "{mvn-settings}"
82 - shell: !include-raw-escape: ../shell/docker-login.sh
83 - lf-provide-maven-settings-cleanup
84 - config-file-provider:
86 - file-id: sigul-config
87 variable: SIGUL_CONFIG
88 - file-id: sigul-password
89 variable: SIGUL_PASSWORD
92 - file-id: signing-pubkey
93 variable: SIGNING_PUBKEY
94 - shell: !include-raw-escape: ../shell/sigul-configuration.sh
95 - shell: !include-raw-escape: ../shell/sigul-install.sh
99 name: "{project-name}-release-verify"
100 id: gerrit-release-verify
101 <<: *lf_release_common
102 # yamllint disable-line rule:key-duplicates
103 <<: *lf_release_verify
107 build-timeout: "{build-timeout}"
108 jenkins-ssh-credential: "{jenkins-ssh-credential}"
111 - lf-infra-gerrit-scm:
113 refspec: "$GERRIT_REFSPEC"
114 branch: "$GERRIT_BRANCH"
115 submodule-disable: true
116 submodule-recursive: false
117 submodule-timeout: 10
118 choosing-strategy: gerrit
119 jenkins-ssh-credential: "{jenkins-ssh-credential}"
123 server-name: "{gerrit-server-name}"
124 trigger-on: "{obj:gerrit_verify_triggers}"
126 - project-compare-type: "ANT"
127 project-pattern: "{project}"
129 - branch-compare-type: "ANT"
132 - compare-type: REG_EXP
133 pattern: '(releases\/.*\.yaml|\.releases\/.*\.yaml)'
135 successful: "{gerrit-skip-vote}"
136 failed: "{gerrit-skip-vote}"
137 unstable: "{gerrit-skip-vote}"
138 notbuilt: "{gerrit-skip-vote}"
144 - lf_release_merge: &lf_release_merge
145 name: lf-release-merge
147 ######################
148 # Default parameters #
149 ######################
151 build-days-to-keep: 7
154 git-url: "$GIT_URL/$PROJECT"
155 use-release-file: true
157 gerrit_merge_triggers:
158 - change-merged-event
159 - comment-added-contains-event:
160 comment-contains-value: remerge$
162 #####################
163 # Job Configuration #
164 #####################
166 disabled: "{disable-job}"
169 - lf-infra-parameters:
171 branch: "$GERRIT_BRANCH"
172 stream: "$GERRIT_BRANCH"
173 - lf-build-with-parameters-maven-release:
174 use-release-file: "{use-release-file}"
179 If DRY_RUN is enabled artifacts are not published.
184 condition-kind: regex-match
185 regex: "^.*-docker-.*"
186 label: "{build-node}"
188 - lf-provide-maven-settings:
189 global-settings-file: "global-settings"
190 settings-file: "{mvn-settings}"
191 - shell: !include-raw-escape: ../shell/docker-login.sh
192 - lf-provide-maven-settings-cleanup
193 - config-file-provider:
195 - file-id: sigul-config
196 variable: SIGUL_CONFIG
197 - file-id: sigul-password
198 variable: SIGUL_PASSWORD
201 - file-id: signing-pubkey
202 variable: SIGNING_PUBKEY
203 - shell: !include-raw-escape: ../shell/sigul-configuration.sh
204 - shell: !include-raw-escape: ../shell/sigul-install.sh
208 name: "{project-name}-release-merge"
209 id: gerrit-release-merge
210 <<: *lf_release_common
211 # yamllint disable-line rule:key-duplicates
212 <<: *lf_release_merge
216 build-timeout: "{build-timeout}"
217 jenkins-ssh-credential: "{jenkins-ssh-release-credential}"
220 - lf-infra-gerrit-scm:
221 jenkins-ssh-credential: "{jenkins-ssh-credential}"
223 refspec: "$GERRIT_REFSPEC"
224 branch: "$GERRIT_BRANCH"
225 submodule-disable: true
226 submodule-recursive: false
227 submodule-timeout: 10
228 choosing-strategy: default
232 server-name: "{gerrit-server-name}"
233 trigger-on: "{obj:gerrit_merge_triggers}"
235 - project-compare-type: "ANT"
236 project-pattern: "{project}"
238 - branch-compare-type: "ANT"
241 - compare-type: REG_EXP
242 pattern: '(releases\/.*\.yaml|\.releases\/.*\.yaml)'