问题标签 [fastfile]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2927 浏览

xcode - 如何使用 fastlane Fastfile 通道自动化 xcode 清理过程

我正在寻找一种使用 fastlate 自动化 xcode 清理过程的方法。

我希望实现的目标:

  1. 清除派生数据文件夹
  2. 清理构建文件夹
  3. 干净的
  4. 建造

到目前为止,我自动化了派生数据文件夹

0 投票
0 回答
295 浏览

fastlane - 如何在 fastlane 中将内部版本号设置为管道 ID?

这是我目前拥有的Fastfile

但是这段代码最终会收到来自 Fabric 的电子邮件,如下所示:

代替:

为什么它不将管道 ID 分配给内部版本号?

在此处输入图像描述

看起来它没有进入 if 语句。是否有可能CI_PIPELINE_ID变量对跑步者不可见?

0 投票
1 回答
914 浏览

ios - Fastlane 根据试飞中先前的内部版本号增加内部版本号

我已经设置了快速通道,一切正常,应用程序使用以下快速文件上传到测试飞行。我想根据 TestFlight 中以前的内部版本号自动增加内部版本号,并使用该递增的内部版本号上传新版本。请建议如何做到这一点

执行后,它再次要求从团队列表中选择团队。我想增加内部版本号并将内部版本直接上传到试飞

0 投票
0 回答
1559 浏览

ios - Fastlane - 上传到 TestFlight 会返回错误,但仍显示构建可用于测试

在我最近两次上传到 TestFlight 的尝试中,我遇到了来自 Fastlane 的错误。

快速文件代码:

我正在使用 Fastlane 2.119.0

我不确定这是否与 Apple 关于双因素身份验证的最新更改有关,因为该帐户已经具有双因素身份验证。

过了一会儿,我收到一个推送通知,说构建已准备好进行测试,我可以将其发送给 Apple 审查。但我仍然不知道为什么我会收到这个错误。

0 投票
1 回答
468 浏览

fastlane - 如何使用 Fastlane 向 Mattermost 写消息?

如何使用 Fastlane 向 Mattermost 写消息?

下面是我的试用。我从这个链接中得到了最多。

还有什么问题?(当然,我用MATTERMOST_WEBHOOK_URL我在 Mattermost 中建立的实际值替换了 )。

在上面的链接中,我看到了一个包含文件的文件actionsmattermost.rb

我如何让这个动作起作用?我需要在我的 Fastfile 中或任何地方做什么才能使其正常工作?

事实上,跑fastlane send_message线,我获得了成功。但不幸的是,在我的 Mattermost 频道中什么都看不到。

在我的 Fastfile 中,我这样做:

我的快车道是这样的:

mattermost(...)Fastlane 中的标准命令吗?如果不是,我需要做什么才能从 Fastlane 向 Mattermost 频道发送信息?

0 投票
1 回答
496 浏览

swift - 将 Jazzy 文档生成器与 Fastlane 结合起来

我已经能够在本地为我的 iOS/swift 项目和框架制作精美的文档。我想通过 Fastlane 开始制作它们,以便在构建 Jenkins 工作时自动更新它们。

我还没有找到任何关于将 jazzy 与 Fastlane 或 Jenkins 结合的好的文档。

有没有人可以分享任何好的教程或回购示例?此外,我希望能够在我的 Fastfile 或配置文件中传递一些内容,将其上传到 S3 存储桶。

0 投票
1 回答
1034 浏览

ios - 在 CI 上使用 Fastlane 进行代码签名的最佳方式

在你对我的问题生气之前,我知道没有一种设置 Fastlane 的最佳方法,但我想更好地了解当你开始使用它时可以采取的不同方法。

我正在为一个项目设置 Fastlane。现在我只在我的本地机器上拥有它,但我想在 CI 环境中设置它(在我的情况下是 GitLab-CI,但我想它并不那么重要)。

披露,我不仅是设置 Fastlane 的新手,而且是自己设置 CI 的新手(不过我都使用过,)

在阅读了代码签名的文档(https://docs.fastlane.tools/codesigning/getting-started/)之后,我可以看到不同的替代方案,但我不确定它们在 CI 环境中的限制是什么。总而言之,在以下情况下签署构建的最佳实践是:提交到 Testflight、运行单元测试、提交到 AppStore 等等。

选项包括:

  • match
  • certsigh
  • Xcode 的代码设计功能
  • 手动

到目前为止我的论文:

  • match

    • 设置和使用比其他选项更困难,但有一个指南:https ://codesigning.guide/
    • 在我看来,它是最“专业”的选择。
    • 我知道,对于现有项目,它会撤销当前证书。
      1. 只是第一次的意思吗?
      2. 如果 Fastlane 已经在使用新证书,那么撤销当前证书的陷阱是什么?我看到很多人试图阻止这种情况(例如this)。但是,现在只有我作为开发人员,我们没有任何 CI,所以我猜它不会对我产生太大影响。然而,这对于其他项目设置来说很方便。
    • 对于此设置,您需要一个私有存储库来存储加密证书。
      1. 当我与我的 Android 同事讨论这个问题时,他对使用版本控制系统来存储证书感到非常惊讶。
      2. 究竟是什么原因?我的理解(也许我错了)是,通过这种方式,团队中的所有开发人员都可以受益于match拥有一个有效的开发配置文件。不确定发布到 Testflight/Appstore 的好处。
  • certsigh

    • 要使用它,只需要在 build_app 之前添加几行代码:

      /li>
    • 它在项目的根目录中下载证书和配置文件。

      1. 我想应该有一种方法可以指定将它们放在哪里而不是那里,也许?
      2. 之后我们应该忽略这些文件或清理存储库。我认为它们不应该提交到存储库。
      3. 它需要这个带有 app_identifier、apple_id 等的 Appfile,或者至少是我第一次设置 Fastlane 时 Fastlane 自动创建的那个。
  • Xcode 代码设计功能:

    • 给 build_app 额外参数:

      /li>
    • 这相当于在 Xcode 上自动管理签名(但在命令行上默认禁用)

      1. 这个设置对 CI 有意义吗?
      2. 我猜它还需要这个带有 app_identifier、apple_id 等的 Appfile。
  • 手动:

    • 我对此的唯一结论是手动设置并不容易。我不确定我做错了什么,但我无法使用这个设置构建(甚至从 Xcode),所以我放弃了这个选项。

Fastlane 有一组真实的例子,所以你可以看到他们的 Fastfile、Appfile、Gymfile、Metadata,......(https://github.com/fastlane/examples)。这很棒,但是,没有共同的模式,我看不出他们采用这种或那种方法的原因。

我对使用 Fastlane 进行代码签名的其他一般性问题:

  • 我们需要带有苹果 ID 的 Appfile 吗?在这种情况下,为此目的创建一个特定的 ID 是有意义的,对吧?例如,开发人员角色?

  • 安全性 vs 实用性 vs 易用性/设置。这些概念是否与一种方法紧密相关?

  • 在什么情况下什么是最好的?(想想大团队和小团队;每个人都应该能够使用它而不是应该有一些安全限制;需要 CI 集成;...)

  • 最后但并非最不重要的... CI 环境在代码签名方面是否有任何特殊考虑?

    • 我曾被提示输入我正在使用的苹果 ID 的凭据。当然,在 CI 环境中,您无法提示输入任何凭据,因为它在某处的构建服务器上运行
0 投票
1 回答
64 浏览

memory-management - 像 FastFile 这样的文件系统是如何工作的?

关于这个文件系统使用的节点数组,我有 2 个问题,这些节点数组有i节点来保存文件。

每个i节点包括

  • 用户 ID(2 个字节)
  • 三个时间戳(每个 4 个字节)
  • 保护位(2 个字节)
  • 引用计数(2 个字节)
  • 文件类型(2 个字节)
  • 大小(4 字节)

此外,节点-i包含

  • 13个直接索引
  • 一级索引表的索引
  • 二级索引表的索引
  • 3 级索引表的索引

系统还将每个文件的前 436 个字节存储在 node- 上i

所以,问题是:

  1. 假设磁盘的一个扇区有 512 字节,任何一个辅助索引表都占据了整个扇区,那么这个系统中一个文件的最大大小是多少?
  2. 存储在 node-i 上的文件的前 436 个字节有什么好处吗?
0 投票
1 回答
569 浏览

android - 如何修复 Google Api 错误:禁止:将应用程序上传到 Play 商店时,Android App Bundle 使用错误的密钥签名

我尝试使用keytool -genkey -v -keystore debug.keystore -storepass android -alias androiddebugkey -keypass android -keyalg RSA -keysize 2048 -validity 10000. 将其复制到android/app/~/.android/。它一直在抱怨。当我运行./gradlew signingReport它很好。

在我的build.gradle我有

我的fastlane fastfile

我正在尝试上传一个测试版应用程序,它以前工作过一次,但我重新克隆了我的仓库并且没有保存旧密钥。我还尝试使用 Android Studio 生成新的签名密钥,但失败并出现不同的错误,“无法读取文件”。我还尝试从 Play 商店下载上传密钥,但效果不佳。

0 投票
1 回答
162 浏览

azure-devops - Azure管道如何在脚本等待用户输入时检测管道何时停止

我有一个正在执行脚本的管道,其中一些是 3 个第三方脚本。在这种情况下是 Fastlane 脚本。
现在在极少数情况下,Fastlane 脚本期望用户向标准输入输入值我的问题是如何检测脚本何时停止并等待输入。在这种情况下,我喜欢抛出错误并使任务失败。
这是管道任务:

它以这种空闲状态堆叠:

我如何监控这种状态?管道失败?