1.7 KiB
Teamspeak Image Builder
This repository automates the build and push of Docker images for a Teamspeak server using Gitea Actions. The process includes:
Base Image Updates: When changes are detected in base images (Alpine, Debian), the workflow checks if these images have been updated.
Build Process: If updates are detected, it builds new Docker images for each variant (Alpine, Debian, Basic).
Metadata Management: Generates build-info.json files containing detailed information about each image, including size, digest, and base image digest.
Version Control: Commits and pushes the generated build-info.json and changelogs to the repository using temporary branches.
Workflow Components
-
Base Image Updates
The workflow runs on a schedule or when changes are detected in the base images (Alpine, Debian). It pulls the latest versions of these base images. If the tags have changed, it proceeds with the build process.
-
Build Process
For each variant (Alpine, Debian, Basic), the workflow checks if there are any changes to rebuild the image. It builds new Docker images using the updated base images and pushes them to a container registry.
-
Metadata Management
The build-info.json file is generated for each built image, containing essential metadata such as: Version Commit hash Build time Image tag Digest Image size Base digest
-
Version Control
If changes are detected in build-info.json, the workflow commits these changes to a temporary branch and merges them back into the main branch. Similarly, if there are updates to changelogs (CHANGES.md), they are committed and pushed.