Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/ryanj/rhdh-summit24


https://github.com/ryanj/rhdh-summit24

Last synced: 13 days ago
JSON representation

Awesome Lists containing this project

README

        

=== Getting Started

. Create a git repo from this template
. Clone the repo and `cd` into it
. Run ./utilities/lab-serve
. Open http://localhost:8080 in your browser
. Run ./utilities/lab-build to build your html

Your lab should now update and on day 1 will look more or less like this:

image::.images/lab-image.png[Lab Image]

Now you are ready to go! You can start editing the files in the `content/modules/ROOT/pages/` directory.

**Today** you have to run `./utilites/build` to rebuild your html but *very shortly* we will be adding live updating.
I.E. on every save the lab will re-build in real time.
In addition, many modern editors such as Visual Studio Code offer live Asciidoc Preview extensions.

=== Understanding the Basic Template Directory Structure

[source,sh]
----
./content/modules/ROOT/
├── assets
│ └── images # Images used in your content
│ └── example-image.png
├── examples # You can add downloadable assets here
│ └── example-bash-script.sh # e.g. an example bash script
├── nav.adoc # Navigation for your lab
├── pages # Your content goes here
│ ├── index.adoc # First page of your lab, e.g. overview etc
│ ├── module-02.adoc
│ └── module-03.adoc # Sample lab has 3 modules including index.adoc
└── partials # You can add partials here, reusable content inserted inline into your modules
└── example_partial.adoc
----

=== Development Cycle

. Edit your content in `content/modules/ROOT/pages/`
. Run `./utilities/build` to build your html
. Use `git` to branch and commit your work
. Push your work to your repo
.. You should use `git tags` or `git branches` in production
.. However development items default to the head of `main`

=== Configuring your Lab

Project Zero Lab repos have 3 *yaml* files that control the build and deployment of your lab.
However _typically_ you will only need to only make very few edits

[source,sh]
----
├── content
│ └── antora.yml # You can add "inline vars" here to render within your content
├── zero-touch-config.yml #
└── zero-touch-site.yml
----