From 036ce3db3be95374eaae7f8f76b63dcd54c811b5 Mon Sep 17 00:00:00 2001 From: Meg McRoberts Date: Wed, 3 May 2023 02:51:57 -0700 Subject: [PATCH 01/16] docs: add info about automatic application discovery Signed-off-by: Meg McRoberts --- .../content/en/docs/implementing/integrate.md | 182 +++++++++++++++++- ...ondefnition.md => evaluationdefinition.md} | 0 2 files changed, 177 insertions(+), 5 deletions(-) rename docs/content/en/docs/yaml-crd-ref/{evaluationdefnition.md => evaluationdefinition.md} (100%) diff --git a/docs/content/en/docs/implementing/integrate.md b/docs/content/en/docs/implementing/integrate.md index 5aa34f2f98..5d4393b490 100644 --- a/docs/content/en/docs/implementing/integrate.md +++ b/docs/content/en/docs/implementing/integrate.md @@ -15,16 +15,61 @@ that have been applied against the Kubernetes API and reacts if it finds a workload with special annotations/labels. This is a four-step process: +* Enable KLT in your cluster * Annotate your workload(s) -* Create a `KeptnApp` custom resource that references those workloads -* Create the `KeptnTaskDefinition`s you need * Enable the target namespace by annotating it +* Define a Keptn application that references those workloads. + You have two options: + + * Create a [KeptnApp](../yaml-crd-ref/app.md) resource + that references the workloads that should be included + along with any + [KeptnTaskDefinition](../yaml-crd-ref/taskdefinition.md) + and [KeptnEvaluationDefinition](../yaml-crd-ref/evaluationdefinition.md) + CRDs that you want + * Use the Keptn automatic app discovery capability + that enables the observability features provided by the Lifecycle Toolkit + for existing applications, + without requiring you to create any Keptn-related custom resources. + +## Enable KLT in your cluster + +To enable the Keptn Lifecycle Controller in your cluster, +annotate the Kubernetes +[Namespace](https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/); +for example: + +```yaml +apiVersion: v1 +kind: Namespace +metadata: + name: simplenode-dev + annotations: + keptn.sh/lifecycle-toolkit: "enabled" +``` + +This annotation tells the webhook to handle the namespace. ## Annotate workload(s) -For this, you should annotate your -[Workload](https://kubernetes.io/docs/concepts/workloads/) -with (at least) the following annotations: +To annotate your +[Workload](https://kubernetes.io/docs/concepts/workloads/), +you need to set annotations in your Kubernetes +[Deployment](https://kubernetes.io/docs/concepts/workloads/controllers/deployment/) CRD. + +Note that you do not need to explicitly create a `KeptnWorkload`. +KLT monitors your `Deployments`, +[StatefulSets](https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/), +and +[ReplicaSets](https://kubernetes.io/docs/concepts/workloads/controllers/replicaset/), +and +[DaemonSets](https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/) +in the namespaces where KLT is enabled. +If KLT finds any of hese CRDs and the CRD has either +the keptn.sh or the kubernetes recommended labels, +it creates a `KeptnWorkload` CRD for the version it detects. + +The keptn.sh annotations are: ```yaml keptn.sh/app: myAwesomeAppName @@ -100,3 +145,130 @@ The deployment for a Workload stays in a `Pending` state until the respective pre-deployment check is completed. Afterwards, the deployment starts and when it is marked `Succeeded`, the post-deployment checks start. + +## Define a Keptn application + You have two options: + + * Create a [KeptnApp](../yaml-crd-ref/app.md) resource + that references the workloads that should be included + along with any + [KeptnTaskDefinition](../yaml-crd-ref/taskdefinition.md) + and [KeptnEvaluationDefinition](../yaml-crd-ref/evaluationdefinition.md) + CRDs that you want + * Use the Keptn automatic app discovery capability + that enables the observability features provided by the Lifecycle Toolkit + for existing applications, + without requiring you to create any Keptn-related custom resources. + +### Define Keptn custom resources for the application + +TODO: Provide instructions for defining a +[KeptnApp](../../app.md) +CRD + +### Use Keptn automatic app discovery + +The Keptn Lifecycle Toolkit provides the option +to automatically discover `KeptnApp`s, +based on the recommended Kubernetes labels `app.kubernetes.io/part-of`, +`app.kubernetes.io/name` `app.kubernetes.io/version`. +Because of the OpenTelemetry tracing features +provided by the Keptn Lifecycle Toolkit, +this enables the observability features for existing applications, +without creating any Keptn-related custom resources. + +To enable the automatic discovery of `KeptnApp`s for your existing applications, +the following steps are required: + +1. Enable KLT for the namespace where your application runs + following the instructions above +1. Make sure the following Kubernetes labels and/or annotations are present + in the pod template specs of your Workloads + (`Deployments`, `StatefulSets`, `DaemonSets`, and `ReplicaSets`) + within your application: + + - `app.kubernetes.io/name`: Determines the name + of the generated `KeptnWorkload` representing the Workload. + - `app.kubernetes.io/version`: Determines the version + of the `KeptnWorkload` representing the Workload. + - `app.kubernetes.io/part-of`: Determines the name + of the generated `KeptnApp` representing your Application. + + All Workloads that share the same value for this label + are consolidated into the same `KeptnApp`. + +As an example, consider the following application, +consisting of several deployments, +which is going to be deployed into a KLT-enabled namespace: + +```yaml +apiVersion: v1 +kind: Namespace +metadata: + name: podtato-kubectl + annotations: + keptn.sh/lifecycle-toolkit: "enabled" + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: podtato-head-frontend + namespace: podtato-kubectl +spec: + template: + metadata: + labels: + app.kubernetes.io/name: podtato-head-frontend + app.kubernetes.io/part-of: podtato-head + app.kubernetes.io/version: 0.1.0 + spec: + containers: + - name: podtato-head-frontend + image: podtato-head-frontend +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: podtato-head-hat + namespace: podtato-kubectl +spec: + replicas: 1 + template: + metadata: + labels: + app.kubernetes.io/name: podtato-head-hat + app.kubernetes.io/part-of: podtato-head + app.kubernetes.io/version: 0.1.1 + spec: + containers: + - name: podtato-head-hat + image: podtato-head-hat +``` + +Applying these resources results in the creation +of the following `KeptnApp` resource: + +```yaml +apiVersion: lifecycle.keptn.sh/v1alpha2 +kind: KeptnApp +metadata: + name: podtato-head + namespace: podtato-kubectl + annotations: + app.kubernetes.io/managed-by: "klt" +spec: + version: "" + workloads: + - name: podtato-head-frontend + version: 0.1.0 + - name: podtato-head-hat + version: 1.1.1 +``` + +With the `KeptnApp` resource created, +you get observability of your application's deployments +by using the OpenTelemetry tracing features +that are provided by the Keptn Lifecycle Toolkit: + +![Application deployment trace](assets/trace.png) diff --git a/docs/content/en/docs/yaml-crd-ref/evaluationdefnition.md b/docs/content/en/docs/yaml-crd-ref/evaluationdefinition.md similarity index 100% rename from docs/content/en/docs/yaml-crd-ref/evaluationdefnition.md rename to docs/content/en/docs/yaml-crd-ref/evaluationdefinition.md From 9c930b946318aee3f57657bdbb188f0c7630d3d0 Mon Sep 17 00:00:00 2001 From: Meg McRoberts Date: Wed, 3 May 2023 03:08:19 -0700 Subject: [PATCH 02/16] markdownlint-fix Signed-off-by: Meg McRoberts --- docs/content/en/docs/implementing/integrate.md | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/docs/content/en/docs/implementing/integrate.md b/docs/content/en/docs/implementing/integrate.md index 5d4393b490..61f1df964b 100644 --- a/docs/content/en/docs/implementing/integrate.md +++ b/docs/content/en/docs/implementing/integrate.md @@ -32,7 +32,7 @@ This is a four-step process: for existing applications, without requiring you to create any Keptn-related custom resources. -## Enable KLT in your cluster +## Enable KLT in your cluster To enable the Keptn Lifecycle Controller in your cluster, annotate the Kubernetes @@ -147,15 +147,16 @@ Afterwards, the deployment starts and when it is marked `Succeeded`, the post-deployment checks start. ## Define a Keptn application + You have two options: - * Create a [KeptnApp](../yaml-crd-ref/app.md) resource +* Create a [KeptnApp](../yaml-crd-ref/app.md) resource that references the workloads that should be included along with any [KeptnTaskDefinition](../yaml-crd-ref/taskdefinition.md) and [KeptnEvaluationDefinition](../yaml-crd-ref/evaluationdefinition.md) CRDs that you want - * Use the Keptn automatic app discovery capability +* Use the Keptn automatic app discovery capability that enables the observability features provided by the Lifecycle Toolkit for existing applications, without requiring you to create any Keptn-related custom resources. @@ -187,11 +188,11 @@ the following steps are required: (`Deployments`, `StatefulSets`, `DaemonSets`, and `ReplicaSets`) within your application: - - `app.kubernetes.io/name`: Determines the name + * `app.kubernetes.io/name`: Determines the name of the generated `KeptnWorkload` representing the Workload. - - `app.kubernetes.io/version`: Determines the version + * `app.kubernetes.io/version`: Determines the version of the `KeptnWorkload` representing the Workload. - - `app.kubernetes.io/part-of`: Determines the name + * `app.kubernetes.io/part-of`: Determines the name of the generated `KeptnApp` representing your Application. All Workloads that share the same value for this label From 136cdaa50f9d18e8bc60de44dde3a1ff3b25bf02 Mon Sep 17 00:00:00 2001 From: Meg McRoberts Date: Wed, 3 May 2023 03:38:49 -0700 Subject: [PATCH 03/16] add trace.png Signed-off-by: Meg McRoberts --- .../implementing/integrate/assets/trace.png | Bin 0 -> 168484 bytes .../{integrate.md => integrate/index.md} | 0 2 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 docs/content/en/docs/implementing/integrate/assets/trace.png rename docs/content/en/docs/implementing/{integrate.md => integrate/index.md} (100%) diff --git a/docs/content/en/docs/implementing/integrate/assets/trace.png b/docs/content/en/docs/implementing/integrate/assets/trace.png new file mode 100644 index 0000000000000000000000000000000000000000..84254826c9f2620eba45d6db24b85d35a1048837 GIT binary patch literal 168484 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 z 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�sf94UKmzFk^!cXowjvzfRtJ;bmh9l@dT^+1z~X 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 Date: Wed, 3 May 2023 04:01:24 -0700 Subject: [PATCH 04/16] internal xrefs Signed-off-by: Meg McRoberts --- .../en/docs/implementing/integrate/index.md | 34 ++++++++++--------- 1 file changed, 18 insertions(+), 16 deletions(-) diff --git a/docs/content/en/docs/implementing/integrate/index.md b/docs/content/en/docs/implementing/integrate/index.md index 61f1df964b..7e7ff8d189 100644 --- a/docs/content/en/docs/implementing/integrate/index.md +++ b/docs/content/en/docs/implementing/integrate/index.md @@ -15,24 +15,19 @@ that have been applied against the Kubernetes API and reacts if it finds a workload with special annotations/labels. This is a four-step process: -* Enable KLT in your cluster -* Annotate your workload(s) -* Enable the target namespace by annotating it +* [Enable the target namespace](#enable-target-namespace) +* [Annotate your workload(s)](#annotate-workloads) * Define a Keptn application that references those workloads. You have two options: - * Create a [KeptnApp](../yaml-crd-ref/app.md) resource - that references the workloads that should be included - along with any - [KeptnTaskDefinition](../yaml-crd-ref/taskdefinition.md) - and [KeptnEvaluationDefinition](../yaml-crd-ref/evaluationdefinition.md) - CRDs that you want - * Use the Keptn automatic app discovery capability + * [Define Keptn custom resources](#define-keptn-custom-resources-for-the-application) + for the application + * [Use the Keptn automatic app discovery capability](#use-keptn-automatic-app-discovery) that enables the observability features provided by the Lifecycle Toolkit for existing applications, without requiring you to create any Keptn-related custom resources. -## Enable KLT in your cluster +## Enable target namespace To enable the Keptn Lifecycle Controller in your cluster, annotate the Kubernetes @@ -69,7 +64,9 @@ If KLT finds any of hese CRDs and the CRD has either the keptn.sh or the kubernetes recommended labels, it creates a `KeptnWorkload` CRD for the version it detects. -The keptn.sh annotations are: +### Basic annotations + +The basic keptn.sh annotations are: ```yaml keptn.sh/app: myAwesomeAppName @@ -100,7 +97,7 @@ This process is demonstrated in the [Keptn Lifecycle Toolkit: Installation and KeptnTask Creation in Mintes](https://www.youtube.com/watch?v=Hh01bBwZ_qM) video. -## Pre- and post-deployment checks +### Pre- and post-deployment checks Further annotations are necessary to run pre- and post-deployment checks: @@ -163,9 +160,14 @@ the post-deployment checks start. ### Define Keptn custom resources for the application -TODO: Provide instructions for defining a -[KeptnApp](../../app.md) -CRD +Create a [KeptnApp](../yaml-crd-ref/app.md) resource +that references the workloads that should be included +along with any +[KeptnTaskDefinition](../yaml-crd-ref/taskdefinition.md) +and [KeptnEvaluationDefinition](../yaml-crd-ref/evaluationdefinition.md) +CRDs that you want + +TODO: provide more details ### Use Keptn automatic app discovery From 1255670435c4f777118b2fa3adc833dc818248ca Mon Sep 17 00:00:00 2001 From: Meg McRoberts Date: Thu, 4 May 2023 06:19:23 -0700 Subject: [PATCH 05/16] fix xrefs Signed-off-by: Meg McRoberts --- docs/content/en/docs/implementing/integrate/index.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/content/en/docs/implementing/integrate/index.md b/docs/content/en/docs/implementing/integrate/index.md index 7e7ff8d189..69a30d1664 100644 --- a/docs/content/en/docs/implementing/integrate/index.md +++ b/docs/content/en/docs/implementing/integrate/index.md @@ -147,16 +147,16 @@ the post-deployment checks start. You have two options: -* Create a [KeptnApp](../yaml-crd-ref/app.md) resource +* Create a [KeptnApp](../../yaml-crd-ref/app.md) resource that references the workloads that should be included along with any - [KeptnTaskDefinition](../yaml-crd-ref/taskdefinition.md) - and [KeptnEvaluationDefinition](../yaml-crd-ref/evaluationdefinition.md) + [KeptnTaskDefinition](../../yaml-crd-ref/taskdefinition.md) + and [KeptnEvaluationDefinition](../../yaml-crd-ref/evaluationdefinition.md) CRDs that you want * Use the Keptn automatic app discovery capability that enables the observability features provided by the Lifecycle Toolkit for existing applications, - without requiring you to create any Keptn-related custom resources. + without requiring you to create any Keptn-related custom resources ### Define Keptn custom resources for the application From b49c694b3f75ce3510a41687e14b52cc6d18d74a Mon Sep 17 00:00:00 2001 From: Meg McRoberts Date: Fri, 5 May 2023 23:22:40 -0700 Subject: [PATCH 06/16] Update docs/content/en/docs/implementing/integrate/index.md Signed-off-by: Meg McRoberts meg.mcroberts@dynatrace.com Co-authored-by: odubajDT <93584209+odubajDT@users.noreply.github.com> Signed-off-by: Meg McRoberts --- docs/content/en/docs/implementing/integrate/index.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/content/en/docs/implementing/integrate/index.md b/docs/content/en/docs/implementing/integrate/index.md index 69a30d1664..f20af056a7 100644 --- a/docs/content/en/docs/implementing/integrate/index.md +++ b/docs/content/en/docs/implementing/integrate/index.md @@ -10,8 +10,8 @@ hidechildren: false # this flag hides all sub-pages in the sidebar-multicard.htm Use Kubernetes annotations and labels to integrate the Keptn Lifecycle Toolkit into your Kubernetes cluster. -The Keptn Lifecycle Toolkit monitors manifests -that have been applied against the Kubernetes API +The Keptn Lifecycle Toolkit monitors resources +that have been applied into the Kubernetes cluster and reacts if it finds a workload with special annotations/labels. This is a four-step process: From d127775f75cd9b74c209c16e041c96b725f7d30f Mon Sep 17 00:00:00 2001 From: Meg McRoberts Date: Fri, 5 May 2023 23:23:12 -0700 Subject: [PATCH 07/16] Update docs/content/en/docs/implementing/integrate/index.md Signed-off-by: Meg McRoberts meg.mcroberts@dynatrace.com Co-authored-by: odubajDT <93584209+odubajDT@users.noreply.github.com> Signed-off-by: Meg McRoberts --- docs/content/en/docs/implementing/integrate/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/content/en/docs/implementing/integrate/index.md b/docs/content/en/docs/implementing/integrate/index.md index f20af056a7..6f21a9004f 100644 --- a/docs/content/en/docs/implementing/integrate/index.md +++ b/docs/content/en/docs/implementing/integrate/index.md @@ -62,7 +62,7 @@ and in the namespaces where KLT is enabled. If KLT finds any of hese CRDs and the CRD has either the keptn.sh or the kubernetes recommended labels, -it creates a `KeptnWorkload` CRD for the version it detects. +it creates a `KeptnWorkload` resource for the version it detects. ### Basic annotations From d79abce66542d9791a905c40ad288c1a9613e236 Mon Sep 17 00:00:00 2001 From: Meg McRoberts Date: Fri, 5 May 2023 23:23:53 -0700 Subject: [PATCH 08/16] Update docs/content/en/docs/implementing/integrate/index.md Signed-off-by: Meg McRoberts meg.mcroberts@dynatrace.com Co-authored-by: odubajDT <93584209+odubajDT@users.noreply.github.com> Signed-off-by: Meg McRoberts --- docs/content/en/docs/implementing/integrate/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/content/en/docs/implementing/integrate/index.md b/docs/content/en/docs/implementing/integrate/index.md index 6f21a9004f..2ea7422c50 100644 --- a/docs/content/en/docs/implementing/integrate/index.md +++ b/docs/content/en/docs/implementing/integrate/index.md @@ -110,7 +110,7 @@ keptn.sh/post-deployment-tasks: slack-notification,performance-test The value of these annotations are Keptn [CRDs](https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/) called `KeptnTaskDefinition`s. -These CRDs contain re-usable "functions" +These resources contain re-usable "functions" that can execute before and after the deployment. In this example, before the deployment starts, a check for open problems in your infrastructure is performed. From 7d427f358b4cbceb1c69cea921fd7a77a6ec7d47 Mon Sep 17 00:00:00 2001 From: Meg McRoberts Date: Fri, 5 May 2023 23:24:08 -0700 Subject: [PATCH 09/16] Update docs/content/en/docs/implementing/integrate/index.md Signed-off-by: Meg McRoberts meg.mcroberts@dynatrace.com Co-authored-by: odubajDT <93584209+odubajDT@users.noreply.github.com> Signed-off-by: Meg McRoberts --- docs/content/en/docs/implementing/integrate/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/content/en/docs/implementing/integrate/index.md b/docs/content/en/docs/implementing/integrate/index.md index 2ea7422c50..1dce01b750 100644 --- a/docs/content/en/docs/implementing/integrate/index.md +++ b/docs/content/en/docs/implementing/integrate/index.md @@ -139,7 +139,7 @@ kubectl get keptnworkloadinstance -n podtato-kubectl -w ``` The deployment for a Workload stays in a `Pending` -state until the respective pre-deployment check is completed. +state until the respective pre-deployment check is successfully completed. Afterwards, the deployment starts and when it is marked `Succeeded`, the post-deployment checks start. From 57b8dde73b5b56720108ee241f25a7e3e19f0d47 Mon Sep 17 00:00:00 2001 From: Meg McRoberts Date: Fri, 5 May 2023 23:24:26 -0700 Subject: [PATCH 10/16] Update docs/content/en/docs/implementing/integrate/index.md Signed-off-by: Meg McRoberts meg.mcroberts@dynatrace.com Co-authored-by: odubajDT <93584209+odubajDT@users.noreply.github.com> Signed-off-by: Meg McRoberts --- docs/content/en/docs/implementing/integrate/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/content/en/docs/implementing/integrate/index.md b/docs/content/en/docs/implementing/integrate/index.md index 1dce01b750..2f959ecfd6 100644 --- a/docs/content/en/docs/implementing/integrate/index.md +++ b/docs/content/en/docs/implementing/integrate/index.md @@ -140,7 +140,7 @@ kubectl get keptnworkloadinstance -n podtato-kubectl -w The deployment for a Workload stays in a `Pending` state until the respective pre-deployment check is successfully completed. -Afterwards, the deployment starts and when it is marked `Succeeded`, +Afterwards, the deployment starts and when the workload is deployed, the post-deployment checks start. ## Define a Keptn application From 05b0232fb149a14dc4b1300d81b441452c38ce1e Mon Sep 17 00:00:00 2001 From: Meg McRoberts Date: Fri, 5 May 2023 23:24:45 -0700 Subject: [PATCH 11/16] Update docs/content/en/docs/implementing/integrate/index.md Signed-off-by: Meg McRoberts meg.mcroberts@dynatrace.com Co-authored-by: odubajDT <93584209+odubajDT@users.noreply.github.com> Signed-off-by: Meg McRoberts --- docs/content/en/docs/implementing/integrate/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/content/en/docs/implementing/integrate/index.md b/docs/content/en/docs/implementing/integrate/index.md index 2f959ecfd6..69ec729e0a 100644 --- a/docs/content/en/docs/implementing/integrate/index.md +++ b/docs/content/en/docs/implementing/integrate/index.md @@ -156,7 +156,7 @@ the post-deployment checks start. * Use the Keptn automatic app discovery capability that enables the observability features provided by the Lifecycle Toolkit for existing applications, - without requiring you to create any Keptn-related custom resources + without requiring you to manually create any KeptnApp resources ### Define Keptn custom resources for the application From bfd7c1a2a0a8344ebcb278d1967cfd38e405b7a7 Mon Sep 17 00:00:00 2001 From: Meg McRoberts Date: Fri, 5 May 2023 23:25:03 -0700 Subject: [PATCH 12/16] Update docs/content/en/docs/implementing/integrate/index.md Signed-off-by: Meg McRoberts meg.mcroberts@dynatrace.com Co-authored-by: odubajDT <93584209+odubajDT@users.noreply.github.com> Signed-off-by: Meg McRoberts --- docs/content/en/docs/implementing/integrate/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/content/en/docs/implementing/integrate/index.md b/docs/content/en/docs/implementing/integrate/index.md index 69ec729e0a..2786891839 100644 --- a/docs/content/en/docs/implementing/integrate/index.md +++ b/docs/content/en/docs/implementing/integrate/index.md @@ -25,7 +25,7 @@ This is a four-step process: * [Use the Keptn automatic app discovery capability](#use-keptn-automatic-app-discovery) that enables the observability features provided by the Lifecycle Toolkit for existing applications, - without requiring you to create any Keptn-related custom resources. + without requiring you to manually create any KeptnApp resources. ## Enable target namespace From 4e6654529cce29411a6aa748a34e9021c999b7af Mon Sep 17 00:00:00 2001 From: Meg McRoberts Date: Sat, 6 May 2023 01:59:45 -0700 Subject: [PATCH 13/16] fix bad link Signed-off-by: Meg McRoberts --- docs/content/en/docs/implementing/integrate/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/content/en/docs/implementing/integrate/index.md b/docs/content/en/docs/implementing/integrate/index.md index 69a30d1664..a89ebe531f 100644 --- a/docs/content/en/docs/implementing/integrate/index.md +++ b/docs/content/en/docs/implementing/integrate/index.md @@ -147,7 +147,7 @@ the post-deployment checks start. You have two options: -* Create a [KeptnApp](../../yaml-crd-ref/app.md) resource +* Create a [KeptnApp](../../../yaml-crd-ref/app.md) resource that references the workloads that should be included along with any [KeptnTaskDefinition](../../yaml-crd-ref/taskdefinition.md) From e19fedc321636434773242593244910dfbbb2a36 Mon Sep 17 00:00:00 2001 From: Meg McRoberts Date: Sun, 7 May 2023 17:16:10 -0700 Subject: [PATCH 14/16] fix markdownlint problem Signed-off-by: Meg McRoberts --- docs/content/en/docs/yaml-crd-ref/evaluationdefinition.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/content/en/docs/yaml-crd-ref/evaluationdefinition.md b/docs/content/en/docs/yaml-crd-ref/evaluationdefinition.md index 334f046296..e054a6e08a 100644 --- a/docs/content/en/docs/yaml-crd-ref/evaluationdefinition.md +++ b/docs/content/en/docs/yaml-crd-ref/evaluationdefinition.md @@ -2,3 +2,4 @@ title: KeptnEvaluationDefinition description: Define all workloads and checks associated with an application weight: 20 +--- From a9498c85ce6e0db7fcd9f49361ce3db930d176da Mon Sep 17 00:00:00 2001 From: Meg McRoberts Date: Wed, 10 May 2023 00:42:33 -0700 Subject: [PATCH 15/16] fix xrefs Signed-off-by: Meg McRoberts --- docs/content/en/docs/implementing/integrate/index.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/content/en/docs/implementing/integrate/index.md b/docs/content/en/docs/implementing/integrate/index.md index 0f270d4fa4..d92fa18c20 100644 --- a/docs/content/en/docs/implementing/integrate/index.md +++ b/docs/content/en/docs/implementing/integrate/index.md @@ -147,7 +147,7 @@ the post-deployment checks start. You have two options: -* Create a [KeptnApp](../../../yaml-crd-ref/app.md) resource +* Create a [KeptnApp](../../yaml-crd-ref/app.md) resource that references the workloads that should be included along with any [KeptnTaskDefinition](../../yaml-crd-ref/taskdefinition.md) @@ -160,11 +160,11 @@ the post-deployment checks start. ### Define Keptn custom resources for the application -Create a [KeptnApp](../yaml-crd-ref/app.md) resource +Create a [KeptnApp](../../yaml-crd-ref/app.md) resource that references the workloads that should be included along with any -[KeptnTaskDefinition](../yaml-crd-ref/taskdefinition.md) -and [KeptnEvaluationDefinition](../yaml-crd-ref/evaluationdefinition.md) +[KeptnTaskDefinition](../../yaml-crd-ref/taskdefinition.md) +and [KeptnEvaluationDefinition](../../yaml-crd-ref/evaluationdefinition.md) CRDs that you want TODO: provide more details From 4f362e15dde3364862f2402e475696ecbb898053 Mon Sep 17 00:00:00 2001 From: Meg McRoberts Date: Wed, 10 May 2023 00:52:37 -0700 Subject: [PATCH 16/16] CRD -> resource Signed-off-by: Meg McRoberts --- .../en/docs/implementing/integrate/index.md | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/docs/content/en/docs/implementing/integrate/index.md b/docs/content/en/docs/implementing/integrate/index.md index d92fa18c20..800b504a50 100644 --- a/docs/content/en/docs/implementing/integrate/index.md +++ b/docs/content/en/docs/implementing/integrate/index.md @@ -20,7 +20,7 @@ This is a four-step process: * Define a Keptn application that references those workloads. You have two options: - * [Define Keptn custom resources](#define-keptn-custom-resources-for-the-application) + * [Define Keptn resources](#define-keptn-custom-resources-for-the-application) for the application * [Use the Keptn automatic app discovery capability](#use-keptn-automatic-app-discovery) that enables the observability features provided by the Lifecycle Toolkit @@ -50,7 +50,7 @@ This annotation tells the webhook to handle the namespace. To annotate your [Workload](https://kubernetes.io/docs/concepts/workloads/), you need to set annotations in your Kubernetes -[Deployment](https://kubernetes.io/docs/concepts/workloads/controllers/deployment/) CRD. +[Deployment](https://kubernetes.io/docs/concepts/workloads/controllers/deployment/) resource. Note that you do not need to explicitly create a `KeptnWorkload`. KLT monitors your `Deployments`, @@ -60,7 +60,7 @@ and and [DaemonSets](https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/) in the namespaces where KLT is enabled. -If KLT finds any of hese CRDs and the CRD has either +If KLT finds any of hese resources and the resource has either the keptn.sh or the kubernetes recommended labels, it creates a `KeptnWorkload` resource for the version it detects. @@ -108,7 +108,7 @@ keptn.sh/post-deployment-tasks: slack-notification,performance-test ``` The value of these annotations are -Keptn [CRDs](https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/) +Keptn [resources](https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/) called `KeptnTaskDefinition`s. These resources contain re-usable "functions" that can execute before and after the deployment. @@ -152,7 +152,7 @@ the post-deployment checks start. along with any [KeptnTaskDefinition](../../yaml-crd-ref/taskdefinition.md) and [KeptnEvaluationDefinition](../../yaml-crd-ref/evaluationdefinition.md) - CRDs that you want + resources that you want * Use the Keptn automatic app discovery capability that enables the observability features provided by the Lifecycle Toolkit for existing applications, @@ -160,14 +160,13 @@ the post-deployment checks start. ### Define Keptn custom resources for the application -Create a [KeptnApp](../../yaml-crd-ref/app.md) resource -that references the workloads that should be included +Manually create a YAML file for the +[KeptnApp](../../yaml-crd-ref/app.md) resource +that references the workloads to be included along with any [KeptnTaskDefinition](../../yaml-crd-ref/taskdefinition.md) and [KeptnEvaluationDefinition](../../yaml-crd-ref/evaluationdefinition.md) -CRDs that you want - -TODO: provide more details +resource that you want ### Use Keptn automatic app discovery