github.com/argoproj/argo-cd/v3@v3.2.1/docs/operator-manual/argocd-cmd-params-cm.yaml (about) 1 apiVersion: v1 2 kind: ConfigMap 3 metadata: 4 name: argocd-cmd-params-cm 5 labels: 6 app.kubernetes.io/name: argocd-cmd-params-cm 7 app.kubernetes.io/part-of: argocd 8 data: 9 # Repo server address. (default "argocd-repo-server:8081") 10 repo.server: "argocd-repo-server:8081" 11 12 # Commit server address. (default "argocd-commit-server:8086") 13 commit.server: "argocd-commit-server:8086" 14 15 # Redis server hostname and port (e.g. argocd-redis:6379) 16 redis.server: "argocd-redis:6379" 17 # Enable compression for data sent to Redis with the required compression algorithm. (default 'gzip') 18 redis.compression: gzip 19 # Redis database 20 redis.db: 21 22 # Enables the alpha "manifest hydrator" feature. (default "false") 23 hydrator.enabled: "false" 24 25 # Open-Telemetry collector address: (e.g. "otel-collector:4317") 26 otlp.address: "" 27 # Open-Telemetry collector insecure: (e.g. "true") 28 otlp.insecure: "true" 29 # Open-Telemetry collector headers: (e.g. "key1=value1,key2=value2") 30 otlp.headers: "" 31 # Open-Telemetry collector attrs: (e.g. "key1:value1,key2:value2") 32 otlp.attrs: "" 33 34 # List of additional namespaces where applications may be created in and 35 # reconciled from. The namespace where Argo CD is installed to will always 36 # be allowed. 37 # 38 # Feature state: Beta 39 application.namespaces: ns1, ns2, ns3 40 41 # Set the logging timestamp format. The default is "" which means "2006-01-02T15:04:05Z07:00" (RFC3339). 42 # See https://pkg.go.dev/time#pkg-constants for more options. 43 # This option is used for all components. 44 log.format.timestamp: "" 45 46 ## Controller Properties 47 # Repo server RPC call timeout seconds. 48 controller.repo.server.timeout.seconds: "60" 49 # Disable TLS on connections to repo server 50 controller.repo.server.plaintext: "false" 51 # Whether to use strict validation of the TLS cert presented by the repo server 52 controller.repo.server.strict.tls: "false" 53 # Number of application status processors (default 20) 54 controller.status.processors: "20" 55 # Number of application operation processors (default 10) 56 controller.operation.processors: "10" 57 # Set the logging format. One of: json|text (default "json") 58 controller.log.format: "json" 59 # Set the logging level. One of: debug|info|warn|error (default "info") 60 controller.log.level: "info" 61 # Prometheus metrics cache expiration (disabled by default. e.g. 24h0m0s) 62 controller.metrics.cache.expiration: "24h0m0s" 63 # Specifies exponential backoff timeout parameters between application self heal attempts 64 controller.self.heal.timeout.seconds: "2" 65 controller.self.heal.backoff.factor: "3" 66 controller.self.heal.backoff.cap.seconds: "300" 67 # Specifies a sync timeout for applications. "0" means no timeout (default "0") 68 controller.sync.timeout.seconds: "0" 69 # Specifies the delay in seconds between each sync wave to give other controllers a chance to react to spec changes. (default "2") 70 controller.sync.wave.delay.seconds: "2" 71 72 # Cache expiration for app state (default 1h0m0s) 73 controller.app.state.cache.expiration: "1h0m0s" 74 # Specifies if resource health should be persisted in the application CR (default false). 75 # Setting this to true will store the health status of each resource in the application CR, 76 # increasing the number of updates to the CR and putting more load on the application controller 77 controller.resource.health.persist: "false" 78 # Cache expiration default (default 24h0m0s) 79 controller.default.cache.expiration: "24h0m0s" 80 # Sharding algorithm used to balance clusters across application controller shards (default "legacy") 81 controller.sharding.algorithm: legacy 82 # Number of allowed concurrent kubectl fork/execs. Any value less than 1 means no limit. 83 controller.kubectl.parallelism.limit: "20" 84 # The maximum number of retries for each request 85 controller.k8sclient.retry.max: "0" 86 # The initial backoff delay on the first retry attempt in ms. Subsequent retries will double this backoff time up to a maximum threshold 87 controller.k8sclient.retry.base.backoff: "100" 88 # Grace period in seconds for ignoring consecutive errors while communicating with repo server. 89 controller.repo.error.grace.period.seconds: "180" 90 # Enables the server side diff feature at the application controller level. 91 # Diff calculation will be done by running a server side apply dryrun (when 92 # diff cache is unavailable). 93 controller.diff.server.side: "false" 94 # Enables profile endpoint on the internal metrics port 95 controller.profile.enabled: "false" 96 # Enables batch-processing mode in the controller's cluster cache. This can help improve performance for clusters that 97 # have high "churn," i.e. lots of resource modifications. 98 controller.cluster.cache.batch.events.processing: "true" 99 # This sets the interval at which the controller's cluster cache processes a batch of cluster events. A lower value 100 # will increase the speed at which Argo CD becomes aware of external cluster state. A higher value will reduce cluster 101 # cache lock contention and better handle high-churn clusters. 102 controller.cluster.cache.events.processing.interval: "100ms" 103 104 ## Server properties 105 # Listen on given address for incoming connections (default "0.0.0.0") 106 server.listen.address: "0.0.0.0" 107 # Listen on given address for metrics (default "0.0.0.0") 108 server.metrics.listen.address: "0.0.0.0" 109 # Run server without TLS 110 server.insecure: "false" 111 # Value for base href in index.html. Used if Argo CD is running behind reverse proxy under subpath different from / (default "/") 112 server.basehref: "/" 113 # Used if Argo CD is running behind reverse proxy under subpath different from / 114 server.rootpath: "" 115 # Directory path that contains additional static assets 116 server.staticassets: "/shared/app" 117 # The maximum number of retries for each request 118 server.k8sclient.retry.max: "0" 119 # The initial backoff delay on the first retry attempt in ms. Subsequent retries will double this backoff time up to a maximum threshold 120 server.k8sclient.retry.base.backoff: "100" 121 # Semicolon-separated list of content types allowed on non-GET requests. Set an empty string to allow all. Be aware 122 # that allowing content types besides application/json may make your API more vulnerable to CSRF attacks. 123 server.api.content.types: "application/json" 124 # Number of webhook requests processed concurrently (default 50) 125 server.webhook.parallelism.limit: "50" 126 # Whether to allow sync with replace checked to go through. Resource-level annotation to replace override this setting, i.e. it's only enforced on the API server level. 127 server.sync.replace.allowed: "true" 128 129 # Set the logging format. One of: json|text (default "json") 130 server.log.format: "json" 131 # Set the logging level. One of: debug|info|warn|error (default "info") 132 server.log.level: "info" 133 # Repo server RPC call timeout seconds. (default 60) 134 server.repo.server.timeout.seconds: "60" 135 # Use a plaintext client (non-TLS) to connect to repository server 136 server.repo.server.plaintext: "false" 137 # Perform strict validation of TLS certificates when connecting to repo server 138 server.repo.server.strict.tls: "false" 139 # Dex server address (default "http://argocd-dex-server:5556") 140 server.dex.server: "http://argocd-dex-server:5556" 141 # Use a plaintext client (non-TLS) to connect to dex server 142 server.dex.server.plaintext: "false" 143 # Perform strict validation of TLS certificates when connecting to dex server 144 server.dex.server.strict.tls: "false" 145 # Disable client authentication 146 server.disable.auth: "false" 147 # Toggle GZIP compression 148 server.enable.gzip: "true" 149 # Set X-Frame-Options header in HTTP responses to value. To disable, set to "". (default "sameorigin") 150 server.x.frame.options: "sameorigin" 151 # The minimum SSL/TLS version that is acceptable (one of: 1.0|1.1|1.2|1.3) (default "1.2") 152 server.tls.minversion: "1.2" 153 # The maximum SSL/TLS version that is acceptable (one of: 1.0|1.1|1.2|1.3) (default "1.3") 154 server.tls.maxversion: "1.3" 155 # The list of acceptable ciphers to be used when establishing TLS connections. Use 'list' to list available ciphers. (default "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384") 156 server.tls.ciphers: "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384" 157 # Cache expiration for cluster/repo connection status (default 1h0m0s) 158 server.connection.status.cache.expiration: "1h0m0s" 159 # Cache expiration for OIDC state (default 3m0s) 160 server.oidc.cache.expiration: "3m0s" 161 # Cache expiration for app state (default 1h0m0s) 162 server.app.state.cache.expiration: "1h0m0s" 163 # Cache expiration default (default 24h0m0s) 164 server.default.cache.expiration: "24h0m0s" 165 # Enable the experimental proxy extension feature 166 server.enable.proxy.extension: "false" 167 # Enables profile endpoint on the internal metrics port 168 server.profile.enabled: "false" 169 170 ## Repo-server properties 171 # Listen on given address for incoming connections (default "0.0.0.0") 172 reposerver.listen.address: "0.0.0.0" 173 # Listen on given address for metrics (default "0.0.0.0") 174 reposerver.metrics.listen.address: "0.0.0.0" 175 # Set the logging format. One of: json|text (default "json") 176 reposerver.log.format: "json" 177 # Set the logging level. One of: debug|info|warn|error (default "info") 178 reposerver.log.level: "info" 179 # Limit on number of concurrent manifests generate requests. Any value less the 1 means no limit. 180 reposerver.parallelism.limit: "1" 181 # Disable TLS on the gRPC endpoint 182 reposerver.disable.tls: "false" 183 # The minimum SSL/TLS version that is acceptable (one of: 1.0|1.1|1.2|1.3) (default "1.2") 184 reposerver.tls.minversion: "1.2" 185 # The maximum SSL/TLS version that is acceptable (one of: 1.0|1.1|1.2|1.3) (default "1.3") 186 reposerver.tls.maxversion: "1.3" 187 # The list of acceptable ciphers to be used when establishing TLS connections. Use 'list' to list available ciphers. (default "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384") 188 reposerver.tls.ciphers: "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384" 189 # Cache expiration for repo state, incl. app lists, app details, manifest generation, revision meta-data (default 24h0m0s) 190 reposerver.repo.cache.expiration: "24h0m0s" 191 # Cache expiration default (default 24h0m0s) 192 reposerver.default.cache.expiration: "24h0m0s" 193 # Max combined manifest file size for a single directory-type Application. In-memory manifest representation may be as 194 # much as 300x the manifest file size. Limit this to stay within the memory limits of the repo-server while allowing 195 # for 300x memory expansion and N Applications running at the same time. 196 # (example 10M max * 300 expansion * 10 Apps = 30G max theoretical memory usage). 197 reposerver.max.combined.directory.manifests.size: '10M' 198 # Paths to be excluded from the tarball streamed to plugins. Separate with ; 199 reposerver.plugin.tar.exclusions: "" 200 # Enable the repo server to use the 'argocd.argoproj.io/manifest-generate-paths' annotation to guide manifest generation. 201 reposerver.plugin.use.manifest.generate.paths: "false" 202 # Allow repositories to contain symlinks that leave the boundaries of the repository. 203 # Changing this to "true" will not allow _all_ out-of-bounds symlinks. Those will still be blocked for things like values 204 # files in Helm charts. But symlinks which are not explicitly blocked by other checks will be allowed. 205 reposerver.allow.oob.symlinks: "false" 206 # Maximum size of tarball when streaming manifests to the repo server for generation 207 reposerver.streamed.manifest.max.tar.size: "100M" 208 # Maximum size of extracted manifests when streaming manifests to the repo server for generation 209 reposerver.streamed.manifest.max.extracted.size: "1G" 210 # Maximum size of extracted manifests when streaming manifests to the repo server for generation 211 reposerver.oci.manifest.max.extracted.size: "1G" 212 # Whether to disable manifest size check for OCI artifacts 213 reposerver.disable.oci.manifest.max.extracted.size: "false" 214 # The allowlist of the OCI media types which the repo-server will make use of. If an OCI media type for a given artifact is not in the given list, the repo-server will return an error. 215 reposerver.oci.layer.media.types: "application/vnd.oci.image.layer.v1.tar,application/vnd.oci.image.layer.v1.tar+gzip,application/vnd.cncf.helm.chart.content.v1.tar+gzip" 216 # Enable git submodule support 217 reposerver.enable.git.submodule: "true" 218 # Number of concurrent git ls-remote requests. Any value less than 1 means no limit. 219 reposerver.git.lsremote.parallelism.limit: "0" 220 # Git requests timeout. 221 reposerver.git.request.timeout: "15s" 222 # Enable builtin git configuration options that are required for correct argocd-repo-server operation (default "true") 223 reposerver.enable.builtin.git.config: "true" 224 # Include hidden directories from Git 225 reposerver.include.hidden.directories: "false" 226 227 ## Commit-server properties 228 # Listen on given address for incoming connections (default "0.0.0.0") 229 commitserver.listen.address: "0.0.0.0" 230 # Set the logging format. One of: json|text (default "json") 231 commitserver.log.format: "json" 232 # Set the logging level. One of: debug|info|warn|error (default "info") 233 commitserver.log.level: "info" 234 # Listen on given address for metrics (default "0.0.0.0") 235 commitserver.metrics.listen.address: "0.0.0.0" 236 237 # Set the logging format. One of: json|text (default "json") 238 dexserver.log.format: "json" 239 # Set the logging level. One of: debug|info|warn|error (default "info") 240 dexserver.log.level: "info" 241 # Disable TLS on the HTTP endpoint 242 dexserver.disable.tls: "false" 243 244 ## ApplicationSet Controller Properties 245 # Enable leader election for controller manager. Enabling this will ensure there is only one active controller manager. 246 applicationsetcontroller.enable.leader.election: "false" 247 # "Modify how application is synced between the generator and the cluster. Default is '' (empty), which means AppSets 248 # will default to the 'sync' policy (create & update & delete). Explicitly setting the value prevents AppSet-level 249 # policy overrides unless overrides are explicitly enabled (see option below). Explicit options are: 250 # 'create-only', 'create-update' (no deletion), 'create-delete' (no update)" 251 applicationsetcontroller.policy: "" 252 # If applicationsetcontroller.policy is empty, this flag has no effect. If applicationsetcontroller.policy is set, 253 # this flag controls whether the policy set in the controller can be overridden by the ApplicationSet resource 254 # (i.e. the spec.syncPlicy.applicationSync field). Set it to "true" to allow overrides. "" or "false" will disable 255 # overrides. (default "") 256 applicationsetcontroller.enable.policy.override: "" 257 # Max concurrent reconciliation limit for the controller (default 10) 258 applicationsetcontroller.concurrent.reconciliations.max: "10" 259 # Enable new globbing in Git files generator (default "false") 260 # See https://argo-cd.readthedocs.io/en/stable/operator-manual/applicationset/Generators-Git-File-Globbing/ 261 applicationsetcontroller.enable.new.git.file.globbing: "false" 262 # Print debug logs. Takes precedence over loglevel 263 applicationsetcontroller.debug: "false" 264 # Set the logging format. One of: json|text (default "json") 265 applicationsetcontroller.log.format: "json" 266 # Set the logging level. One of: debug|info|warn|error (default "info") 267 applicationsetcontroller.log.level: "info" 268 # Enable dry run mode 269 applicationsetcontroller.dryrun: "false" 270 # Enable git submodule support 271 applicationsetcontroller.enable.git.submodule: "true" 272 # Enables use of the Progressive Syncs capability 273 applicationsetcontroller.enable.progressive.syncs: "false" 274 # A list of glob patterns specifying where to look for ApplicationSet resources. (default is only the ns where the controller is installed) 275 applicationsetcontroller.namespaces: "argocd,argocd-appsets-*" 276 # Path of the self-signed TLS certificate for SCM/PR Gitlab Generator 277 applicationsetcontroller.scm.root.ca.path: "" 278 # A comma separated list of allowed SCM providers (default "" is all SCM providers). 279 # Setting this field is required when using ApplicationSets-in-any-namespace, to prevent users from 280 # sending secrets from `tokenRef`s to disallowed `api` domains. 281 # The url used in the scm generator must exactly match one in the list 282 applicationsetcontroller.allowed.scm.providers: "https://git.example.com/,https://gitlab.example.com/" 283 # To disable SCM providers entirely (i.e. disable the SCM and PR generators), set this to "false". Default is "true". 284 applicationsetcontroller.enable.scm.providers: "false" 285 # Number of webhook requests processed concurrently (default 50) 286 applicationsetcontroller.webhook.parallelism.limit: "50" 287 # Override the default requeue time for the controller. (default 3m) 288 applicationsetcontroller.requeue.after: "3m" 289 # Enable strict mode for tokenRef in ApplicationSet resources. When enabled, the referenced secret must have a label `argocd.argoproj.io/secret-type` with value `scm-creds`. 290 applicationsetcontroller.enable.tokenref.strict.mode: "false" 291 # Comma delimited list of annotations to preserve in generated applications 292 applicationsetcontroller.global.preserved.annotations: "acme.com/annotation1,acme.com/annotation2" 293 # Comma delimited list of labels to preserve in generated applications 294 applicationsetcontroller.global.preserved.labels: "acme.com/label1,acme.com/label2" 295 # Enable GitHub API metrics for generators that use GitHub API 296 applicationsetcontroller.enable.github.api.metrics: "false" 297 # The maximum number of resources stored in the status of an ApplicationSet. This is a safeguard to prevent the status from growing too large. 298 applicationsetcontroller.status.max.resources.count: "5000" 299 # Enables profile endpoint on the internal metrics port 300 applicationsetcontroller.profile.enabled: "false" 301 302 ## Argo CD Notifications Controller Properties 303 # Set the logging level. One of: debug|info|warn|error (default "info") 304 notificationscontroller.log.level: "info" 305 # Set the logging format. One of: json|text (default "json") 306 notificationscontroller.log.format: "json" 307 # Enable self-service notifications config. Used in conjunction with apps-in-any-namespace. (default "false") 308 notificationscontroller.selfservice.enabled: "false" 309 # Disable TLS on connections to repo server 310 notificationscontroller.repo.server.plaintext: "false"