GithubHelp home page GithubHelp logo

smccarthy-ie / apicurio-docs-playbook Goto Github PK

View Code? Open in Web Editor NEW

This project forked from apicurio/apicurio-docs-playbook

0.0 1.0 0.0 70 KB

License: Apache License 2.0

Dockerfile 10.35% Shell 18.23% CSS 25.83% Handlebars 45.58%

apicurio-docs-playbook's Introduction

Antora Build for Apicurio Registry Documentation

This folder contains the configuration and scripts used when building the Apicurio Registry documentation for publishing to the Apicurio project web site. We are using a tool called Antora to build the asciidoc based documentation into a publishable site. However, due to some issues with building on various platforms (I'm looking at you, Windows) and also some conflicts between what Antora builds and what our GitHub Pages (jekyll) project site expects, we have created a non-trivial (but automated) process for building the docs.

Building the Documentation Locally

To locally build the documentation, there is a simple bash script called build.sh that can be run. This script runs the antora tool which is responsible for building the HTML documentation from the Apicurio Registry asciidoc sources. The antora tool is a node application, so you will need node and npm installed.

Once you have node installed, run the following commands:

npm install
./build.sh

When this completes, the generated documentation will exist in the ./target/dist output directory.

Building the Documentation using Docker

In order to avoid platform inconsistencies with the build, we have created a Docker image to perform it. The Dockerfile is located in this directory, along with a build.sh script that becomes the main entrypoint/cmd for the docker image.

Build the Docker Image

To build the docker image, do this:

docker build -t="apicurio/apicurio-docs-builder" --rm .

Then you can push the new image like this (maintainers only):

docker push apicurio/apicurio-docs-builder:latest

Only do this if you need to change the build script or some other aspect of the Antora build process. See the build.sh file for details about how Antora is used to build the docs.

Building the Documentation

The Docker image should be used to build the documentation. It simply has one required volume-mount to read the playbook and store the output. You can run the build something like this:

docker pull apicurio/apicurio-docs-builder:latest
docker run -v $(pwd):/apicurio-docs-playbook apicurio/apicurio-docs-builder:latest

This will run the build and output the result in the provided local directory (in the above example it would write the result to the appropriate Apicurio project site directory).

The following ENV variables can be set when running the docker image:

  • ENV PLAYBOOK registry-docs-playbook.yml

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.