From 1e37fd9749ce39caef3bb9cefcdff52212478649 Mon Sep 17 00:00:00 2001 From: Dominic Fischer Date: Fri, 8 Sep 2023 22:14:57 +0100 Subject: [PATCH] Build versioning --- .github/workflows/BuildImage.yml | 2 +- Dockerfile | 20 +++++++++++++++++-- README.md | 1 - .../init-mod-jellyfin-rffmpeg-setup/run | 11 ---------- 4 files changed, 19 insertions(+), 15 deletions(-) diff --git a/.github/workflows/BuildImage.yml b/.github/workflows/BuildImage.yml index 0ed3798..bc2a780 100644 --- a/.github/workflows/BuildImage.yml +++ b/.github/workflows/BuildImage.yml @@ -20,7 +20,7 @@ jobs: echo "BASEIMAGE=${{ env.BASEIMAGE }}" >> $GITHUB_OUTPUT echo "MODNAME=${{ env.MODNAME }}" >> $GITHUB_OUTPUT # **** If the mod needs to be versioned, set the versioning logic below. Otherwise leave as is. **** - MOD_VERSION="" + MOD_VERSION=$(curl -s https://api.github.com/repos/joshuaboniface/rffmpeg/commits/master | jq -rc '.sha') echo "MOD_VERSION=${MOD_VERSION}" >> $GITHUB_OUTPUT outputs: GITHUB_REPO: ${{ steps.outputs.outputs.GITHUB_REPO }} diff --git a/Dockerfile b/Dockerfile index 58911c7..4cf2010 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,8 +1,24 @@ # syntax=docker/dockerfile:1 +FROM ghcr.io/linuxserver/baseimage-alpine:3.17 as buildstage + +ARG MOD_VERSION=master + +RUN \ + echo "**** grab rffmpeg ****" && \ + mkdir -p /root-layer/usr/local/bin/ && \ + curl -o \ + /root-layer/usr/local/bin/rffmpeg -L \ + "https://raw.githubusercontent.com/joshuaboniface/rffmpeg/${MOD_VERSION}/rffmpeg" && \ + chmod +x /root-layer/usr/local/bin/rffmpeg + +# copy local files +COPY root/ /root-layer/ + +## Single layer deployed image ## FROM scratch LABEL maintainer="junkman690" -# copy local files -COPY root/ / +# Add files from buildstage +COPY --from=buildstage /root-layer/ / diff --git a/README.md b/README.md index 6ec8077..69984cc 100644 --- a/README.md +++ b/README.md @@ -41,7 +41,6 @@ services: - RFFMPEG_WOL=api - RFFMPEG_HOST=transcode - RFFMPEG_HOST_MAC="12:ab:34:cd:ef:56" - - RFFMPEG_COMMIT_SHA=master # (optional) which commit of rffmpeg to download - WOL_API=192.168.1.5 #docker host IP - WOL_API_PORT=8431 - WOL_WAIT=10 #time transcode host takes to start diff --git a/root/etc/s6-overlay/s6-rc.d/init-mod-jellyfin-rffmpeg-setup/run b/root/etc/s6-overlay/s6-rc.d/init-mod-jellyfin-rffmpeg-setup/run index 4ba7066..7b74e42 100755 --- a/root/etc/s6-overlay/s6-rc.d/init-mod-jellyfin-rffmpeg-setup/run +++ b/root/etc/s6-overlay/s6-rc.d/init-mod-jellyfin-rffmpeg-setup/run @@ -13,17 +13,6 @@ else cp /defaults/rffmpeg.yml.sample /config/rffmpeg/rffmpeg.yml fi -#Grab rffmpeg -mkdir -p /usr/local/bin/ -echo "**** Grabbing rffmpeg from upstream ****" -rm -rf /usr/local/bin/rffmpeg -if [ ! -z "$RFFMPEG_COMMIT_SHA" ]; then - curl -L -o /usr/local/bin/rffmpeg https://raw.githubusercontent.com/joshuaboniface/rffmpeg/$RFFMPEG_COMMIT_SHA/rffmpeg -else - curl -L -o /usr/local/bin/rffmpeg https://raw.githubusercontent.com/joshuaboniface/rffmpeg/master/rffmpeg -fi -chmod +x /usr/local/bin/rffmpeg - ##Update rffmpeg.yml sed -i 's~#persist: "/run/shm"~persist: "/dev/shm"~' /config/rffmpeg/rffmpeg.yml sed -i 's~#state: "/var/lib/rffmpeg"~state: "/config/rffmpeg"~' /config/rffmpeg/rffmpeg.yml