如何在 fastlane 中设置环境变量?

25

我已经阅读了这些文档,但我仍然不确定应该在fastfile还是bash_profile中设置环境变量。你能帮我解决这个问题吗?

我的目标是在fastfile中设置苹果开发者凭证,并且如果其他用户拉取我的代码并尝试构建它,则不需要再次询问。

我正在fastlane文件中编写这个。如果我错了,请告诉我。

default_platform(:ios)

platform :ios do

ENV["FASTLANE_DONT_STORE_PASSWORD"] = "1"
ENV["FASTLANE_USER"] = ""
ENV["FASTLANE_PASSWORD"] = ""

desc "GENERATE SCREENSHOT"
lane :Snaps do
capture_screenshots
end

end
1个回答

40

您可以在before_all中添加环境变量。尝试一下。

platform :ios do
  before_all do
    ENV["FASTLANE_DONT_STORE_PASSWORD"] = "1"
    ENV["FASTLANE_USER"] = ""
    ENV["FASTLANE_PASSWORD"] = ""
  end

  desc "GENERATE SCREENSHOT"
  lane :Snaps do
    capture_screenshots
  end
end

为了不在git中存储您的密钥,您可以使用环境变量传递所有操作的所有参数。

您可以编辑您的~/.bash_profile文件,添加类似以下内容:


export FASTLANE_DONT_STORE_PASSWORD ="1"
export FASTLANE_USER =""
export FASTLANE_PASSWORD =""

那么上述两种方式都是正确的,对吗?有没有设置匹配密码的标志? - Parth Adroja
8
您可以在fastlane文件夹中创建一个名为.env的文件。详情请见链接:https://docs.fastlane.tools/advanced/#environment-variables。 - Iulian Onofrei
第一个是正确的,只要您不将fastfile添加到git中(您不想将登录名和密码推送到存储库)。第二个很好,因为您的凭据保留在本地计算机上。我不知道有类似于匹配密码的东西。 - Bilal
@Bilal,为了匹配密码,您可以使用MATCH_PASSWORD环境变量。 - Parth Adroja
我按照你说的做了。我将其添加到git中并使用其他系统生成构建。但它仍然要求Apple开发凭据。我怀疑它没有设置上述环境变量。 - Parth Adroja
显示剩余2条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接