xcode - 将环境变量从 fastlane 传递到 Xcode 构建阶段脚本
问题描述
是否可以(如果可以,如何)将环境变量从运行 fastlane 的脚本传递到 Xcode 运行脚本阶段?
我的最终目标是在运行脚本阶段读取当前的 git 分支名称。我们的 CI 由 Team Foundation Server 运行,它执行git checkout
显式提交,而不是分支,因此当前分支始终显示为HEAD
.
TFS -> fastlane -> gym -> xcodebuild -> script that needs the branch
只能通过 TFS 设置的环境变量来获取触发构建的分支。我的计划是将这个值归结为 Xcode 脚本来做我需要的事情。
如果我理解正确的话,我宁愿不使用它,因为它将所有环境变量传递给构建过程。
defaults write com.apple.dt.Xcode UseSanitizedBuildSystemEnvironment -bool NO
解决方案
要将环境变量传递给 BuildPhases,请xcargs
使用Fastfile
:
build_app(workspace: ..., scheme: ..., xcargs: "SOMEVAR1='one' SOMEVAR2='two'")
此命令生成xcodebuild ... SOMEVAR1='one' SOMEVAR2='two'
,然后这些变量将在 Build Phases 中可用。
推荐阅读
- java - HttpSessionListener.sessionCreated() 是否保证在任何其他线程访问新会话之前完成?
- java - Android Studio (java):使用 iText 从数组到 PDF 的图像
- android - 如何将我从毕加索加载的图像视图的颜色从绿色更改为红色
- .net-core - 从动作中访问参数列表
- android - Android ConnectionService 来电
- ios - 检测应用何时滑过 iPad 上正在运行的应用
- ios - 在 Xcode 10 中使用 MapboxNavigation iOS
- google-apps-script - 如果前 10 列重复,则删除 Google 表格行的 Google 脚本
- android-fragments - 如何用动态内容约束 ScrollView?
- python - 从 pandas 或 dask 中的数据库表中读取大数据