无法读取全局配置字符串

我正在使用 Pulumi 的 typescript SDK 为我的项目设置 azure 基础设施。我一直在尝试在 my 中获取一些配置值index.ts,如下面的代码所示:

import * as pulumi from "@pulumi/pulumi";
const config = new pulumi.Config();
export const domain = config.require('azure:location')

不幸的是,这段代码触发了以下错误:

error: Missing required configuration variable 'my-project:azure:location'
        please set a value using the command `pulumi config set my-project:azure:location <value>`

作为补充说明,我正在使用azure:location作为示例(我还需要其他一些配置),因此很遗憾,从其他地方获取位置的明显解决方法是不够的。

它看起来像config.require使用项目名称作为配置键的前缀。虽然 的构造函数Config允许传递替代前缀,但似乎没有选项可以在不添加前缀的情况下检索密钥。有解决方法吗?我错过了什么吗?这是一个错误吗?

普鲁米文件

如果您需要更多上下文,这里是我用来触发此问题的 pulumi 文件的最小版本:

Pulumi.yaml

name: my-project
runtime: nodejs
description: No description

Pulumi.dev.yaml

config:
  azure:environment: public
  azure:location: WestEurope

回答

如果您使用new pulumi.Config()pulumi创建一个配置对象,那么 pulumi 将假定您需要项目的配置(所有以项目名称为前缀的内容)。如果你想要 azure 配置,那么我认为你可以使用额外的配置对象来做到这一点:

const projectConfig = new pulumi.Config();

const azureConfig = new pulumi.Config("azure");
const azureLocation = azureConfig.get("location");


以上是无法读取全局配置字符串的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>