diff --git a/.forgejo/workflows/build.yml b/.forgejo/workflows/build.yml index 1bca44c..56150ae 100644 --- a/.forgejo/workflows/build.yml +++ b/.forgejo/workflows/build.yml @@ -26,6 +26,24 @@ jobs: tags: | git.euph.dev/actions/runner-basic:latest git.euph.dev/actions/runner-basic:${{ github.run_number }} + base-glib: + runs-on: "docker" + steps: + - name: Login to Registry + uses: "https://git.euph.dev/actions/docker-login@v3" + with: + registry: git.euph.dev + username: ${{ secrets.DEPLOY_USER }} + password: ${{ secrets.DEPLOY_SECRET }} + - name: Build and push base image + id: build_base + uses: "https://git.euph.dev/actions/docker-build-push@v5" + with: + context: "{{defaultContext}}:images/actions/act-glib" + push: true + tags: | + git.euph.dev/actions/runner-basic-glib:latest + git.euph.dev/actions/runner-basic-glib:${{ github.run_number }} extended-latest: runs-on: "docker" @@ -72,6 +90,31 @@ jobs: version: 17 - language: java version: 21 + steps: + - name: Login to Registry + uses: "https://git.euph.dev/actions/docker-login@v3" + with: + registry: git.euph.dev + username: ${{ secrets.DEPLOY_USER }} + password: ${{ secrets.DEPLOY_SECRET }} + + - name: Build and push ${{ matrix.language }} {{ matrix.version }} image + uses: "https://git.euph.dev/actions/docker-build-push@v5" + with: + context: "{{defaultContext}}:images/actions/${{ matrix.language }}" + push: true + build-args: PACKAGE_VERSION=${{ matrix.version }} + tags: | + git.euph.dev/actions/runner-${{ matrix.language }}-${{ matrix.version }}:latest + git.euph.dev/actions/runner-${{ matrix.language }}-${{ matrix.version }}:${{ github.run_number }} + + glib-extended-versioned: + runs-on: "docker" + needs: + - base-glib + strategy: + matrix: + include: - language: redot version: 4.3 steps: diff --git a/images/actions/act-glib/Dockerfile b/images/actions/act-glib/Dockerfile new file mode 100644 index 0000000..9b00362 --- /dev/null +++ b/images/actions/act-glib/Dockerfile @@ -0,0 +1,16 @@ +FROM frolvlad/alpine-glibc + +RUN apk add --update --no-cache \ +bash sudo ca-certificates openssl openssh-client \ +git git-lfs wget curl \ +tar zip unzip xz zstd jq \ +nodejs npm python3 py3-pip parallel + +RUN adduser -D runner \ + && echo "runner ALL=(ALL) NOPASSWD: ALL" > /etc/sudoers.d/runner \ + && chmod 0440 /etc/sudoers.d/runner +RUN chmod -R 777 /opt +WORKDIR /home/runner + +CMD ["/bin/bash"] +USER runner diff --git a/images/actions/redot/Dockerfile b/images/actions/redot/Dockerfile index 55cdab3..ad077cc 100644 --- a/images/actions/redot/Dockerfile +++ b/images/actions/redot/Dockerfile @@ -1,8 +1,8 @@ -FROM git.euph.dev/actions/runner-basic:latest +FROM git.euph.dev/actions/runner-basic-glib:latest ARG PACKAGE_VERSION -# fontconfig and eudev-udev are not needed in ci, and will segfault +# fontconfig and eudev-dev are not needed in ci, and will segfault RUN sudo apk add --no-cache \ scons \ pkgconf \ @@ -14,7 +14,6 @@ RUN sudo apk add --no-cache \ libxi-dev \ libxrandr-dev \ mesa-dev \ - eudev-dev \ alsa-lib-dev \ pulseaudio-dev