diff --git a/.gitea/workflows/godot.yml b/.gitea/workflows/godot.yml new file mode 100644 index 0000000..d25faa7 --- /dev/null +++ b/.gitea/workflows/godot.yml @@ -0,0 +1,36 @@ +name: Build Runner Godot + +on: + push: + branches: + - 'master' + +jobs: + build_godot: + runs-on: 'priviliged' + strategy: + matrix: + version: [latest, 4.2.2] + steps: + - name: Install Docker + run: | + rm $(which docker) && curl -fsSL https://get.docker.com | sh + - name: Set up QEMU + uses: 'https://git.euph.dev/actions/docker-setup-qemu@v3' + - name: Setup Buildx + uses: 'https://git.euph.dev/actions/docker-setup-buildx@v3' + - 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 Godot image + uses: 'https://git.euph.dev/actions/docker-build-push@v5' + with: + context: "{{defaultContext}}:images/actions/godot" + push: true + build-args: PACKAGE_VERSION=${{ matrix.version }} + tags: | + git.euph.dev/actions/runner-godot-${{ matrix.version }}:latest + git.euph.dev/actions/runner-godot-${{ matrix.version }}:${{ gitea.run_number }} \ No newline at end of file diff --git a/images/actions/godot/Dockerfile b/images/actions/godot/Dockerfile new file mode 100644 index 0000000..3fcb283 --- /dev/null +++ b/images/actions/godot/Dockerfile @@ -0,0 +1,24 @@ +FROM git.euph.dev/actions/runner-csharp:latest + +ARG PACKAGE_VERSION + +RUN if [[ "$PACKAGE_VERSION" != "latest" ]] ; then \ + wget $( \ + curl -s https://api.github.com/repos/godotengine/godot/releases/tags/$PACKAGE_VERSION-stable \ + | grep "browser_download_url.*Godot_v.*-stable_mono_linux_x86_64.zip" \ + | cut -d '"' -f 4 - \ + | head -n 1 + ) -O Godot.zip + else \ + wget $( \ + curl -s https://api.github.com/repos/godotengine/godot/releases/latest \ + | grep "browser_download_url.*Godot_v.*-stable_mono_linux_x86_64.zip" \ + | cut -d '"' -f 4 + ) -O Godot.zip + fi \ + && unzip Godot.zip -d /usr/local/bin \ + && rm Godot.zip \ + && mv /usr/local/bin/Godot_v*-stable_mono_linux.x86_64 /usr/local/bin/godot \ + && mv /usr/local/bin/GodotSharp /usr/local/bin/godot + +#RUN sudo apk add --no-cache "something$PACKAGE_VERSION" \ No newline at end of file