Merge "Add conditional block for s3"
[releng/global-jjb.git] / jjb / lf-rtdv3-jobs.yaml
1 ---
2 - lf_rtdv3_common: &lf_rtdv3_common
3     name: lf-rtdv3-common
4
5     ######################
6     # Default parameters #
7     ######################
8
9     branch: master
10     stream: master
11     default-version: latest
12     disabled: "{disable-job}"
13     build-days-to-keep: 7
14     build-timeout: 15
15     disable-job: false
16     git-url: "$GIT_URL/$PROJECT"
17     submodule-recursive: false
18     submodule-disable: true
19     submodule-timeout: 10
20     tox-dir: "."
21     doc-dir: "docs/_build/html"
22     gerrit-skip-vote: false
23
24     gerrit_trigger_file_paths:
25       - compare-type: REG_EXP
26         pattern: '^docs\/.*'
27
28     #####################
29     # Job Configuration #
30     #####################
31
32     project-type: freestyle
33     node: "{build-node}"
34
35     properties:
36       - lf-infra-properties:
37           build-days-to-keep: 7
38
39     parameters:
40       - lf-infra-parameters:
41           project: $GERRIT_PROJECT
42           branch: "{branch}"
43           refspec: "refs/heads/{branch}"
44           stream: "{stream}"
45
46     wrappers:
47       - lf-infra-wrappers:
48           build-timeout: "{build-timeout}"
49           jenkins-ssh-credential: "{jenkins-ssh-credential}"
50
51     publishers:
52       - lf-infra-publish
53
54     builders:
55       - conditional-step:
56           condition-kind: file-exists
57           condition-filename: .readthedocs.yaml
58           on-evaluation-failure: dont-run
59           steps:
60             - config-file-provider:
61                 files:
62                   - file-id: lftoolsini
63                     target: "$HOME/.config/lftools/lftools.ini"
64             - lf-infra-pre-build
65             - lf-infra-tox-install:
66                 python-version: "python3"
67             - inject:
68                 properties-content: |
69                   TOX_ENVS=docs,docs-linkcheck
70                   TOX_DIR={tox-dir}
71                   DOC_DIR={doc-dir}
72             - lf-infra-tox-run:
73                 parallel: "true"
74             - lf-rtdv3-build:
75                 default-version: "{default-version}"
76
77 - job-template:
78     name: "rtdv3-global-verify-{stream}"
79     id: rtdv3-global-verify
80     <<: *lf_rtdv3_common
81     # yamllint disable-line rule:key-duplicates
82
83     stream: master
84
85     gerrit_verify_triggers:
86       - patchset-created-event:
87           exclude-drafts: true
88           exclude-trivial-rebase: false
89           exclude-no-code-change: false
90       - draft-published-event
91       - comment-added-contains-event:
92           comment-contains-value: '^Patch Set\s+\d+:\s+(recheck|reverify)\s*$'
93
94     scm:
95       - lf-infra-gerrit-scm:
96           branch: "$GERRIT_BRANCH"
97           jenkins-ssh-credential: "{jenkins-ssh-credential}"
98           git-url: "{git-url}"
99           refspec: "$GERRIT_REFSPEC"
100           submodule-recursive: "{submodule-recursive}"
101           submodule-timeout: "{submodule-timeout}"
102           submodule-disable: "{submodule-disable}"
103           choosing-strategy: gerrit
104
105     triggers:
106       - gerrit:
107           server-name: "{gerrit-server-name}"
108           trigger-on: "{obj:gerrit_verify_triggers}"
109           projects:
110             - project-compare-type: "ANT"
111               project-pattern: "**"
112               branches:
113                 - branch-compare-type: "ANT"
114                   branch-pattern: "**/{branch}"
115                 - branch-compare-type: "ANT"
116                   branch-pattern: "refs/tags/**"
117               file-paths: "{obj:gerrit_trigger_file_paths}"
118               forbidden-file-paths:
119                 - compare-type: REG_EXP
120                   pattern: ".*global-jjb.*"
121
122           skip-vote:
123             successful: "{gerrit-skip-vote}"
124             failed: "{gerrit-skip-vote}"
125             unstable: "{gerrit-skip-vote}"
126             notbuilt: "{gerrit-skip-vote}"
127
128 - job-template:
129     name: "rtdv3-global-merge-{stream}"
130     id: rtdv3-global-merge
131     <<: *lf_rtdv3_common
132
133     ######################
134     # Default parameters #
135     ######################
136
137     branch: "{branch}"
138
139     gerrit_merge_triggers:
140       - change-merged-event
141       - comment-added-contains-event:
142           comment-contains-value: '^Patch Set\s+\d+:\s+remerge\s*$'
143       - ref-updated-event
144
145     #####################
146     # Job Configuration #
147     #####################
148
149     disabled: "{disable-job}"
150
151     scm:
152       - lf-infra-gerrit-scm:
153           jenkins-ssh-credential: "{jenkins-ssh-credential}"
154           refspec: "$GERRIT_REFSPEC"
155           branch: "$GERRIT_BRANCH"
156           git-url: "{git-url}"
157           submodule-disable: true
158           submodule-recursive: false
159           submodule-timeout: 10
160           choosing-strategy: default
161
162     triggers:
163       - gerrit:
164           server-name: "{gerrit-server-name}"
165           trigger-on: "{obj:gerrit_merge_triggers}"
166           projects:
167             - project-compare-type: "ANT"
168               project-pattern: "**"
169               branches:
170                 - branch-compare-type: "ANT"
171                   branch-pattern: "**/{branch}"
172                 - branch-compare-type: "ANT"
173                   branch-pattern: "refs/tags/**"
174               file-paths: "{obj:gerrit_trigger_file_paths}"
175               forbidden-file-paths:
176                 - compare-type: REG_EXP
177                   pattern: ".*global-jjb.*"