KubeVela自定义工作流步骤以及踩坑经验

本文介绍了如何在 KubeVela 中定义自定义工作流步骤,利用Addon作为载体,并通过CUE语言实现。在实践中,作者遇到了工作流暂停和恢复逻辑的困惑,发现KubeVela的工作流执行原理不同于常规代码执行流程。通过深入源码,作者揭示了Suspend操作的特殊性,解释了为何在执行恢复命令后工作流不会重复执行。

原文链接

官方提供的工作流步骤有限,另外,对于自研的PaaS平台,我们需要借助工作流步骤实现一些例如存量项目基础设施导入、项目环境初始化、平台组件共享基础设施需要解决的差异对比审核、基础设施漂移等。

如何定义一个工作流步骤

由于kubevela以Addon提供安装扩展,因此我们需要用Addon作为自定义工作流步骤的载体,通过Addon安装工作流步骤和升级、卸载工作流步骤。
自定义工作流步骤需要使用CUE语言,并且只能使用语言本身支持的操作和kubevela为我们提供的一系列内置操作。
假设我们自定义一个工作流步骤是调用一个接口做某件事情,如果接口返回0,就是需要暂停工作流步骤等待人工完成审核,如果接口返回1,就是审核通过需要恢复工作流步骤,如果返回2,就是审核被驳回,需要终止工作流。
这里我们需要用到官方提供的3个操作:

  1. 发送http请求的HTTPDo操作
  2. 暂停工作流步骤的Suspend操作
  3. 失败终止工作流的Fail操作

另外还需要依赖encoding/json库的序列化和反序列化操作。

apiVersion: core.oam.dev/v1b
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

吴就业

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值