forked from mirrors/jellyfin-plugin-sso
publish the plugin zip to artifactapi on tag #4
Reference in New Issue
Block a user
Delete Branch "benvin/release-pipeline"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Tagged releases had no pipeline, so the plugin zip was built by hand and jellyfin-ha had nothing to pin to. Plugin versions are 4-part, but the bump targets were copied from a 3-part semver project.
Publishes to files/unkin/jellyfin-plugin-sso//sso-authentication_.zip. Requires terraform-artifactapi #48 applied first.
releasedefine, used by major/minor/patch/hotfix) — no atomicity: sed rewrites build.yaml + csproj before the commit; each recipe line is a separate shell, so a failure at commit/tag/push (hook rejection, tag collision, push rejection) leaves either an uncommitted dirty bump (build.yaml/csproj modified on disk, verified by simulation) or a committed-but-untagged/unpushed local state that the nextmakeinvocation will not detect as dirty and will silently bump again from → wrap sed+commit+tag+push in one shell with a trap that reverts (git checkout -- build.yaml SSO-Auth/SSO-Auth.csproj) on failure before the commit lands, or at minimum document the manual recovery.exit 0s before reachingsha256sum "$$ZIP", so re-running the pipeline against an already-published tag emits no checksum for the downstream jellyfin-ha pin, and never verifies the freshly built zip matches what is actually already published (silent divergence if a rebuild differs) → sha256sum the local zip on both branches and compare it against the published object before skipping.CI_COMMIT_TAG's commit is reachable from origin/main; `make major|minor|patch|hotfix` tags whatever is currently checked out, so a tag can point at a commit that never passed PR CI → add a `git merge-base --is-ancestor$CI_COMMIT_SHA origin/main` (or equivalent) check before build/publish.