Package Workflow
Overview
The Package workflow builds and pushes Docker images for the Storage Service application to GitHub Container Registry (GHCR).
Trigger
This workflow is triggered on:
- Completion of the
Releaseworkflow (if it succeeded) - Manual trigger via
workflow_dispatch
Docker Images
The workflow builds a single image variant using the root Dockerfile.
Multi-Platform Support
Images are built for multiple architectures:
linux/amd64(Intel/AMD)linux/arm64(Apple Silicon, ARM servers)
Image Tags
| Tag Pattern | Example | Description |
|---|---|---|
{version} | 1.1.0 | Version-tagged image |
latest | latest | Latest release |
sha-{hash} | sha-f30ab65 | Commit-specific image |
Pulling Images
# Latest release by version
docker pull ghcr.io/uncefact/project-storage-service:1.1.0
# Or use latest tag
docker pull ghcr.io/uncefact/project-storage-service:latest
Workflow Steps
- Checkout: Fetches the repository code
- Get version: Reads version from
version.jsonforworkflow_runtriggers - Docker meta: Generates image tags
- Set up QEMU: Enables multi-platform builds
- Set up Docker Buildx: Prepares the Docker buildx environment
- Login to GHCR: Authenticates with GitHub Container Registry
- Build and Push Release: Builds and pushes the image
Dependencies
actions/checkout@v4docker/metadata-action@v5docker/setup-qemu-action@v3docker/setup-buildx-action@v3docker/login-action@v3docker/build-push-action@v5