From 3e92d277ebf1a9063ebcf80f05ebe62958e45cbb Mon Sep 17 00:00:00 2001 From: Thomas Schuetz <38893055+thschue@users.noreply.github.com> Date: Wed, 28 Sep 2022 09:13:14 +0200 Subject: [PATCH] feat: first podtatohead sample deployment manifests (#45) Signed-off-by: Thomas Schuetz --- examples/podtatohead-deployment/manifest.yaml | 301 ++++++++++++++++++ .../pre-deployment-tasks.yaml | 9 + 2 files changed, 310 insertions(+) create mode 100644 examples/podtatohead-deployment/manifest.yaml create mode 100644 examples/podtatohead-deployment/pre-deployment-tasks.yaml diff --git a/examples/podtatohead-deployment/manifest.yaml b/examples/podtatohead-deployment/manifest.yaml new file mode 100644 index 0000000000..1fda3dde2d --- /dev/null +++ b/examples/podtatohead-deployment/manifest.yaml @@ -0,0 +1,301 @@ +--- +apiVersion: v1 +kind: Namespace +metadata: + name: podtato-kubectl +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: podtato-head-entry + namespace: podtato-kubectl + labels: + app: podtato-head +spec: + selector: + matchLabels: + component: podtato-head-entry + template: + metadata: + labels: + component: podtato-head-entry + annotations: + keptn.sh/app: podtato-head + keptn.sh/workload: podtato-head-entry + keptn.sh/version: 0.1.0 + keptn.sh/pre-deployment-tasks: pre-deployment-hello + spec: + terminationGracePeriodSeconds: 5 + containers: + - name: server + image: ghcr.io/podtato-head/entry:latest + imagePullPolicy: Always + ports: + - containerPort: 9000 + env: + - name: PODTATO_PORT + value: "9000" +--- +apiVersion: v1 +kind: Service +metadata: + name: podtato-head-entry + namespace: podtato-kubectl + labels: + app: podtato-head +spec: + selector: + component: podtato-head-entry + ports: + - name: http + port: 9000 + protocol: TCP + targetPort: 9000 + type: LoadBalancer + # change to NodePort if no LoadBalancer controller is available + # type: NodePort +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: podtato-head-hat + namespace: podtato-kubectl + labels: + app: podtato-head +spec: + selector: + matchLabels: + component: podtato-head-hat + template: + metadata: + labels: + component: podtato-head-hat + annotations: + keptn.sh/app: podtato-head + keptn.sh/workload: podtato-head-hat + keptn.sh/version: 0.1.0 + keptn.sh/pre-deployment-tasks: pre-deployment-hello + spec: + terminationGracePeriodSeconds: 5 + containers: + - name: server + image: ghcr.io/podtato-head/hat:latest + imagePullPolicy: Always + ports: + - containerPort: 9000 + env: + - name: PODTATO_PORT + value: "9000" +--- +apiVersion: v1 +kind: Service +metadata: + name: podtato-head-hat + namespace: podtato-kubectl + labels: + app: podtato-head +spec: + selector: + component: podtato-head-hat + ports: + - name: http + port: 9001 + protocol: TCP + targetPort: 9000 + type: ClusterIP +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: podtato-head-left-leg + namespace: podtato-kubectl + labels: + app: podtato-head +spec: + selector: + matchLabels: + component: podtato-head-left-leg + template: + metadata: + labels: + component: podtato-head-left-leg + annotations: + keptn.sh/app: podtato-head + keptn.sh/workload: podtato-head-left-leg + keptn.sh/version: 0.1.0 + keptn.sh/pre-deployment-tasks: pre-deployment-hello + spec: + terminationGracePeriodSeconds: 5 + containers: + - name: server + image: ghcr.io/podtato-head/left-leg:latest + imagePullPolicy: Always + ports: + - containerPort: 9000 + env: + - name: PODTATO_PORT + value: "9000" +--- +apiVersion: v1 +kind: Service +metadata: + name: podtato-head-left-leg + namespace: podtato-kubectl + labels: + app: podtato-head +spec: + selector: + component: podtato-head-left-leg + ports: + - name: http + port: 9002 + protocol: TCP + targetPort: 9000 + type: ClusterIP +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: podtato-head-left-arm + namespace: podtato-kubectl + labels: + app: podtato-head +spec: + selector: + matchLabels: + component: podtato-head-left-arm + template: + metadata: + labels: + component: podtato-head-left-arm + annotations: + keptn.sh/app: podtato-head + keptn.sh/workload: podtato-head-left-arm + keptn.sh/version: 0.1.0 + keptn.sh/pre-deployment-tasks: pre-deployment-hello + spec: + terminationGracePeriodSeconds: 5 + containers: + - name: server + image: ghcr.io/podtato-head/left-arm:latest + imagePullPolicy: Always + ports: + - containerPort: 9000 + env: + - name: PODTATO_PORT + value: "9000" +--- +apiVersion: v1 +kind: Service +metadata: + name: podtato-head-left-arm + namespace: podtato-kubectl + labels: + app: podtato-head +spec: + selector: + component: podtato-head-left-arm + ports: + - name: http + port: 9003 + protocol: TCP + targetPort: 9000 + type: ClusterIP +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: podtato-head-right-leg + namespace: podtato-kubectl + labels: + app: podtato-head +spec: + selector: + matchLabels: + component: podtato-head-right-leg + template: + metadata: + labels: + component: podtato-head-right-leg + annotations: + keptn.sh/app: podtato-head + keptn.sh/workload: podtato-head-right-leg + keptn.sh/version: 0.1.0 + keptn.sh/pre-deployment-tasks: pre-deployment-hello + spec: + terminationGracePeriodSeconds: 5 + containers: + - name: server + image: ghcr.io/podtato-head/right-leg:latest + imagePullPolicy: Always + ports: + - containerPort: 9000 + env: + - name: PODTATO_PORT + value: "9000" +--- +apiVersion: v1 +kind: Service +metadata: + name: podtato-head-right-leg + namespace: podtato-kubectl + labels: + app: podtato-head +spec: + selector: + component: podtato-head-right-leg + ports: + - name: http + port: 9004 + protocol: TCP + targetPort: 9000 + type: ClusterIP +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: podtato-head-right-arm + namespace: podtato-kubectl + labels: + app: podtato-head +spec: + selector: + matchLabels: + component: podtato-head-right-arm + template: + metadata: + labels: + component: podtato-head-right-arm + annotations: + keptn.sh/app: podtato-head + keptn.sh/workload: podtato-head-right-arm + keptn.sh/version: 0.1.0 + keptn.sh/pre-deployment-tasks: pre-deployment-hello + spec: + terminationGracePeriodSeconds: 5 + containers: + - name: server + image: ghcr.io/podtato-head/right-arm:latest + imagePullPolicy: Always + ports: + - containerPort: 9000 + env: + - name: PODTATO_PORT + value: "9000" +--- +apiVersion: v1 +kind: Service +metadata: + name: podtato-head-right-arm + namespace: podtato-kubectl + labels: + app: podtato-head +spec: + selector: + component: podtato-head-right-arm + ports: + - name: http + port: 9005 + protocol: TCP + targetPort: 9000 + type: ClusterIP diff --git a/examples/podtatohead-deployment/pre-deployment-tasks.yaml b/examples/podtatohead-deployment/pre-deployment-tasks.yaml new file mode 100644 index 0000000000..b0cb103501 --- /dev/null +++ b/examples/podtatohead-deployment/pre-deployment-tasks.yaml @@ -0,0 +1,9 @@ +apiVersion: lifecycle.keptn.sh/v1alpha1 +kind: KeptnTaskDefinition +metadata: + name: pre-deployment-hello +spec: + function: + inline: + code: | + console.log("Pre-Deployment Task has been executed");