Implement GPG signing process and refactor plugin manifest handling#8
Merged
sethwv merged 30 commits intoDispatcharr:mainfrom Mar 22, 2026
Merged
Implement GPG signing process and refactor plugin manifest handling#8sethwv merged 30 commits intoDispatcharr:mainfrom
sethwv merged 30 commits intoDispatcharr:mainfrom
Conversation
… correct directory and update output messages for clarity
…eration and signature validation
…e README for verification steps
…d update README links accordingly
…sure temporary directories are properly managed
…ksum computation details in CONTRIBUTING.md
… stripping signatures from manifests
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This pull request refactors the plugin publishing pipeline to simplify artifact management, improve manifest generation, and add optional GPG signing for manifests. The changes consolidate all plugin ZIPs and manifests under a single
zips/directory (removingreleases/andmetadata/), introduce a robust GPG signing workflow, and streamline metadata handling for plugins and the root manifest.Key changes include:
Artifact and Directory Structure Refactor
zips/<plugin>/, replacing the previousreleases/andmetadata/directories. This affects all scripts that read or write plugin artifacts and metadata. [1] [2] [3] [4] [5] [6] [7] [8]BUILD_META_DIR) and only used within the CI run, reducing clutter in the repository. [1] [2] [3]Manifest Generation and Metadata Handling
generate-manifest.sh) now prefers fresh metadata from the current build, falling back to existing per-plugin manifests if needed. [1] [2]unlisted,min_dispatcharr_version,max_dispatcharr_version) are removed from the top-level manifest, and the latest version's metadata is included in alatestfield. [1] [2] [3]GPG Signing Support
generate-signing-key.sh) to generate a GPG Ed25519 signing key for manifest signing, with clear instructions for storing keys and passphrases as secrets.GPG_PRIVATE_KEY/GPG_PASSPHRASE), embedding the armored signature in the manifest JSON. If signing fails, all signatures are stripped to avoid partial signing. [1] [2]dispatcharr-plugins.pub) is added for use by consumers to verify signatures.Cleanup and Maintenance
zips/and prunes old versions, removing references to orphaned metadata files.zips/directory.Most important changes:
Artifact and Directory Structure
zips/<plugin>/, removingreleases/andmetadata/directories and updating all related scripts. [1] [2] [3] [4] [5] [6] [7] [8]BUILD_META_DIR) for use during CI runs only. [1] [2] [3]Manifest Generation and Metadata
latestfield. [1] [2] [3]GPG Signing Support
generate-signing-key.shfor GPG Ed25519 key generation, and support for signing manifests with GPG keys in the publishing workflow. [1] [2] [3]dispatcharr-plugins.pubfor consumers to verify manifest signatures.Cleanup and Maintenance
zips/, removing orphaned metadata handling.zips/<plugin>/README.md.