如何配置webfactory SSH私钥以解决DuckDuckGO-iOS GitHub Actions错误?
解决SSH密钥为空错误并完成DuckDuckGo-iOS构建
1. 生成并配置SSH密钥对
- 生成无密码的SSH密钥对,用于fastlane match访问证书仓库:
执行后会生成两个文件:ssh-keygen -t ed25519 -f ~/.ssh/id_rsa_fastlane_match -N ""~/.ssh/id_rsa_fastlane_match(私钥)和~/.ssh/id_rsa_fastlane_match.pub(公钥)。 - 将公钥内容添加到存储证书的Git仓库的部署密钥中,若需要推送证书更新则开启写入权限。
2. 在你的fork仓库添加Secret
- 打开你fork的DuckDuckGo-iOS仓库页面,进入「Settings」→「Secrets and variables」→「Actions」。
- 点击「New repository secret」,在「Name」栏输入
SSH_PRIVATE_KEY_FASTLANE_MATCH,在「Secret」栏粘贴刚才生成的私钥内容(确保完整复制,无多余换行或空格)。 - 点击「Add secret」保存。
3. 验证工作流配置
- 检查你的工作流文件中,
ssh-private-key引用的secret名称是否和你设置的完全一致(大小写敏感),确保配置为:ssh-private-key: ${{ secrets.SSH_PRIVATE_KEY_FASTLANE_MATCH }}
4. 构建额外注意事项
- 确认fastlane的Matchfile配置正确,指向的证书仓库地址和你添加公钥的仓库一致。
- FlyCI的M1/M2运行器需匹配项目要求的Xcode版本,可在工作流中添加步骤指定:
- name: Setup Xcode uses: actions/setup-xcode@v3 with: xcode-version: '15.0' # 替换为项目要求的版本
内容的提问来源于stack exchange,提问作者Kiril
相关产品推荐
相关产品推荐

