From 371cfa3a570f6a23cfe7aab8575afe4575574b11 Mon Sep 17 00:00:00 2001 From: szihai Date: Sun, 1 Nov 2020 09:44:09 -0800 Subject: [PATCH] add webservice template --- examples/kubecondemo/README.md | 6 ++- examples/kubecondemo/script/webservice.yaml | 51 +++++++++++++++++++++ 2 files changed, 55 insertions(+), 2 deletions(-) create mode 100644 examples/kubecondemo/script/webservice.yaml diff --git a/examples/kubecondemo/README.md b/examples/kubecondemo/README.md index d89e7f9a7..3720b3174 100644 --- a/examples/kubecondemo/README.md +++ b/examples/kubecondemo/README.md @@ -59,9 +59,11 @@ Also the examples are based on Alibaba Cloud settings ### Import the database workload definition +First, register the db workload definition: `kubectl apply -f script/def_db.yaml` - - +The webservice workload is customized a little. +`kubectl apply -f script/webservice.yaml` +Don't forget to update vela: `vela system update` ### Apply the appfile diff --git a/examples/kubecondemo/script/webservice.yaml b/examples/kubecondemo/script/webservice.yaml new file mode 100644 index 000000000..7f5097141 --- /dev/null +++ b/examples/kubecondemo/script/webservice.yaml @@ -0,0 +1,51 @@ +apiVersion: core.oam.dev/v1alpha2 +kind: WorkloadDefinition +metadata: + name: rds + annotations: + definition.oam.dev/apiVersion: "database.example.org/v1alpha1" + definition.oam.dev/kind: "PostgreSQLInstance" + definition.oam.dev/description: "rds on Alibaba Cloud" +spec: + definitionRef: + name: rds.apps + extension: + template: | + output: { + apiVersion: "database.example.org/v1alpha1" + kind: "PostgreSQLInstance" + metadata: + name: context.name + spec: { + selector: matchLabels: { + "app.oam.dev/component": context.name + } + + template: { + metadata: labels: { + "app.oam.dev/component": context.name + } + + spec: { + parameters: + storageGB: 20 + compositionSelector: { + matchLabels: + provider: parameter.provider + } + writeConnectionSecretToRef: + name: parameter.secretname + } + } + + selector: + matchLabels: + "app.oam.dev/component": context.name + } + } + + parameter: { + secretname: *"db-conn" | string + provider: *"alibaba" | string + } +