3 name: '{project-name}-rtd-jobs'
5 # This job group contains all the ReadTheDocs jobs
12 name: '{project-name}-github-rtd-jobs'
14 # This job group contains all the ReadTheDocs jobs
24 - lf_rtd_common: &lf_rtd_common
26 # RTD verify and merge jobs are the same except for their scm, trigger, and
27 # builders definition. This anchor is the common template.
29 ######################
30 # Default parameters #
31 ######################
33 gerrit_trigger_file_paths:
43 project-type: freestyle
47 - lf-infra-properties:
51 - lf-infra-parameters:
54 refspec: 'refs/heads/{branch}'
56 lftools-version: '{lftools-version}'
60 build-timeout: '{build-timeout}'
61 jenkins-ssh-credential: '{jenkins-ssh-credential}'
70 - lf_rtd_merge: &lf_rtd_merge
73 # Merge job which triggers a POST of the docs project to readthedocs
75 # Required parameters:
77 # :rtd-project: This is the name of the project on ReadTheDocs.org.
79 # Optional parameters:
81 # :branch: Git branch to fetch for the build. (default: master)
82 # :build-days-to-keep: Days to keep build logs in Jenkins. (default: 7)
83 # :build-node: The node to run build on.
84 # :build-timeout: Timeout in seconds before aborting build. (default: 15)
85 # :git-url: base URL of git project. (default: https://github.com)
86 # :project-pattern: Project to trigger build against. (default: **)
87 # :stream: Keyword that can be used to represent a release code-name.
88 # Often the same as the branch. (default: master)
90 # :gerrit_merge_triggers: Override Gerrit Triggers.
91 # :gerrit_trigger_file_paths: Override file paths which can be used to
92 # filter which file modifications will trigger a build.
93 # (default: - compare-type: ANT
96 # pattern: '**/conf.py')
98 ######################
99 # Default parameters #
100 ######################
103 build-days-to-keep: 7
105 git-url: https://github.com
106 project-pattern: '**'
108 submodule-recursive: true
110 gerrit_merge_triggers:
111 - change-merged-event
112 - comment-added-contains-event:
113 comment-contains-value: remerge$
115 #####################
116 # Job Configuration #
117 #####################
120 - lf-rtd-trigger-build:
121 rtd-project: '{rtd-project}'
124 name: '{project-name}-rtd-merge-{stream}'
127 # yamllint disable-line rule:key-duplicates
132 server-name: '{gerrit-server-name}'
133 trigger-on: '{obj:gerrit_merge_triggers}'
135 - project-compare-type: 'ANT'
136 project-pattern: '{project-pattern}'
138 - branch-compare-type: 'ANT'
139 branch-pattern: '**/{branch}'
140 file-paths: '{obj:gerrit_trigger_file_paths}'
143 name: '{project-name}-rtd-merge-{stream}'
146 # yamllint disable-line rule:key-duplicates
151 url: '{git-url}/{github-org}/{project}'
154 - lf-infra-github-pr-trigger:
155 trigger-phrase: '^remerge$'
156 only-trigger-phrase: false
157 status-context: 'RTD Merge'
163 github_pr_admin_list:
171 - lf_rtd_verify: &lf_rtd_verify
173 # Verify job which runs a tox build of the docs project
175 # Optional parameters:
177 # :branch: Git branch to fetch for the build. (default: master)
178 # :build-days-to-keep: Days to keep build logs in Jenkins. (default: 7)
179 # :build-node: The node to run build on.
180 # :build-timeout: Timeout in seconds before aborting build. (default: 15)
181 # :doc-dir: Directory where tox will place built docs.
182 # as defined in the tox.ini (default: docs/_build/html)
183 # :git-url: URL clone project from. (default: $GIT_URL/$PROJECT)
184 # :project-pattern: Project to trigger build against. (default: **)
185 # :stream: Keyword that can be used to represent a release code-name.
186 # Often the same as the branch. (default: master)
187 # :submodule-recursive: Whether to checkout submodules recursively.
190 # :gerrit_verify_triggers: Override Gerrit Triggers.
191 # :gerrit_trigger_file_paths: Override file paths which can be used to
192 # filter which file modifications will trigger a build.
193 # (default: - compare-type: ANT
194 # pattern: '**/*.rst'
195 # - compare-type: ANT
196 # pattern: '**/conf.py')
198 ######################
199 # Default parameters #
200 ######################
203 build-days-to-keep: 7
205 doc-dir: docs/_build/html
206 git-url: '$GIT_URL/$PROJECT'
207 project-pattern: '**'
209 submodule-recursive: true
211 gerrit_verify_triggers:
212 - patchset-created-event:
214 exclude-trivial-rebase: false
215 exclude-no-code-change: false
216 - draft-published-event
217 - comment-added-contains-event:
218 comment-contains-value: recheck$
220 #####################
221 # Job Configuration #
222 #####################
229 name: '{project-name}-rtd-verify-{stream}'
230 id: gerrit-rtd-verify
233 # yamllint disable-line rule:key-duplicates
237 - lf-infra-gerrit-scm:
239 jenkins-ssh-credential: '{jenkins-ssh-credential}'
242 submodule-recursive: '{submodule-recursive}'
243 choosing-strategy: default
247 server-name: '{gerrit-server-name}'
248 trigger-on: '{obj:gerrit_verify_triggers}'
250 - project-compare-type: 'ANT'
251 project-pattern: '{project-pattern}'
253 - branch-compare-type: 'ANT'
254 branch-pattern: '**/{branch}'
255 file-paths: '{obj:gerrit_trigger_file_paths}'
258 name: '{project-name}-rtd-verify-{stream}'
259 id: github-rtd-verify
262 # yamllint disable-line rule:key-duplicates
267 url: '{git-url}/{github-org}/{project}'
270 - lf-infra-github-scm:
271 url: '{git-clone-url}{github-org}/{project}'
272 refspec: '+refs/pull/*:refs/remotes/origin/pr/*'
274 submodule-recursive: '{submodule-recursive}'
275 choosing-strategy: default
276 jenkins-ssh-credential: '{jenkins-ssh-credential}'
279 - lf-infra-github-pr-trigger:
280 trigger-phrase: '^recheck$'
281 only-trigger-phrase: false
282 status-context: 'RTD Verify'
288 github_pr_admin_list: