工作流步骤
本文档将详细介绍 KubeVela 内置的各个工作流步骤。你可以通过自由的组合它们来设计完整的交付工作流。
#
apply-application#
简介部署当前 Application 中的所有组件和运维特征。
#
参数无需指定参数,主要用于应用部署前后增加自定义步骤。
#
示例#
depends-on-app#
简介等待指定的 Application 完成。
depends-on-app
会根据 properties
中的 name
及 namespace
,去查询集群中是否存在对应的应用。
如果应用存在,则当该应用的状态可用时,才会进行下一个步骤; 若该应用不存在,则会去查询同名的 configMap,从中读取出应用的配置并部署到集群中。
若应用不存在,则需要形如下的 configMap:
name
与namespace
和properties
中声明的保持一致,在data
中,以name
为 key,实际的 value 为需要部署的 KubeVela Application yaml。
#
参数参数名 | 类型 | 说明 |
---|---|---|
name | string | 需要等待的 Application 名称 |
namespace | string | 需要等待的 Application 所在的命名空间 |
#
示例#
deploy2env#
简介将 Application 在不同的环境和策略中部署。
#
参数参数名 | 类型 | 说明 |
---|---|---|
policy | string | 需要关联的策略名 |
env | string | 需要关联的环境名 |
#
示例#
webhook-notification#
简介向指定的 Webhook 发送信息,该功能在 KubeVela v1.1.6 及以上版本可使用。
#
参数参数名 | 类型 | 说明 |
---|---|---|
slack | Object | 可选值,如果需要发送 Slack 信息,则需填写其 url 及 message |
slack.url | Object | 必填值,Slack 的 Webhook 地址,可以选择直接填写或从 secret 中获取 |
slack.url.address | String | 可选值,直接填写 Slack 的 Webhook 地址 |
slack.url.fromSecret.name | String | 可选值, 从 secret 中获取 Webhook 地址,secret 的名字 |
slack.url.fromSecret.key | String | 可选值, 从 secret 中获取 Webhook 地址,从 secret 中获取的 key |
slack.message | Object | 必填值,需要发送的 Slack 信息,请符合 Slack 信息规范 |
dingding | Object | 可选值,如果需要发送钉钉信息,则需填写其 url 及 message |
dingding.url | Object | 必填值,钉钉的 Webhook 地址,可以选择直接填写或从 secret 中获取 |
dingding.url.address | String | 可选值,直接填写钉钉的 Webhook 地址 |
dingding.url.fromSecret.name | String | 可选值, 从 secret 中获取 Webhook 地址,secret 的名字 |
dingding.url.fromSecret.key | String | 可选值, 从 secret 中获取 Webhook 地址,从 secret 中获取的 key |
dingding.message | Object | 必填值,需要发送的钉钉信息,请符合 钉钉信息规范 |
#
示例#
apply-object#
简介部署 Kubernetes 原生资源,该功能在 KubeVela v1.1.4 及以上版本可使用。
#
参数参数名 | 类型 | 说明 |
---|---|---|
value | object | 必填值,Kubernetes 原生资源字段 |
cluster | object | 可选值,需要部署的集群名称。如果不指定,则为当前集群。在使用该字段前,请确保你已经使用 vela cluster join 纳管了你的集群 |
#
示例#
read-object#
简介读取 Kubernetes 原生资源,该功能在 KubeVela v1.1.6 及以上版本可使用。
#
参数参数名 | 类型 | 说明 |
---|---|---|
apiVersion | String | 必填值,资源的 apiVersion |
kind | String | 必填值,资源的 kind |
name | String | 必填值,资源的 name |
namespace | String | 选填值,资源的 namespace,默认为 default |
cluster | String | 选填值,资源的集群名,默认为当前集群,在使用该字段前,请确保你已经使用 vela cluster join 纳管了你的集群 |
#
示例#
export2config#
简介导出数据到 ConfigMap,该功能在 KubeVela v1.1.6 及以上版本可使用。
#
参数参数名 | 类型 | 说明 |
---|---|---|
configName | String | 必填值,ConfigMap 的名称 |
namespace | String | 选填值,ConfigMap 的 namespace,默认为 context.namespace |
data | Map | 必填值,需要导出到 ConfigMap 中的数据 |
#
示例#
export2secret#
简介导出数据到 Secret,该功能在 KubeVela v1.1.6 及以上版本可使用。
#
参数参数名 | 类型 | 说明 |
---|---|---|
secretName | String | 必填值,Secret 的名称 |
namespace | String | 选填值,Secret 的 namespace,默认为 context.namespace |
data | Map | 必填值,需要导出到 Secret 中的数据 |
#
示例#
suspend#
简介暂停当前工作流,可以通过 vela workflow resume appname
继续已暂停的工作流。
有关于
vela workflow
命令的介绍,可以详见 vela cli。
#
参数参数名 | 类型 | 说明 |
---|---|---|
- | - | - |