yesod-mirror/.forgejo-disabled/workflows/publish-container-images.yml
Copybara 2dac67662f Project import generated by Copybara.
GitOrigin-RevId: af8d9acc8ae00d6a5f1674924eaa976d0d293694
2026-01-22 01:01:03 +00:00

55 lines
1.8 KiB
YAML

name: Publish Container Images
on:
schedule:
- cron: '0 3 * * *' # Run at 3 AM
workflow_dispatch:
permissions:
packages: write
jobs:
publish:
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-"
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 }}
- name: Publish Image
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)
TAG="${{ matrix.tag_prefix }}${SHORT_SHA}"
echo "Pushing image: ${{ matrix.target }} with tag: ${TAG}"
bazel run --config=remote ${{ matrix.target }} -- --tag ${TAG}