Selected CI/CD articles published by Semaphore.
Content is written in Markdown, final PDF made with Pandoc.
We're using official Docker images of Pandoc.
You need to have Docker installed to build the PDF. See Makefile
.
Semaphore automatically creates and uploads the PDF as an artifact from the latest version of source text. See project on Semaphore.
-
Copy the original source file in markdown to the
tmp/
folder. -
Copy any related images into the
papers/
folder. Any images in the markdown source should be relative to this folder. -
Add the header contents of
header.md
to the markdown file. The header must contain valid metadata:cat header.md tmp/MY-AWESOME-PAPER.md > papers/MY-AWESOME-PAPER.md
-
Append the contents of
footer.md
to the markdown file:cat footer.md >> papers/MY-AWESOME-PAPER.md
-
Review the markdown file (see next section).
-
(Optional) Add a cover PDF into the
covers
dir. The filenames of the generated and cover PDF must match. -
Edit
Makefile
and add the new filename without the extension or path to the list inPAPERS
:PAPERS = paper-1 paper-2 ... MY-AWESOME-PAPER
-
Build all the PDFs:
make pdf
-
Output PDF is in:
build/pdf/MY-AWESOME-PAPER.pdf
Open the markdown file and check the following:
-
Adjust the size of the images: add
{ width=100% }
at the end of the line and tweak the width as needed.![An image](./public/MY-AWESOME-PAPER/image1.png){ width=65% }
-
Check for long lines in code fences, you may need to split them to prevent clipping.
-
Fill in publication details in the footer. The strings starting with __BUILD_* are automatically expanded.
Feel free to contribute to the quality of these papers by opening issues or submitting PRs for improvements to explanations, code snippets, etc.
Copyright © 2022 - present Semaphore Technologies doo.