mirror of
https://github.com/kubevela/kubevela.git
synced 2026-03-27 13:57:52 +00:00
* Feat: add support for envbinding with namespace selector * Fix: service account kubeconfig e2e-test * Docs: add comments to explain functions * Docs: add envbinding example
79 lines
2.0 KiB
YAML
79 lines
2.0 KiB
YAML
apiVersion: core.oam.dev/v1beta1
|
|
kind: Application
|
|
metadata:
|
|
name: example-app
|
|
namespace: default
|
|
spec:
|
|
components:
|
|
- name: hello-world-server
|
|
type: webservice
|
|
properties:
|
|
image: crccheck/hello-world
|
|
port: 8000
|
|
traits:
|
|
- type: scaler
|
|
properties:
|
|
replicas: 1
|
|
- name: data-worker
|
|
type: worker
|
|
properties:
|
|
image: busybox
|
|
cmd:
|
|
- sleep
|
|
- '1000000'
|
|
policies:
|
|
- name: example-multi-env-policy
|
|
type: env-binding
|
|
properties:
|
|
envs:
|
|
- name: test
|
|
placement: # selecting the namespace (in local cluster) to deploy to
|
|
namespaceSelector:
|
|
name: test
|
|
selector:
|
|
components:
|
|
- data-worker
|
|
|
|
- name: staging
|
|
placement: # selecting the cluster to deploy to
|
|
clusterSelector:
|
|
name: cluster-worker
|
|
|
|
- name: prod
|
|
placement: # selecting both namespace and cluster to deploy to
|
|
clusterSelector:
|
|
name: cluster-worker
|
|
namespaceSelector:
|
|
name: prod
|
|
patch: # overlay patch on above components
|
|
components:
|
|
- name: hello-world-server
|
|
type: webservice
|
|
traits:
|
|
- type: scaler
|
|
properties:
|
|
replicas: 3
|
|
|
|
workflow:
|
|
steps:
|
|
# deploy to test env
|
|
- name: deploy-test
|
|
type: deploy2env
|
|
properties:
|
|
policy: example-multi-env-policy
|
|
env: test
|
|
|
|
# deploy to staging env
|
|
- name: deploy-staging
|
|
type: deploy2env
|
|
properties:
|
|
policy: example-multi-env-policy
|
|
env: staging
|
|
|
|
# deploy to prod env
|
|
- name: deploy-prod
|
|
type: deploy2env
|
|
properties:
|
|
policy: example-multi-env-policy
|
|
env: prod
|