自定义工作流

    工作流是 KubeVela 实践过程中基于 OAM 模型的进一步探索和最佳实践,充分遵守 OAM 的模块化理念和可复用特性。每一个工作流模块都是一个“超级粘合剂”,可以将你任意的工具和流程都组合起来。使得你在现代复杂云原生应用交付环境中,可以通过一份申明式的配置,完整的描述所有的交付流程,保证交付过程的稳定性和便利性。

    使用工作流

    工作流由步骤组成,你既可以使用 KubeVela 提供的 [内置工作流步骤] 来便利地完成操作,也可以自己来编写 来达到想要的效果。

    我们可以使用 vela def 通过编写 Cue template 来定义工作流步骤。下面我们来完成这个场景:使用 Helm 部署一个 Tomcat,并在部署完成后自动向 Slack 发送消息通知。

    在此基础上,我们需要两个 WorkflowStepDefinition

    1. 部署 Tomcat,并且等待 Deployment 的状态变为 running,这一步需要自定义工作流步骤来实现。
    2. 发送 Slack 通知,这一步可以使用 KubeVela 内置的 [webhook-notification] 步骤来实现。

    部署 Tomcat 步骤

    首先,通过 来生成一个 WorkflowStepDefinition 模板:

    引用 vela/op 包,并将 Cue 代码补充到 中:

    部署到集群中:

    发送 Slack 通知步骤

    直接使用内置的 [webhook-notification] 步骤。

    编写应用