woj-server/.github/workflows/container.yml

49 lines
1.6 KiB
YAML

name: Build Container Image
on: [ push ]
jobs:
image:
runs-on: ubuntu-latest
env:
DOCKER: podman
IMAGE_PREFIX: quay.io/ldcraft
steps:
- name: Maximize Build Space
run: |
sudo rm -rf /usr/share/dotnet
sudo rm -rf /usr/local/lib/android
sudo rm -rf /opt/ghc
sudo rm -rf /opt/hostedtoolcache/CodeQL
sudo df -h
- uses: actions/checkout@v4
# reference: https://github.com/containers/podman/discussions/17868
- name: Tar as root
run: |
sudo mv -fv /usr/bin/tar /usr/bin/tar.orig
echo -e '#!/bin/sh\n\nsudo /usr/bin/tar.orig "$@"' | sudo tee -a /usr/bin/tar
sudo chmod +x /usr/bin/tar
- name: Cache Podman
uses: actions/cache@v4
with:
path: |
~/.local/share/containers
~/.config/containers
key: ${{ runner.os }}-${{ hashFiles('**/*.Dockerfile', 'build_image.sh', 'docker-entrypoint.sh', 'VERSION') }}
- name: Login to Container Registry
uses: redhat-actions/podman-login@v1
with:
registry: quay.io
username: ${{ secrets.CONTAINER_USERNAME }}
password: ${{ secrets.CONTAINER_PASSWORD }}
- name: Write Sentry DSN
run: echo -n "$SENTRY_DSN" > dsn.txt
env:
SENTRY_DSN: ${{ secrets.SENTRY_DSN }}
- name: Build Rootfs Image
run: ./build_image.sh rootfs
- name: Build Base Image
run: ./build_image.sh base
- name: Build Server Image
run: ./build_image.sh server
- name: Build Runner Image
run: ./build_image.sh runner