如何使用 GitHub Actions 为 iOS 构建设置 Fastlane?

问题描述 投票:0回答:1

我正在使用 Fastlane 和 GitHub Actions 自动化我的 iOS 应用程序的构建和部署过程。目标是构建应用程序并将其分发到 TestFlight,作为 CI/CD 管道的一部分。我已经设置了 GitHub Action 工作流程,但在 iOS 的 Fastlane 设置过程中遇到了一些问题。

这是我到目前为止所做的:

创建了一个带有通道的 Fastfile 来处理构建并上传到 TestFlight。 在 GitHub 中配置所需的机密(例如 APP_STORE_CONNECT_API_KEY、MATCH_PASSWORD 等)。 设置用于处理代码签名证书的匹配。 这是我的 GitHub Actions 工作流程:

name: iOS CI/CD

on:
push:
 branches:
  - main

jobs:
 build:
 runs-on: macos-latest
 steps:
  - name: Checkout code
    uses: actions/checkout@v4
  
  - name: Install dependencies
    run: bundle install

  - name: Install CocoaPods
    run: bundle exec pod install
  
  - name: Run Fastlane
    run: bundle exec fastlane beta
    env:
      APP_STORE_CONNECT_API_KEY: ${{ secrets.APP_STORE_CONNECT_API_KEY }}
      MATCH_PASSWORD: ${{ secrets.MATCH_PASSWORD }}

我遇到了由于 GitHub Actions 上的代码签名问题导致 Fastlane 构建过程失败的问题。错误信息是:

Error: "No profiles for 'com.example.app' were found"

我尝试过的事情:

  • 确保我的 Match 存储库包含最新的配置文件和证书。
  • 已验证是否传递了正确的 APP_STORE_CONNECT_API_KEY 和其他机密。

问题:什么可能导致代码签名问题,以及如何使用 GitHub Actions 正确配置 Fastlane 以构建 iOS 应用程序并将其部署到 TestFlight?在 GitHub Actions 中调试代码签名过程有任何提示或步骤吗?

ios flutter github-actions fastlane
1个回答
0
投票

用于通过 fastlane 匹配管理 ios 配置文件和证书 重置并撤销所有现有配置文件(仅在更新配置文件时运行)

cd ios/
fastlane match nuke development
fastlane match nuke appstore

安装最新的开发配置文件和证书

fastlane match development

安装最新的分发配置文件和证书

fastlane match appstore
© www.soinside.com 2019 - 2024. All rights reserved.