https://github.com/uyuni-project/uyuni-docs-helper
A container image and a helper to build the Uyuni documentation without worrying about the toolchain
https://github.com/uyuni-project/uyuni-docs-helper
antora docker documentation podman susemanager uyuni
Last synced: 13 days ago
JSON representation
A container image and a helper to build the Uyuni documentation without worrying about the toolchain
- Host: GitHub
- URL: https://github.com/uyuni-project/uyuni-docs-helper
- Owner: uyuni-project
- License: gpl-3.0
- Created: 2023-02-03T11:05:57.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2024-08-22T11:28:09.000Z (9 months ago)
- Last Synced: 2024-08-22T12:58:08.188Z (9 months ago)
- Topics: antora, docker, documentation, podman, susemanager, uyuni
- Language: Shell
- Homepage:
- Size: 51.8 KB
- Stars: 1
- Watchers: 24
- Forks: 4
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
# Repository purpose
To provide a way of building a container image to build the [Uyuni documentation](https://github.com/uyuni-project/uyuni-docs), as it requires to install a big set of tools using `zypper`, `nvm`, `cpan`, `gem` etc.
Besides the container, a helper is provider so people that does not know anything about containers can easily use them.
This a result of [SUSE's Hack Week 22](https://hackweek.opensuse.org/22/projects/testing-gnu-slash-linux-distributions-on-uyuni)
# Repository structure
## For everyone
- `uyuni-docs-helper`: The bash script that allows any contributor to build, inspect the outputs of the build procedure via HTTP and even get outputs at the local system.### Example
`./uyuni-docs-helper -r master -o /tmp/test -c obs-packages-mlm-en -p mlm` would build the HTML and PDFs for English language, from the `master` branch at https://github.com/uyuni-project/uyuni-docs (default repository), for SUSE Multi-Linux Manager.
## For image maintainers
- `image` directory: Contains the Dockerfile, the `startup.sh` script for the container, and the `build-locally` helper (that can be used to build the container locally for testing, passing arguments to the build, such as `--no-cache` is allowed). See below for more details
- `.github/workflows`: Contains the `build-and-publish-container-images.yml` workflow definition to build and publish the image to the GitHub Container registry after each change on the repository# Requirements
## For everyone
- Have `podman` installed (recommended)
or
- Have `docker` installed and an alias `podman` that calls `docker` (for bash that means adding `alias docker='podman'` to the file `~/.alias`)
## macOS users
Install the package `gnu-getopt` via e.g. Homebrew (https://brew.sh):
```bash
brew install gnu-getopt
```Get Podman ready
```bash
podman machine init
podman machine start
# verify the connection
podman system connection list
```## For image maintainers
The image is built and published automatically to `ghcr.io//uyuni-docs-helper:` after each push to any repository branch.
By default:
- `` will be `uyuni-project`, unless you are working with your fork
- `` will be the branch name that got the push, it's the tag for the container imageYou can also build the image locally with the script at `images/build-locally`. In that case the image will be generated as `local/uyuni-docs-helper:latest` (notice `local` is here the project).
You can then use `uyuni-docs-helper` with the `-j` and `-t` parameters to specify the right tag and project.
# Troubleshooting
See [TROUBLESHOOTING.md](TROUBLESHOOTING.md)