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