From 731af73b47e7bd3235394ae2bb3175c85e4f20fa Mon Sep 17 00:00:00 2001 From: Raphael MESSNER <49672734+raphael-messner@users.noreply.github.com> Date: Thu, 28 Nov 2019 18:05:03 +0100 Subject: [PATCH] add extra manifest capability (#18457) Signed-off-by: Raphael MESSNER --- stable/atlantis/Chart.yaml | 2 +- stable/atlantis/README.md | 16 ++++++++++++++++ stable/atlantis/templates/extra-manifests.yaml | 4 ++++ stable/atlantis/values.yaml | 10 ++++++++++ 4 files changed, 31 insertions(+), 1 deletion(-) create mode 100644 stable/atlantis/templates/extra-manifests.yaml diff --git a/stable/atlantis/Chart.yaml b/stable/atlantis/Chart.yaml index d472a762fe..2cf1947e02 100644 --- a/stable/atlantis/Chart.yaml +++ b/stable/atlantis/Chart.yaml @@ -2,7 +2,7 @@ apiVersion: v1 appVersion: "v0.8.2" description: A Helm chart for Atlantis https://www.runatlantis.io name: atlantis -version: 3.8.4 +version: 3.9.0 keywords: - terraform home: https://www.runatlantis.io diff --git a/stable/atlantis/README.md b/stable/atlantis/README.md index 913ab979ad..445a922df0 100644 --- a/stable/atlantis/README.md +++ b/stable/atlantis/README.md @@ -20,6 +20,21 @@ In order for Atlantis to start and run successfully: 1. Supply a value for `orgWhitelist`, e.g. `github.org/myorg/*`. +## Additional manifests + +It is possible to add additional manifests into a deployment, to extend the chart. One of the reason is to deploy a manifest specific to a cloud provider ( BackendConfig on GKE for example ). + +```yaml +extraManifests: + - apiVersion: cloud.google.com/v1beta1 + kind: BackendConfig + metadata: + name: "{{ .Release.Name }}-test" + spec: + securityPolicy: + name: "gcp-cloud-armor-policy-test" +``` + ## Customization The following options are supported. See [values.yaml](values.yaml) for more detailed documentation and examples: @@ -77,6 +92,7 @@ The following options are supported. See [values.yaml](values.yaml) for more de | `ingress.host` | Domain name Kubernetes Ingress rule looks for. Set it to the domain Atlantis will be hosted on. | `chart-example.local` | | `ingress.tls` | Kubernetes tls block. See [Kubernetes docs](https://kubernetes.io/docs/concepts/services-networking/ingress/#tls) for details. | `[]` | | `test.enabled` | Whether to enable the test. | `true` | +| `extraManifests` | add additional manifests to deploy | `[]` | **NOTE**: All the [Server Configurations](https://www.runatlantis.io/docs/server-configuration.html) are passed as [Environment Variables](https://www.runatlantis.io/docs/server-configuration.html#environment-variables). diff --git a/stable/atlantis/templates/extra-manifests.yaml b/stable/atlantis/templates/extra-manifests.yaml new file mode 100644 index 0000000000..0f01575624 --- /dev/null +++ b/stable/atlantis/templates/extra-manifests.yaml @@ -0,0 +1,4 @@ +{{- range .Values.extraManifests }} +--- +{{ tpl (toYaml .) $ }} +{{- end }} \ No newline at end of file diff --git a/stable/atlantis/values.yaml b/stable/atlantis/values.yaml index c30fca8bd6..2b5b32ad1b 100644 --- a/stable/atlantis/values.yaml +++ b/stable/atlantis/values.yaml @@ -221,3 +221,13 @@ extraVolumeMounts: [] # extraVolumeMounts: # - name: some-volume-name # mountPath: /path/in/container + +extraManifests: [] +# extraManifests: +# - apiVersion: cloud.google.com/v1beta1 +# kind: BackendConfig +# metadata: +# name: "{{ .Release.Name }}-test" +# spec: +# securityPolicy: +# name: "gcp-cloud-armor-policy-test"