ci: verify builds before merge and add packaging script #3

Merged
ryan.mcgee merged 4 commits from ci/verify-workflow into main 2026-10-16 22:13:08 +00:00
Owner

Summary

  • Gate merges to main on a CI workflow and add a reproducible packaging script used for releases.

Changes

  • scripts/package.sh: zips exactly the build.yaml artifacts plus a Jellyfin meta.json; fails on csproj/build.yaml version or guid mismatch and on missing or unlisted DLLs.
  • .gitea/workflows/ci.yml: on pull requests to main and pushes to main, in the pinned SDK image: build with warnings as errors, format check, tests, pinned shellcheck on scripts/*.sh, packaging.
  • README: CI, install from release, cutting a release.

Verification

  • The workflow's own run steps executed in a fresh mcr.microsoft.com/dotnet/sdk:9.0.319 container: build 0 warnings/0 errors, format clean, 43 tests passed, shellcheck checksum OK, package and sha256sum -c OK.
  • package.sh rejects a version mismatch, a listed-but-missing artifact and an unlisted DLL (tested in a temp copy).
## Summary - Gate merges to `main` on a CI workflow and add a reproducible packaging script used for releases. ## Changes - `scripts/package.sh`: zips exactly the `build.yaml` artifacts plus a Jellyfin `meta.json`; fails on csproj/build.yaml version or guid mismatch and on missing or unlisted DLLs. - `.gitea/workflows/ci.yml`: on pull requests to `main` and pushes to `main`, in the pinned SDK image: build with warnings as errors, format check, tests, pinned shellcheck on `scripts/*.sh`, packaging. - README: CI, install from release, cutting a release. ## Verification - The workflow's own run steps executed in a fresh `mcr.microsoft.com/dotnet/sdk:9.0.319` container: build 0 warnings/0 errors, format clean, 43 tests passed, shellcheck checksum OK, package and `sha256sum -c` OK. - `package.sh` rejects a version mismatch, a listed-but-missing artifact and an unlisted DLL (tested in a temp copy).
- zip exactly the build.yaml artifacts plus a Jellyfin meta.json
- fail on csproj/build.yaml version or guid mismatch and on
  unlisted or missing DLLs so dependency drift cannot ship
- add jq, unzip and zip to the dev container
ci: verify build, format, tests and packaging
All checks were successful
CI / verify (pull_request) Successful in 1m10s
17148a2dd0
- run on pull requests to main and pushes to main in the pinned
  SDK image
- build with warnings as errors, check format, run tests, shellcheck
  scripts and package the plugin
- document CI, installing from releases and cutting a release
test: add deliberate format violation to prove CI fails
Some checks failed
CI / verify (pull_request) Failing after 38s
be3f67c2fd
Revert "test: add deliberate format violation to prove CI fails"
All checks were successful
CI / verify (pull_request) Successful in 43s
578e56d612
This reverts commit be3f67c2fd.
ryan.mcgee deleted branch ci/verify-workflow 2026-10-16 22:13:08 +00:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
Enclave-Information-Systems/jellyfin-sso-plugin!3
No description provided.