70 lines
2.5 KiB
Markdown
70 lines
2.5 KiB
Markdown
# ContainerImage.ActRunnerExtended
|
||
|
||

|
||

|
||
[](./LICENSE.md)
|
||
|
||
This image extends [`catthehacker/ubuntu:act-24.04`](https://github.com/catthehacker/docker-images) by including the following utilities:
|
||
|
||
- File templating
|
||
- `gettext` (provides `envsubst`)
|
||
- ISO creation
|
||
- `genisoimage` (generate cloud-init seed images)
|
||
- VM image building
|
||
- `qemu-system-x86`
|
||
- `qemu-utils` (provides `qemu-img`)
|
||
- VM image filesystem access
|
||
- `supermin` (prerequisite)
|
||
- `libguestfs-tools` (provides `guestfish`, `virt-sparsify`, etc)
|
||
|
||
It’s designed for use in self-hosted [act-runners](https://docs.gitea.com/usage/actions/act-runner), to operate in environments similar to local QEMU/KVM-based pipelines.
|
||
|
||
---
|
||
|
||
## Usage in an Actions Workflow
|
||
|
||
To use this image in a job/step, add the `container:` directive:
|
||
|
||
```yaml
|
||
jobs:
|
||
build-vm:
|
||
runs-on: ubuntu-latest
|
||
container:
|
||
image: code.spamasaurus.com/djpbessems/act-runner-extended:1.0.0-cth250815
|
||
steps:
|
||
- name: Checkout code
|
||
uses: actions/checkout@v4
|
||
|
||
- name: Build virtual disk image
|
||
run: |
|
||
qemu-img create -f qcow2 disk.qcow2 2G
|
||
# other build steps here
|
||
```
|
||
|
||
---
|
||
|
||
## Available Tags
|
||
|
||
Tags follow the format:
|
||
|
||
```text
|
||
<semver>-cth<YYMMDD>
|
||
```
|
||
|
||
Example:
|
||
|
||
- `1.0.0-cth250815` → Version 1.0.0 of the image, based on `catthehacker/ubuntu:act-24.04-20250815`
|
||
**See [`catthehacker/ubuntu`](https://github.com/catthehacker/docker-images)**
|
||
|
||
Browse available [tags](https://code.spamasaurus.com/djpbessems/-/packages/container/act-runner-extended/versions)
|
||
|
||
---
|
||
|
||
## License
|
||
|
||
This repository and the Dockerfiles, scripts, and custom files provided here are licensed under the [GNU General Public License v3.0 (GPLv3)](./LICENSE.md).
|
||
|
||
The included packages are licensed under free software licenses compatible with GPLv3, including GPLv2, LGPL, and related licenses. This license applies only to the custom files and Docker configurations you find in this repository, **not** to the upstream base image or the precompiled binaries installed within the image.
|
||
|
||
Please refer to the individual package documentation and upstream repositories for their specific licensing terms.
|