container-images/.gitea/workflows/rsyncd.yaml
dresi ff96e5567b
Some checks are pending
Build and push rsyncd image / build-and-push-image (push) Waiting to run
Build and push telegraf-snmp image / build-and-push-image (push) Waiting to run
fix: use build runner label for docker build workflows
Workflows need docker CLI which is only available in the docker:latest
container started by the 'build' runner label, not node:20-bookworm.
2026-06-10 13:01:53 +02:00

58 lines
1.6 KiB
YAML

name: Build and push rsyncd image
run-name: ${{ gitea.actor }} is building and pushing rsyncd image
on:
push:
paths:
- 'rsyncd/**'
- '.gitea/workflows/rsyncd.yaml'
env:
RESULT_IMAGE_NAME: tools/rsyncd
jobs:
build-and-push-image:
runs-on: build
steps:
- name: Checkout
uses: actions/checkout@v5
- name: Log in to registry
uses: docker/login-action@v3
with:
registry: ${{ vars.PRIVATE_REGISTRY_DOMAIN }}
username: ${{ secrets.PRIVATE_REGISTRY_USER }}
password: ${{ secrets.PRIVATE_REGISTRY_PASSWORD }}
- name: Set up QEMU
uses: docker/setup-qemu-action@v3
- name: Prepare BuildKit config with custom CA
run: |
CONFIG_DIR_PATH="${{ runner.temp }}/buildx-config"
mkdir -p "${CONFIG_DIR_PATH}"
CERT_FILE_PATH="${CONFIG_DIR_PATH}/ca.crt"
CONFIG_FILE_PATH="${CONFIG_DIR_PATH}/buildkitd.toml"
echo "${{ vars.PRIVATE_REGISTRY_CA_CERT }}" > "${CERT_FILE_PATH}"
cat << EOF > "${CONFIG_FILE_PATH}"
[registry."${{ vars.PRIVATE_REGISTRY_DOMAIN }}"]
ca = ["${CERT_FILE_PATH}"]
EOF
echo "BUILDKIT_CONFIG=${CONFIG_FILE_PATH}" >> $GITEA_ENV
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
with:
config: ${{ env.BUILDKIT_CONFIG }}
- name: Build and push image
uses: docker/build-push-action@v6
with:
context: rsyncd
platforms: linux/amd64,linux/arm64
push: true
tags: ${{ vars.PRIVATE_REGISTRY_DOMAIN }}/${{ env.RESULT_IMAGE_NAME }}:latest