【问题标题】:How does one use Xcode Bot Environment Variables?如何使用 Xcode Bot 环境变量?
【发布时间】:2018-01-17 06:07:04
【问题描述】:

设置机器人时,有一个“环境”选项卡,如下所示:

我希望能够像这样在我的测试中访问这个环境变量:

NSString *username = [[NSProcessInfo processInfo] environment][@"accountEmail"];

但是返回为零。我可以通过将其内容记录到控制台来验证 [NSProcessInfo processInfo] 是否填充了其他数据。

我认为这是一个非常新的 Bot 功能(2015 年 WWDC 视频和 Apple 的文档都没有提到这个选项卡),但是有没有人成功访问过这些 bot 环境变量?

【问题讨论】:

    标签: xcode continuous-integration


    【解决方案1】:

    为了访问通过机器人的“参数”选项卡设置的环境变量,您必须首先在您的方案中考虑该变量。

    在 Xcode 9.2 中,转到 Edit scheme... > Run > Arguments > Environment Variables 和使用 Name accountEmailValue $(accountEmail) 添加您的环境变量。然后,您在机器人配置中为环境变量设置的值应该可以通过(在 Swift 4 中)ProcessInfo.processInfo.environment["accountEmail"] 在代码中访问。

    【讨论】:

    • 这个答案很漂亮。谢谢!完美运行!
    【解决方案2】:

    我注意到同样的事情。似乎是 Xcode Server 中的一个错误。您可能应该记录一个雷达。

    同时,您可以将环境变量添加到方案中。您可以为不同的配置制定多种方案,并切换您的 Bot 使用哪一种。这并不理想,但它可以完成工作。

    【讨论】:

      猜你喜欢
      • 2022-11-08
      • 2019-06-30
      • 1970-01-01
      • 1970-01-01
      • 2019-12-30
      • 2020-11-28
      • 2011-07-11
      • 2021-08-14
      • 1970-01-01
      相关资源
      最近更新 更多