You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

React Native项目GitLab自动化中Fastlane找不到get_certificates问题求助

问题描述

我有一个在GitLab中实现自动化构建的React Native应用,此前运行一切正常,但从昨天开始出现如下错误:

Could not find action or lane 'get_certificates'. Check out the README for more details
+------+--------------------------+-------------+
| fastlane summary |
+------+--------------------------+-------------+
| Step | Action | Time (in s) |
+------+--------------------------+-------------+
| 1 | default_platform | 0 |
| 2 | unlock_keychain | 0 |
| 3 | increment_version_number | 0 |
| 4 | increment_build_number | 0 |
+------+--------------------------+-------------+

对应的Fastfile代码:

require 'dotenv' 
Dotenv load "\.env"

default_platform(:ios)

platform :ios do

    desc "Push a new beta build to TestFlight"
    lane :build_develop do
        $appBundleIdentifierDev = $identifier
        $workspaceName = $workspace
        $ipaFilename = $filename
        $appleUsername = $username
        $url_repo = $repo

        unlock_keychain(
            path: "login.keychain-db",
            password: ENV['KEYCHAIN_PASS']
        )

        increment_version_number(
            version_number: ENV['APP_VERSION_NAME']
        )

        increment_build_number(
            build_number: ENV['APP_VERSION_CODE']
        )

        get_certificates(
            team_id: $teamid
        )

        gym(
            export_method: 'app-store',
            scheme: $scheme,
            configuration: $configuration,
            clean: true,
            include_bitcode: false,
            workspace: $workspaceName,
            output_name: $ipaFilename,
            xcargs: "ARCHIVE=YES",
            output_directory: "build",
            export_xcargs: "-allowProvisioningUpdates",
        )
    end
end

近期未修改任何代码,但应用突然无法正常运行,请问可能是什么原因导致的?

可能的原因及解决方法
  • Fastlane依赖组件丢失:get_certificates属于fastlane的cert工具组件,可能GitLab Runner环境中的该组件被意外卸载,或是依赖更新时未同步安装。可以在构建脚本中添加fastlane install_plugins,或执行fastlane cert --help验证组件是否存在。
  • Fastlane版本自动更新引发兼容问题:如果构建环境未固定fastlane版本,可能自动更新到了新版本,而新版本中get_certificates的调用逻辑或归属组件发生了变更。建议在项目中添加Fastfile.lock锁定版本,或指定特定版本安装,比如gem install fastlane -v <你之前使用的版本号>。
  • GitLab Runner环境配置变更:Runner的镜像被更新、系统依赖被修改,或是密钥链权限配置变动,都可能导致fastlane无法找到对应动作。检查Runner的配置历史,或重新初始化fastlane运行环境。
  • 环境加载异常间接影响:虽然你没修改代码,但.env文件可能因环境同步问题出现加载失败,或是$teamid等变量未正确注入。可以先注释get_certificates代码段,验证其他动作是否正常执行,再针对性排查该动作的依赖配置。

内容的提问来源于stack exchange,提问作者Eduardo Martínez

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.29 20:34:51