This will generate the Mesos website locally. We use docker to simplify our generation and development workflows.
Before we generate the website, please make sure to generate the help endpoint
documentation. The endpoint generation script expects Mesos master and agent
binaries to be available; so please run make
if necessary.
make -jN
../support/generate-endpoint-help.py
To generate the website:
./site/mesos-websiste-dev.sh
This will start a container, generate the website from your local Mesos git repository, and make it available:
- On Linux, the site will be available at http://localhost:4567.
- On OS X, run
docker-machine ls
to find the IP address of your boot-to-docker VM; the site will be available at that IP, port 4567.
If you are running the container on a remote machine and need to tunnel it to localhost, you can run the following command to make the site available locally:
ssh -NT -L 4567:localhost:4567 -L 35729:localhost:35729 <remote-machine>
The generation includes doxygen
and javadoc
as well. We could check out them
under /api/latest/c++/index.html
and /api/latest/java/index.html
endpoints
once the generation finishes.
Any changes to the site/source
directory will cause middleman to reload and
regenerate the website, so you can just edit, save, refresh. When you are done
with the webserver, hit Ctrl-C in the docker terminal to kill the middleman
webserver, clean up generation documents under the site/source
directory and
destroy/remove the container.
Developers are not expected to publish the website. There is a CI job on ASF
Jenkins (Mesos-Websitebot) that automatically publishes the website when there
are changes detected in the Mesos repository. See
support/jenkins/websitebot.sh
for details.