Add forgejo actions #371

Merged
mwalbeck merged 2 commits from actions into main 2025-02-13 19:32:18 +00:00
4 changed files with 89 additions and 102 deletions

View file

@ -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
...

View file

@ -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 }}

View file

@ -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 }}

View file

@ -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; \ echo "deb [arch=amd64] https://repo.jellyfin.org/debian bullseye main" | tee /etc/apt/sources.list.d/jellyfin.list; \
apt-get update; \ apt-get update; \
apt-get install --no-install-recommends -y \ apt-get install --no-install-recommends -y \
jellyfin-ffmpeg \ jellyfin-ffmpeg5 \
openssl \ openssl \
locales \ locales \
; \ ; \