2024-02-19 17:07:06 +08:00
|
|
|
name: Build Container Image
|
2024-02-19 13:22:02 +08:00
|
|
|
on: [ push ]
|
|
|
|
jobs:
|
|
|
|
image:
|
|
|
|
runs-on: ubuntu-latest
|
2024-03-14 13:00:07 +08:00
|
|
|
env:
|
|
|
|
DOCKER: podman
|
|
|
|
IMAGE_PREFIX: quay.io/ldcraft
|
2024-02-19 13:22:02 +08:00
|
|
|
steps:
|
2024-03-13 22:00:01 +08:00
|
|
|
- name: Maximize Build Space
|
2024-03-13 21:19:01 +08:00
|
|
|
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
|
2024-02-19 13:22:02 +08:00
|
|
|
- uses: actions/checkout@v4
|
2024-02-19 17:07:06 +08:00
|
|
|
# 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
|
2024-03-14 17:27:34 +08:00
|
|
|
key: ${{ runner.os }}-${{ hashFiles('**/*.Dockerfile', 'build_image.sh', 'docker-entrypoint.sh', 'VERSION') }}
|
2024-02-19 13:22:02 +08:00
|
|
|
- name: Login to Container Registry
|
2024-02-19 17:07:06 +08:00
|
|
|
uses: redhat-actions/podman-login@v1
|
2024-02-19 13:22:02 +08:00
|
|
|
with:
|
2024-03-14 13:00:07 +08:00
|
|
|
registry: quay.io
|
2024-02-19 13:22:02 +08:00
|
|
|
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 }}
|
2024-03-13 20:03:12 +08:00
|
|
|
- name: Build Rootfs Image
|
|
|
|
run: ./build_image.sh rootfs
|
2024-02-19 13:22:02 +08:00
|
|
|
- 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
|