Chore: update reference doc
Signed-off-by: Jianbo Sun <jianbo.sjb@alibaba-inc.com>
This commit is contained in:
parent
d1edfd3fa4
commit
337d374a64
|
|
@ -4,7 +4,7 @@ title: Built-in Component Type
|
|||
|
||||
This documentation will walk through all the built-in component types sorted alphabetically.
|
||||
|
||||
> It was generated automatically by [scripts](../../contributor/cli-ref-doc), please don't update manually, last updated at 2022-11-16T14:46:36+08:00.
|
||||
> It was generated automatically by [scripts](../../contributor/cli-ref-doc), please don't update manually, last updated at 2022-11-24T12:21:19+08:00.
|
||||
|
||||
## Cron-Task
|
||||
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ title: Built-in Trait Type
|
|||
|
||||
This documentation will walk through all the built-in trait types sorted alphabetically.
|
||||
|
||||
> It was generated automatically by [scripts](../../contributor/cli-ref-doc), please don't update manually, last updated at 2022-11-16T14:46:36+08:00.
|
||||
> It was generated automatically by [scripts](../../contributor/cli-ref-doc), please don't update manually, last updated at 2022-11-24T12:21:19+08:00.
|
||||
|
||||
## Affinity
|
||||
|
||||
|
|
@ -24,6 +24,38 @@ Component based on the following kinds of resources:
|
|||
|
||||
|
||||
|
||||
### Examples (affinity)
|
||||
|
||||
```yaml
|
||||
apiVersion: core.oam.dev/v1beta1
|
||||
kind: Application
|
||||
metadata:
|
||||
name: busybox
|
||||
spec:
|
||||
components:
|
||||
- name: busybox
|
||||
type: webservice
|
||||
properties:
|
||||
image: busybox
|
||||
cmd: ["sleep", "86400"]
|
||||
labels:
|
||||
label-key: label-value
|
||||
to-delete-label-key: to-delete-label-value
|
||||
traits:
|
||||
- type: affinity
|
||||
properties:
|
||||
podAffinity:
|
||||
preferred:
|
||||
- weight: 1
|
||||
podAffinityTerm:
|
||||
labelSelector:
|
||||
matchExpressions:
|
||||
- key: "secrity"
|
||||
values: ["S1"]
|
||||
namespaces: ["default"]
|
||||
topologyKey: "kubernetes.io/hostname"
|
||||
```
|
||||
|
||||
### Specification (affinity)
|
||||
|
||||
|
||||
|
|
@ -847,6 +879,50 @@ Patch the output following Json Merge Patch strategy, following RFC 7396.
|
|||
All Component Types
|
||||
|
||||
|
||||
### Examples (json-merge-patch)
|
||||
|
||||
```yaml
|
||||
apiVersion: core.oam.dev/v1beta1
|
||||
kind: Application
|
||||
metadata:
|
||||
name: busybox
|
||||
spec:
|
||||
components:
|
||||
- name: busybox
|
||||
type: webservice
|
||||
properties:
|
||||
image: busybox
|
||||
cmd: ["sleep", "86400"]
|
||||
labels:
|
||||
pod-label-key: pod-label-value
|
||||
to-delete-label-key: to-delete-label-value
|
||||
traits:
|
||||
# the json merge patch can be used to add, replace and delete fields
|
||||
# the following part will
|
||||
# 1. add `deploy-label-key` to deployment labels
|
||||
# 2. set deployment replicas to 3
|
||||
# 3. set `pod-label-key` to `pod-label-modified-value` in pod labels
|
||||
# 4. delete `to-delete-label-key` in pod labels
|
||||
# 5. reset `containers` for pod
|
||||
- type: json-merge-patch
|
||||
properties:
|
||||
metadata:
|
||||
labels:
|
||||
deploy-label-key: deploy-label-added-value
|
||||
spec:
|
||||
replicas: 3
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
pod-label-key: pod-label-modified-value
|
||||
to-delete-label-key: null
|
||||
spec:
|
||||
containers:
|
||||
- name: busybox-new
|
||||
image: busybox:1.34
|
||||
command: ["sleep", "864000"]
|
||||
```
|
||||
|
||||
### Specification (json-merge-patch)
|
||||
|
||||
|
||||
|
|
@ -868,6 +944,50 @@ Patch the output following Json Patch strategy, following RFC 6902.
|
|||
All Component Types
|
||||
|
||||
|
||||
### Examples (json-patch)
|
||||
|
||||
```yaml
|
||||
apiVersion: core.oam.dev/v1beta1
|
||||
kind: Application
|
||||
metadata:
|
||||
name: busybox
|
||||
spec:
|
||||
components:
|
||||
- name: busybox
|
||||
type: webservice
|
||||
properties:
|
||||
image: busybox
|
||||
cmd: ["sleep", "86400"]
|
||||
labels:
|
||||
pod-label-key: pod-label-value
|
||||
to-delete-label-key: to-delete-label-value
|
||||
traits:
|
||||
# the json patch can be used to add, replace and delete fields
|
||||
# the following part will
|
||||
# 1. add `deploy-label-key` to deployment labels
|
||||
# 2. set deployment replicas to 3
|
||||
# 3. set `pod-label-key` to `pod-label-modified-value` in pod labels
|
||||
# 4. delete `to-delete-label-key` in pod labels
|
||||
# 5. add sidecar container for pod
|
||||
- type: json-patch
|
||||
properties:
|
||||
operations:
|
||||
- op: add
|
||||
path: "/spec/replicas"
|
||||
value: 3
|
||||
- op: replace
|
||||
path: "/spec/template/metadata/labels/pod-label-key"
|
||||
value: pod-label-modified-value
|
||||
- op: remove
|
||||
path: "/spec/template/metadata/labels/to-delete-label-key"
|
||||
- op: add
|
||||
path: "/spec/template/spec/containers/1"
|
||||
value:
|
||||
name: busybox-sidecar
|
||||
image: busybox:1.34
|
||||
command: ["sleep", "864000"]
|
||||
```
|
||||
|
||||
### Specification (json-patch)
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ title: Built-in WorkflowStep Type
|
|||
|
||||
This documentation will walk through all the built-in workflow step types sorted alphabetically.
|
||||
|
||||
> It was generated automatically by [scripts](../../contributor/cli-ref-doc), please don't update manually, last updated at 2022-11-16T14:46:36+08:00.
|
||||
> It was generated automatically by [scripts](../../contributor/cli-ref-doc), please don't update manually, last updated at 2022-11-24T12:21:19+08:00.
|
||||
|
||||
## Apply-Component
|
||||
|
||||
|
|
@ -180,6 +180,41 @@ This capability has no arguments.
|
|||
|
||||
Create or update a config.
|
||||
|
||||
### Examples (create-config)
|
||||
|
||||
```yaml
|
||||
kind: Application
|
||||
apiVersion: core.oam.dev/v1beta1
|
||||
metadata:
|
||||
name: test-config
|
||||
namespace: "config-e2e-test"
|
||||
spec:
|
||||
components: []
|
||||
workflow:
|
||||
steps:
|
||||
- name: write-config
|
||||
type: create-config
|
||||
properties:
|
||||
name: test
|
||||
config:
|
||||
key1: value1
|
||||
key2: 2
|
||||
key3: true
|
||||
key4:
|
||||
key5: value5
|
||||
- name: read-config
|
||||
type: read-config
|
||||
properties:
|
||||
name: test
|
||||
outputs:
|
||||
- fromKey: config
|
||||
name: read-config
|
||||
- name: delete-config
|
||||
type: delete-config
|
||||
properties:
|
||||
name: test
|
||||
```
|
||||
|
||||
### Specification (create-config)
|
||||
|
||||
|
||||
|
|
@ -197,6 +232,34 @@ Create or update a config.
|
|||
|
||||
Delete a config.
|
||||
|
||||
### Examples (delete-config)
|
||||
|
||||
```yaml
|
||||
kind: Application
|
||||
apiVersion: core.oam.dev/v1beta1
|
||||
metadata:
|
||||
name: test-config
|
||||
namespace: "config-e2e-test"
|
||||
spec:
|
||||
components: []
|
||||
workflow:
|
||||
steps:
|
||||
- name: write-config
|
||||
type: create-config
|
||||
properties:
|
||||
name: test
|
||||
config:
|
||||
key1: value1
|
||||
key2: 2
|
||||
key3: true
|
||||
key4:
|
||||
key5: value5
|
||||
- name: delete-config
|
||||
type: delete-config
|
||||
properties:
|
||||
name: test
|
||||
```
|
||||
|
||||
### Specification (delete-config)
|
||||
|
||||
|
||||
|
|
@ -330,6 +393,89 @@ spec:
|
|||
|
||||
Deploy cloud resource and deliver secret to multi clusters.
|
||||
|
||||
### Examples (deploy-cloud-resource)
|
||||
|
||||
```yaml
|
||||
apiVersion: core.oam.dev/v1beta1
|
||||
kind: Application
|
||||
metadata:
|
||||
name: rds-app
|
||||
namespace: project-1
|
||||
spec:
|
||||
components:
|
||||
- name: db
|
||||
type: alibaba-rds
|
||||
properties:
|
||||
instance_name: db
|
||||
account_name: kubevela
|
||||
password: my-password
|
||||
writeConnectionSecretToRef:
|
||||
name: project-1-rds-conn-credential
|
||||
policies:
|
||||
- name: env-policy
|
||||
type: env-binding
|
||||
properties:
|
||||
envs:
|
||||
# 部署 RDS 给杭州集群
|
||||
- name: hangzhou
|
||||
placement:
|
||||
clusterSelector:
|
||||
name: cluster-hangzhou
|
||||
patch:
|
||||
components:
|
||||
- name: db
|
||||
type: alibaba-rds
|
||||
properties:
|
||||
# region: hangzhou
|
||||
instance_name: hangzhou_db
|
||||
# 部署 RDS 给香港集群
|
||||
- name: hongkong
|
||||
placement:
|
||||
clusterSelector:
|
||||
name: cluster-hongkong
|
||||
namespaceSelector:
|
||||
name: hk-project-1
|
||||
patch:
|
||||
components:
|
||||
- name: db
|
||||
type: alibaba-rds
|
||||
properties:
|
||||
# region: hongkong
|
||||
instance_name: hongkong_db
|
||||
writeConnectionSecretToRef:
|
||||
name: hk-project-rds-credential
|
||||
|
||||
workflow:
|
||||
steps:
|
||||
# 部署 RDS 给杭州区用
|
||||
- name: deploy-hangzhou-rds
|
||||
type: deploy-cloud-resource
|
||||
properties:
|
||||
env: hangzhou
|
||||
# 将给杭州区用的 RDS 共享给北京区
|
||||
- name: share-hangzhou-rds-to-beijing
|
||||
type: share-cloud-resource
|
||||
properties:
|
||||
env: hangzhou
|
||||
placements:
|
||||
- cluster: cluster-beijing
|
||||
# 部署 RDS 给香港区用
|
||||
- name: deploy-hongkong-rds
|
||||
type: deploy-cloud-resource
|
||||
properties:
|
||||
env: hongkong
|
||||
# 将给香港区用的 RDS 共享给香港区其他项目用
|
||||
- name: share-hongkong-rds-to-other-namespace
|
||||
type: share-cloud-resource
|
||||
properties:
|
||||
env: hongkong
|
||||
placements:
|
||||
- cluster: cluster-hongkong
|
||||
namespace: hk-project-2
|
||||
- cluster: cluster-hongkong
|
||||
namespace: hk-project-3
|
||||
```
|
||||
|
||||
### Specification (deploy-cloud-resource)
|
||||
|
||||
|
||||
|
|
@ -598,6 +744,51 @@ spec:
|
|||
|
||||
Generate a JDBC connection based on Component of alibaba-rds.
|
||||
|
||||
### Examples (generate-jdbc-connection)
|
||||
|
||||
```yaml
|
||||
apiVersion: core.oam.dev/v1beta1
|
||||
kind: Application
|
||||
metadata:
|
||||
name: jdbc
|
||||
spec:
|
||||
components:
|
||||
- name: db
|
||||
type: alibaba-rds
|
||||
properties:
|
||||
instance_name: favorite-links
|
||||
database_name: db1
|
||||
account_name: oamtest
|
||||
password: U34rfwefwefffaked
|
||||
security_ips: [ "0.0.0.0/0" ]
|
||||
privilege: ReadWrite
|
||||
writeConnectionSecretToRef:
|
||||
name: db-conn
|
||||
- name: express-server
|
||||
type: webservice
|
||||
properties:
|
||||
image: crccheck/hello-world
|
||||
port: 8000
|
||||
|
||||
workflow:
|
||||
steps:
|
||||
- name: jdbc
|
||||
type: generate-jdbc-connection
|
||||
outputs:
|
||||
- name: jdbc
|
||||
valueFrom: jdbc
|
||||
properties:
|
||||
name: db-conn
|
||||
namespace: default
|
||||
- name: apply
|
||||
type: apply-component
|
||||
inputs:
|
||||
- from: jdbc
|
||||
parameterKey: env
|
||||
properties:
|
||||
component: express-server
|
||||
```
|
||||
|
||||
### Specification (generate-jdbc-connection)
|
||||
|
||||
|
||||
|
|
@ -613,6 +804,59 @@ Generate a JDBC connection based on Component of alibaba-rds.
|
|||
|
||||
List the configs.
|
||||
|
||||
### Examples (list-config)
|
||||
|
||||
```yaml
|
||||
apiVersion: core.oam.dev/v1alpha1
|
||||
kind: WorkflowRun
|
||||
metadata:
|
||||
name: observability
|
||||
namespace: vela-system
|
||||
spec:
|
||||
context:
|
||||
readConfig: true
|
||||
mode:
|
||||
workflowSpec:
|
||||
steps:
|
||||
- name: Enable Prism
|
||||
type: addon-operation
|
||||
properties:
|
||||
addonName: vela-prism
|
||||
|
||||
- name: Enable o11y
|
||||
type: addon-operation
|
||||
properties:
|
||||
addonName: o11y-definitions
|
||||
operation: enable
|
||||
args:
|
||||
- --override-definitions
|
||||
|
||||
- name: Prepare Prometheus
|
||||
type: step-group
|
||||
subSteps:
|
||||
- name: get-exist-prometheus
|
||||
type: list-config
|
||||
properties:
|
||||
template: prometheus-server
|
||||
outputs:
|
||||
- name: prometheus
|
||||
valueFrom: "output.configs"
|
||||
|
||||
- name: prometheus-server
|
||||
inputs:
|
||||
- from: prometheus
|
||||
# TODO: Make it is not required
|
||||
parameterKey: configs
|
||||
if: "!context.readConfig || len(inputs.prometheus) == 0"
|
||||
type: addon-operation
|
||||
properties:
|
||||
addonName: prometheus-server
|
||||
operation: enable
|
||||
args:
|
||||
- memory=4096Mi
|
||||
- serviceType=LoadBalancer
|
||||
```
|
||||
|
||||
### Specification (list-config)
|
||||
|
||||
|
||||
|
|
@ -934,6 +1178,27 @@ spec:
|
|||
|
||||
Read a config.
|
||||
|
||||
### Examples (read-config)
|
||||
|
||||
```yaml
|
||||
kind: Application
|
||||
apiVersion: core.oam.dev/v1beta1
|
||||
metadata:
|
||||
name: test-config
|
||||
namespace: "config-e2e-test"
|
||||
spec:
|
||||
components: []
|
||||
workflow:
|
||||
steps:
|
||||
- name: read-config
|
||||
type: read-config
|
||||
properties:
|
||||
name: test
|
||||
outputs:
|
||||
- fromKey: config
|
||||
name: read-config
|
||||
```
|
||||
|
||||
### Specification (read-config)
|
||||
|
||||
|
||||
|
|
@ -1007,6 +1272,89 @@ spec:
|
|||
|
||||
Sync secrets created by terraform component to runtime clusters so that runtime clusters can share the created cloud resource.
|
||||
|
||||
### Examples (share-cloud-resource)
|
||||
|
||||
```yaml
|
||||
apiVersion: core.oam.dev/v1beta1
|
||||
kind: Application
|
||||
metadata:
|
||||
name: rds-app
|
||||
namespace: project-1
|
||||
spec:
|
||||
components:
|
||||
- name: db
|
||||
type: alibaba-rds
|
||||
properties:
|
||||
instance_name: db
|
||||
account_name: kubevela
|
||||
password: my-password
|
||||
writeConnectionSecretToRef:
|
||||
name: project-1-rds-conn-credential
|
||||
policies:
|
||||
- name: env-policy
|
||||
type: env-binding
|
||||
properties:
|
||||
envs:
|
||||
# 部署 RDS 给杭州集群
|
||||
- name: hangzhou
|
||||
placement:
|
||||
clusterSelector:
|
||||
name: cluster-hangzhou
|
||||
patch:
|
||||
components:
|
||||
- name: db
|
||||
type: alibaba-rds
|
||||
properties:
|
||||
# region: hangzhou
|
||||
instance_name: hangzhou_db
|
||||
# 部署 RDS 给香港集群
|
||||
- name: hongkong
|
||||
placement:
|
||||
clusterSelector:
|
||||
name: cluster-hongkong
|
||||
namespaceSelector:
|
||||
name: hk-project-1
|
||||
patch:
|
||||
components:
|
||||
- name: db
|
||||
type: alibaba-rds
|
||||
properties:
|
||||
# region: hongkong
|
||||
instance_name: hongkong_db
|
||||
writeConnectionSecretToRef:
|
||||
name: hk-project-rds-credential
|
||||
|
||||
workflow:
|
||||
steps:
|
||||
# 部署 RDS 给杭州区用
|
||||
- name: deploy-hangzhou-rds
|
||||
type: deploy-cloud-resource
|
||||
properties:
|
||||
env: hangzhou
|
||||
# 将给杭州区用的 RDS 共享给北京区
|
||||
- name: share-hangzhou-rds-to-beijing
|
||||
type: share-cloud-resource
|
||||
properties:
|
||||
env: hangzhou
|
||||
placements:
|
||||
- cluster: cluster-beijing
|
||||
# 部署 RDS 给香港区用
|
||||
- name: deploy-hongkong-rds
|
||||
type: deploy-cloud-resource
|
||||
properties:
|
||||
env: hongkong
|
||||
# 将给香港区用的 RDS 共享给香港区其他项目用
|
||||
- name: share-hongkong-rds-to-other-namespace
|
||||
type: share-cloud-resource
|
||||
properties:
|
||||
env: hongkong
|
||||
placements:
|
||||
- cluster: cluster-hongkong
|
||||
namespace: hk-project-2
|
||||
- cluster: cluster-hongkong
|
||||
namespace: hk-project-3
|
||||
```
|
||||
|
||||
### Specification (share-cloud-resource)
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ title: 内置组件列表
|
|||
|
||||
本文档将**按字典序**展示所有内置组件的参数列表。
|
||||
|
||||
> 本文档由[脚本](../../contributor/cli-ref-doc)自动生成,请勿手动修改,上次更新于 2022-11-16T14:46:36+08:00。
|
||||
> 本文档由[脚本](../../contributor/cli-ref-doc)自动生成,请勿手动修改,上次更新于 2022-11-24T12:21:19+08:00。
|
||||
|
||||
## Cron-Task
|
||||
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ title: 内置运维特征列表
|
|||
|
||||
本文档将**按字典序**展示所有内置运维特征的参数列表。
|
||||
|
||||
> 本文档由[脚本](../../contributor/cli-ref-doc)自动生成,请勿手动修改,上次更新于 2022-11-16T14:46:36+08:00。
|
||||
> 本文档由[脚本](../../contributor/cli-ref-doc)自动生成,请勿手动修改,上次更新于 2022-11-24T12:21:19+08:00。
|
||||
|
||||
## Affinity
|
||||
|
||||
|
|
@ -24,6 +24,38 @@ title: 内置运维特征列表
|
|||
|
||||
|
||||
|
||||
### 示例 (affinity)
|
||||
|
||||
```yaml
|
||||
apiVersion: core.oam.dev/v1beta1
|
||||
kind: Application
|
||||
metadata:
|
||||
name: busybox
|
||||
spec:
|
||||
components:
|
||||
- name: busybox
|
||||
type: webservice
|
||||
properties:
|
||||
image: busybox
|
||||
cmd: ["sleep", "86400"]
|
||||
labels:
|
||||
label-key: label-value
|
||||
to-delete-label-key: to-delete-label-value
|
||||
traits:
|
||||
- type: affinity
|
||||
properties:
|
||||
podAffinity:
|
||||
preferred:
|
||||
- weight: 1
|
||||
podAffinityTerm:
|
||||
labelSelector:
|
||||
matchExpressions:
|
||||
- key: "secrity"
|
||||
values: ["S1"]
|
||||
namespaces: ["default"]
|
||||
topologyKey: "kubernetes.io/hostname"
|
||||
```
|
||||
|
||||
### 参数说明 (affinity)
|
||||
|
||||
|
||||
|
|
@ -847,6 +879,50 @@ spec:
|
|||
所有组件类型。
|
||||
|
||||
|
||||
### 示例 (json-merge-patch)
|
||||
|
||||
```yaml
|
||||
apiVersion: core.oam.dev/v1beta1
|
||||
kind: Application
|
||||
metadata:
|
||||
name: busybox
|
||||
spec:
|
||||
components:
|
||||
- name: busybox
|
||||
type: webservice
|
||||
properties:
|
||||
image: busybox
|
||||
cmd: ["sleep", "86400"]
|
||||
labels:
|
||||
pod-label-key: pod-label-value
|
||||
to-delete-label-key: to-delete-label-value
|
||||
traits:
|
||||
# the json merge patch can be used to add, replace and delete fields
|
||||
# the following part will
|
||||
# 1. add `deploy-label-key` to deployment labels
|
||||
# 2. set deployment replicas to 3
|
||||
# 3. set `pod-label-key` to `pod-label-modified-value` in pod labels
|
||||
# 4. delete `to-delete-label-key` in pod labels
|
||||
# 5. reset `containers` for pod
|
||||
- type: json-merge-patch
|
||||
properties:
|
||||
metadata:
|
||||
labels:
|
||||
deploy-label-key: deploy-label-added-value
|
||||
spec:
|
||||
replicas: 3
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
pod-label-key: pod-label-modified-value
|
||||
to-delete-label-key: null
|
||||
spec:
|
||||
containers:
|
||||
- name: busybox-new
|
||||
image: busybox:1.34
|
||||
command: ["sleep", "864000"]
|
||||
```
|
||||
|
||||
### 参数说明 (json-merge-patch)
|
||||
|
||||
|
||||
|
|
@ -868,6 +944,50 @@ spec:
|
|||
所有组件类型。
|
||||
|
||||
|
||||
### 示例 (json-patch)
|
||||
|
||||
```yaml
|
||||
apiVersion: core.oam.dev/v1beta1
|
||||
kind: Application
|
||||
metadata:
|
||||
name: busybox
|
||||
spec:
|
||||
components:
|
||||
- name: busybox
|
||||
type: webservice
|
||||
properties:
|
||||
image: busybox
|
||||
cmd: ["sleep", "86400"]
|
||||
labels:
|
||||
pod-label-key: pod-label-value
|
||||
to-delete-label-key: to-delete-label-value
|
||||
traits:
|
||||
# the json patch can be used to add, replace and delete fields
|
||||
# the following part will
|
||||
# 1. add `deploy-label-key` to deployment labels
|
||||
# 2. set deployment replicas to 3
|
||||
# 3. set `pod-label-key` to `pod-label-modified-value` in pod labels
|
||||
# 4. delete `to-delete-label-key` in pod labels
|
||||
# 5. add sidecar container for pod
|
||||
- type: json-patch
|
||||
properties:
|
||||
operations:
|
||||
- op: add
|
||||
path: "/spec/replicas"
|
||||
value: 3
|
||||
- op: replace
|
||||
path: "/spec/template/metadata/labels/pod-label-key"
|
||||
value: pod-label-modified-value
|
||||
- op: remove
|
||||
path: "/spec/template/metadata/labels/to-delete-label-key"
|
||||
- op: add
|
||||
path: "/spec/template/spec/containers/1"
|
||||
value:
|
||||
name: busybox-sidecar
|
||||
image: busybox:1.34
|
||||
command: ["sleep", "864000"]
|
||||
```
|
||||
|
||||
### 参数说明 (json-patch)
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ title: 内置工作流步骤列表
|
|||
|
||||
本文档将**按字典序**展示所有内置工作流步骤的参数列表。
|
||||
|
||||
> 本文档由[脚本](../../contributor/cli-ref-doc)自动生成,请勿手动修改,上次更新于 2022-11-16T14:46:36+08:00。
|
||||
> 本文档由[脚本](../../contributor/cli-ref-doc)自动生成,请勿手动修改,上次更新于 2022-11-24T12:21:19+08:00。
|
||||
|
||||
## Apply-Component
|
||||
|
||||
|
|
@ -180,6 +180,41 @@ This capability has no arguments.
|
|||
|
||||
Create or update a config。
|
||||
|
||||
### 示例 (create-config)
|
||||
|
||||
```yaml
|
||||
kind: Application
|
||||
apiVersion: core.oam.dev/v1beta1
|
||||
metadata:
|
||||
name: test-config
|
||||
namespace: "config-e2e-test"
|
||||
spec:
|
||||
components: []
|
||||
workflow:
|
||||
steps:
|
||||
- name: write-config
|
||||
type: create-config
|
||||
properties:
|
||||
name: test
|
||||
config:
|
||||
key1: value1
|
||||
key2: 2
|
||||
key3: true
|
||||
key4:
|
||||
key5: value5
|
||||
- name: read-config
|
||||
type: read-config
|
||||
properties:
|
||||
name: test
|
||||
outputs:
|
||||
- fromKey: config
|
||||
name: read-config
|
||||
- name: delete-config
|
||||
type: delete-config
|
||||
properties:
|
||||
name: test
|
||||
```
|
||||
|
||||
### 参数说明 (create-config)
|
||||
|
||||
|
||||
|
|
@ -197,6 +232,34 @@ Create or update a config。
|
|||
|
||||
Delete a config。
|
||||
|
||||
### 示例 (delete-config)
|
||||
|
||||
```yaml
|
||||
kind: Application
|
||||
apiVersion: core.oam.dev/v1beta1
|
||||
metadata:
|
||||
name: test-config
|
||||
namespace: "config-e2e-test"
|
||||
spec:
|
||||
components: []
|
||||
workflow:
|
||||
steps:
|
||||
- name: write-config
|
||||
type: create-config
|
||||
properties:
|
||||
name: test
|
||||
config:
|
||||
key1: value1
|
||||
key2: 2
|
||||
key3: true
|
||||
key4:
|
||||
key5: value5
|
||||
- name: delete-config
|
||||
type: delete-config
|
||||
properties:
|
||||
name: test
|
||||
```
|
||||
|
||||
### 参数说明 (delete-config)
|
||||
|
||||
|
||||
|
|
@ -330,6 +393,89 @@ spec:
|
|||
|
||||
将云资源生成的秘钥部署到多集群。
|
||||
|
||||
### 示例 (deploy-cloud-resource)
|
||||
|
||||
```yaml
|
||||
apiVersion: core.oam.dev/v1beta1
|
||||
kind: Application
|
||||
metadata:
|
||||
name: rds-app
|
||||
namespace: project-1
|
||||
spec:
|
||||
components:
|
||||
- name: db
|
||||
type: alibaba-rds
|
||||
properties:
|
||||
instance_name: db
|
||||
account_name: kubevela
|
||||
password: my-password
|
||||
writeConnectionSecretToRef:
|
||||
name: project-1-rds-conn-credential
|
||||
policies:
|
||||
- name: env-policy
|
||||
type: env-binding
|
||||
properties:
|
||||
envs:
|
||||
# 部署 RDS 给杭州集群
|
||||
- name: hangzhou
|
||||
placement:
|
||||
clusterSelector:
|
||||
name: cluster-hangzhou
|
||||
patch:
|
||||
components:
|
||||
- name: db
|
||||
type: alibaba-rds
|
||||
properties:
|
||||
# region: hangzhou
|
||||
instance_name: hangzhou_db
|
||||
# 部署 RDS 给香港集群
|
||||
- name: hongkong
|
||||
placement:
|
||||
clusterSelector:
|
||||
name: cluster-hongkong
|
||||
namespaceSelector:
|
||||
name: hk-project-1
|
||||
patch:
|
||||
components:
|
||||
- name: db
|
||||
type: alibaba-rds
|
||||
properties:
|
||||
# region: hongkong
|
||||
instance_name: hongkong_db
|
||||
writeConnectionSecretToRef:
|
||||
name: hk-project-rds-credential
|
||||
|
||||
workflow:
|
||||
steps:
|
||||
# 部署 RDS 给杭州区用
|
||||
- name: deploy-hangzhou-rds
|
||||
type: deploy-cloud-resource
|
||||
properties:
|
||||
env: hangzhou
|
||||
# 将给杭州区用的 RDS 共享给北京区
|
||||
- name: share-hangzhou-rds-to-beijing
|
||||
type: share-cloud-resource
|
||||
properties:
|
||||
env: hangzhou
|
||||
placements:
|
||||
- cluster: cluster-beijing
|
||||
# 部署 RDS 给香港区用
|
||||
- name: deploy-hongkong-rds
|
||||
type: deploy-cloud-resource
|
||||
properties:
|
||||
env: hongkong
|
||||
# 将给香港区用的 RDS 共享给香港区其他项目用
|
||||
- name: share-hongkong-rds-to-other-namespace
|
||||
type: share-cloud-resource
|
||||
properties:
|
||||
env: hongkong
|
||||
placements:
|
||||
- cluster: cluster-hongkong
|
||||
namespace: hk-project-2
|
||||
- cluster: cluster-hongkong
|
||||
namespace: hk-project-3
|
||||
```
|
||||
|
||||
### 参数说明 (deploy-cloud-resource)
|
||||
|
||||
|
||||
|
|
@ -598,6 +744,51 @@ spec:
|
|||
|
||||
Generate a JDBC connection based on Component of alibaba-rds。
|
||||
|
||||
### 示例 (generate-jdbc-connection)
|
||||
|
||||
```yaml
|
||||
apiVersion: core.oam.dev/v1beta1
|
||||
kind: Application
|
||||
metadata:
|
||||
name: jdbc
|
||||
spec:
|
||||
components:
|
||||
- name: db
|
||||
type: alibaba-rds
|
||||
properties:
|
||||
instance_name: favorite-links
|
||||
database_name: db1
|
||||
account_name: oamtest
|
||||
password: U34rfwefwefffaked
|
||||
security_ips: [ "0.0.0.0/0" ]
|
||||
privilege: ReadWrite
|
||||
writeConnectionSecretToRef:
|
||||
name: db-conn
|
||||
- name: express-server
|
||||
type: webservice
|
||||
properties:
|
||||
image: crccheck/hello-world
|
||||
port: 8000
|
||||
|
||||
workflow:
|
||||
steps:
|
||||
- name: jdbc
|
||||
type: generate-jdbc-connection
|
||||
outputs:
|
||||
- name: jdbc
|
||||
valueFrom: jdbc
|
||||
properties:
|
||||
name: db-conn
|
||||
namespace: default
|
||||
- name: apply
|
||||
type: apply-component
|
||||
inputs:
|
||||
- from: jdbc
|
||||
parameterKey: env
|
||||
properties:
|
||||
component: express-server
|
||||
```
|
||||
|
||||
### 参数说明 (generate-jdbc-connection)
|
||||
|
||||
|
||||
|
|
@ -613,6 +804,59 @@ Generate a JDBC connection based on Component of alibaba-rds。
|
|||
|
||||
List the configs。
|
||||
|
||||
### 示例 (list-config)
|
||||
|
||||
```yaml
|
||||
apiVersion: core.oam.dev/v1alpha1
|
||||
kind: WorkflowRun
|
||||
metadata:
|
||||
name: observability
|
||||
namespace: vela-system
|
||||
spec:
|
||||
context:
|
||||
readConfig: true
|
||||
mode:
|
||||
workflowSpec:
|
||||
steps:
|
||||
- name: Enable Prism
|
||||
type: addon-operation
|
||||
properties:
|
||||
addonName: vela-prism
|
||||
|
||||
- name: Enable o11y
|
||||
type: addon-operation
|
||||
properties:
|
||||
addonName: o11y-definitions
|
||||
operation: enable
|
||||
args:
|
||||
- --override-definitions
|
||||
|
||||
- name: Prepare Prometheus
|
||||
type: step-group
|
||||
subSteps:
|
||||
- name: get-exist-prometheus
|
||||
type: list-config
|
||||
properties:
|
||||
template: prometheus-server
|
||||
outputs:
|
||||
- name: prometheus
|
||||
valueFrom: "output.configs"
|
||||
|
||||
- name: prometheus-server
|
||||
inputs:
|
||||
- from: prometheus
|
||||
# TODO: Make it is not required
|
||||
parameterKey: configs
|
||||
if: "!context.readConfig || len(inputs.prometheus) == 0"
|
||||
type: addon-operation
|
||||
properties:
|
||||
addonName: prometheus-server
|
||||
operation: enable
|
||||
args:
|
||||
- memory=4096Mi
|
||||
- serviceType=LoadBalancer
|
||||
```
|
||||
|
||||
### 参数说明 (list-config)
|
||||
|
||||
|
||||
|
|
@ -934,6 +1178,27 @@ spec:
|
|||
|
||||
Read a config。
|
||||
|
||||
### 示例 (read-config)
|
||||
|
||||
```yaml
|
||||
kind: Application
|
||||
apiVersion: core.oam.dev/v1beta1
|
||||
metadata:
|
||||
name: test-config
|
||||
namespace: "config-e2e-test"
|
||||
spec:
|
||||
components: []
|
||||
workflow:
|
||||
steps:
|
||||
- name: read-config
|
||||
type: read-config
|
||||
properties:
|
||||
name: test
|
||||
outputs:
|
||||
- fromKey: config
|
||||
name: read-config
|
||||
```
|
||||
|
||||
### 参数说明 (read-config)
|
||||
|
||||
|
||||
|
|
@ -1007,6 +1272,89 @@ spec:
|
|||
|
||||
Sync secrets created by terraform component to runtime clusters so that runtime clusters can share the created cloud resource。
|
||||
|
||||
### 示例 (share-cloud-resource)
|
||||
|
||||
```yaml
|
||||
apiVersion: core.oam.dev/v1beta1
|
||||
kind: Application
|
||||
metadata:
|
||||
name: rds-app
|
||||
namespace: project-1
|
||||
spec:
|
||||
components:
|
||||
- name: db
|
||||
type: alibaba-rds
|
||||
properties:
|
||||
instance_name: db
|
||||
account_name: kubevela
|
||||
password: my-password
|
||||
writeConnectionSecretToRef:
|
||||
name: project-1-rds-conn-credential
|
||||
policies:
|
||||
- name: env-policy
|
||||
type: env-binding
|
||||
properties:
|
||||
envs:
|
||||
# 部署 RDS 给杭州集群
|
||||
- name: hangzhou
|
||||
placement:
|
||||
clusterSelector:
|
||||
name: cluster-hangzhou
|
||||
patch:
|
||||
components:
|
||||
- name: db
|
||||
type: alibaba-rds
|
||||
properties:
|
||||
# region: hangzhou
|
||||
instance_name: hangzhou_db
|
||||
# 部署 RDS 给香港集群
|
||||
- name: hongkong
|
||||
placement:
|
||||
clusterSelector:
|
||||
name: cluster-hongkong
|
||||
namespaceSelector:
|
||||
name: hk-project-1
|
||||
patch:
|
||||
components:
|
||||
- name: db
|
||||
type: alibaba-rds
|
||||
properties:
|
||||
# region: hongkong
|
||||
instance_name: hongkong_db
|
||||
writeConnectionSecretToRef:
|
||||
name: hk-project-rds-credential
|
||||
|
||||
workflow:
|
||||
steps:
|
||||
# 部署 RDS 给杭州区用
|
||||
- name: deploy-hangzhou-rds
|
||||
type: deploy-cloud-resource
|
||||
properties:
|
||||
env: hangzhou
|
||||
# 将给杭州区用的 RDS 共享给北京区
|
||||
- name: share-hangzhou-rds-to-beijing
|
||||
type: share-cloud-resource
|
||||
properties:
|
||||
env: hangzhou
|
||||
placements:
|
||||
- cluster: cluster-beijing
|
||||
# 部署 RDS 给香港区用
|
||||
- name: deploy-hongkong-rds
|
||||
type: deploy-cloud-resource
|
||||
properties:
|
||||
env: hongkong
|
||||
# 将给香港区用的 RDS 共享给香港区其他项目用
|
||||
- name: share-hongkong-rds-to-other-namespace
|
||||
type: share-cloud-resource
|
||||
properties:
|
||||
env: hongkong
|
||||
placements:
|
||||
- cluster: cluster-hongkong
|
||||
namespace: hk-project-2
|
||||
- cluster: cluster-hongkong
|
||||
namespace: hk-project-3
|
||||
```
|
||||
|
||||
### 参数说明 (share-cloud-resource)
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ title: 内置组件列表
|
|||
|
||||
本文档将**按字典序**展示所有内置组件的参数列表。
|
||||
|
||||
> 本文档由[脚本](../../contributor/cli-ref-doc)自动生成,请勿手动修改,上次更新于 2022-11-16T14:46:36+08:00。
|
||||
> 本文档由[脚本](../../contributor/cli-ref-doc)自动生成,请勿手动修改,上次更新于 2022-11-24T12:21:19+08:00。
|
||||
|
||||
## Cron-Task
|
||||
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ title: 内置运维特征列表
|
|||
|
||||
本文档将**按字典序**展示所有内置运维特征的参数列表。
|
||||
|
||||
> 本文档由[脚本](../../contributor/cli-ref-doc)自动生成,请勿手动修改,上次更新于 2022-11-16T14:46:36+08:00。
|
||||
> 本文档由[脚本](../../contributor/cli-ref-doc)自动生成,请勿手动修改,上次更新于 2022-11-24T12:21:19+08:00。
|
||||
|
||||
## Affinity
|
||||
|
||||
|
|
@ -24,6 +24,38 @@ title: 内置运维特征列表
|
|||
|
||||
|
||||
|
||||
### 示例 (affinity)
|
||||
|
||||
```yaml
|
||||
apiVersion: core.oam.dev/v1beta1
|
||||
kind: Application
|
||||
metadata:
|
||||
name: busybox
|
||||
spec:
|
||||
components:
|
||||
- name: busybox
|
||||
type: webservice
|
||||
properties:
|
||||
image: busybox
|
||||
cmd: ["sleep", "86400"]
|
||||
labels:
|
||||
label-key: label-value
|
||||
to-delete-label-key: to-delete-label-value
|
||||
traits:
|
||||
- type: affinity
|
||||
properties:
|
||||
podAffinity:
|
||||
preferred:
|
||||
- weight: 1
|
||||
podAffinityTerm:
|
||||
labelSelector:
|
||||
matchExpressions:
|
||||
- key: "secrity"
|
||||
values: ["S1"]
|
||||
namespaces: ["default"]
|
||||
topologyKey: "kubernetes.io/hostname"
|
||||
```
|
||||
|
||||
### 参数说明 (affinity)
|
||||
|
||||
|
||||
|
|
@ -847,6 +879,50 @@ spec:
|
|||
所有组件类型。
|
||||
|
||||
|
||||
### 示例 (json-merge-patch)
|
||||
|
||||
```yaml
|
||||
apiVersion: core.oam.dev/v1beta1
|
||||
kind: Application
|
||||
metadata:
|
||||
name: busybox
|
||||
spec:
|
||||
components:
|
||||
- name: busybox
|
||||
type: webservice
|
||||
properties:
|
||||
image: busybox
|
||||
cmd: ["sleep", "86400"]
|
||||
labels:
|
||||
pod-label-key: pod-label-value
|
||||
to-delete-label-key: to-delete-label-value
|
||||
traits:
|
||||
# the json merge patch can be used to add, replace and delete fields
|
||||
# the following part will
|
||||
# 1. add `deploy-label-key` to deployment labels
|
||||
# 2. set deployment replicas to 3
|
||||
# 3. set `pod-label-key` to `pod-label-modified-value` in pod labels
|
||||
# 4. delete `to-delete-label-key` in pod labels
|
||||
# 5. reset `containers` for pod
|
||||
- type: json-merge-patch
|
||||
properties:
|
||||
metadata:
|
||||
labels:
|
||||
deploy-label-key: deploy-label-added-value
|
||||
spec:
|
||||
replicas: 3
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
pod-label-key: pod-label-modified-value
|
||||
to-delete-label-key: null
|
||||
spec:
|
||||
containers:
|
||||
- name: busybox-new
|
||||
image: busybox:1.34
|
||||
command: ["sleep", "864000"]
|
||||
```
|
||||
|
||||
### 参数说明 (json-merge-patch)
|
||||
|
||||
|
||||
|
|
@ -868,6 +944,50 @@ spec:
|
|||
所有组件类型。
|
||||
|
||||
|
||||
### 示例 (json-patch)
|
||||
|
||||
```yaml
|
||||
apiVersion: core.oam.dev/v1beta1
|
||||
kind: Application
|
||||
metadata:
|
||||
name: busybox
|
||||
spec:
|
||||
components:
|
||||
- name: busybox
|
||||
type: webservice
|
||||
properties:
|
||||
image: busybox
|
||||
cmd: ["sleep", "86400"]
|
||||
labels:
|
||||
pod-label-key: pod-label-value
|
||||
to-delete-label-key: to-delete-label-value
|
||||
traits:
|
||||
# the json patch can be used to add, replace and delete fields
|
||||
# the following part will
|
||||
# 1. add `deploy-label-key` to deployment labels
|
||||
# 2. set deployment replicas to 3
|
||||
# 3. set `pod-label-key` to `pod-label-modified-value` in pod labels
|
||||
# 4. delete `to-delete-label-key` in pod labels
|
||||
# 5. add sidecar container for pod
|
||||
- type: json-patch
|
||||
properties:
|
||||
operations:
|
||||
- op: add
|
||||
path: "/spec/replicas"
|
||||
value: 3
|
||||
- op: replace
|
||||
path: "/spec/template/metadata/labels/pod-label-key"
|
||||
value: pod-label-modified-value
|
||||
- op: remove
|
||||
path: "/spec/template/metadata/labels/to-delete-label-key"
|
||||
- op: add
|
||||
path: "/spec/template/spec/containers/1"
|
||||
value:
|
||||
name: busybox-sidecar
|
||||
image: busybox:1.34
|
||||
command: ["sleep", "864000"]
|
||||
```
|
||||
|
||||
### 参数说明 (json-patch)
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ title: 内置工作流步骤列表
|
|||
|
||||
本文档将**按字典序**展示所有内置工作流步骤的参数列表。
|
||||
|
||||
> 本文档由[脚本](../../contributor/cli-ref-doc)自动生成,请勿手动修改,上次更新于 2022-11-16T14:46:36+08:00。
|
||||
> 本文档由[脚本](../../contributor/cli-ref-doc)自动生成,请勿手动修改,上次更新于 2022-11-24T12:21:19+08:00。
|
||||
|
||||
## Apply-Component
|
||||
|
||||
|
|
@ -180,6 +180,41 @@ This capability has no arguments.
|
|||
|
||||
Create or update a config。
|
||||
|
||||
### 示例 (create-config)
|
||||
|
||||
```yaml
|
||||
kind: Application
|
||||
apiVersion: core.oam.dev/v1beta1
|
||||
metadata:
|
||||
name: test-config
|
||||
namespace: "config-e2e-test"
|
||||
spec:
|
||||
components: []
|
||||
workflow:
|
||||
steps:
|
||||
- name: write-config
|
||||
type: create-config
|
||||
properties:
|
||||
name: test
|
||||
config:
|
||||
key1: value1
|
||||
key2: 2
|
||||
key3: true
|
||||
key4:
|
||||
key5: value5
|
||||
- name: read-config
|
||||
type: read-config
|
||||
properties:
|
||||
name: test
|
||||
outputs:
|
||||
- fromKey: config
|
||||
name: read-config
|
||||
- name: delete-config
|
||||
type: delete-config
|
||||
properties:
|
||||
name: test
|
||||
```
|
||||
|
||||
### 参数说明 (create-config)
|
||||
|
||||
|
||||
|
|
@ -197,6 +232,34 @@ Create or update a config。
|
|||
|
||||
Delete a config。
|
||||
|
||||
### 示例 (delete-config)
|
||||
|
||||
```yaml
|
||||
kind: Application
|
||||
apiVersion: core.oam.dev/v1beta1
|
||||
metadata:
|
||||
name: test-config
|
||||
namespace: "config-e2e-test"
|
||||
spec:
|
||||
components: []
|
||||
workflow:
|
||||
steps:
|
||||
- name: write-config
|
||||
type: create-config
|
||||
properties:
|
||||
name: test
|
||||
config:
|
||||
key1: value1
|
||||
key2: 2
|
||||
key3: true
|
||||
key4:
|
||||
key5: value5
|
||||
- name: delete-config
|
||||
type: delete-config
|
||||
properties:
|
||||
name: test
|
||||
```
|
||||
|
||||
### 参数说明 (delete-config)
|
||||
|
||||
|
||||
|
|
@ -330,6 +393,89 @@ spec:
|
|||
|
||||
将云资源生成的秘钥部署到多集群。
|
||||
|
||||
### 示例 (deploy-cloud-resource)
|
||||
|
||||
```yaml
|
||||
apiVersion: core.oam.dev/v1beta1
|
||||
kind: Application
|
||||
metadata:
|
||||
name: rds-app
|
||||
namespace: project-1
|
||||
spec:
|
||||
components:
|
||||
- name: db
|
||||
type: alibaba-rds
|
||||
properties:
|
||||
instance_name: db
|
||||
account_name: kubevela
|
||||
password: my-password
|
||||
writeConnectionSecretToRef:
|
||||
name: project-1-rds-conn-credential
|
||||
policies:
|
||||
- name: env-policy
|
||||
type: env-binding
|
||||
properties:
|
||||
envs:
|
||||
# 部署 RDS 给杭州集群
|
||||
- name: hangzhou
|
||||
placement:
|
||||
clusterSelector:
|
||||
name: cluster-hangzhou
|
||||
patch:
|
||||
components:
|
||||
- name: db
|
||||
type: alibaba-rds
|
||||
properties:
|
||||
# region: hangzhou
|
||||
instance_name: hangzhou_db
|
||||
# 部署 RDS 给香港集群
|
||||
- name: hongkong
|
||||
placement:
|
||||
clusterSelector:
|
||||
name: cluster-hongkong
|
||||
namespaceSelector:
|
||||
name: hk-project-1
|
||||
patch:
|
||||
components:
|
||||
- name: db
|
||||
type: alibaba-rds
|
||||
properties:
|
||||
# region: hongkong
|
||||
instance_name: hongkong_db
|
||||
writeConnectionSecretToRef:
|
||||
name: hk-project-rds-credential
|
||||
|
||||
workflow:
|
||||
steps:
|
||||
# 部署 RDS 给杭州区用
|
||||
- name: deploy-hangzhou-rds
|
||||
type: deploy-cloud-resource
|
||||
properties:
|
||||
env: hangzhou
|
||||
# 将给杭州区用的 RDS 共享给北京区
|
||||
- name: share-hangzhou-rds-to-beijing
|
||||
type: share-cloud-resource
|
||||
properties:
|
||||
env: hangzhou
|
||||
placements:
|
||||
- cluster: cluster-beijing
|
||||
# 部署 RDS 给香港区用
|
||||
- name: deploy-hongkong-rds
|
||||
type: deploy-cloud-resource
|
||||
properties:
|
||||
env: hongkong
|
||||
# 将给香港区用的 RDS 共享给香港区其他项目用
|
||||
- name: share-hongkong-rds-to-other-namespace
|
||||
type: share-cloud-resource
|
||||
properties:
|
||||
env: hongkong
|
||||
placements:
|
||||
- cluster: cluster-hongkong
|
||||
namespace: hk-project-2
|
||||
- cluster: cluster-hongkong
|
||||
namespace: hk-project-3
|
||||
```
|
||||
|
||||
### 参数说明 (deploy-cloud-resource)
|
||||
|
||||
|
||||
|
|
@ -598,6 +744,51 @@ spec:
|
|||
|
||||
Generate a JDBC connection based on Component of alibaba-rds。
|
||||
|
||||
### 示例 (generate-jdbc-connection)
|
||||
|
||||
```yaml
|
||||
apiVersion: core.oam.dev/v1beta1
|
||||
kind: Application
|
||||
metadata:
|
||||
name: jdbc
|
||||
spec:
|
||||
components:
|
||||
- name: db
|
||||
type: alibaba-rds
|
||||
properties:
|
||||
instance_name: favorite-links
|
||||
database_name: db1
|
||||
account_name: oamtest
|
||||
password: U34rfwefwefffaked
|
||||
security_ips: [ "0.0.0.0/0" ]
|
||||
privilege: ReadWrite
|
||||
writeConnectionSecretToRef:
|
||||
name: db-conn
|
||||
- name: express-server
|
||||
type: webservice
|
||||
properties:
|
||||
image: crccheck/hello-world
|
||||
port: 8000
|
||||
|
||||
workflow:
|
||||
steps:
|
||||
- name: jdbc
|
||||
type: generate-jdbc-connection
|
||||
outputs:
|
||||
- name: jdbc
|
||||
valueFrom: jdbc
|
||||
properties:
|
||||
name: db-conn
|
||||
namespace: default
|
||||
- name: apply
|
||||
type: apply-component
|
||||
inputs:
|
||||
- from: jdbc
|
||||
parameterKey: env
|
||||
properties:
|
||||
component: express-server
|
||||
```
|
||||
|
||||
### 参数说明 (generate-jdbc-connection)
|
||||
|
||||
|
||||
|
|
@ -613,6 +804,59 @@ Generate a JDBC connection based on Component of alibaba-rds。
|
|||
|
||||
List the configs。
|
||||
|
||||
### 示例 (list-config)
|
||||
|
||||
```yaml
|
||||
apiVersion: core.oam.dev/v1alpha1
|
||||
kind: WorkflowRun
|
||||
metadata:
|
||||
name: observability
|
||||
namespace: vela-system
|
||||
spec:
|
||||
context:
|
||||
readConfig: true
|
||||
mode:
|
||||
workflowSpec:
|
||||
steps:
|
||||
- name: Enable Prism
|
||||
type: addon-operation
|
||||
properties:
|
||||
addonName: vela-prism
|
||||
|
||||
- name: Enable o11y
|
||||
type: addon-operation
|
||||
properties:
|
||||
addonName: o11y-definitions
|
||||
operation: enable
|
||||
args:
|
||||
- --override-definitions
|
||||
|
||||
- name: Prepare Prometheus
|
||||
type: step-group
|
||||
subSteps:
|
||||
- name: get-exist-prometheus
|
||||
type: list-config
|
||||
properties:
|
||||
template: prometheus-server
|
||||
outputs:
|
||||
- name: prometheus
|
||||
valueFrom: "output.configs"
|
||||
|
||||
- name: prometheus-server
|
||||
inputs:
|
||||
- from: prometheus
|
||||
# TODO: Make it is not required
|
||||
parameterKey: configs
|
||||
if: "!context.readConfig || len(inputs.prometheus) == 0"
|
||||
type: addon-operation
|
||||
properties:
|
||||
addonName: prometheus-server
|
||||
operation: enable
|
||||
args:
|
||||
- memory=4096Mi
|
||||
- serviceType=LoadBalancer
|
||||
```
|
||||
|
||||
### 参数说明 (list-config)
|
||||
|
||||
|
||||
|
|
@ -934,6 +1178,27 @@ spec:
|
|||
|
||||
Read a config。
|
||||
|
||||
### 示例 (read-config)
|
||||
|
||||
```yaml
|
||||
kind: Application
|
||||
apiVersion: core.oam.dev/v1beta1
|
||||
metadata:
|
||||
name: test-config
|
||||
namespace: "config-e2e-test"
|
||||
spec:
|
||||
components: []
|
||||
workflow:
|
||||
steps:
|
||||
- name: read-config
|
||||
type: read-config
|
||||
properties:
|
||||
name: test
|
||||
outputs:
|
||||
- fromKey: config
|
||||
name: read-config
|
||||
```
|
||||
|
||||
### 参数说明 (read-config)
|
||||
|
||||
|
||||
|
|
@ -1007,6 +1272,89 @@ spec:
|
|||
|
||||
Sync secrets created by terraform component to runtime clusters so that runtime clusters can share the created cloud resource。
|
||||
|
||||
### 示例 (share-cloud-resource)
|
||||
|
||||
```yaml
|
||||
apiVersion: core.oam.dev/v1beta1
|
||||
kind: Application
|
||||
metadata:
|
||||
name: rds-app
|
||||
namespace: project-1
|
||||
spec:
|
||||
components:
|
||||
- name: db
|
||||
type: alibaba-rds
|
||||
properties:
|
||||
instance_name: db
|
||||
account_name: kubevela
|
||||
password: my-password
|
||||
writeConnectionSecretToRef:
|
||||
name: project-1-rds-conn-credential
|
||||
policies:
|
||||
- name: env-policy
|
||||
type: env-binding
|
||||
properties:
|
||||
envs:
|
||||
# 部署 RDS 给杭州集群
|
||||
- name: hangzhou
|
||||
placement:
|
||||
clusterSelector:
|
||||
name: cluster-hangzhou
|
||||
patch:
|
||||
components:
|
||||
- name: db
|
||||
type: alibaba-rds
|
||||
properties:
|
||||
# region: hangzhou
|
||||
instance_name: hangzhou_db
|
||||
# 部署 RDS 给香港集群
|
||||
- name: hongkong
|
||||
placement:
|
||||
clusterSelector:
|
||||
name: cluster-hongkong
|
||||
namespaceSelector:
|
||||
name: hk-project-1
|
||||
patch:
|
||||
components:
|
||||
- name: db
|
||||
type: alibaba-rds
|
||||
properties:
|
||||
# region: hongkong
|
||||
instance_name: hongkong_db
|
||||
writeConnectionSecretToRef:
|
||||
name: hk-project-rds-credential
|
||||
|
||||
workflow:
|
||||
steps:
|
||||
# 部署 RDS 给杭州区用
|
||||
- name: deploy-hangzhou-rds
|
||||
type: deploy-cloud-resource
|
||||
properties:
|
||||
env: hangzhou
|
||||
# 将给杭州区用的 RDS 共享给北京区
|
||||
- name: share-hangzhou-rds-to-beijing
|
||||
type: share-cloud-resource
|
||||
properties:
|
||||
env: hangzhou
|
||||
placements:
|
||||
- cluster: cluster-beijing
|
||||
# 部署 RDS 给香港区用
|
||||
- name: deploy-hongkong-rds
|
||||
type: deploy-cloud-resource
|
||||
properties:
|
||||
env: hongkong
|
||||
# 将给香港区用的 RDS 共享给香港区其他项目用
|
||||
- name: share-hongkong-rds-to-other-namespace
|
||||
type: share-cloud-resource
|
||||
properties:
|
||||
env: hongkong
|
||||
placements:
|
||||
- cluster: cluster-hongkong
|
||||
namespace: hk-project-2
|
||||
- cluster: cluster-hongkong
|
||||
namespace: hk-project-3
|
||||
```
|
||||
|
||||
### 参数说明 (share-cloud-resource)
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ title: Built-in Component Type
|
|||
|
||||
This documentation will walk through all the built-in component types sorted alphabetically.
|
||||
|
||||
> It was generated automatically by [scripts](../../contributor/cli-ref-doc), please don't update manually, last updated at 2022-11-16T14:46:36+08:00.
|
||||
> It was generated automatically by [scripts](../../contributor/cli-ref-doc), please don't update manually, last updated at 2022-11-24T12:21:19+08:00.
|
||||
|
||||
## Cron-Task
|
||||
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ title: Built-in Trait Type
|
|||
|
||||
This documentation will walk through all the built-in trait types sorted alphabetically.
|
||||
|
||||
> It was generated automatically by [scripts](../../contributor/cli-ref-doc), please don't update manually, last updated at 2022-11-16T14:46:36+08:00.
|
||||
> It was generated automatically by [scripts](../../contributor/cli-ref-doc), please don't update manually, last updated at 2022-11-24T12:21:19+08:00.
|
||||
|
||||
## Affinity
|
||||
|
||||
|
|
@ -24,6 +24,38 @@ Component based on the following kinds of resources:
|
|||
|
||||
|
||||
|
||||
### Examples (affinity)
|
||||
|
||||
```yaml
|
||||
apiVersion: core.oam.dev/v1beta1
|
||||
kind: Application
|
||||
metadata:
|
||||
name: busybox
|
||||
spec:
|
||||
components:
|
||||
- name: busybox
|
||||
type: webservice
|
||||
properties:
|
||||
image: busybox
|
||||
cmd: ["sleep", "86400"]
|
||||
labels:
|
||||
label-key: label-value
|
||||
to-delete-label-key: to-delete-label-value
|
||||
traits:
|
||||
- type: affinity
|
||||
properties:
|
||||
podAffinity:
|
||||
preferred:
|
||||
- weight: 1
|
||||
podAffinityTerm:
|
||||
labelSelector:
|
||||
matchExpressions:
|
||||
- key: "secrity"
|
||||
values: ["S1"]
|
||||
namespaces: ["default"]
|
||||
topologyKey: "kubernetes.io/hostname"
|
||||
```
|
||||
|
||||
### Specification (affinity)
|
||||
|
||||
|
||||
|
|
@ -847,6 +879,50 @@ Patch the output following Json Merge Patch strategy, following RFC 7396.
|
|||
All Component Types
|
||||
|
||||
|
||||
### Examples (json-merge-patch)
|
||||
|
||||
```yaml
|
||||
apiVersion: core.oam.dev/v1beta1
|
||||
kind: Application
|
||||
metadata:
|
||||
name: busybox
|
||||
spec:
|
||||
components:
|
||||
- name: busybox
|
||||
type: webservice
|
||||
properties:
|
||||
image: busybox
|
||||
cmd: ["sleep", "86400"]
|
||||
labels:
|
||||
pod-label-key: pod-label-value
|
||||
to-delete-label-key: to-delete-label-value
|
||||
traits:
|
||||
# the json merge patch can be used to add, replace and delete fields
|
||||
# the following part will
|
||||
# 1. add `deploy-label-key` to deployment labels
|
||||
# 2. set deployment replicas to 3
|
||||
# 3. set `pod-label-key` to `pod-label-modified-value` in pod labels
|
||||
# 4. delete `to-delete-label-key` in pod labels
|
||||
# 5. reset `containers` for pod
|
||||
- type: json-merge-patch
|
||||
properties:
|
||||
metadata:
|
||||
labels:
|
||||
deploy-label-key: deploy-label-added-value
|
||||
spec:
|
||||
replicas: 3
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
pod-label-key: pod-label-modified-value
|
||||
to-delete-label-key: null
|
||||
spec:
|
||||
containers:
|
||||
- name: busybox-new
|
||||
image: busybox:1.34
|
||||
command: ["sleep", "864000"]
|
||||
```
|
||||
|
||||
### Specification (json-merge-patch)
|
||||
|
||||
|
||||
|
|
@ -868,6 +944,50 @@ Patch the output following Json Patch strategy, following RFC 6902.
|
|||
All Component Types
|
||||
|
||||
|
||||
### Examples (json-patch)
|
||||
|
||||
```yaml
|
||||
apiVersion: core.oam.dev/v1beta1
|
||||
kind: Application
|
||||
metadata:
|
||||
name: busybox
|
||||
spec:
|
||||
components:
|
||||
- name: busybox
|
||||
type: webservice
|
||||
properties:
|
||||
image: busybox
|
||||
cmd: ["sleep", "86400"]
|
||||
labels:
|
||||
pod-label-key: pod-label-value
|
||||
to-delete-label-key: to-delete-label-value
|
||||
traits:
|
||||
# the json patch can be used to add, replace and delete fields
|
||||
# the following part will
|
||||
# 1. add `deploy-label-key` to deployment labels
|
||||
# 2. set deployment replicas to 3
|
||||
# 3. set `pod-label-key` to `pod-label-modified-value` in pod labels
|
||||
# 4. delete `to-delete-label-key` in pod labels
|
||||
# 5. add sidecar container for pod
|
||||
- type: json-patch
|
||||
properties:
|
||||
operations:
|
||||
- op: add
|
||||
path: "/spec/replicas"
|
||||
value: 3
|
||||
- op: replace
|
||||
path: "/spec/template/metadata/labels/pod-label-key"
|
||||
value: pod-label-modified-value
|
||||
- op: remove
|
||||
path: "/spec/template/metadata/labels/to-delete-label-key"
|
||||
- op: add
|
||||
path: "/spec/template/spec/containers/1"
|
||||
value:
|
||||
name: busybox-sidecar
|
||||
image: busybox:1.34
|
||||
command: ["sleep", "864000"]
|
||||
```
|
||||
|
||||
### Specification (json-patch)
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ title: Built-in WorkflowStep Type
|
|||
|
||||
This documentation will walk through all the built-in workflow step types sorted alphabetically.
|
||||
|
||||
> It was generated automatically by [scripts](../../contributor/cli-ref-doc), please don't update manually, last updated at 2022-11-16T14:46:36+08:00.
|
||||
> It was generated automatically by [scripts](../../contributor/cli-ref-doc), please don't update manually, last updated at 2022-11-24T12:21:19+08:00.
|
||||
|
||||
## Apply-Component
|
||||
|
||||
|
|
@ -180,6 +180,41 @@ This capability has no arguments.
|
|||
|
||||
Create or update a config.
|
||||
|
||||
### Examples (create-config)
|
||||
|
||||
```yaml
|
||||
kind: Application
|
||||
apiVersion: core.oam.dev/v1beta1
|
||||
metadata:
|
||||
name: test-config
|
||||
namespace: "config-e2e-test"
|
||||
spec:
|
||||
components: []
|
||||
workflow:
|
||||
steps:
|
||||
- name: write-config
|
||||
type: create-config
|
||||
properties:
|
||||
name: test
|
||||
config:
|
||||
key1: value1
|
||||
key2: 2
|
||||
key3: true
|
||||
key4:
|
||||
key5: value5
|
||||
- name: read-config
|
||||
type: read-config
|
||||
properties:
|
||||
name: test
|
||||
outputs:
|
||||
- fromKey: config
|
||||
name: read-config
|
||||
- name: delete-config
|
||||
type: delete-config
|
||||
properties:
|
||||
name: test
|
||||
```
|
||||
|
||||
### Specification (create-config)
|
||||
|
||||
|
||||
|
|
@ -197,6 +232,34 @@ Create or update a config.
|
|||
|
||||
Delete a config.
|
||||
|
||||
### Examples (delete-config)
|
||||
|
||||
```yaml
|
||||
kind: Application
|
||||
apiVersion: core.oam.dev/v1beta1
|
||||
metadata:
|
||||
name: test-config
|
||||
namespace: "config-e2e-test"
|
||||
spec:
|
||||
components: []
|
||||
workflow:
|
||||
steps:
|
||||
- name: write-config
|
||||
type: create-config
|
||||
properties:
|
||||
name: test
|
||||
config:
|
||||
key1: value1
|
||||
key2: 2
|
||||
key3: true
|
||||
key4:
|
||||
key5: value5
|
||||
- name: delete-config
|
||||
type: delete-config
|
||||
properties:
|
||||
name: test
|
||||
```
|
||||
|
||||
### Specification (delete-config)
|
||||
|
||||
|
||||
|
|
@ -330,6 +393,89 @@ spec:
|
|||
|
||||
Deploy cloud resource and deliver secret to multi clusters.
|
||||
|
||||
### Examples (deploy-cloud-resource)
|
||||
|
||||
```yaml
|
||||
apiVersion: core.oam.dev/v1beta1
|
||||
kind: Application
|
||||
metadata:
|
||||
name: rds-app
|
||||
namespace: project-1
|
||||
spec:
|
||||
components:
|
||||
- name: db
|
||||
type: alibaba-rds
|
||||
properties:
|
||||
instance_name: db
|
||||
account_name: kubevela
|
||||
password: my-password
|
||||
writeConnectionSecretToRef:
|
||||
name: project-1-rds-conn-credential
|
||||
policies:
|
||||
- name: env-policy
|
||||
type: env-binding
|
||||
properties:
|
||||
envs:
|
||||
# 部署 RDS 给杭州集群
|
||||
- name: hangzhou
|
||||
placement:
|
||||
clusterSelector:
|
||||
name: cluster-hangzhou
|
||||
patch:
|
||||
components:
|
||||
- name: db
|
||||
type: alibaba-rds
|
||||
properties:
|
||||
# region: hangzhou
|
||||
instance_name: hangzhou_db
|
||||
# 部署 RDS 给香港集群
|
||||
- name: hongkong
|
||||
placement:
|
||||
clusterSelector:
|
||||
name: cluster-hongkong
|
||||
namespaceSelector:
|
||||
name: hk-project-1
|
||||
patch:
|
||||
components:
|
||||
- name: db
|
||||
type: alibaba-rds
|
||||
properties:
|
||||
# region: hongkong
|
||||
instance_name: hongkong_db
|
||||
writeConnectionSecretToRef:
|
||||
name: hk-project-rds-credential
|
||||
|
||||
workflow:
|
||||
steps:
|
||||
# 部署 RDS 给杭州区用
|
||||
- name: deploy-hangzhou-rds
|
||||
type: deploy-cloud-resource
|
||||
properties:
|
||||
env: hangzhou
|
||||
# 将给杭州区用的 RDS 共享给北京区
|
||||
- name: share-hangzhou-rds-to-beijing
|
||||
type: share-cloud-resource
|
||||
properties:
|
||||
env: hangzhou
|
||||
placements:
|
||||
- cluster: cluster-beijing
|
||||
# 部署 RDS 给香港区用
|
||||
- name: deploy-hongkong-rds
|
||||
type: deploy-cloud-resource
|
||||
properties:
|
||||
env: hongkong
|
||||
# 将给香港区用的 RDS 共享给香港区其他项目用
|
||||
- name: share-hongkong-rds-to-other-namespace
|
||||
type: share-cloud-resource
|
||||
properties:
|
||||
env: hongkong
|
||||
placements:
|
||||
- cluster: cluster-hongkong
|
||||
namespace: hk-project-2
|
||||
- cluster: cluster-hongkong
|
||||
namespace: hk-project-3
|
||||
```
|
||||
|
||||
### Specification (deploy-cloud-resource)
|
||||
|
||||
|
||||
|
|
@ -598,6 +744,51 @@ spec:
|
|||
|
||||
Generate a JDBC connection based on Component of alibaba-rds.
|
||||
|
||||
### Examples (generate-jdbc-connection)
|
||||
|
||||
```yaml
|
||||
apiVersion: core.oam.dev/v1beta1
|
||||
kind: Application
|
||||
metadata:
|
||||
name: jdbc
|
||||
spec:
|
||||
components:
|
||||
- name: db
|
||||
type: alibaba-rds
|
||||
properties:
|
||||
instance_name: favorite-links
|
||||
database_name: db1
|
||||
account_name: oamtest
|
||||
password: U34rfwefwefffaked
|
||||
security_ips: [ "0.0.0.0/0" ]
|
||||
privilege: ReadWrite
|
||||
writeConnectionSecretToRef:
|
||||
name: db-conn
|
||||
- name: express-server
|
||||
type: webservice
|
||||
properties:
|
||||
image: crccheck/hello-world
|
||||
port: 8000
|
||||
|
||||
workflow:
|
||||
steps:
|
||||
- name: jdbc
|
||||
type: generate-jdbc-connection
|
||||
outputs:
|
||||
- name: jdbc
|
||||
valueFrom: jdbc
|
||||
properties:
|
||||
name: db-conn
|
||||
namespace: default
|
||||
- name: apply
|
||||
type: apply-component
|
||||
inputs:
|
||||
- from: jdbc
|
||||
parameterKey: env
|
||||
properties:
|
||||
component: express-server
|
||||
```
|
||||
|
||||
### Specification (generate-jdbc-connection)
|
||||
|
||||
|
||||
|
|
@ -613,6 +804,59 @@ Generate a JDBC connection based on Component of alibaba-rds.
|
|||
|
||||
List the configs.
|
||||
|
||||
### Examples (list-config)
|
||||
|
||||
```yaml
|
||||
apiVersion: core.oam.dev/v1alpha1
|
||||
kind: WorkflowRun
|
||||
metadata:
|
||||
name: observability
|
||||
namespace: vela-system
|
||||
spec:
|
||||
context:
|
||||
readConfig: true
|
||||
mode:
|
||||
workflowSpec:
|
||||
steps:
|
||||
- name: Enable Prism
|
||||
type: addon-operation
|
||||
properties:
|
||||
addonName: vela-prism
|
||||
|
||||
- name: Enable o11y
|
||||
type: addon-operation
|
||||
properties:
|
||||
addonName: o11y-definitions
|
||||
operation: enable
|
||||
args:
|
||||
- --override-definitions
|
||||
|
||||
- name: Prepare Prometheus
|
||||
type: step-group
|
||||
subSteps:
|
||||
- name: get-exist-prometheus
|
||||
type: list-config
|
||||
properties:
|
||||
template: prometheus-server
|
||||
outputs:
|
||||
- name: prometheus
|
||||
valueFrom: "output.configs"
|
||||
|
||||
- name: prometheus-server
|
||||
inputs:
|
||||
- from: prometheus
|
||||
# TODO: Make it is not required
|
||||
parameterKey: configs
|
||||
if: "!context.readConfig || len(inputs.prometheus) == 0"
|
||||
type: addon-operation
|
||||
properties:
|
||||
addonName: prometheus-server
|
||||
operation: enable
|
||||
args:
|
||||
- memory=4096Mi
|
||||
- serviceType=LoadBalancer
|
||||
```
|
||||
|
||||
### Specification (list-config)
|
||||
|
||||
|
||||
|
|
@ -934,6 +1178,27 @@ spec:
|
|||
|
||||
Read a config.
|
||||
|
||||
### Examples (read-config)
|
||||
|
||||
```yaml
|
||||
kind: Application
|
||||
apiVersion: core.oam.dev/v1beta1
|
||||
metadata:
|
||||
name: test-config
|
||||
namespace: "config-e2e-test"
|
||||
spec:
|
||||
components: []
|
||||
workflow:
|
||||
steps:
|
||||
- name: read-config
|
||||
type: read-config
|
||||
properties:
|
||||
name: test
|
||||
outputs:
|
||||
- fromKey: config
|
||||
name: read-config
|
||||
```
|
||||
|
||||
### Specification (read-config)
|
||||
|
||||
|
||||
|
|
@ -1007,6 +1272,89 @@ spec:
|
|||
|
||||
Sync secrets created by terraform component to runtime clusters so that runtime clusters can share the created cloud resource.
|
||||
|
||||
### Examples (share-cloud-resource)
|
||||
|
||||
```yaml
|
||||
apiVersion: core.oam.dev/v1beta1
|
||||
kind: Application
|
||||
metadata:
|
||||
name: rds-app
|
||||
namespace: project-1
|
||||
spec:
|
||||
components:
|
||||
- name: db
|
||||
type: alibaba-rds
|
||||
properties:
|
||||
instance_name: db
|
||||
account_name: kubevela
|
||||
password: my-password
|
||||
writeConnectionSecretToRef:
|
||||
name: project-1-rds-conn-credential
|
||||
policies:
|
||||
- name: env-policy
|
||||
type: env-binding
|
||||
properties:
|
||||
envs:
|
||||
# 部署 RDS 给杭州集群
|
||||
- name: hangzhou
|
||||
placement:
|
||||
clusterSelector:
|
||||
name: cluster-hangzhou
|
||||
patch:
|
||||
components:
|
||||
- name: db
|
||||
type: alibaba-rds
|
||||
properties:
|
||||
# region: hangzhou
|
||||
instance_name: hangzhou_db
|
||||
# 部署 RDS 给香港集群
|
||||
- name: hongkong
|
||||
placement:
|
||||
clusterSelector:
|
||||
name: cluster-hongkong
|
||||
namespaceSelector:
|
||||
name: hk-project-1
|
||||
patch:
|
||||
components:
|
||||
- name: db
|
||||
type: alibaba-rds
|
||||
properties:
|
||||
# region: hongkong
|
||||
instance_name: hongkong_db
|
||||
writeConnectionSecretToRef:
|
||||
name: hk-project-rds-credential
|
||||
|
||||
workflow:
|
||||
steps:
|
||||
# 部署 RDS 给杭州区用
|
||||
- name: deploy-hangzhou-rds
|
||||
type: deploy-cloud-resource
|
||||
properties:
|
||||
env: hangzhou
|
||||
# 将给杭州区用的 RDS 共享给北京区
|
||||
- name: share-hangzhou-rds-to-beijing
|
||||
type: share-cloud-resource
|
||||
properties:
|
||||
env: hangzhou
|
||||
placements:
|
||||
- cluster: cluster-beijing
|
||||
# 部署 RDS 给香港区用
|
||||
- name: deploy-hongkong-rds
|
||||
type: deploy-cloud-resource
|
||||
properties:
|
||||
env: hongkong
|
||||
# 将给香港区用的 RDS 共享给香港区其他项目用
|
||||
- name: share-hongkong-rds-to-other-namespace
|
||||
type: share-cloud-resource
|
||||
properties:
|
||||
env: hongkong
|
||||
placements:
|
||||
- cluster: cluster-hongkong
|
||||
namespace: hk-project-2
|
||||
- cluster: cluster-hongkong
|
||||
namespace: hk-project-3
|
||||
```
|
||||
|
||||
### Specification (share-cloud-resource)
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -1,12 +1,10 @@
|
|||
---
|
||||
title: Version Control for Definition
|
||||
title: Version Control for Definitions
|
||||
---
|
||||
|
||||
When the capabilities(Component or Trait) changes, KubeVela will generate a definition revision automatically.
|
||||
When an [OAM definition](../getting-started/definition) is updated, KubeVela will automatically generate a new revision of this definition.
|
||||
|
||||
* Check ComponentDefinition Revision
|
||||
|
||||
> Note: there are only one revision of definition if you never update it.
|
||||
To list the revisions of the `webservice` Component, run:
|
||||
|
||||
```bash
|
||||
$ vela def get webservice --revisions
|
||||
|
|
@ -15,7 +13,8 @@ webservice 1 Component dfa072dac5088ed8
|
|||
webservice 2 Component 519e11eb7cbe9cdd
|
||||
```
|
||||
|
||||
* Check TraitDefinition Revision
|
||||
|
||||
To list the revisions of the `affinity` Trait, run:
|
||||
|
||||
```shell
|
||||
$ vela def get affinity --revisions
|
||||
|
|
@ -24,7 +23,7 @@ affinity 1 Trait 9db54dd8d5314bd5
|
|||
affinity 2 Trait 8bf3e82a6884db2c
|
||||
```
|
||||
|
||||
* Check PolicyDefinition Revision
|
||||
To list the revisions of the `override` Policy, run:
|
||||
|
||||
```shell
|
||||
$ vela def get override --revisions
|
||||
|
|
@ -32,7 +31,9 @@ NAME REVISION TYPE HASH
|
|||
override 1 Policy f6f87a5eb2271b8a
|
||||
```
|
||||
|
||||
* Check WorkflowStepDefinition Revision
|
||||
> Note: there is only one revision of a definition if the definition has never been updated
|
||||
|
||||
To list the revisions of the `deploy` WorkflowStep, run:
|
||||
|
||||
```shell
|
||||
$ vela def get deploy --revisions
|
||||
|
|
@ -40,13 +41,12 @@ NAME REVISION TYPE HASH
|
|||
deploy 1 WorkflowStep 2ea741dae457850b
|
||||
```
|
||||
|
||||
The best way to control version is using a new name for every definition version.
|
||||
## Specifing a Specific Definition Revision in an Application
|
||||
|
||||
## Specify Component/Trait Capability Revision in Application
|
||||
Users can specify the revision of a definition they would like to use by specifying definition types in the form `<definition-name>@<definition-revision>`.
|
||||
|
||||
Users can specify the revision with `@version` approach, for example, if a user want to stick to using the `v1` revision of `webservice` component.
|
||||
|
||||
System admin can also write a webhook to inject the version automatically.
|
||||
For example, if a user wanted to use the `v3` revision of `webservice` Component, they would use `webservice@v3` as the `type` in their
|
||||
component specification.
|
||||
|
||||
```yaml
|
||||
apiVersion: core.oam.dev/v1beta1
|
||||
|
|
@ -56,11 +56,17 @@ metadata:
|
|||
spec:
|
||||
components:
|
||||
- name: express-server
|
||||
type: webservice@v1
|
||||
type: webservice@v3
|
||||
properties:
|
||||
image: stefanprodan/podinfo:4.0.3
|
||||
```
|
||||
|
||||
In this way, if system admin changes the ComponentDefinition, it won't affect your application.
|
||||
This ensures that if an administrator of your KubeVela instance modifies the `webservice` definition, your application will not be
|
||||
affected.
|
||||
|
||||
If no revision specified, KubeVela will always use the latest revision when you upgrade your application.
|
||||
If no revision is specified for a definition, KubeVela will use the latest revision available at evaluation time.
|
||||
This will usually be the next time you upgrade your application.
|
||||
|
||||
:::tip
|
||||
Cluster administrators can create admission webhooks that will set a definition revision if the field is not set
|
||||
:::
|
||||
|
|
|
|||
Loading…
Reference in New Issue