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: chainreg.biz/scratch-images/test-tmp/atlantis
172 # -- If not set appVersion field from Chart.yaml is used
173 tag: 0.43.0-r5@sha256:7f92e1ce68f0c6c4a8ceb784024fe26ca7c7c93e9aa28499d93ba4f2e37cf2f4
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 # -- Volume attributes class name.
434 volumeAttributesClassName: ""
435 accessModes: ["ReadWriteOnce"]
436# -- DEPRECATED - Disk space available to check out repositories.
439# -- DEPRECATED - Storage class name for Atlantis disk.
441# -- Replica count for Atlantis pods.
444 # -- Enables test container.
452# -- You can use topology spread constraints to control how Pods are spread across your cluster among failure-domains such as regions,
453# zones, nodes, and other user-defined topology domains. (requires Kubernetes >= 1.19).
454# Check values.yaml for examples.
455topologySpreadConstraints: []
458# app.kubernetes.io/name: aws-example-cluster
460# topologyKey: topology.kubernetes.io/zone
461# whenUnsatisfiable: DoNotSchedule
464 # -- Specifies whether a ServiceAccount should be created.
466 # -- Set the `automountServiceAccountToken` field on the pod template spec.
467 # -- If false, no kubernetes service account token will be mounted to the pod.
469 # -- The name of the ServiceAccount to use.
470 # If not set and create is true, a name is generated using the fullname template.
472 # -- Annotations for the Service Account.
473 # Check values.yaml for examples.
480 # eks.amazonaws.com/role-arn: role-arn
481# -- Optionally deploy rbac to allow for the serviceAccount to manage terraform state via the kubernetes backend.
482enableKubernetesBackend: false
483# -- TLS Secret Name for Atlantis pod.
485# -- Additional path (`:` separated) that will be appended to the system `PATH` environment variable.
487# -- Environment values to add to the Atlantis pod.
488# Check values.yaml for examples.
491# ATLANTIS_DEFAULT_TF_VERSION: v1.2.9
493# -- Optionally specify additional environment variables to be populated from Kubernetes secrets.
494# Useful for passing in TF_VAR_foo or other secret environment variables from Kubernetes secrets.
495# Check values.yaml for examples.
496environmentSecrets: []
500# name: the_k8s_secret_name
501# key: the_key_of_the_value_in_the_secret
503# -- Optionally specify additional environment variables in raw yaml format.
504# Useful to specify variables refering to k8s objects.
505# Check values.yaml for examples.
511# fieldPath: status.podIP
513# -- Optionally specify additional Kubernetes secrets to load environment variables from.
514# All key-value pairs within these secrets will be set as environment variables.
515# Note that any variables set here will be ignored if also defined in the env block of the atlantis statefulset.
516# For example, providing ATLANTIS_GH_USER here and defining a value for github.user will result in the github.user value being used.
517# Check values.yaml for examples.
518loadEnvFromSecrets: []
523# -- Optionally specify additional Kubernetes ConfigMaps to load environment variables from.
524# All key-value pairs within these ConfigMaps will be set as environment variables.
525# Note that any variables set here will be ignored if also defined in the env block of the atlantis statefulset.
526# For example, providing ATLANTIS_ALLOW_FORK_PRS here and defining a value for allowForkPRs will result in the allowForkPRs value being used.
527# Check values.yaml for examples.
528loadEnvFromConfigMaps: []
529# loadEnvFromConfigMaps:
533# -- 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")}".
534# Check values.yaml for examples.
535googleServiceAccountSecrets: []
536# googleServiceAccountSecrets:
537# - name: some-secret-name
538# secretName: the_k8s_secret_name
540# -- Optionally specify additional volumes for the pod.
541# Check values.yaml for examples.
544# - name: some-volume-name
547# -- Optionally specify additional volume mounts for the container.
548# Check values.yaml for examples.
551# - name: some-volume-name
552# mountPath: /path/in/container
554# -- Optionally specify additional manifests to be created.
555# Check values.yaml for examples.
558# - apiVersion: cloud.google.com/v1beta1
561# name: "{{ .Release.Name }}-test"
564# name: "gcp-cloud-armor-policy-test"
566# -- Optionally specify init containers manifests to be added to the Atlantis pod.
567# Check values.yaml for examples.
571# image: alpine:latest
572# command: ['sh', '-c', 'echo The init container is running! && sleep 10']
575 # -- Install providers/plugins into a path shared with the Atlantis pod.
577 image: chainreg.biz/scratch-images/test-tmp/busybox:latest@sha256:0d9962c9c9be5aa29368e5c95e58b45ed2322fbf1abbae27f3937baea09d8be4
578 imagePullPolicy: IfNotPresent
579 # -- SharedDir is set as env var INIT_SHARED_DIR.
581 sharedDirReadOnly: true
583 # -- Size for the shared volume.
585 # -- Security context for the container.
586 containerSecurityContext: {}
587 # -- Script to run on the init container.
588 # @default -- Check values.yaml.
593 # example for terragrunt
595 TG_SHA256_SUM="4e5ae67854a774be6419f7215733990b481662375dc0bd5f2eda05211a692cf0"
596 TG_FILE="${INIT_SHARED_DIR}/terragrunt"
597 wget https://github.com/gruntwork-io/terragrunt/releases/download/${TG_VERSION}/terragrunt_linux_amd64 -O "${TG_FILE}"
598 echo "${TG_SHA256_SUM} ${TG_FILE}" | sha256sum -c
599 chmod 755 "${TG_FILE}"
602 # example for terragrunt-atlantis-config
603 TAC_VERSION="1.18.0" # without v
604 TAC_SHA256_SUM="59178dcd3e426abf4b5d8fcb1ac8dbdea548a04aa64eaf39be200484a5e6f2ca"
605 TAC_FILE="${INIT_SHARED_DIR}/terragrunt-atlantis-config"
606 wget "https://github.com/transcend-io/terragrunt-atlantis-config/releases/download/v${TAC_VERSION}/terragrunt-atlantis-config_${TAC_VERSION}_linux_amd64"
607 echo "${TAC_SHA256_SUM} terragrunt-atlantis-config_${TAC_VERSION}_linux_amd64" | sha256sum -c
608 cp -fv "terragrunt-atlantis-config_${TAC_VERSION}_linux_amd64" "${TAC_FILE}"
609 chmod 755 "${TAC_FILE}"
610 terragrunt-atlantis-config version
611# -- Optionally specify hostAliases for the Atlantis pod.
612# Check values.yaml for examples.
623# -- Optionally specify dnsPolicy parameter to specify a DNS policy for a pod
624# Check https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy
625dnsPolicy: "ClusterFirst"
626# -- Optionally specify dnsConfig for the Atlantis pod.
627# Check values.yaml for examples.
637 # -- Annotations for the Secrets.
638 # Check values.yaml for examples.
643# -- These annotations will be added to all the resources.
644# Check values.yaml for examples.
649# -- Optionally specify extra arguments for the Atlantis pod.
650# Check values.yaml for examples.
653# - --disable-autoplan
654# - --disable-repo-locking
656# -- Optionally specify extra containers for the Atlantis pod.
657# Check values.yaml for examples.
660# - name: <container name>
663# image: <docker images>
664# imagePullPolicy: IfNotPresent
674# -- Check values.yaml for examples.
675containerSecurityContext: {}
676# containerSecurityContext:
677# allowPrivilegeEscalation: false
678# readOnlyRootFilesystem: true
681 # -- To enable a Prometheus servicemonitor, set enabled to true,
682 # and enable the metrics in this file's repoConfig
683 # by setting a value for metrics.prometheus.endpoint.
687 # -- Prometheus ServiceMonitor labels.
690 # -- If auth is enabled on Atlantis, use one of the following mechanism.
692 # -- Authentication from the secret generated with the basicAuth values
693 # this will reference the username and password keys
694 # from the atlantis-basic-auth secret.
697 # -- Authentication based on an external secret
700 # -- Check values.yaml for examples.
704 # password: ATLANTIS_WEB_PASSWORD
705 # -- Optional metric relabelings to drop or modify metrics.
706 metricRelabelings: []
709 # regex: "atlantis_project_apply_execution_.*"
710 # sourceLabels: [__name__]
711# -- Enable this if you're using Google Managed Prometheus.
716# -- Set the desired Locking DB type
717# Accepts boltdb or redis.
719# -- Configure Redis Locking DB.
720# lockingDbType value must be redis for the config to take effect.
721# Check values.yaml for examples.
724# host: redis.host.name
725# password: myRedisPassword
729# insecureSkipVerify: false
731# -- When managing secrets outside the chart for the Redis secret, use this variable to reference the secret name.
733# -- Key within the existing Redis secret that contains the password value.
734redisSecretPasswordKey: password
735# -- (int) Optionally customize the termination grace period in seconds.
736# @default -- default depends on the kubernetes version.
737terminationGracePeriodSeconds:
738# terminationGracePeriodSeconds: 300
740# -- Set lifecycle hooks.
741# https://kubernetes.io/docs/tasks/configure-pod-container/attach-handler-lifecycle-event/.
749# - while pgrep -x "terraform|tofu|terragrunt" > /dev/null; do sleep 1; done