From dd58df36e3b0315581df5778ea6a5405ccbaebe2 Mon Sep 17 00:00:00 2001 From: Magnus Walbeck Date: Thu, 13 Feb 2025 20:11:54 +0100 Subject: [PATCH 1/2] Add forgejo actions --- .drone.yml | 101 ----------------------------------- .forgejo/workflows/build.yml | 48 +++++++++++++++++ .forgejo/workflows/test.yml | 40 ++++++++++++++ 3 files changed, 88 insertions(+), 101 deletions(-) delete mode 100644 .drone.yml create mode 100644 .forgejo/workflows/build.yml create mode 100644 .forgejo/workflows/test.yml diff --git a/.drone.yml b/.drone.yml deleted file mode 100644 index 892f146..0000000 --- a/.drone.yml +++ /dev/null @@ -1,101 +0,0 @@ ---- -kind: pipeline -type: docker -name: lint - -steps: - - name: Lint Dockerfile - image: hadolint/hadolint:latest-debian - pull: if-not-exists - commands: - - hadolint --version - - hadolint Dockerfile - when: - status: - - failure - - success - - - name: Lint script - image: koalaman/shellcheck-alpine - pull: if-not-exists - commands: - - shellcheck start-transcode.sh - when: - status: - - failure - - success - -trigger: - event: - - pull_request - - push - ref: - exclude: - - refs/heads/renovate/* - ---- -kind: pipeline -type: docker -name: test - -steps: - - name: docker - image: plugins/docker - pull: if-not-exists - settings: - dockerfile: Dockerfile - username: - from_secret: dockerhub_username - password: - from_secret: dockerhub_password_ro - repo: mwalbeck/jellyfin-livestream - dry_run: true - -trigger: - event: - - pull_request - -depends_on: - - lint - ---- -kind: pipeline -type: docker -name: build and publish - -steps: - - name: determine tags - image: mwalbeck/determine-docker-tags - pull: if-not-exists - environment: - APP_NAME: JELLYFIN - CUSTOM_TAGS: latest - DOCKERFILE_PATH: Dockerfile - INCLUDE_MAJOR: negative - VERSION_TYPE: docker_env - - - name: docker - image: plugins/docker - pull: if-not-exists - settings: - dockerfile: Dockerfile - username: - from_secret: dockerhub_username - password: - from_secret: dockerhub_password - repo: mwalbeck/jellyfin-livestream - -trigger: - branch: - - master - event: - - push - -depends_on: - - lint - ---- -kind: signature -hmac: 1d6c1aec32d28b7d396e433f1b391b44e0978dec9a10f0c8edbbdc5c4568b98f - -... diff --git a/.forgejo/workflows/build.yml b/.forgejo/workflows/build.yml new file mode 100644 index 0000000..df1325a --- /dev/null +++ b/.forgejo/workflows/build.yml @@ -0,0 +1,48 @@ +name: Build and publish + +on: + push: + branches: + - main + +jobs: + lint: + runs-on: docker + steps: + - uses: actions/checkout@v4 + - uses: https://github.com/hadolint/hadolint-action@v3.1.0 + with: + dockerfile: Dockerfile + - uses: https://github.com/ludeeus/action-shellcheck@2.0.0 + with: + dockerfile: Dockerfile + + build: + runs-on: dind + steps: + - uses: actions/checkout@v4 + - name: Get docker tags + id: tags + shell: sh + env: + VERSION_TYPE: "docker_env" + APP_NAME: "JELLYFIN" + DOCKERFILE_PATH: "Dockerfile" + CUSTOM_TAGS: "latest" + INCLUDE_MAJOR: "no" + IMAGE_NAME: "mwalbeck/jellyfin-livestream" + run: | + determine-docker-tags + dockerd & + - name: Login to Docker Hub + uses: https://github.com/docker/login-action@v3 + with: + username: ${{ secrets.DOCKERHUB_USERNAME }} + password: ${{ secrets.DOCKERHUB_TOKEN }} + - name: Set up Docker Buildx + uses: https://github.com/docker/setup-buildx-action@v3 + - name: Build and push + uses: https://github.com/docker/build-push-action@v6 + with: + push: true + tags: ${{ steps.tags.outputs.tags }} \ No newline at end of file diff --git a/.forgejo/workflows/test.yml b/.forgejo/workflows/test.yml new file mode 100644 index 0000000..f01c90f --- /dev/null +++ b/.forgejo/workflows/test.yml @@ -0,0 +1,40 @@ +name: Test + +on: pull_request + +jobs: + lint: + if: github.ref != 'refs/heads/renovate/*' + runs-on: docker + steps: + - uses: actions/checkout@v4 + - uses: https://github.com/hadolint/hadolint-action@v3.1.0 + with: + dockerfile: Dockerfile + - uses: https://github.com/ludeeus/action-shellcheck@2.0.0 + with: + dockerfile: Dockerfile + + test: + runs-on: dind + steps: + - uses: actions/checkout@v4 + - name: Get docker tags + id: tags + shell: sh + env: + VERSION_TYPE: "docker_env" + APP_NAME: "JELLYFIN" + DOCKERFILE_PATH: "Dockerfile" + CUSTOM_TAGS: "latest" + INCLUDE_MAJOR: "no" + IMAGE_NAME: "mwalbeck/jellyfin-livestream" + run: | + determine-docker-tags + dockerd & + - name: Set up Docker Buildx + uses: https://github.com/docker/setup-buildx-action@v3 + - name: Test build + uses: https://github.com/docker/build-push-action@v6 + with: + tags: ${{ steps.tags.outputs.tags }} -- 2.45.2 From 60632ffbcd70bce4b41d2d9dae7ca957f51382ac Mon Sep 17 00:00:00 2001 From: Magnus Walbeck Date: Thu, 13 Feb 2025 20:22:53 +0100 Subject: [PATCH 2/2] Specify jellyfin-ffmpeg5 --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index 26f6464..77707bd 100644 --- a/Dockerfile +++ b/Dockerfile @@ -51,7 +51,7 @@ RUN apt-get update; \ echo "deb [arch=amd64] https://repo.jellyfin.org/debian bullseye main" | tee /etc/apt/sources.list.d/jellyfin.list; \ apt-get update; \ apt-get install --no-install-recommends -y \ - jellyfin-ffmpeg \ + jellyfin-ffmpeg5 \ openssl \ locales \ ; \ -- 2.45.2