From 97a7268d4a068e0eec6711f1a16a6b4b607a505f Mon Sep 17 00:00:00 2001 From: Dominic Date: Sun, 26 May 2024 11:33:25 +0200 Subject: [PATCH 1/4] fix docker not compiling --- Dockerfile | 26 +++++++++++--------------- 1 file changed, 11 insertions(+), 15 deletions(-) diff --git a/Dockerfile b/Dockerfile index e8a79ca..aa3206e 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,26 +1,23 @@ -FROM alpine:3.19 AS builder - -RUN apk add --no-cache cargo - -RUN mkdir /src -COPY . /src -WORKDIR /src - -RUN cargo build --release --no-default-features - -# ############################################## - FROM alpine:3.19 ARG ffmpeg_ver=7.0 +RUN mkdir -p /usr/local/src/render_video +COPY LICENSE /usr/local/src/render_video/LICENSE +COPY Cargo.toml /usr/local/src/render_video/Cargo.toml +COPY Cargo.lock /usr/local/src/render_video/Cargo.lock +COPY src /usr/local/src/render_video/src +COPY assets /usr/local/src/render_video/assets + RUN apk add --no-cache \ dav1d fontconfig freetype harfbuzz librsvg libva lilv-libs opus svt-av1 x264-libs x265 \ font-noto inkscape libarchive-tools libgcc \ - # we install ffmpeg ourselves to get libsvtav1 support which is not part of the alpine package \ && apk add --no-cache --virtual .build-deps \ - build-base \ + build-base cargo pkgconf \ dav1d-dev fontconfig-dev freetype-dev harfbuzz-dev librsvg-dev libva-dev lilv-dev opus-dev svt-av1-dev x264-dev x265-dev \ + # build the render_video project + && cargo install --path /usr/local/src/render_video --root /usr/local --no-default-features \ + # we install ffmpeg ourselves to get libsvtav1 support which is not part of the alpine package \ && wget -q https://ffmpeg.org/releases/ffmpeg-${ffmpeg_ver}.tar.bz2 \ && tar xfa ffmpeg-${ffmpeg_ver}.tar.bz2 \ && cd ffmpeg-${ffmpeg_ver} \ @@ -63,6 +60,5 @@ RUN apk add --no-cache \ && install -Dm644 -t /usr/share/licenses/msfonts/ Licen.TXT \ && cd .. \ && rm -r msfonts webfonts.tar.gz -COPY --from=builder /src/target/release/render_video /usr/local/bin/render_video ENTRYPOINT ["/usr/local/bin/render_video"] From 5b2d6653dce0c2b2135fc5b072026ba6e628f868 Mon Sep 17 00:00:00 2001 From: Dominic Date: Sun, 26 May 2024 11:33:42 +0200 Subject: [PATCH 2/4] add dockerignore --- .dockerignore | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 .dockerignore diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..2b4a8f4 --- /dev/null +++ b/.dockerignore @@ -0,0 +1,3 @@ +**/target/ +23*/ +24*/ From 8147ffd23100f31da3f5914c93b082ae12147358 Mon Sep 17 00:00:00 2001 From: Dominic Date: Sun, 26 May 2024 11:47:53 +0200 Subject: [PATCH 3/4] update alpine to 3.20 --- Dockerfile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index aa3206e..62c3416 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM alpine:3.19 +FROM alpine:3.20 ARG ffmpeg_ver=7.0 @@ -17,6 +17,7 @@ RUN apk add --no-cache \ dav1d-dev fontconfig-dev freetype-dev harfbuzz-dev librsvg-dev libva-dev lilv-dev opus-dev svt-av1-dev x264-dev x265-dev \ # build the render_video project && cargo install --path /usr/local/src/render_video --root /usr/local --no-default-features \ + && rm -rf ~/.cargo \ # we install ffmpeg ourselves to get libsvtav1 support which is not part of the alpine package \ && wget -q https://ffmpeg.org/releases/ffmpeg-${ffmpeg_ver}.tar.bz2 \ && tar xfa ffmpeg-${ffmpeg_ver}.tar.bz2 \ From fad24597fdff00996fc01960be05d13269309971 Mon Sep 17 00:00:00 2001 From: Dominic Date: Sun, 26 May 2024 12:18:17 +0200 Subject: [PATCH 4/4] CI: add webhook triggering quay.io --- .forgejo/workflows/webhook.yml | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 .forgejo/workflows/webhook.yml diff --git a/.forgejo/workflows/webhook.yml b/.forgejo/workflows/webhook.yml new file mode 100644 index 0000000..6dae2d0 --- /dev/null +++ b/.forgejo/workflows/webhook.yml @@ -0,0 +1,16 @@ +name: Trigger quay.io Webhook + +on: + push: + +jobs: + run: + runs-on: alpine-latest + steps: + - run: | + apk add ca-certificates curl + curl -v -X POST --data '{ + "commit": "${{forgejo.sha}}", + "ref": "${{forgejo.ref}}", + "default-branch": "main" + }' 'https://$token:${{secrets.quay_token}}@quay.io/webhooks/push/trigger/48d15dc7-ef9a-45bd-83e6-e1714c73dca6'