If you are interested in the rendered version of the User’s Guide, please read them at docs.linbit.com.
You can download pdf versions for free from our home page.
If you have docker, execute make dockerimage, which will generate a "linbit-documentation" base
image containing all the dependencies for generating html and pdf outputs.
Otherwise you will need GNU make and you have to install the following dependencies:
We do not publish the official LINBIT fonts in that repository. Public projects have to be able to generated
pdfs without LINBIT’s fonts, private ones are allowed to fail if the linbit-fonts directory does not exist.
Actually they should fail, which is the default anyways.
If you build official pdfs/private projects, make sure you cloned the internal linbit-fonts repository.
We do not publish the source of our tech guides, make sure you cloned the internal tech-guides repository.
Projects are organized in sub directories, for example the users guide for DRBD 9 is in UG9. The top level
Makefile contains html and pdf targets for these (e.g., make UG9-pdf-finalize). The final output is
generated in $project/$lang/output-$format-finalize (e.g. UG9/en/output-pdf-finalize).
Every project needs a proper Makefile that has the following targets:
-
pdf -
pdf-finalize -
html -
html-finalize
If a project only generates pdf output, implement the html targets as empty.
These generate their output to output-$format. It is perfectly fine that these directories contain temporary
files like symlinks. As already written, we want proper Makefiles, so if the source does not change
re-executing these targets should only process files that changed.
These generate their output to output-$format-finalize. This is the final output. The one that is
published to a web page/sent to a web developer. For example this generates tar-balls for UG9 that can be
sent to someone who puts it on the web page.
It is usually the final target that is executed after multiple iterations of make pdf/make html and it is
fine if that target alters the content of output-$format to generate output-$format-finalize. If possible
it should not, but it is not a strict requirement.
The top-level Makefile also contains targets that end in "-docker". These can be used to generate the
output with the previously describe "linbit-documentation" base image. For example one on execute
make UG9-html-finalize-docker.
The English version is the default, but if you want to build the Japanese version, you have to set the make
variable "lang" accordingly (e.g., make UG9-html-finalize-docker lang=ja).
Japanese version is created by English adoc files and Japanese po files.
Pot files used for localization can be created by the pot target,
(e.g, `make UG9-pot-docker).
Make sure created pot files include correct sentences.
-
cdto the project (e.g,cd UG9) -
modify sources accordingly
-
make pdformake html
Output is generated in output-$format. These directories (in contrast to output-$format-finalze) can
contain temporary files (symlinks, processed adoc files,…). When you are satisfied, make $format-finalize,
to generate the final output in output-$format-finalize.
-
make sure you are at the top-level of the framework (
linbit-documentation) -
git clonethe private project -
follow Working on a public project
-
Hostnames: 'bob' ⇒ 'bob'
-
Commands: `rm -rf` ⇒
rm -rf -
DRBD states: _Primary_ ⇒ Primary
-
Blocks: Add newline before and after of the block.
* Re-enable your DRBD resource:
----------------------------
# drbdadm up <resource>
----------------------------
* On one node, promote the DRBD resource: