如何触发生命周期事件的自定义功能?
How to trigger custom function on lifecycle events?
当从命令行调用 pulumi up
或 pulumi destroy
时,如何指示 Pulumi 调用我的自定义 Typescript 函数?
我尝试从主代码块调用我的函数,但它在 pulumi up
上被多次调用。
此外,有些命令我只想为 up
调用,而其他命令只应为 destroy
调用。
您只能在 update
期间使用 pulumi.runtime.isDryRun()
到 运行 代码或函数。 Pulumi 目前没有公开挂钩生命周期事件的方法,但这在 https://github.com/pulumi/pulumi/issues/1691.
的路线图上
如果您同意将此函数称为异步,则可以使用 Pulumi Automation API and provide onEvent
option when invoking it using TypeScript:
包装您的堆栈
stack.up({
onEvent: (event) => {
if (event["preludeEvent"] !== undefined) {
// run something once before changing resources
return
}
},
})
在 destory
期间也可以这样做
- github.com - 有关可用事件类型的更多详细信息。
- dev.to - 关于使用pulumi自动化事件的详细博客
当从命令行调用 pulumi up
或 pulumi destroy
时,如何指示 Pulumi 调用我的自定义 Typescript 函数?
我尝试从主代码块调用我的函数,但它在 pulumi up
上被多次调用。
此外,有些命令我只想为 up
调用,而其他命令只应为 destroy
调用。
您只能在 update
期间使用 pulumi.runtime.isDryRun()
到 运行 代码或函数。 Pulumi 目前没有公开挂钩生命周期事件的方法,但这在 https://github.com/pulumi/pulumi/issues/1691.
如果您同意将此函数称为异步,则可以使用 Pulumi Automation API and provide onEvent
option when invoking it using TypeScript:
stack.up({
onEvent: (event) => {
if (event["preludeEvent"] !== undefined) {
// run something once before changing resources
return
}
},
})
在 destory
期间也可以这样做- github.com - 有关可用事件类型的更多详细信息。
- dev.to - 关于使用pulumi自动化事件的详细博客