2026-01-20 13:24:59 -08:00
|
|
|
name: Publish Container Images
|
|
|
|
|
on:
|
|
|
|
|
schedule:
|
|
|
|
|
- cron: '0 3 * * *' # Run at 3 AM
|
|
|
|
|
workflow_dispatch:
|
|
|
|
|
|
|
|
|
|
permissions:
|
|
|
|
|
packages: write
|
|
|
|
|
|
|
|
|
|
jobs:
|
|
|
|
|
publish:
|
2026-01-20 21:05:08 -08:00
|
|
|
strategy:
|
|
|
|
|
fail-fast: false
|
|
|
|
|
matrix:
|
|
|
|
|
include:
|
|
|
|
|
- target: //k8s/container/coder-dev-base-image:push
|
|
|
|
|
tag_prefix: "5-"
|
|
|
|
|
- target: //experimental/users/acmcarther/temporal/git_workflow:push
|
|
|
|
|
tag_prefix: "latest-"
|
|
|
|
|
|
2026-01-20 13:24:59 -08:00
|
|
|
runs-on: docker
|
|
|
|
|
container:
|
|
|
|
|
image: forgejo.csbx.dev/acmcarther/coder-dev-base-image:4
|
|
|
|
|
steps:
|
|
|
|
|
- uses: actions/checkout@v4
|
|
|
|
|
|
|
|
|
|
- name: Install bazelisk
|
|
|
|
|
run: |
|
|
|
|
|
curl -fLO "http://bin-cache-http.dev.svc.cluster.local/bazelisk/v1.27.0/bazelisk-linux-amd64"
|
|
|
|
|
mkdir -p "${GITHUB_WORKSPACE}/bin/"
|
|
|
|
|
mv bazelisk-linux-amd64 "${GITHUB_WORKSPACE}/bin/bazel"
|
|
|
|
|
chmod +x "${GITHUB_WORKSPACE}/bin/bazel"
|
|
|
|
|
echo "${GITHUB_WORKSPACE}/bin" >> $GITHUB_PATH
|
|
|
|
|
|
|
|
|
|
- name: Login to Forgejo Registry
|
|
|
|
|
uses: docker/login-action@v3
|
|
|
|
|
with:
|
|
|
|
|
registry: forgejo.csbx.dev
|
|
|
|
|
username: ${{ github.actor }}
|
|
|
|
|
password: ${{ secrets.YESOD_PACKAGE_TOKEN }}
|
|
|
|
|
|
2026-01-20 21:05:08 -08:00
|
|
|
- name: Publish Image
|
2026-01-20 13:24:59 -08:00
|
|
|
env:
|
|
|
|
|
BAZELISK_BASE_URL: "http://bin-cache-http.dev.svc.cluster.local/bazel"
|
|
|
|
|
# rules_oci respects DOCKER_CONFIG or looks in ~/.docker/config.json
|
|
|
|
|
# The login action typically sets up ~/.docker/config.json
|
|
|
|
|
run: |
|
|
|
|
|
# Ensure DOCKER_CONFIG is set to where login-action writes (default home)
|
|
|
|
|
export DOCKER_CONFIG=$HOME/.docker
|
|
|
|
|
|
|
|
|
|
SHORT_SHA=$(git rev-parse --short HEAD)
|
2026-01-20 21:05:08 -08:00
|
|
|
TAG="${{ matrix.tag_prefix }}${SHORT_SHA}"
|
2026-01-20 13:24:59 -08:00
|
|
|
|
2026-01-20 21:05:08 -08:00
|
|
|
echo "Pushing image: ${{ matrix.target }} with tag: ${TAG}"
|
|
|
|
|
bazel run --config=remote ${{ matrix.target }} -- --tag ${TAG}
|