【问题标题】:How to trigger custom function on lifecycle events?如何触发生命周期事件的自定义功能?
【发布时间】:2020-01-03 01:41:16
【问题描述】:

当从命令行调用pulumi uppulumi destroy 时,如何指示Pulumi 调用我的自定义Typescript 函数?

我尝试从主代码块调用我的函数,但它在 pulumi up 上被多次调用。

此外,有些命令我只想为up 调用,而其他一些命令只应为destroy 调用。

【问题讨论】:

    标签: pulumi


    【解决方案1】:

    您只能在update 期间使用pulumi.runtime.isDryRun() 运行代码或函数。 Pulumi 目前没有公开挂钩生命周期事件的方法,但这在 https://github.com/pulumi/pulumi/issues/1691 的路线图上。

    【讨论】:

      【解决方案2】:

      如果你对这个被称为异步的函数没问题,你可以使用Pulumi Automation API 包装你的堆栈,并在invoking it using TypeScript 时提供onEvent 选项:

      stack.up({
        onEvent: (event) => {
          if (event["preludeEvent"] !== undefined) {
            // run something once before changing resources
            return
          }
        },
      })
      

      destory期间也可以这样做


      • github.com - 有关可用事件类型的更多详细信息。
      • dev.to - 关于使用 pulumi 自动化事件的详细博客

      【讨论】:

        猜你喜欢
        • 2022-01-07
        • 2012-03-30
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-01-22
        • 2019-10-15
        相关资源
        最近更新 更多