标签: fastlane

如何在Fastlane的命令行中指定用户名?

我正在尝试将Apple ID作为命令行选项传递给Fastlane,因此所有用户和我们的构建服务器都可以使用相同的脚本.

MacBook-Pro-6:whisper-ios Nick$ fastlane hockeyglobal username:nlocking@whisper.sh
[18:00:44]: -------------------------------------------------
[18:00:44]: --- Step: Verifying required fastlane version ---
[18:00:44]: -------------------------------------------------
[18:00:44]: fastlane version valid
[18:00:44]: ------------------------------
[18:00:44]: --- Step: default_platform ---
[18:00:44]: ------------------------------
[18:00:44]: Driving the lane 'hockeyglobal' 
[18:00:44]: ------------------
[18:00:44]: --- Step: sigh ---
[18:00:44]: ------------------

+-------------------------------------+-----------------------+
|                   Summary for sigh 1.8.0                    |
+-------------------------------------+-----------------------+
| adhoc                               | true                  |
| skip_install                        | false                 |
| development                         | false                 |
| force                               | false                 |
| app_identifier                      | sh.whisper.whisperapp |
| …
Run Code Online (Sandbox Code Playgroud)

ios fastlane

7
推荐指数
1
解决办法
1914
查看次数

改进Fastlane的Scan - > Gym - > Deploy的运行时间

我一直在尝试将Fastlane包含在CI环境中,其中应该发生以下情况:

  • master分支的任何提交都应该触发测试运行,然后构建到Testflight中.
  • development分支的任何提交都应该触发测试运行,然后构建到Fabric Beta中.
  • 任何其他提交或拉取请求都应触发测试运行.

这些通道正在使用所有代码签名match.

为了避免建筑两次,我正在建造Gym,然后Scan使用skip_build: true#3353中clean: false提到的.

虽然这似乎有助于构建时间,但由于cocoapods依赖性的数量,它在travis-ci.org中超过了50分钟的限制.(随意检查构建日志)

如何在运行时间方面改进?(除了修复#3中提到的慢速编译Swift函数)

作为参考,这是我的Fastfile.

travis-ci swift fastlane

7
推荐指数
1
解决办法
975
查看次数

Fastlane git 从应用程序构建中添加的当前分支提交

有没有办法仅从将要创建的构建中的当前分支添加所有 git 提交?

每次完成当前分支的工作时,我都会创建一个构建,并且我希望更改日志仅包含当前分支中所做的提交。

我尝试使用number_of_commits并在changelog_from_git_commits方法的commits_count中使用它,如下所示:

  lane :test do
    changelog = changelog_from_git_commits(
        commits_count: number_of_commits, 
        pretty: "- %s", 
        date_format: "short",
        match_lightweight_tag: false, 
        merge_commit_filtering: "exclude_merges"
    )
    build_app(scheme: "test")
    upload_to_testflight(
      changelog: changelog
    )
  end
Run Code Online (Sandbox Code Playgroud)

另外,我首先在两者之间使用,但它给了我最后一个标签的所有提交:

 lane :test do
        changelog = changelog_from_git_commits(
        between: [last_git_tag, "HEAD"],
        pretty: "- %s",
        date_format: "short",
        match_lightweight_tag: false,
        merge_commit_filtering: "exclude_merges"
    )
    build_app(scheme: "test")
    upload_to_testflight(
      changelog: changelog
    )
  end
Run Code Online (Sandbox Code Playgroud)

git fastlane

7
推荐指数
1
解决办法
3490
查看次数

如何在 fastlane 中设置环境变量来创建模板

我已经使用 fastlane 构建并分发了我的 iOS 应用程序,因为我已经在快速文件中创建了脚本,所以现在我想在这个脚本中传递 env 变量来创建模板,这个相同的模板我也可以使用我的其他 iOS 应用程序,那么如何在我的 fastlane 脚本中传递环境变量呢?

gitlab-ci fastlane

7
推荐指数
1
解决办法
1万
查看次数

Fastlane 不适用于 Apple id,在与 Gitlab 持续集成时采用两因素身份验证

我的 appleid 已打开两因素身份验证。为了持续集成,我们使用 Fastlane 工具。

Available session is not valid any more. Continuing with normal login.
Two-factor Authentication (6 digits code) is enabled for account 'my.account@gmail.com'
Run Code Online (Sandbox Code Playgroud)

我能做什么来解决这个问题?

continuous-integration gitlab gitlab-ci fastlane

7
推荐指数
1
解决办法
4758
查看次数

Jenkins/fastlane - 没有找到本地代码签名身份

我在使用 Jenkins 的 fastlane 时遇到问题。

在终端中运行此命令有效fastlane provide_crashlytics_build testing:false check_xcode:false --env xxx,但在 Jenkins 中无效

错误信息:

There are no local code signing identities found.
You can run `security find-identity -v -p codesigning` to get this output.
This Stack Overflow thread has more information: /sf/ask/2477305071/.
(Check in Keychain Access for an expired WWDR certificate: /sf/answers/2478688481/ has more info.)
[14:03:30]: No certificates for filter: Certificate ID: '7D72F7MC75' 
[14:03:30]: something bad happened: Could not find a matching code signing identity for type 'AdHoc'. …
Run Code Online (Sandbox Code Playgroud)

ios jenkins fastlane fastlane-match

7
推荐指数
1
解决办法
9250
查看次数

如何根据上次批准的 iOS 版本增加版本号

我知道有increment_version_number通道,但它会增加文件中放置的版本Info.plist。这意味着每次上传到 TestFlight 后,开发人员都必须Info.plist使用新版本更新文件。

另外,Fastlane 有get_version_number通道,但我无法使我的脚本工作,因为它无法像 2.4.1 那样用最后一位数字来增加版本。

那么,我如何才能对 TestFlight 中批准的版本(当前为 2.4.1 )进行+1(到最后一位数字)?

fastlane

7
推荐指数
1
解决办法
7740
查看次数

无法解密存储库,请确保输入正确的密码

我无法运行“Fastlane 版本”,因为它显示错误“无法解密存储库,请确保输入正确的密码!”。我确信输入的密码是正确的。我尝试手动删除所有配置文件和证书,但没有成功。

    [13:03:58]: Enter the passphrase that should be used to encrypt/decrypt your certificates
[13:03:58]: This passphrase is specific per repository and will be stored in your local keychain
[13:03:58]: Make sure to remember the password, as you'll need it when you run match on a different machine
[13:03:58]: Passphrase for Match storage: ********
[13:04:10]: Type passphrase again: ********
[13:04:16]: wrong final block length
[13:04:16]: Couldn't decrypt the repo, please make sure you enter the right password!
keychain: "/Users/mohsen/Library/Keychains/login.keychain-db"
version: …
Run Code Online (Sandbox Code Playgroud)

fastlane fastlane-deliver fastlane-match

7
推荐指数
0
解决办法
3274
查看次数

Fastlane iOS 应用程序“加密导出合规性”豁免

我正在设置Fastlane以简化将我的 iOS 应用程序更新提交到App Store Connect的过程。我的应用程序仅对 HTTPS 请求使用加密,因此被认为无需提供文档。(这些是通过 App Store Connect 网站提交新版本时提出的问题。)

当您指定加密导出合规性设置时,Fastlane 需要的不仅仅是这两个问题。这些是在upload_to_app_store操作的参数下设置的submission_information

这是我目前所拥有的,但我不确定它是否正确:

upload_to_app_store(
    submission_information: {
        export_compliance_platform: 'ios',
        export_compliance_uses_encryption: true,
        export_compliance_is_exempt: true,

        # These are the ones I am confused by
        export_compliance_compliance_required: false,
        export_compliance_encryption_updated: false,
        export_compliance_app_type: nil,
        export_compliance_contains_third_party_cryptography: false,
        export_compliance_contains_proprietary_cryptography: false,
        export_compliance_available_on_french_store: false
    }
)
Run Code Online (Sandbox Code Playgroud)

最后 6 个字段对我来说非常不清楚。不幸的是 Fastlane 提供的文档很少,因为他们只是复制了 Apple 的非公开 API 使用的字段

我怎样才能找出正确的值应该是什么?

fastlane app-store-connect

7
推荐指数
1
解决办法
2537
查看次数

Google Api 错误:无效请求 - 调用者没有权限 Fastlane React Native

default_platform(:android)

def getVersionCode
  thirtySeptemberTwentyTwenty = 1601480940 / 60
  legacyVersionCode = 10902
  versionCode = legacyVersionCode + (Time.now.to_i / 60) - thirtySeptemberTwentyTwenty

  if versionCode > 2100000000
    raise "versionCode cannot be higher than 2100000000"
  end

  versionCode.floor()
end

platform :android do
    desc "Increments internal build number tracking (different than version)"
    lane :bump_build_number do
      android_set_version_code(
        version_code: getVersionCode()
      )
  end

  desc "Build and uploads the app to playstore for a internal testing release"
  lane :playstoreInternal do 
        # Retrieve version of my app in package.json (React Native …
Run Code Online (Sandbox Code Playgroud)

deployment android google-play-services react-native fastlane

7
推荐指数
0
解决办法
1082
查看次数