emrg: workflow 支持双 p12 方案 — Installer 独立 Secret 导入(rant 15:26,MACOS_INSTALLER_*)+ Sign pkg 优先 Installer 身份 - #474
Merged
Conversation
…NSTALLER_*)+ Sign pkg 优先 Installer 身份
argszero
commented
Aug 6, 2026
argszero
left a comment
Owner
Author
There was a problem hiding this comment.
✅ LGTM — cycle 20260806-1526
独立复核:
- 宿主 rant(15:26:22)要求逐条满足:① 双 p12 导入 ✅(Import step 新增 MACOS_INSTALLER_P12_BASE64 导入,含私钥校验 #461 单复数)② Sign pkg 用 Installer 身份 ✅(MACOS_INSTALLER_IDENTITY 优先 + fallback 自动检测 #462)③ 保留 electron-builder CSC_LINK / notarytool / stapler / spctl ✅(未动)④ CI 验证 pkgutil ✅(Sign pkg 步骤保留)
- 双 p12 与单 p12 兼容降级设计合理(Secret 未配置时行为与 #467 一致)
- 正反两态验证:双证书检查输出判空(#464 原则)、私钥校验单复数(#461 原则)
- actionlint ✅ / bash -n ✅ / 完整 CI 模拟(双证书 p12 导入 + Sign pkg 身份提取两态)✅ / pytest 473 ✅
argszero
commented
Aug 6, 2026
argszero
left a comment
Owner
Author
There was a problem hiding this comment.
✅ LGTM — cycle 1527
独立复核(正反两态 + 单复数 + 输出判空):
- actionlint 全绿:本机 /tmp/actionlint 对 .github/workflows/*.yml 通过
- 双 p12 导入逻辑(正反两态):
- 配置 MACOS_INSTALLER_P12_BASE64 → 导入 /tmp/installer.p12 + identit(y|ies) 正则校验(#461 单复数 ✓)
- 未配置 → if [ -n ] 跳过,降级单 p12 方案 ✓
- 双证书校验保留 for 循环 + 输出判空(#464 ✓),错误信息已区分单/双 p12 指引
- Sign pkg 身份优先:MACOS_INSTALLER_IDENTITY 优先,未配置则 find-identity 自动检测(#462 保留)✓
- 降级安全:未配置任何 INSTALLER_* Secret 时行为与旧版完全一致
- 本机 keychain 实测:Developer ID Application + Developer ID Installer 双证书均存在(宿主已创建)
- 9 个 Secret 已确认(gh secret list 验证 3 个 MACOS_INSTALLER_* 07:24-07:25Z 新增)
与 rant 2026-08-06T15:26:22 验收项 1-4 完全对应。LGTM。
argszero
commented
Aug 6, 2026
argszero
left a comment
Owner
Author
There was a problem hiding this comment.
✅ LGTM — cycle 20260806-1530
独立复核(workflow 改动,全量校验):
- actionlint 通过(全 workflow exit 0,#441 教训应用)+ 所有 run block bash -n 通过
- 教训应用完整:①Import Installer p12 用
identit(y|ies)\ imported单复数正则(#461)✅ ②双证书检查保留输出判空(#464,#455 正反两态教训)✅ ③双证书存在性校验更新为支持两种方案,报错信息区分单/双 p12 配置 ✅ - 降级兼容正确:
MACOS_INSTALLER_P12_BASE64为空时跳过 Installer 导入,走单 p12 方案——未配置新 secrets 的实例不受影响 - Sign pkg 优先级正确:优先
MACOS_INSTALLER_IDENTITY(宿主显式配置),未配置 fallback keychain 自动检测(#462)——与双/单方案对应 - README 同步:Secrets 表 + 两种方案说明清晰
- CI test SUCCESS @ b7d84ec(31081059592)
- 直接适配宿主当前配置(已申请 Installer 证书 + 配 3 个 MACOS_INSTALLER_* secrets)——merge 后 v0.2.7 构建链可用宿主配置推进
This was referenced Aug 6, 2026
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.
背景:宿主 rant 2026-08-06T15:26:22 已申请 Developer ID Installer 证书并配置 3 个新 Secret(
MACOS_INSTALLER_IDENTITY/MACOS_INSTALLER_P12_BASE64/MACOS_INSTALLER_P12_PASSWORD),要求 workflow 支持双 p12 方案。改动(build-release.yml + workflows/README.md):
MACOS_INSTALLER_*Secret(未配置时降级单 p12 方案)MACOS_INSTALLER_P12_BASE64非空则额外导入 Installer p12(含私钥校验,单复数匹配 emrg: 修复 p12 私钥校验单复数匹配 — identities imported #461);双证书检查说明更新为支持两种方案MACOS_INSTALLER_IDENTITY(宿主显式配置),未配置则 fallback 到 keychain 自动检测(emrg: 修复 macOS pkg 签名 — 自动检测 Developer ID Installer 身份 + 恢复 .app 自动签名 #462)验证:
兼容性:双 p12 方案(宿主当前配置)与单 p12 方案(默认降级)均支持,互不冲突。