3

我是 Pulumi 的新手,所以我目前正在努力尝试在我的 Azure 发布管道中运行它以创建我的基础架构。在开发过程中,我使用本地存储来存储我的 pulumi 状态pulumi login --local(现在,我已将代码推送到源代码控制,由构建管道(有效)创建,并且我正在尝试使用 Pulumi Azure Pipelines Task 从发布管道创建我的基础架构。我已经设法将它配置为将 blob 存储用于状态文件,但是在pulumi up --yes --skip-preview为开发堆栈运行时,我收到一个错误,即开发堆栈不存在。

我需要在pulumi stack init dev我使用的每个“商店”上做一个吗?Pulumi.stack_name.yaml 文件还不够吗?

欢迎任何有关如何进行的建议,因为这方面的文档不存在或不清楚。

谢谢!

4

1 回答 1

4

该错误可能是由 Blob 存储中不存在的堆栈引起的。

如果你使用pulumi login --local. 堆栈将在您的本地计算机中进行管理,并且不会同步到 Azure Blob 存储。在这里查看更多登录选项。

在我的测试管道中。我收到错误:找不到名为“dev”的堆栈。如果 app.pulumi.com 上不存在 dev。如果我在 app.pulumi.com 上创建了开发(我使用 pulumi.com 进行存储),它会按预期工作。

所以请去 azure blob 检查开发堆栈是否存在。如果不存在,您需要在 azure blob 上为您的帐户创建一个。

如果要将本地端点迁移到 azure blob。请检查此处的步骤。

一旦堆栈存在于您的 azure blob 中。您可以pulumi up --yes --skip-preview直接在 azure devopline 的 pulumi 任务中运行。不需要run pulumi stack init dev 请确保登录参数为空以使用在线堆栈。如果您指定--local,您也会收到错误消息,因为代理机器中不存在堆栈。

在此处输入图像描述

Create the stack if it does not exist如果在 azure blob 上找不到堆栈,您还可以启用让 pulumi 任务创建堆栈的选项。

在此处输入图像描述

是 Pulumi 官方文档中与 azure devops 集成的示例。希望能帮助到你!

于 2020-04-15T10:20:02.813 回答