.npmrc 中环境变量的默认值

问题描述 投票:0回答:1

有人知道如何在 .npmrc 文件中设置默认环境变量吗?我尝试这样做:

registry=${myEnvVariable:-https://myregistry.com}

还有这个:

defaultRegistry=https://myregistry.com
registry=${myEnvVariable:-defaultRegistry}

这些解决方案不起作用,因为我收到“无法替换配置中的 env”

bash shell npm npm-install npm-scripts
1个回答
0
投票

看起来你可能必须围绕 npm 编写一个包装器脚本:

~/bin/npm

#!/bin/sh
defaultRegistry=https://myregistry.com
myRegistry=${myEnvVariable:-$defaultRegistry}
export myRegistry
exec /usr/bin/npm "$@"

~/.npmrc

registry=${myRegistry}

npmrc
手册页有这样的内容:

所有 npm 配置文件都是 ini 格式的

key = value
参数列表。 可以使用
${VARIABLE_NAME}
替换环境变量。为了 示例:

prefix = ${HOME}/.npm-packages

没有提及特定于 shell 的条件逻辑,因此不幸的是 .npmrc 中似乎不支持它。

© www.soinside.com 2019 - 2024. All rights reserved.