5 Commits
Author SHA1 Message Date
dtourolle d4842c2361 fixing new build system
🏗️ Build Plugin / build (push) Successful in 48s
🧪 Test Plugin / test (push) Successful in 1m4s
🚀 Release Plugin / build-and-release (push) Failing after 46s
2026-01-11 09:43:51 +01:00
dtourolle 67619a4f56 impoving build system
🏗️ Build Plugin / build (push) Successful in 57s
🧪 Test Plugin / test (push) Successful in 1m12s
🚀 Release Plugin / build-and-release (push) Failing after 39s
2026-01-11 09:40:18 +01:00
dtourolle cdf53c5288 Add docker to simplify build
🧪 Test Plugin / test (push) Successful in 1m10s
🏗️ Build Plugin / build (push) Failing after 20m0s
🚀 Release Plugin / build-and-release (push) Failing after 2m46s
2026-01-10 21:01:28 +01:00
Gitea Actions 6be05158d0 Update manifest.json for version 1.0.4 2026-01-10 18:48:09 +00:00
dtourolle 4f3af0db69 clean up CI job
🧪 Test Plugin / test (push) Successful in 1m2s
🚀 Release Plugin / build-and-release (push) Successful in 2m6s
🏗️ Build Plugin / build (push) Successful in 1m59s
2026-01-10 19:43:41 +01:00
4 changed files with 41 additions and 37 deletions
+4 -13
View File
@@ -15,15 +15,14 @@ on:
jobs:
build:
runs-on: ubuntu-latest
runs-on: ubuntu-22.04
container:
image: gitea.tourolle.paris/dtourolle/jellypod-builder:latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Verify .NET installation
run: dotnet --version
- name: Restore dependencies
run: dotnet restore Jellyfin.Plugin.Jellypod.sln
@@ -33,19 +32,11 @@ jobs:
- name: Run tests
run: dotnet test Jellyfin.Plugin.Jellypod.sln --no-build --configuration Release --verbosity normal
- name: Install JPRM
run: |
python3 -m venv /tmp/jprm-venv
/tmp/jprm-venv/bin/pip install jprm
- name: Build Jellyfin Plugin
id: jprm
run: |
# Create artifacts directory for JPRM output
mkdir -p artifacts
# Build plugin using JPRM
/tmp/jprm-venv/bin/jprm --verbosity=debug plugin build .
jprm --verbosity=debug plugin build .
# Find the generated zip file
ARTIFACT=$(find . -name "*.zip" -type f -print -quit)
+13 -24
View File
@@ -13,15 +13,14 @@ on:
jobs:
build-and-release:
runs-on: ubuntu-latest
runs-on: ubuntu-22.04
container:
image: gitea.tourolle.paris/dtourolle/jellypod-builder:latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Verify .NET installation
run: dotnet --version
- name: Get version
id: get_version
run: |
@@ -49,19 +48,11 @@ jobs:
- name: Run tests
run: dotnet test Jellyfin.Plugin.Jellypod.sln --no-build --configuration Release --verbosity normal
- name: Install JPRM
run: |
python3 -m venv /tmp/jprm-venv
/tmp/jprm-venv/bin/pip install jprm
- name: Build Jellyfin Plugin
id: jprm
run: |
# Create artifacts directory for JPRM output
mkdir -p artifacts
# Build plugin using JPRM
/tmp/jprm-venv/bin/jprm --verbosity=debug plugin build ./
jprm --verbosity=debug plugin build ./
# Find the generated zip file
ARTIFACT=$(find . -name "*.zip" -type f -print -quit)
@@ -87,22 +78,20 @@ jobs:
REPO_NAME="${{ github.event.repository.name }}"
GITEA_URL="${{ github.server_url }}"
# Prepare release body
RELEASE_BODY="Jellypod Jellyfin Plugin ${{ steps.get_version.outputs.version }}\n\nSee attached files for plugin installation.\n\nTo install, add this repository URL to Jellyfin:\n\`${GITEA_URL}/${REPO_OWNER}/${REPO_NAME}/raw/branch/master/manifest.json\`"
RELEASE_BODY_JSON=$(echo -n "${RELEASE_BODY}" | jq -Rs .)
# Prepare release body and create JSON payload
MANIFEST_URL="${GITEA_URL}/${REPO_OWNER}/${REPO_NAME}/raw/branch/master/manifest.json"
# Create release using Gitea API
# Create release using Gitea API with jq for proper JSON
RESPONSE=$(curl -s -w "\n%{http_code}" -X POST \
-H "Authorization: token ${GITEA_TOKEN}" \
-H "Content-Type: application/json" \
"${GITEA_URL}/api/v1/repos/${REPO_OWNER}/${REPO_NAME}/releases" \
-d "{
\"tag_name\": \"${{ steps.get_version.outputs.version }}\",
\"name\": \"Release ${{ steps.get_version.outputs.version }}\",
\"body\": ${RELEASE_BODY_JSON},
\"draft\": false,
\"prerelease\": false
}")
-d "$(jq -n \
--arg tag "${{ steps.get_version.outputs.version }}" \
--arg name "Release ${{ steps.get_version.outputs.version }}" \
--arg body "Jellypod Jellyfin Plugin ${{ steps.get_version.outputs.version }}\n\nSee attached files for plugin installation.\n\nTo install, add this repository URL to Jellyfin:\n${MANIFEST_URL}" \
'{tag_name: $tag, name: $name, body: $body, draft: false, prerelease: false}'
)")
HTTP_CODE=$(echo "$RESPONSE" | tail -n1)
BODY=$(echo "$RESPONSE" | sed '$d')
+16
View File
@@ -0,0 +1,16 @@
FROM mcr.microsoft.com/dotnet/sdk:8.0
# Install Python, Node.js, and tools
RUN apt-get update && apt-get install -y \
python3 \
python3-pip \
jq \
git \
nodejs \
npm \
&& rm -rf /var/lib/apt/lists/*
# Install JPRM
RUN pip install --break-system-packages jprm
WORKDIR /src
+8
View File
@@ -8,6 +8,14 @@
"category": "General",
"imageUrl": "https://gitea.tourolle.paris/dtourolle/jellypod/raw/branch/master/Jellyfin.Plugin.Jellypod/Images/channel-icon.jpg",
"versions": [
{
"version": "1.0.4",
"changelog": "Release 1.0.4",
"targetAbi": "10.9.0.0",
"sourceUrl": "https://gitea.tourolle.paris/dtourolle/jellypod/releases/download/v1.0.4/jellypod_1.0.4.0.zip",
"checksum": "0e0c134e6584581a8498cb17dfda334b",
"timestamp": "2026-01-10T18:48:08Z"
},
{
"version": "1.0.2",
"changelog": "Release 1.0.2",