Node.js 使用Google App Engine对专用模块进行NPM身份验证

Node.js 使用Google App Engine对专用模块进行NPM身份验证,node.js,google-app-engine,npm,google-cloud-platform,google-cloud-build,Node.js,Google App Engine,Npm,Google Cloud Platform,Google Cloud Build,我正在尝试部署一个节点应用程序,该应用程序将私有npm模块导入到Google App Engine。由于无法验证,我仍然无法安装npm失败,需要:Basic realm=“GitHub Package Registry” npm身份验证的一种方法是通过NODE\u AUTH\u TOKEN环境变量。GAE不通过命令行接受环境变量,只接受app.yaml,因此我在Github操作CI过程中将我的令牌添加到app.yaml。事实证明,AppEngine使用一个单独的云构建环境来构建,而这个环境没有这

我正在尝试部署一个节点应用程序,该应用程序将私有npm模块导入到Google App Engine。由于
无法验证,我仍然无法安装
npm
失败,需要:Basic realm=“GitHub Package Registry”

npm身份验证的一种方法是通过
NODE\u AUTH\u TOKEN
环境变量。GAE不通过命令行接受环境变量,只接受
app.yaml
,因此我在Github操作CI过程中将我的令牌添加到app.yaml。事实证明,AppEngine使用一个单独的云构建环境来构建,而这个环境没有这个环境变量;因此,再次失败。我还尝试在我的环境变量中创建一个
cloudbuild.yaml
和子床,但没有成功。最后,我尝试通过
.npmrc
设置我的密钥,如下所示:

//npm.pkg.github.com/gw-cocoon/:_authToken=$NPM_TOKEN
@gw-cocoon:registry=https://npm.pkg.github.com/gw-cocoon

并在CI期间在令牌中创建子床。出于同样的原因,这失败了,但我不知道为什么。此令牌在每次CI运行时自动生成,因此我无法使用Google Cloud KMS

我很失望地发现,这显然根本不受支持。考虑到GitHub包等用于构建模块化(私有)应用程序的日益流行,这似乎是一个非常明显的限制


有趣的是,谷歌云功能是私有npm模块,所以也许在App Engine中获得支持只是时间问题。

是否回答了您的问题?也可能值得从9月份开始查看此主题。刚刚发现此相关问题: