diff --git a/.github/workflows/BuildImage.yml b/.github/workflows/BuildImage.yml index 78bbd39..6008e85 100644 --- a/.github/workflows/BuildImage.yml +++ b/.github/workflows/BuildImage.yml @@ -5,8 +5,9 @@ on: [push, pull_request_target, workflow_dispatch] env: GITHUB_REPO: "linuxserver/docker-mods" #don't modify ENDPOINT: "linuxserver/mods" #don't modify - BASEIMAGE: "swag" #replace - MODNAME: "auto-uptime-kuma" #replace + BASEIMAGE: "replace_baseimage" #replace + MODNAME: "replace_modname" #replace + MULTI_ARCH: "true" #set to false if not needed jobs: set-vars: @@ -19,6 +20,7 @@ jobs: echo "ENDPOINT=${{ env.ENDPOINT }}" >> $GITHUB_OUTPUT echo "BASEIMAGE=${{ env.BASEIMAGE }}" >> $GITHUB_OUTPUT echo "MODNAME=${{ env.MODNAME }}" >> $GITHUB_OUTPUT + echo "MULTI_ARCH=${{ env.MULTI_ARCH }}" >> $GITHUB_OUTPUT # **** If the mod needs to be versioned, set the versioning logic below. Otherwise leave as is. **** MOD_VERSION="" echo "MOD_VERSION=${MOD_VERSION}" >> $GITHUB_OUTPUT @@ -27,6 +29,7 @@ jobs: ENDPOINT: ${{ steps.outputs.outputs.ENDPOINT }} BASEIMAGE: ${{ steps.outputs.outputs.BASEIMAGE }} MODNAME: ${{ steps.outputs.outputs.MODNAME }} + MULTI_ARCH: ${{ steps.outputs.outputs.MULTI_ARCH }} MOD_VERSION: ${{ steps.outputs.outputs.MOD_VERSION }} build: @@ -42,4 +45,5 @@ jobs: ENDPOINT: ${{ needs.set-vars.outputs.ENDPOINT }} BASEIMAGE: ${{ needs.set-vars.outputs.BASEIMAGE }} MODNAME: ${{ needs.set-vars.outputs.MODNAME }} + MULTI_ARCH: ${{ needs.set-vars.outputs.MULTI_ARCH }} MOD_VERSION: ${{ needs.set-vars.outputs.MOD_VERSION }} diff --git a/Dockerfile.complex b/Dockerfile.complex new file mode 100644 index 0000000..eb80898 --- /dev/null +++ b/Dockerfile.complex @@ -0,0 +1,33 @@ +# syntax=docker/dockerfile:1 + +## Buildstage ## +FROM ghcr.io/linuxserver/baseimage-alpine:3.19 as buildstage + +RUN \ + echo "**** install packages ****" && \ + apk add --no-cache \ + curl && \ + echo "**** grab rclone ****" && \ + mkdir -p /root-layer && \ + if [ $(uname -m) = "x86_64" ]; then \ + echo "Downloading x86_64 tarball" && \ + curl -o \ + /root-layer/rclone.deb -L \ + "https://downloads.rclone.org/v1.47.0/rclone-v1.47.0-linux-amd64.deb"; \ + elif [ $(uname -m) = "aarch64" ]; then \ + echo "Downloading aarch64 tarball" && \ + curl -o \ + /root-layer/rclone.deb -L \ + "https://downloads.rclone.org/v1.47.0/rclone-v1.47.0-linux-arm64.deb"; \ + fi && \ + +# copy local files +COPY root/ /root-layer/ + +## Single layer deployed image ## +FROM scratch + +LABEL maintainer="username" + +# Add files from buildstage +COPY --from=buildstage /root-layer/ /