ConfigCop 🎛👮‍♀️

SPM Platforms license

一个 Swift 命令行应用程序,用于根据模板验证 .xcconfig 文件。

此工具将遍历您提供的键的模板,检查给定的 xcconfig 文件中是否包含所有这些键。如果您有多个配置文件,例如用于“白标”应用程序,那么作为 CI 的一部分自动检查这些文件会非常有用。

您可以临时运行此工具,或者可以将其添加到 Xcode 项目中的构建阶段脚本中。

安装

Make (推荐)

这将构建命令行应用程序并将其安装到 /usr/local/bin

$ git clone https://github.com/fivegoodfriends/ConfigCop.git
$ cd ConfigCop
$ make

Swift 包管理器

$ git clone https://github.com/fivegoodfriends/ConfigCop.git
$ cd ConfigCop
$ swift build

使用 SPM 构建后,您可以手动将可执行文件复制到任何您想要的位置,例如 /usr/local/bin,或者运行 $ make 为您完成此操作。

创建模板文件

为了验证您的 xcconfig 文件,需要一个模板用于比较。您可以在任何地方创建此模板文件,放在您的项目中可能更有意义。

需要一个名为 required: 的部分,以便进行比较。optional: 部分用于可选的键。将 *必须* 出现在您的 xcconfig 文件中的所有键放在 required 列表中。可选键不会导致应用程序失败,但如果配置文件中缺少它们,则会生成警告。

这是一个名为 AppConfigTemplate.yml 的示例文件

required:
  - MARKETING_VERSION
  - SWIFT_VERSION
  - ENABLE_BITCODE
  - PRODUCT_BUNDLE_IDENTIFIER
  - BASE_URL
optional:
  - TEST_URL

用法

假设 /usr/local/bin 在您的 $PATH 中,您可以按如下方式运行

configcop -c ~/iOSApp/Configs/Debug.xcconfig -t ~/Code/iOSApp/Configs/ConfigTemplate.yml