【发布时间】:2019-07-28 01:20:48
【问题描述】:
我的 package.json 中有一些 script-Entries。
为了通过 Fastlane 将应用部署到应用商店,我需要为 APPLE_ID 或 google-services 的 JSON-File 设置环境变量。
此设置是每个用户(也可能是每个项目)的个人设置。
我知道,如何通过 package.json 添加硬编码的 ENV 变量:
"ANDROID_closedBeta": "FASTLANE_JSON_KEY_FILE=`find $(pwd) -name release_manager.json` bundle exec fastlane android deploy_closedBeta",
但这并不能解决我的问题。我创建了一个文件:ios_env 和 linux_env,用于导出一些敏感凭据。
如果我运行 source linux_env,则变量已设置,我可以通过 CLI 命令运行 fastlane,而不会出现任何问题:fastlane android deploy_closedBeta
但是如果我尝试通过 yarn 或 npm 运行它,将找不到这个 ENV。 所以我尝试在 falstlane-command 前面运行 source ,但也没有用:
"ANDROID_closedBeta": "`source ./linux_env` FASTLANE_JSON_KEY_FILE=`find $(pwd) -name release_manager.json` bundle exec fastlane android deploy_closedBeta",
如何让 package.json-script 识别我的环境变量而不需要将其硬编码到 package.json 中?
【问题讨论】:
标签: linux macos environment-variables package.json fastlane