Skip to content

Add signed & notarized app release workflow - #6

Draft
winebarrel wants to merge 1 commit into
mainfrom
signed-release-workflow
Draft

Add signed & notarized app release workflow#6
winebarrel wants to merge 1 commit into
mainfrom
signed-release-workflow

Conversation

@winebarrel

Copy link
Copy Markdown
Owner

概要

v* タグの push で発火するリリースワークフローを追加します。署名済み・公証済みの .app を DMG にパッケージして GitHub Release に添付します。

フロー

  1. Developer ID Application 証明書を一時キーチェーンに取り込み
  2. xcodebuild archive-exportArchiveExportOptions.plist / method: developer-id)で署名済み .app を書き出し
  3. hdiutil で DMG 作成(Applications シンボリックリンク付き)→ DMG も Developer ID 署名
  4. notarytool submit --wait(App Store Connect API キー)で公証 → stapler staple
  5. staple 後に SHA-256 チェックサムを生成
  6. gh release create で DMG と .sha256 を添付

タグ(v 除去)を MARKETING_VERSION に、github.run_numberCURRENT_PROJECT_VERSION に注入します。

必要な Secrets

Secret 用途
BUILD_CERTIFICATE_BASE64 Developer ID Application 証明書 .p12(base64)
P12_PASSWORD .p12 のパスワード
KEYCHAIN_PASSWORD CI 一時キーチェーン用(任意文字列)
AC_API_KEY_ID App Store Connect API Key ID
AC_API_ISSUER_ID Issuer ID
AC_API_KEY_BASE64 API キー .p8(base64)

使い方

git tag v0.2.0
git push origin v0.2.0

🤖 Generated with Claude Code

https://claude.ai/code/session_01WSMaW5HzjPiK9nPK8UQuDZ

Add a Release workflow triggered on v* tags that builds, Developer ID
signs, packages as a DMG, notarizes via notarytool (App Store Connect
API key), staples, generates a SHA-256 checksum, and attaches both the
DMG and checksum to a GitHub Release.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01WSMaW5HzjPiK9nPK8UQuDZ
@winebarrel
winebarrel marked this pull request as draft July 16, 2026 14:19
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.

1 participant