1## -------------------------- ##
2# Values to override for your instance.
3## -------------------------- ##
5# -- Provide a name to substitute for the full names of resources.
7# -- Provide a name to substitute for the name of the chart.
9# -- An option to override the atlantis url,
10# if not using an ingress, set it to the external IP.
11# Check values.yaml for examples.
13# Example: http://10.0.0.0
15# -- Replace this with your own repo allowlist.
16orgAllowlist: "<replace-me>"
17# -- Deprecated in favor of orgAllowlist.
18orgWhitelist: "<deprecated>"
19# -- Specify the log level for Atlantis.
20# Accepts: debug, info, warn, or error.
22# -- If using GitHub, please enter your values as follows.
23# The chart will perform the base64 encoding for values that are stored in secrets.
24# The 'hostname' key is exclusive to GitHub Enterprise installations.
25# The 'org' key is used to restrict which GitHub org Atlantis will respond to.
26# Check values.yaml for examples.
32# hostname: github.your.org
35# -- If using a GitHub App, please enter your values as follows.
36# The chart will perform the base64 encoding for you for values that are stored in secrets.
37# installationId is necessary when there are multiple installs of the Github App.
38# Check values.yaml for examples.
45# -----BEGIN PRIVATE KEY-----
47# -----END PRIVATE KEY-----
50# -- If using Gitea, please enter your values as follows.
51# The 'baseUrl' key is exclusive to self-hosted Gitea installations.
52# The chart will perform the base64 encoding for you for values that are stored in secrets.
53# Check values.yaml for examples.
59# baseUrl: gitea.your.org
61# -- If using GitLab, please enter your values as follows.
62# The 'hostname' key is exclusive to GitLab Enterprise installations.
63# The chart will perform the base64 encoding for you for values that are stored in secrets.
64# Check values.yaml for examples.
70# hostname: gitlab.your.org
72# -- If using Bitbucket, there are two approaches:
73# Bitbucket Server, deployed in your own infrastructure
74# and Cloud available at (https://Bitbucket.org).
75# The chart will perform the base64 encoding for you for values that are stored in secrets.
76# Check values.yaml for examples.
83# baseURL: https://bitbucket.yourorganization.com
86# The recommendation is to genarate a service user on your cloud environment, but you can live on the edge using your own user :).
87# Create an APP PASSWORD to the user for the token value.
88# Base URL are not needed here, but keep in mind to provide an IP Whitelist as the Atlantis documentation.
89# For API token authentication (recommended over app passwords), specify apiUser which may differ from the user field.
93# apiUser: foo@example.com # Optional: specify if using API tokens and the API user differs from user
95# -- If using Azure DevOps, please enter your values as follows.
96# The chart will perform the base64 encoding for you for values that are stored in secrets.
97# Check values.yaml for examples.
103# webhookPassword: baz
105# -- If managing secrets outside the chart for the webhook, use this variable to reference the secret name
107# -- When referencing Terraform modules in private repositories, it may be helpful
108# (necessary?) to use redirection in a .gitconfig.
109# Check values.yaml for examples.
112# [url "https://YOUR_GH_TOKEN@github.com"]
113# insteadOf = https://github.com
114# [url "https://YOUR_GH_TOKEN@github.com"]
115# insteadOf = ssh://git@github.com
116# [url "https://oauth2:YOUR_GITLAB_TOKEN@gitlab.com"]
117# insteadOf = https://gitlab.com
118# [url "https://oauth2:YOUR_GITLAB_TOKEN@gitlab.com"]
119# insteadOf = ssh://git@gitlab.com
120# Source: https://stackoverflow.com/questions/42148841/github-clone-with-oauth-access-token
122# -- When true gitconfig file is mounted as read only.
123# When false, the gitconfig value will be copied to '/home/atlantis/.gitconfig' before starting the atlantis process,
124# instead of being mounted as a file.
125gitconfigReadOnly: true
126# -- If managing secrets outside the chart for the gitconfig, use this variable to reference the secret name
127gitconfigSecretName: ""
128# -- When referencing Terraform modules in private repositories or registries (such as Artfactory)
129# configuing a .netrc file for authentication may be required.
130# Check values.yaml for examples.
133# machine artifactory.myapp.com login YOUR_USERNAME password YOUR_PASSWORD
134# machine bitbucket.myapp.com login YOUR_USERNAME password YOUR_PASSWORD
136# -- If managing secrets outside the chart for the netrc file, use this variable to reference the secret name
138# -- To specify AWS credentials to be mapped to ~/.aws or to aws.directory.
139# Check values.yaml for examples.
144# aws_access_key_id=YOUR_ACCESS_KEY_ID
145# aws_secret_access_key=YOUR_SECRET_ACCESS_KEY
148# [profile a_role_to_assume]
149# role_arn = arn:aws:iam::123456789:role/service-role/roleToAssume
150# source_profile = default
151# directory: "/home/atlantis/.aws"
153# -- To reference an already existing Secret object with AWS credentials
155# -- To keep backwards compatibility only.
156# Deprecated (see googleServiceAccountSecrets).
157# To be used for mounting credential files (when using google provider).
158# Check values.yaml for examples.
159serviceAccountSecrets: {}
160# serviceAccountSecrets:
161# credentials: <json file as base64 encoded string>
162# credentials-staging: <json file as base64 encoded string>
164## -------------------------- ##
165# Default values for atlantis (override as needed).
166## -------------------------- ##
168# -- (int) [optional] Define the port you would like atlantis to run on. When 0, the value of service.targetPort is used.
171 repository: cgr.dev/scratch-images/test-tmp/atlantis
172 # -- If not set appVersion field from Chart.yaml is used
173 tag: 0.43.0-r0@sha256:4e54fa23f7a455bef7b77996102cdc215b1fceca501416e21084960a227f30a4
175# -- Optionally specify an array of imagePullSecrets.
176# Secrets must be manually created in the namespace.
177# ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/.
178# Check values.yaml for examples.
181# - myRegistryKeySecretName
183# -- Override atlantis main configuration by config map,
184# ref: https://www.runatlantis.io/docs/using-slack-hooks.html#configuring-atlantis.
185# Check values.yaml for examples.
196# -- Use Server Side Repo Config,
197# ref: https://www.runatlantis.io/docs/server-side-repo-config.html.
198# Check values.yaml for examples.
200# Example with default configuration:
205# apply_requirements: []
207# allowed_overrides: []
208# allow_custom_workflows: false
219# -- Enables atlantis to run on a fork Pull Requests.
221# -- Enables atlantis to run on a draft Pull Requests.
223# -- Enables atlantis to hide previous plan comments.
224hidePrevPlanComments: false
225# -- Enables atlantis to hide no-changes plan comments from the pull request.
226hideUnchangedPlanComments: false
227# -- Sets the default terraform distribution to use. Can be set to terraform or opentofu.
228defaultTFDistribution: terraform
229# -- Sets the default terraform version to be used in atlantis server.
230# Check values.yaml for examples.
234# -- Disables running `atlantis apply` regardless of which flags are sent with it.
236# -- Disables running `atlantis apply` without any flags.
237disableApplyAll: false
238# -- Stops atlantis locking projects and or workspaces when running terraform.
239disableRepoLocking: false
240# -- Use Diff Markdown Format for color coding diffs.
241enableDiffMarkdownFormat: false
242# -- Optionally specify an username and a password for basic authentication.
246# -- If managing secrets outside the chart for the Basic Auth secret, use this variable to reference the secret name.
247basicAuthSecretName: ""
248# -- Optionally specify an API secret to enable the API.
249# Check values.yaml for examples.
254# -- If managing secrets outside the chart for the API secret, use this variable to reference the secret name. The key containing the secret must be called 'apisecret'.
256# -- Override the command field of the Atlantis container.
258# -- Common Labels for all resources created by this chart.
262 # -- We only need to check every 60s since Atlantis is not a high-throughput service.
264 initialDelaySeconds: 5
272 initialDelaySeconds: 5
283 # -- (int) [optional] Define the port you would like atlantis to run on. Defaults to 4141.
286 loadBalancerSourceRanges: []
287 externalTrafficPolicy: null
288 # -- (string) [optional] Internal traffic policy for the Service. One of: Cluster, Local.
289 internalTrafficPolicy: null
290 # -- (string) [optional] Kubernetes Service sessionAffinity setting. One of: ClientIP, None.
291 sessionAffinity: null
292 # -- (object) [optional] Kubernetes Service sessionAffinityConfig. Only applicable when sessionAffinity=ClientIP.
293 sessionAffinityConfig: null
295 # -- Check values.yaml for examples.
298 # iam.amazonaws.com/role: role-arn # kube2iam example.
305 # -- It is not recommended to run atlantis as root.
307 fsGroupChangePolicy: "OnRootMismatch"
308 priorityClassName: ""
310 # -- Option to share process namespace with atlantis container.
311 shareProcessNamespace: false
316 # -- Check values.yaml for examples.
319 # kubernetes.io/ingress.class: nginx
320 # kubernetes.io/tls-acme: "true"
321 # -- Use / for nginx.
323 # -- Used when several paths under the same host, with different backend services, are required.
324 # Check values.yaml for examples.
332 pathType: ImplementationSpecific
334 # -- Used when several hosts are required.
335 # Check values.yaml for examples.
337 # - host: chart-example.local
339 # service: chart-example1
340 # - host: chart-example.local2
341 # service: chart-example1
343 # -- Check values.yaml for examples.
345 # - secretName: chart-example-tls
347 # - chart-example.local
349 # -- When true creates a secondary webhook.
352 # -- Check values.yaml for examples.
355 # kubernetes.io/ingress.class: nginx
356 # kubernetes.io/tls-acme: "true"
357 # -- Use / for nginx.
359 # -- Used when several paths under the same host, with different backend services, are required.
360 # Check values.yaml for examples.
368 pathType: ImplementationSpecific
370 # -- Used when several hosts are required.
371 # Check values.yaml for examples.
373 # - host: chart-example.local
375 # service: chart-example1
376 # - host: chart-example.local2
377 # service: chart-example1
379 # -- TLS configuration.
380 # Check values.yaml for examples.
382 # - secretName: chart-example-tls
384 # - chart-example.local
388 # -- Enables or disables the route
390 # -- Set the route apiVersion, e.g. gateway.networking.k8s.io/v1 or gateway.networking.k8s.io/v1alpha2
391 apiVersion: gateway.networking.k8s.io/v1
392 # -- Set the route kind
397 # - atlantis.example.com
405 ## Filters define the filters that are applied to requests that match this rule.
407 ## Additional custom rules that can be added to the route
409 ## httpsRedirect adds a filter for redirecting to https (HTTP 301 Moved Permanently).
411# -- Allows to override the /etc/ssl/certs/ca-certificates.cer with your custom one.
412# You have to create a secret with the specified name.
414# -- Resources for Atlantis.
415# Check values.yaml for examples.
425# -- Path to the data directory for the volumeMount.
426atlantisDataDirectory: /atlantis-data
429 # -- Disk space available to check out repositories.
431 # -- Storage class name (if possible, use a resizable one).
433 accessModes: ["ReadWriteOnce"]
434# -- DEPRECATED - Disk space available to check out repositories.
437# -- DEPRECATED - Storage class name for Atlantis disk.
439# -- Replica count for Atlantis pods.
442 # -- Enables test container.
450# -- You can use topology spread constraints to control how Pods are spread across your cluster among failure-domains such as regions,
451# zones, nodes, and other user-defined topology domains. (requires Kubernetes >= 1.19).
452# Check values.yaml for examples.
453topologySpreadConstraints: []
456# app.kubernetes.io/name: aws-example-cluster
458# topologyKey: topology.kubernetes.io/zone
459# whenUnsatisfiable: DoNotSchedule
462 # -- Specifies whether a ServiceAccount should be created.
464 # -- Set the `automountServiceAccountToken` field on the pod template spec.
465 # -- If false, no kubernetes service account token will be mounted to the pod.
467 # -- The name of the ServiceAccount to use.
468 # If not set and create is true, a name is generated using the fullname template.
470 # -- Annotations for the Service Account.
471 # Check values.yaml for examples.
478 # eks.amazonaws.com/role-arn: role-arn
479# -- Optionally deploy rbac to allow for the serviceAccount to manage terraform state via the kubernetes backend.
480enableKubernetesBackend: false
481# -- TLS Secret Name for Atlantis pod.
483# -- Additional path (`:` separated) that will be appended to the system `PATH` environment variable.
485# -- Environment values to add to the Atlantis pod.
486# Check values.yaml for examples.
489# ATLANTIS_DEFAULT_TF_VERSION: v1.2.9
491# -- Optionally specify additional environment variables to be populated from Kubernetes secrets.
492# Useful for passing in TF_VAR_foo or other secret environment variables from Kubernetes secrets.
493# Check values.yaml for examples.
494environmentSecrets: []
498# name: the_k8s_secret_name
499# key: the_key_of_the_value_in_the_secret
501# -- Optionally specify additional environment variables in raw yaml format.
502# Useful to specify variables refering to k8s objects.
503# Check values.yaml for examples.
509# fieldPath: status.podIP
511# -- Optionally specify additional Kubernetes secrets to load environment variables from.
512# All key-value pairs within these secrets will be set as environment variables.
513# Note that any variables set here will be ignored if also defined in the env block of the atlantis statefulset.
514# For example, providing ATLANTIS_GH_USER here and defining a value for github.user will result in the github.user value being used.
515# Check values.yaml for examples.
516loadEnvFromSecrets: []
521# -- Optionally specify additional Kubernetes ConfigMaps to load environment variables from.
522# All key-value pairs within these ConfigMaps will be set as environment variables.
523# Note that any variables set here will be ignored if also defined in the env block of the atlantis statefulset.
524# For example, providing ATLANTIS_ALLOW_FORK_PRS here and defining a value for allowForkPRs will result in the allowForkPRs value being used.
525# Check values.yaml for examples.
526loadEnvFromConfigMaps: []
527# loadEnvFromConfigMaps:
531# -- Optionally specify google service account credentials as Kubernetes secrets. If you are using the terraform google provider you can specify the credentials as "${file("/var/secrets/some-secret-name/key.json")}".
532# Check values.yaml for examples.
533googleServiceAccountSecrets: []
534# googleServiceAccountSecrets:
535# - name: some-secret-name
536# secretName: the_k8s_secret_name
538# -- Optionally specify additional volumes for the pod.
539# Check values.yaml for examples.
542# - name: some-volume-name
545# -- Optionally specify additional volume mounts for the container.
546# Check values.yaml for examples.
549# - name: some-volume-name
550# mountPath: /path/in/container
552# -- Optionally specify additional manifests to be created.
553# Check values.yaml for examples.
556# - apiVersion: cloud.google.com/v1beta1
559# name: "{{ .Release.Name }}-test"
562# name: "gcp-cloud-armor-policy-test"
564# -- Optionally specify init containers manifests to be added to the Atlantis pod.
565# Check values.yaml for examples.
569# image: alpine:latest
570# command: ['sh', '-c', 'echo The init container is running! && sleep 10']
573 # -- Install providers/plugins into a path shared with the Atlantis pod.
575 image: cgr.dev/scratch-images/test-tmp/busybox:latest@sha256:f59facaf2ddfa00a7ab584dab0976d075d1be0dac21e70270694a78eab93bf94
576 imagePullPolicy: IfNotPresent
577 # -- SharedDir is set as env var INIT_SHARED_DIR.
579 sharedDirReadOnly: true
581 # -- Size for the shared volume.
583 # -- Security context for the container.
584 containerSecurityContext: {}
585 # -- Script to run on the init container.
586 # @default -- Check values.yaml.
591 # example for terragrunt
593 TG_SHA256_SUM="4e5ae67854a774be6419f7215733990b481662375dc0bd5f2eda05211a692cf0"
594 TG_FILE="${INIT_SHARED_DIR}/terragrunt"
595 wget https://github.com/gruntwork-io/terragrunt/releases/download/${TG_VERSION}/terragrunt_linux_amd64 -O "${TG_FILE}"
596 echo "${TG_SHA256_SUM} ${TG_FILE}" | sha256sum -c
597 chmod 755 "${TG_FILE}"
600 # example for terragrunt-atlantis-config
601 TAC_VERSION="1.18.0" # without v
602 TAC_SHA256_SUM="59178dcd3e426abf4b5d8fcb1ac8dbdea548a04aa64eaf39be200484a5e6f2ca"
603 TAC_FILE="${INIT_SHARED_DIR}/terragrunt-atlantis-config"
604 wget "https://github.com/transcend-io/terragrunt-atlantis-config/releases/download/v${TAC_VERSION}/terragrunt-atlantis-config_${TAC_VERSION}_linux_amd64"
605 echo "${TAC_SHA256_SUM} terragrunt-atlantis-config_${TAC_VERSION}_linux_amd64" | sha256sum -c
606 cp -fv "terragrunt-atlantis-config_${TAC_VERSION}_linux_amd64" "${TAC_FILE}"
607 chmod 755 "${TAC_FILE}"
608 terragrunt-atlantis-config version
609# -- Optionally specify hostAliases for the Atlantis pod.
610# Check values.yaml for examples.
621# -- Optionally specify dnsPolicy parameter to specify a DNS policy for a pod
622# Check https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy
623dnsPolicy: "ClusterFirst"
624# -- Optionally specify dnsConfig for the Atlantis pod.
625# Check values.yaml for examples.
635 # -- Annotations for the Secrets.
636 # Check values.yaml for examples.
641# -- These annotations will be added to all the resources.
642# Check values.yaml for examples.
647# -- Optionally specify extra arguments for the Atlantis pod.
648# Check values.yaml for examples.
651# - --disable-autoplan
652# - --disable-repo-locking
654# -- Optionally specify extra containers for the Atlantis pod.
655# Check values.yaml for examples.
658# - name: <container name>
661# image: <docker images>
662# imagePullPolicy: IfNotPresent
672# -- Check values.yaml for examples.
673containerSecurityContext: {}
674# containerSecurityContext:
675# allowPrivilegeEscalation: false
676# readOnlyRootFilesystem: true
679 # -- To enable a Prometheus servicemonitor, set enabled to true,
680 # and enable the metrics in this file's repoConfig
681 # by setting a value for metrics.prometheus.endpoint.
685 # -- Prometheus ServiceMonitor labels.
688 # -- If auth is enabled on Atlantis, use one of the following mechanism.
690 # -- Authentication from the secret generated with the basicAuth values
691 # this will reference the username and password keys
692 # from the atlantis-basic-auth secret.
695 # -- Authentication based on an external secret
698 # -- Check values.yaml for examples.
702 # password: ATLANTIS_WEB_PASSWORD
703 # -- Optional metric relabelings to drop or modify metrics.
704 metricRelabelings: []
707 # regex: "atlantis_project_apply_execution_.*"
708 # sourceLabels: [__name__]
709# -- Enable this if you're using Google Managed Prometheus.
714# -- Set the desired Locking DB type
715# Accepts boltdb or redis.
717# -- Configure Redis Locking DB.
718# lockingDbType value must be redis for the config to take effect.
719# Check values.yaml for examples.
722# host: redis.host.name
723# password: myRedisPassword
727# insecureSkipVerify: false
729# -- When managing secrets outside the chart for the Redis secret, use this variable to reference the secret name.
731# -- Key within the existing Redis secret that contains the password value.
732redisSecretPasswordKey: password
733# -- (int) Optionally customize the termination grace period in seconds.
734# @default -- default depends on the kubernetes version.
735terminationGracePeriodSeconds:
736# terminationGracePeriodSeconds: 300
738# -- Set lifecycle hooks.
739# https://kubernetes.io/docs/tasks/configure-pod-container/attach-handler-lifecycle-event/.
747# - while pgrep -x "terraform|tofu|terragrunt" > /dev/null; do sleep 1; done