【问题标题】:Import .ProvisionProfile when using Circle.CI and FastLane使用 Circle.CI 和 FastLane 时导入 .ProvisionProfile
【发布时间】:2016-11-25 12:46:46
【问题描述】:

对于我的个人项目,我使用 Circle.ci 来测试和部署 OSX 应用程序(通过上传挂钩到 S3,将其分发到 AppStore 之外 - 使用使用 Developer ID 签名的分发方法)。我正在使用 FastLane 构建应用程序,从本地终端构建它时它可以完美运行,但是在使用 CI 服务器时我无法通过代码签名步骤。

问题很简单,钥匙串没有导入配置文件,我可以从预构建步骤中看出:

1 key imported.
No provisioning profiles found in repository. 
You must add a provisioning profile to your repository 
to enable CircleCI code-signing support.

Currently installed Code-Signing identities:

Policy: Code Signing
  Matching identities
     0 identities found

  Valid identities only
     0 valid identities found

我已将带有私钥和证书的 .p12 上传到存储库,那里没有问题。我还将 .provisionprofile 添加到存储库(根,甚至不同的位置),但无济于事。文档指出 (https://circleci.com/docs/ios-code-signing/) 需要 .mobileprovision,但这仅涵盖 iOS,而不是 OSX,而​​系统应该几乎相同,所以我认为这也可以。

所以 TLDR 的问题是:如何在 Circle.CI 上导入 OSX 发行版的配置文件,以便钥匙串接受该条目?或者有没有办法解决它 - 比如跳过签名步骤(在 XCode 中禁用它)并用一些 .sh 手动签名?

谢谢大家!

【问题讨论】:

    标签: continuous-integration provisioning-profile circleci fastlane


    【解决方案1】:

    我正在分享我使用 CircleCI 将 iOS 应用程序部署到 Testflight 的经验。也许这会有所帮助。

    1. 将配置文件放在项目目录的根目录中。确保它是普通的“分发配置文件”而不是 App Store 提交配置文件。

    2. 只需在 CircleCI 的项目设置中添加 .p12 键即可。从存储库中删除所有其他证书/.p12 文件。

    3. 我尝试使用 fastlane 构建和分发构建,但在 CircleCI 中失败。我在我的 Fastfile beta 环境中完成了这三个步骤。

    increment_build_number gym(scheme: "myScheme”) pilot

    我把它改成了
    increment_build_number

    1. 我的圈子 CI 文件

      machine:
      
          environment:
              GYM_CODE_SIGNING_IDENTITY: "iPhone Distribution: Company Name (XXXXXX)"
      
          xcode:
              version: "8.0"
      
      test:
          override:
            - set -o pipefail && xcodebuild -workspace 'my.xcworkspace' -scheme 'myscheme' clean build test -sdk iphonesimulator -destination 'id=AC291080-8EFE-4095-8C55-B1E952EFFC36' CODE_SIGNING_REQUIRED=NO CODE_SIGN_IDENTITY=  PROVISIONING_PROFILE=
      
      dependencies:
          pre:
            - gem update fastlane
      
      deployment:
          beta_distribution:
              branch: master
              commands:
                 - fastlane beta      
                 - gym --scheme "myscheme" --workspace "my.xcworkspace" --export_method app-store --use_legacy_build_api false     
                 - pilot upload
      

    【讨论】:

    • 很遗憾,这并不能解决问题,不过,感谢您的配置。我有许多基于 iOS 的 Circle.CI 项目,它们运行良好,没有问题。不过,与 OSX 构建有一个区别 - Circle.CI 没有找到 OSX 的配置文件(对于 iOS,您有 .mobileprovision,而对于 OSX,您有 .provisionprofile)。
    猜你喜欢
    • 2023-01-09
    • 2023-04-09
    • 2019-04-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多