Fix github-maven-merge scm config
[releng/global-jjb.git] / docs / jjb / lf-rtd-jobs.rst
1 .. _lf-global-jjb-rtd-jobs:
2
3 ################
4 ReadTheDocs Jobs
5 ################
6
7 Job Groups
8 ==========
9
10 .. include:: ../job-groups.rst
11
12 Below is a list of Maven job groups:
13
14 .. literalinclude:: ../../jjb/lf-rtd-job-groups.yaml
15    :language: yaml
16
17
18 Macros
19 ======
20
21 lf-rtd-common
22 -------------
23
24 RTD verify and merge jobs are the same except for their scm, trigger, and
25 builders definition. This anchor is the common template.
26
27
28 Job Templates
29 =============
30
31 ReadTheDocs Merge
32 -----------------
33
34 Merge job which triggers a POST of the docs project to readthedocs.
35
36 To use this job first configure the ``Generic API incoming webhook`` in
37 ReadTheDocs. To do that follow these steps:
38
39 #. Browse to https://readthedocs.org/dashboard/PROJECT/integrations/
40 #. Click on ``Generic API incoming webhook``
41
42    .. note::
43
44       If not available click on ``Add integration`` and add the
45       ``Generic API incoming webhook``.
46
47 #. Copy the custom webhook URL, this is your ``rtd-build-url``
48
49    For example: https://readthedocs.org/api/v2/webhook/opendaylight/32321/
50
51 #. Copy the token, this is your ``rtd-token``
52
53 :Template Names:
54     - {project-name}-rtd-merge-{stream}
55     - gerrit-rtd-merge
56     - github-rtd-merge
57
58 :Comment Trigger: remerge
59
60 :Required parameters:
61
62     :build-node: The node to run build on.
63     :jenkins-ssh-credential: Credential to use for SSH. (Generally set
64         in defaults.yaml)
65     :rtd-build-url: This is the generic webhook url from readthedocs.org. Refer
66         to the above instructions to generate one.
67         (Check Admin > Integrations > Generic API incoming webhook)
68     :rtd-token: The unique token for the project Generic webhook. Refer
69         to the above instructions to generate one.
70         (Check Admin > Integrations > Generic API incoming webhook)
71
72 :Optional parameters:
73
74     :branch: Git branch to fetch for the build. (default: master)
75     :build-days-to-keep: Days to keep build logs in Jenkins. (default: 7)
76     :build-timeout: Timeout in minutes before aborting build. (default: 15)
77     :git-url: base URL of git project. (default: https://github.com)
78     :project-pattern: Project to trigger build against. (default: \*\*)
79     :stream: Keyword representing a release code-name.
80         Often the same as the branch. (default: master)
81     :submodule-recursive: Whether to checkout submodules recursively.
82         (default: true)
83
84     :gerrit_merge_triggers: Override Gerrit Triggers.
85     :gerrit_trigger_file_paths: Override file paths filter which checks which
86         file modifications will trigger a build.
87         **default**::
88
89             - compare-type: ANT
90               pattern: '**/*.rst'
91             - compare-type: ANT
92               pattern: '**/conf.py'
93
94
95 ReadTheDocs Verify
96 ------------------
97
98 Verify job which runs a tox build of the docs project
99
100 :Template Names:
101     - {project-name}-rtd-verify-{stream}
102     - gerrit-rtd-verify
103     - github-rtd-verify
104
105 :Comment Trigger: recheck|reverify
106
107 :Required Parameters:
108
109     :build-node: The node to run build on.
110     :jenkins-ssh-credential: Credential to use for SSH. (Generally set
111         in defaults.yaml)
112
113 :Optional Parameters:
114
115     :branch: Git branch to fetch for the build. (default: master)
116     :build-days-to-keep: Days to keep build logs in Jenkins. (default: 7)
117     :build-node: The node to run build on.
118     :build-timeout: Timeout in minutes before aborting build. (default: 15)
119     :doc-dir: Directory where tox will place built docs.
120         as defined in the tox.ini (default: docs/_build/html)
121     :git-url: URL clone project from. (default: $GIT_URL/$PROJECT)
122     :project-pattern: Project to trigger build against. (default: \*\*)
123     :stream: Keyword representing a release code-name.
124         Often the same as the branch. (default: master)
125     :submodule-recursive: Whether to checkout submodules recursively.
126         (default: true)
127
128     :gerrit_verify_triggers: Override Gerrit Triggers.
129     :gerrit_trigger_file_paths: Override file paths filter which checks which
130         file modifications will trigger a build.
131         **default**::
132
133             - compare-type: ANT
134               pattern: '**/*.rst'
135             - compare-type: ANT
136               pattern: '**/conf.py'