i don't care about the docker images
This commit is contained in:
parent
124178f28c
commit
86644e80ba
54
.github/ISSUE_TEMPLATE/bug_report.yml
vendored
54
.github/ISSUE_TEMPLATE/bug_report.yml
vendored
@ -1,54 +0,0 @@
|
|||||||
name: "Bug report"
|
|
||||||
description: "Create a report to help us improve"
|
|
||||||
labels: [bug]
|
|
||||||
body:
|
|
||||||
- type: textarea
|
|
||||||
attributes:
|
|
||||||
label: Describe the bug
|
|
||||||
description: Also tell us, what did you expect to happen?
|
|
||||||
placeholder: |
|
|
||||||
The more information that you are able to provide, the better. Did you do anything before this happened? Did you upgrade or change anything? Any screenshots or logs you can provide will be helpful.
|
|
||||||
|
|
||||||
This is my issue.
|
|
||||||
|
|
||||||
Steps to Reproduce
|
|
||||||
1. In this environment...
|
|
||||||
2. With this config...
|
|
||||||
3. Run '...'
|
|
||||||
4. See error...
|
|
||||||
validations:
|
|
||||||
required: true
|
|
||||||
|
|
||||||
- type: input
|
|
||||||
attributes:
|
|
||||||
label: Operating system
|
|
||||||
placeholder: Debian 11, Windows 11, etc.
|
|
||||||
validations:
|
|
||||||
required: true
|
|
||||||
|
|
||||||
- type: input
|
|
||||||
attributes:
|
|
||||||
label: Jellyfin installation method
|
|
||||||
placeholder: Docker, Windows installer, etc.
|
|
||||||
validations:
|
|
||||||
required: true
|
|
||||||
|
|
||||||
- type: input
|
|
||||||
attributes:
|
|
||||||
label: Container image and tag
|
|
||||||
description: Only fill in this field if you are running Jellyfin in a container
|
|
||||||
placeholder: jellyfin/jellyfin:10.8.7, jellyfin-intro-skipper:latest, etc.
|
|
||||||
|
|
||||||
- type: textarea
|
|
||||||
attributes:
|
|
||||||
label: Support Bundle
|
|
||||||
placeholder: go to Dashboard -> Plugins -> Intro Skipper -> Support Bundle (at the bottom of the page) and paste the contents of the textbox here
|
|
||||||
validations:
|
|
||||||
required: true
|
|
||||||
|
|
||||||
- type: textarea
|
|
||||||
attributes:
|
|
||||||
label: Jellyfin logs
|
|
||||||
placeholder: Paste any relevant logs here
|
|
||||||
render: shell
|
|
||||||
|
|
13
.github/ISSUE_TEMPLATE/feature_request.md
vendored
13
.github/ISSUE_TEMPLATE/feature_request.md
vendored
@ -1,13 +0,0 @@
|
|||||||
---
|
|
||||||
name: Feature request
|
|
||||||
about: Suggest an idea for this project
|
|
||||||
labels: enhancement
|
|
||||||
assignees: ''
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
**Describe the feature you'd like added**
|
|
||||||
A clear and concise description of what you would like to see added.
|
|
||||||
|
|
||||||
**Additional context**
|
|
||||||
Add any other context or screenshots about the feature request here.
|
|
118
.github/workflows/container.yml
vendored
118
.github/workflows/container.yml
vendored
@ -1,118 +0,0 @@
|
|||||||
name: Publish container
|
|
||||||
|
|
||||||
on:
|
|
||||||
release:
|
|
||||||
types: [published]
|
|
||||||
workflow_dispatch:
|
|
||||||
|
|
||||||
env:
|
|
||||||
REGISTRY: ghcr.io
|
|
||||||
IMAGE_NAME: ${{ github.repository_owner }}/jellyfin-intro-skipper
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
build:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
permissions:
|
|
||||||
contents: read
|
|
||||||
packages: write
|
|
||||||
|
|
||||||
strategy:
|
|
||||||
matrix:
|
|
||||||
node-version: [18.x]
|
|
||||||
jellyfin-container-version: [10.8.10]
|
|
||||||
jellyfin-web-version: [10.8.10]
|
|
||||||
|
|
||||||
steps:
|
|
||||||
- uses: actions/checkout@v4
|
|
||||||
|
|
||||||
- name: Use Node.js ${{ matrix.node-version }}
|
|
||||||
uses: actions/setup-node@v4
|
|
||||||
with:
|
|
||||||
node-version: ${{ matrix.node-version }}
|
|
||||||
|
|
||||||
- name: Get npm cache directory
|
|
||||||
id: npm-cache-dir
|
|
||||||
run: |
|
|
||||||
echo "dir=$(npm config get cache)" >> $GITHUB_OUTPUT
|
|
||||||
- name: Configure npm cache
|
|
||||||
uses: actions/cache@v3
|
|
||||||
id: npm-cache
|
|
||||||
with:
|
|
||||||
path: ${{ steps.npm-cache-dir.outputs.dir }}
|
|
||||||
key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }}
|
|
||||||
restore-keys: |
|
|
||||||
${{ runner.os }}-node-
|
|
||||||
- name: Checkout modified web interface
|
|
||||||
uses: actions/checkout@v4
|
|
||||||
with:
|
|
||||||
repository: ConfusedPolarBear/jellyfin-web
|
|
||||||
ref: intros
|
|
||||||
path: web
|
|
||||||
|
|
||||||
- name: Store commit of web interface
|
|
||||||
id: web-commit
|
|
||||||
run: |
|
|
||||||
cd web
|
|
||||||
echo "commit=$(git log -1 --format='%H' | cut -c -10)" >> $GITHUB_OUTPUT
|
|
||||||
- name: Build and copy web interface
|
|
||||||
run: |
|
|
||||||
cd web
|
|
||||||
npm install
|
|
||||||
cp -r dist ../docker/
|
|
||||||
tar czf dist.tar.gz dist
|
|
||||||
- name: Upload web interface
|
|
||||||
uses: actions/upload-artifact@v3.1.3
|
|
||||||
with:
|
|
||||||
name: jellyfin-web-${{ matrix.jellyfin-web-version }}+${{ steps.web-commit.outputs.commit }}.tar.gz
|
|
||||||
path: web/dist.tar.gz
|
|
||||||
if-no-files-found: error
|
|
||||||
|
|
||||||
- name: Set up QEMU
|
|
||||||
uses: docker/setup-qemu-action@v3
|
|
||||||
|
|
||||||
- name: Setup Docker buildx
|
|
||||||
uses: docker/setup-buildx-action@v3
|
|
||||||
|
|
||||||
# Login against a Docker registry except on PR
|
|
||||||
# https://github.com/docker/login-action
|
|
||||||
- name: Log into ghcr.io registry
|
|
||||||
if: github.event_name != 'pull_request'
|
|
||||||
uses: docker/login-action@v3.0.0
|
|
||||||
with:
|
|
||||||
registry: ${{ env.REGISTRY }}
|
|
||||||
username: ${{ github.actor }}
|
|
||||||
password: ${{ secrets.GITHUB_TOKEN }}
|
|
||||||
|
|
||||||
# Extract metadata (tags, labels) for Docker
|
|
||||||
# https://github.com/docker/metadata-action
|
|
||||||
- name: Extract Docker metadata
|
|
||||||
id: meta
|
|
||||||
uses: docker/metadata-action@v5
|
|
||||||
with:
|
|
||||||
images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}
|
|
||||||
tags: |
|
|
||||||
type-raw,value=${{ steps.web-commit.outputs.commit }}
|
|
||||||
type=raw,value=latest,enable={{is_default_branch}}
|
|
||||||
type=semver,pattern={{version}},value=${{ matrix.jellyfin-container-version }}
|
|
||||||
# Build and push Docker image with Buildx
|
|
||||||
# https://github.com/docker/build-push-action
|
|
||||||
- name: Publish container image
|
|
||||||
id: build-and-push
|
|
||||||
uses: docker/build-push-action@v5.1.0
|
|
||||||
with:
|
|
||||||
file: docker/Dockerfile
|
|
||||||
context: docker
|
|
||||||
tags: ${{ steps.meta.outputs.tags }}
|
|
||||||
labels: ${{ steps.meta.outputs.labels }}
|
|
||||||
build-args: |
|
|
||||||
JELLYFIN_TAG=${{ matrix.jellyfin-container-version }}
|
|
||||||
platforms: |
|
|
||||||
linux/amd64
|
|
||||||
linux/arm/v7
|
|
||||||
linux/arm64/v8
|
|
||||||
push: ${{ github.event_name != 'pull_request' }}
|
|
||||||
pull: true
|
|
||||||
no-cache: true
|
|
||||||
cache-from: type=gha
|
|
||||||
cache-to: type=gha,mode=max
|
|
||||||
provenance: false
|
|
61
.github/workflows/package.sh
vendored
61
.github/workflows/package.sh
vendored
@ -1,61 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
# Check argument count
|
|
||||||
if [[ $# -ne 1 ]]; then
|
|
||||||
echo "Usage: $0 VERSION"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Use provided tag to derive archive filename and short tag
|
|
||||||
version="$1"
|
|
||||||
zip="intro-skipper-$version.zip"
|
|
||||||
short="$(echo "$version" | sed "s/^v//")"
|
|
||||||
|
|
||||||
# Get the assembly version
|
|
||||||
CSPROJ="ConfusedPolarBear.Plugin.IntroSkipper/ConfusedPolarBear.Plugin.IntroSkipper.csproj"
|
|
||||||
assemblyVersion="$(grep -m1 -oE "([0-9]\.){3}[0-9]" "$CSPROJ")"
|
|
||||||
|
|
||||||
# Get the date
|
|
||||||
date="$(date --utc -Iseconds | sed "s/\+00:00/Z/")"
|
|
||||||
|
|
||||||
# Debug
|
|
||||||
echo "Version: $version ($short)"
|
|
||||||
echo "Archive: $zip"
|
|
||||||
echo
|
|
||||||
|
|
||||||
echo "Running unit tests"
|
|
||||||
dotnet test -p:DefineConstants=SKIP_FFMPEG_TESTS || exit 1
|
|
||||||
echo
|
|
||||||
|
|
||||||
echo "Building plugin in Release mode"
|
|
||||||
dotnet build -c Release || exit 1
|
|
||||||
echo
|
|
||||||
|
|
||||||
# Create packaging directory
|
|
||||||
mkdir package
|
|
||||||
cd package || exit 1
|
|
||||||
|
|
||||||
# Copy the freshly built plugin DLL to the packaging directory and archive
|
|
||||||
cp "../ConfusedPolarBear.Plugin.IntroSkipper/bin/Release/net6.0/ConfusedPolarBear.Plugin.IntroSkipper.dll" ./ || exit 1
|
|
||||||
zip "$zip" ConfusedPolarBear.Plugin.IntroSkipper.dll || exit 1
|
|
||||||
|
|
||||||
# Calculate the checksum of the archive
|
|
||||||
checksum="$(md5sum "$zip" | cut -f 1 -d " ")"
|
|
||||||
|
|
||||||
# Generate the manifest entry for this plugin
|
|
||||||
cat > manifest.json <<'EOF'
|
|
||||||
{
|
|
||||||
"version": "ASSEMBLY",
|
|
||||||
"changelog": "- See the full changelog at [GitHub](https://github.com/ConfusedPolarBear/intro-skipper/blob/master/CHANGELOG.md)\n",
|
|
||||||
"targetAbi": "10.8.4.0",
|
|
||||||
"sourceUrl": "https://github.com/ConfusedPolarBear/intro-skipper/releases/download/VERSION/ZIP",
|
|
||||||
"checksum": "CHECKSUM",
|
|
||||||
"timestamp": "DATE"
|
|
||||||
}
|
|
||||||
EOF
|
|
||||||
|
|
||||||
sed -i "s/ASSEMBLY/$assemblyVersion/" manifest.json
|
|
||||||
sed -i "s/VERSION/$version/" manifest.json
|
|
||||||
sed -i "s/ZIP/$zip/" manifest.json
|
|
||||||
sed -i "s/CHECKSUM/$checksum/" manifest.json
|
|
||||||
sed -i "s/DATE/$date/" manifest.json
|
|
41
.github/workflows/publish.yml
vendored
41
.github/workflows/publish.yml
vendored
@ -1,41 +0,0 @@
|
|||||||
name: 'Package plugin'
|
|
||||||
|
|
||||||
on:
|
|
||||||
workflow_dispatch:
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
build:
|
|
||||||
runs-on: ubuntu-22.04
|
|
||||||
|
|
||||||
steps:
|
|
||||||
# set fetch-depth to 0 in order to clone all tags instead of just the current commit
|
|
||||||
- uses: actions/checkout@v4
|
|
||||||
with:
|
|
||||||
fetch-depth: 0
|
|
||||||
|
|
||||||
- name: Checkout latest tag
|
|
||||||
id: tag
|
|
||||||
run: |
|
|
||||||
tag="$(git tag --sort=committerdate | tail -n 1)"
|
|
||||||
git checkout "$tag"
|
|
||||||
echo "tag=$tag" >> $GITHUB_OUTPUT
|
|
||||||
|
|
||||||
- name: Setup .NET
|
|
||||||
uses: actions/setup-dotnet@v3
|
|
||||||
with:
|
|
||||||
dotnet-version: 6.0.x
|
|
||||||
|
|
||||||
- name: Restore dependencies
|
|
||||||
run: dotnet restore
|
|
||||||
|
|
||||||
- name: Package
|
|
||||||
run: .github/workflows/package.sh ${{ steps.tag.outputs.tag }}
|
|
||||||
|
|
||||||
- name: Upload plugin archive
|
|
||||||
uses: actions/upload-artifact@v3.1.3
|
|
||||||
with:
|
|
||||||
name: intro-skipper-bundle-${{ steps.tag.outputs.tag }}.zip
|
|
||||||
path: |
|
|
||||||
package/*.zip
|
|
||||||
package/*.json
|
|
||||||
if-no-files-found: error
|
|
@ -1,4 +0,0 @@
|
|||||||
ARG JELLYFIN_TAG=10.8.13
|
|
||||||
FROM jellyfin/jellyfin:${JELLYFIN_TAG}
|
|
||||||
|
|
||||||
COPY dist/ /jellyfin/jellyfin-web/
|
|
@ -1,6 +0,0 @@
|
|||||||
Build instructions for the `ghcr.io/confusedpolarbear/jellyfin-intro-skipper` container:
|
|
||||||
|
|
||||||
1. Clone `https://github.com/ConfusedPolarBear/jellyfin-web` and checkout the `intros` branch
|
|
||||||
2. Run `npm run build:production`
|
|
||||||
3. Copy the `dist` folder into this folder
|
|
||||||
4. Run `docker build .`
|
|
Loading…
x
Reference in New Issue
Block a user