Fastlane 在使用 azure Pipeline 运行脚本“[CP] Embed Pods Frameworks”时冻结

Sid*_*hah 6 ios fastlane azure-devops azure-pipelines azure-pipelines-release-pipeline

在此处输入图片说明将 Fastlane 与 azure 管道一起使用 Build 在运行脚本 '[CP] Embed Pods Frameworks 时冻结,我们无法对构建执行进一步操作,因为它在给定运行脚本的情况下卡住了错误:https : //ibb.co/知乎

另外,在https://github.com/fastlane/fastlane/issues/15290提出相同的查询

dvd*_*blk 2

好吧,经过一番挖掘,我找到了解决方案。我的 CI 服务器是 Travis,而不是 Azure。

通过此设置,您需要停止使用自动代码签名并match在项目设置中选择配置文件。

按如下方式修改您的Fastfile

before_all do |lane, options|
    ENV["MATCH_KEYCHAIN_NAME"] = "travis-ci"
    ENV["MATCH_KEYCHAIN_PASSWORD"] = ENV["MATCH_KEYCHAIN_NAME"]
end
Run Code Online (Sandbox Code Playgroud)

create_keychain在调用之前插入sync_code_signing(又名match)。

create_keychain(
    name: ENV["MATCH_KEYCHAIN_NAME"],
    password: ENV["MATCH_KEYCHAIN_PASSWORD"],
    default_keychain: true,
    unlock: true,
    timeout: 3600,
    add_to_search_list: true
)
sync_code_signing(
    readonly: true,
    keychain_name: ENV["MATCH_KEYCHAIN_NAME"],
    keychain_password: ENV["MATCH_KEYCHAIN_PASSWORD"]
)
Run Code Online (Sandbox Code Playgroud)

最后,在适当的时候取下钥匙链delete_keychain,例如在车道尽头。

享受 :)