抱歉,如果这是重复的。我试图找到一个类似的问题,但没有。细目如下:
我需要在正在构建的程序包中使用秘密密钥,并且我不想发布它,因此我试图将其设置为本地bash环境变量。在我的.bashrc文件中,我有这个:
# Obviously this is not the REAL key, just an example
MY_KEY="1111111111111111"
Run Code Online (Sandbox Code Playgroud)
然后在我的Gulpfile中,我有一个名为“ dev”的任务。为了简单起见,假设它看起来像这样:
gulp.task('dev', function () {
console.log(process.env.SECRET_KEY);
});
Run Code Online (Sandbox Code Playgroud)
然后,为了使密钥进入环境,我的package.json中包含以下内容:
"scripts": {
"start": "SECRET_KEY=$MY_KEY gulp dev"
}
Run Code Online (Sandbox Code Playgroud)
所以问题是,当我运行命令时npm start,我的gulp任务记录undefined了密钥。但是,当我手动运行命令时SECRET_KEY=$MY_KEY gulp dev,gulp任务将记录日志1111111111111111。因此,由于某种原因,npm start无法正确访问我的bash变量并将其传递到Node环境中。有没有办法使这项工作?
这只是创建一个shell 变量,而不是环境变量:
MY_KEY="1111111111111111"
Run Code Online (Sandbox Code Playgroud)
将该 shell 变量导出到环境中:
export MY_KEY
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
946 次 |
| 最近记录: |