Wou*_*ter 5 xcode continuous-integration ios swift fastlane
我有一个 xcode 项目,我正在使用 Fastlane 将其引入 CI。现在一切正常,我添加了一个单独的 Lane 来调用 SwiftLint。
现在我已经在 xcode 项目中有一个 Runscript 来调用 SwiftLint。所以现在基本上,该应用程序已被 Linted 两次。
那么,有没有办法在Fastlane构建项目时禁用xcode项目中的Run脚本?
现在你可能想说‘那你为什么要在 Fastlane 中设置一个单独的 SwiftLint 通道呢?无论如何,它都会被处决!” 嗯......你是对的,但我想在 Lint 失败时在管道中得到一个单独的失败,所以我认为我需要为此创建一个单独的通道。
我看到一个解决方案:在 xcode 中创建一个仅包含 SwiftLint 内容的单独目标。“问题”是解决方案是当开发人员构建时,SwiftLint 不会自动安装在开发人员计算机上。
我已经能够通过将脚本阶段限制为调试配置来解决这个问题,以便它仅在我本地构建时运行。
当应用程序使用 Fastlane 在 CI 上构建时,它使用发布配置并且不会触发脚本。
if [ "${CONFIGURATION}" == "Debug" ]; then
# SwiftLint Script
fi
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
809 次 |
| 最近记录: |