Pulumi C#:在 RunAsync 之前访问堆栈名称

Pulumi C#: access stackname before RunAsync

Pulumi 有没有办法访问当前堆栈名称,以便在执行 pulumi up 时选择 class 到 运行?

我想做这样的事情:

static Task<int> Main()
{
    if (Deployment.Instance.StackName.StartsWith("local-"))
        return Deployment.RunAsync<LocalStack>();

    return Deployment.RunAsync<AzureStack>();
}

Deployment.Instance 在执行 RunAsync 之前不可用,您已经知道了。

作为解决方法,您可以从环境变量中获取堆栈名称:

Environment.GetEnvironmentVariable("PULUMI_STACK")