The Flink(-StateFun) documentation is build nightly in the Apache buildbot (https://ci2.apache.org/) environment and served by it as well.
Build Environment
Apache Buildbot
The following files configure buildbot for checking out branches and building the docs. Check it out for adjusting the build configuration.
- flink.conf: https://github.com/apache/infrastructure-bb2/blame/master/flink.py
- flink-statefun.conf: https://github.com/apache/infrastructure-bb2/blob/master/flink-statefun.py
Branch configuration
The configuration files above mentioned above contains a flink*_branches_nightly variable that configures the branches to build nightly:
# format: (branch, alias) or branch
flink_branches_nightly = [
('master', 'release-1.6'),
('release-1.5', 'stable'),
'release-1.4',
'release-1.3',
'release-1.2',
'release-1.1',
'release-1.0'
]
or, for Stateful Functions:
# format: (branch, alias) or branch
flink_statefun_branches_nightly = [
('master', 'release-2.1'),
('release-2.0', 'stable')
]
The Flink docs will be served under the following URLs:
- https://nightlies.apache.org/flink/flink-docs-BRANCH (e.g. flink-docs-master)
- https://nightlies.apache.org/flink/flink-docs-ALIAS (e.g. flink-docs-release-1.6)
The StateFun docs will be served under the following URLs:
- https://nightlies.apache.org/flink/flink-statefun-docs-BRANCH (e.g. flink-statefun-docs-master)
- https://nightlies.apache.org/flink/flink-statefun-docs-ALIAS (e.g. flink-statefun-docs-stable)
Triggering a build manually
You can manually trigger a build via an IRC buildbot.
- Go to: https://web.libera.chat/
- Pick a nickname (e.g. uce) and channel #flink-testing
- For Flink docs, type flink-buildbot: force build flink-docs-BRANCH
- For StateFun docs, type flink-sf-buildbot: force build flink-statefun-docs-BRANCH
The command in the 3rd step will force build the docs of the provided builder, e.g. flink-docs-release-1.5 or flink-statefun-docs-release-2.0 in the above example.
[09:56] == uce [02cd5693@gateway/web/freenode/ip.2.205.86.147] has joined #flink-testing
[09:57] <uce> flink-buildbot: force build flink-docs-release-1.5
[09:57] <@flink-buildbot> build #7 forced
[09:57] <@flink-buildbot> I'll give a shout when the build finishes
For Flink, you can check the progress of the build at, for example, https://ci2.apache.org/#/builders/17/builds/1.
For StateFun, you can check the progress of the build at, for example, https://ci2.apache.org/#/builders/14/builds/43.
You can check the progress of all builders at https://ci2.apache.org/#/builders.
Testing changes
Changes to the website build process can be tested by pushing to the docs_experimental__docs
and docs_experimental__docs_compile
branches (of the Flink repository) and triggering a manual build. The first branch will only run build_docs.sh
, while the latter will also compile Flink and generate the java/scala/python docs.