Skip to content

ci: add signed release workflow - #33

Merged
DeepDiver1975 merged 1 commit into
masterfrom
ci/add-release-workflow
Jul 28, 2026
Merged

ci: add signed release workflow#33
DeepDiver1975 merged 1 commit into
masterfrom
ci/add-release-workflow

Conversation

@DeepDiver1975

Copy link
Copy Markdown
Member

Adds a tag-triggered release workflow so releases are built and signed in CI instead of by hand.

Pushing a v* tag now calls owncloud/reusable-workflows/.github/workflows/release.yml, which:

  • checks the tag matches <version> in appinfo/info.xml and aborts if it does not,
  • builds ocsign from a pinned commit and runs make dist with CAN_SIGN=true and sign=ocsign ..., so the existing ifdef CAN_SIGN block signs with the G2 material from the repository secrets,
  • asserts each tarball contains an appinfo/signature.json (schema v2) whose leaf certificate CN equals the app id — an unsigned build fails rather than publishing quietly,
  • creates the GitHub Release with build/dist/external.tar.gz attached.

No Makefile change is needed. sign is a plain = assignment, so the workflow overrides it on the make command line, and the tarball path already matches the workflow's default artifact-glob of build/**/*.tar.gz.

SIGNING_KEY, SIGNING_CERT and SIGNING_CHAIN are set as repository secrets. dist.yml is unaffected — it triggers on branch pushes and pull requests, not tags.

🤖 Generated with Claude Code

Tagging the repository now builds and signs the app in CI via the shared
release workflow, using the ownCloud G2 code-signing material held in the
repository secrets. This removes the need to sign a release by hand with
'occ integrity:sign-app' on a machine that holds the private key.

The workflow refuses to publish an unsigned artifact: it fails when the
signing secrets are absent, and asserts that every tarball contains an
appinfo/signature.json whose leaf certificate CN matches the app id.

Signed-off-by: Thomas Müller <1005065+DeepDiver1975@users.noreply.github.com>
@DeepDiver1975
DeepDiver1975 requested a review from a team as a code owner July 28, 2026 15:42
@DeepDiver1975

Copy link
Copy Markdown
Member Author

recheck

@DeepDiver1975
DeepDiver1975 merged commit 8b70197 into master Jul 28, 2026
3 checks passed
@DeepDiver1975
DeepDiver1975 deleted the ci/add-release-workflow branch July 28, 2026 15:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants