无法将GCP秘密管理器与GCP云功能nodeJS一起使用

问题描述

我正在尝试访问GCP机密管理器中存储的机密。使用以下示例代码,并在使用babel部署其转译之前。

const { SecretManagerServiceClient } = require("@google-cloud/secret-manager");

const client = new SecretManagerServiceClient();
exports.hello = () => {
  //do something with client
};

相同的翻译版本

"use strict";

var _require = require("@google-cloud/secret-manager"),SecretManagerServiceClient = _require.SecretManagerServiceClient;

var client = new SecretManagerServiceClient();

exports.hello = function () {//do something with client
};

但是我在机密管理器实例化(const client = new SecretManagerServiceClient();)上遇到以下错误

Detailed stack trace: Error: Node.js v10.0.0 is a minimum requirement. To learn about legacy version support visit: https://github.com/googleapis/google-cloud-node#supported-nodejs-versions
     at new GrpcClient (/srv/node_modules/@google-cloud/secret-manager/node_modules/google-gax/build/src/grpc.js:63:19)
     at new SecretManagerServiceClient (/srv/node_modules/@google-cloud/secret-manager/build/src/v1/secret_manager_service_client.js:99:25)
     at Object.<anonymous> (/srv/index.js:6:14)
     at Module._compile (module.js:653:30)
     at Object.Module._extensions..js (module.js:664:10)
     at Module.load (module.js:566:32)
     at tryModuleLoad (module.js:506:12)
     at Function.Module._load (module.js:498:3)
     at Module.require (module.js:597:17)
     at require (internal/module.js:11:18)

当我在本地计算机上尝试时,我可以使用相同的库来访问/修改机密。但是它似乎不适用于CF。

CF服务帐户有权访问秘密管理员。

任何帮助将不胜感激。 预先感谢。

解决方法

@sethvargo指出,在部署期间指定运行时可以解决此问题。

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...