Update Jellyfin plugin workflows to build and release on changes to plugin directories. Modify release process to detect changed plugins and skip builds for catalog-only updates. Enhance README documentation for release instructions and version management.
Build and Release Jellyfin plugins / release (push) Failing after 34s

This commit is contained in:
2026-08-22 22:06:08 +02:00
parent da7deacdee
commit 3efb578f26
6 changed files with 173 additions and 144 deletions
+3 -1
View File
@@ -21,4 +21,6 @@ https://<your-gitea>/<owner>/<repo>/raw/branch/<default>/Jellyfin/manifest.json
## Workflows
- **Scaffold:** `.gitea/workflows/scaffold_jellyfin_plugin.yml` (`workflow_dispatch`)
- **Release:** `.gitea/workflows/release_jellyfin_plugin.yml` (tag `jellyfin/<slug>/vX.Y.Z`)
- **Release:** `.gitea/workflows/release_jellyfin_plugin.yml` — on push to `Jellyfin/**`, builds each changed plugin that has `build.yaml` + `version`
Bump `Jellyfin/<slug>/version` before pushing when you want a new release. Re-pushing the same version skips (release already exists).
+3 -5
View File
@@ -10,12 +10,10 @@ dotnet build -c Release
## Release
Tag and push:
1. Bump the `version` file (e.g. `1.0.1`)
2. Push changes under `Jellyfin/{{PLUGIN_SLUG}}/`
```bash
git tag jellyfin/{{PLUGIN_SLUG}}/v1.0.0
git push origin jellyfin/{{PLUGIN_SLUG}}/v1.0.0
```
CI detects changed plugins, builds with jprm, creates a Gitea release, and updates `Jellyfin/manifest.json`.
Install from the aggregated catalog:
@@ -45,10 +45,10 @@ Restart Jellyfin.
## Release (monorepo CI)
```bash
git tag jellyfin/jellyfin-plugin-personal-recordings/v1.0.0
git push origin jellyfin/jellyfin-plugin-personal-recordings/v1.0.0
```
1. Bump [`version`](version) (SemVer `X.Y.Z`)
2. Push changes under this plugin folder
CI builds only changed plugins, creates release `jellyfin/<slug>/vX.Y.Z`, and updates the catalog.
Workflow: [`.gitea/workflows/release_jellyfin_plugin.yml`](../../.gitea/workflows/release_jellyfin_plugin.yml)
@@ -0,0 +1 @@
1.0.0