492 lines
18 KiB
YAML
492 lines
18 KiB
YAML
---
|
|
# Source: argocd/charts/argo-cd/templates/argocd-server/deployment.yaml
|
|
apiVersion: apps/v1
|
|
kind: Deployment
|
|
metadata:
|
|
name: argocd-server
|
|
namespace: argocd
|
|
labels:
|
|
helm.sh/chart: argo-cd-9.1.5
|
|
app.kubernetes.io/name: argocd-server
|
|
app.kubernetes.io/instance: argocd
|
|
app.kubernetes.io/component: server
|
|
app.kubernetes.io/managed-by: Helm
|
|
app.kubernetes.io/part-of: argocd
|
|
app.kubernetes.io/version: "v3.2.1"
|
|
spec:
|
|
replicas: 2
|
|
revisionHistoryLimit: 3
|
|
selector:
|
|
matchLabels:
|
|
app.kubernetes.io/name: argocd-server
|
|
app.kubernetes.io/instance: argocd
|
|
template:
|
|
metadata:
|
|
annotations:
|
|
checksum/cmd-params: bf2519278596ec7cee3e61f230a7b6ebbdcc8a5166fe036da04fccfdfa4ac1d1
|
|
checksum/cm: b85950385c4567f0f6332e53f51df2bbe58a65f5771ac318c863d1b4e831ff9b
|
|
labels:
|
|
helm.sh/chart: argo-cd-9.1.5
|
|
app.kubernetes.io/name: argocd-server
|
|
app.kubernetes.io/instance: argocd
|
|
app.kubernetes.io/component: server
|
|
app.kubernetes.io/managed-by: Helm
|
|
app.kubernetes.io/part-of: argocd
|
|
app.kubernetes.io/version: "v3.2.1"
|
|
spec:
|
|
terminationGracePeriodSeconds: 30
|
|
serviceAccountName: argocd-server
|
|
automountServiceAccountToken: true
|
|
containers:
|
|
- name: server
|
|
image: quay.io/argoproj/argocd:v3.2.1
|
|
imagePullPolicy: IfNotPresent
|
|
args:
|
|
- /usr/local/bin/argocd-server
|
|
- --port=8080
|
|
- --metrics-port=8083
|
|
env:
|
|
- name: ARGOCD_SERVER_NAME
|
|
value: argocd-server
|
|
- name: ARGOCD_SERVER_INSECURE
|
|
valueFrom:
|
|
configMapKeyRef:
|
|
name: argocd-cmd-params-cm
|
|
key: server.insecure
|
|
optional: true
|
|
- name: ARGOCD_SERVER_BASEHREF
|
|
valueFrom:
|
|
configMapKeyRef:
|
|
name: argocd-cmd-params-cm
|
|
key: server.basehref
|
|
optional: true
|
|
- name: ARGOCD_SERVER_ROOTPATH
|
|
valueFrom:
|
|
configMapKeyRef:
|
|
name: argocd-cmd-params-cm
|
|
key: server.rootpath
|
|
optional: true
|
|
- name: ARGOCD_SERVER_LOGFORMAT
|
|
valueFrom:
|
|
configMapKeyRef:
|
|
name: argocd-cmd-params-cm
|
|
key: server.log.format
|
|
optional: true
|
|
- name: ARGOCD_SERVER_LOG_LEVEL
|
|
valueFrom:
|
|
configMapKeyRef:
|
|
name: argocd-cmd-params-cm
|
|
key: server.log.level
|
|
optional: true
|
|
- name: ARGOCD_SERVER_REPO_SERVER
|
|
valueFrom:
|
|
configMapKeyRef:
|
|
name: argocd-cmd-params-cm
|
|
key: repo.server
|
|
optional: true
|
|
- name: ARGOCD_SERVER_DEX_SERVER
|
|
valueFrom:
|
|
configMapKeyRef:
|
|
name: argocd-cmd-params-cm
|
|
key: server.dex.server
|
|
optional: true
|
|
- name: ARGOCD_SERVER_DISABLE_AUTH
|
|
valueFrom:
|
|
configMapKeyRef:
|
|
name: argocd-cmd-params-cm
|
|
key: server.disable.auth
|
|
optional: true
|
|
- name: ARGOCD_SERVER_ENABLE_GZIP
|
|
valueFrom:
|
|
configMapKeyRef:
|
|
name: argocd-cmd-params-cm
|
|
key: server.enable.gzip
|
|
optional: true
|
|
- name: ARGOCD_SERVER_REPO_SERVER_TIMEOUT_SECONDS
|
|
valueFrom:
|
|
configMapKeyRef:
|
|
name: argocd-cmd-params-cm
|
|
key: server.repo.server.timeout.seconds
|
|
optional: true
|
|
- name: ARGOCD_SERVER_X_FRAME_OPTIONS
|
|
valueFrom:
|
|
configMapKeyRef:
|
|
name: argocd-cmd-params-cm
|
|
key: server.x.frame.options
|
|
optional: true
|
|
- name: ARGOCD_SERVER_CONTENT_SECURITY_POLICY
|
|
valueFrom:
|
|
configMapKeyRef:
|
|
name: argocd-cmd-params-cm
|
|
key: server.content.security.policy
|
|
optional: true
|
|
- name: ARGOCD_SERVER_REPO_SERVER_PLAINTEXT
|
|
valueFrom:
|
|
configMapKeyRef:
|
|
name: argocd-cmd-params-cm
|
|
key: server.repo.server.plaintext
|
|
optional: true
|
|
- name: ARGOCD_SERVER_REPO_SERVER_STRICT_TLS
|
|
valueFrom:
|
|
configMapKeyRef:
|
|
name: argocd-cmd-params-cm
|
|
key: server.repo.server.strict.tls
|
|
optional: true
|
|
- name: ARGOCD_SERVER_DEX_SERVER_PLAINTEXT
|
|
valueFrom:
|
|
configMapKeyRef:
|
|
name: argocd-cmd-params-cm
|
|
key: server.dex.server.plaintext
|
|
optional: true
|
|
- name: ARGOCD_SERVER_DEX_SERVER_STRICT_TLS
|
|
valueFrom:
|
|
configMapKeyRef:
|
|
name: argocd-cmd-params-cm
|
|
key: server.dex.server.strict.tls
|
|
optional: true
|
|
- name: ARGOCD_TLS_MIN_VERSION
|
|
valueFrom:
|
|
configMapKeyRef:
|
|
name: argocd-cmd-params-cm
|
|
key: server.tls.minversion
|
|
optional: true
|
|
- name: ARGOCD_TLS_MAX_VERSION
|
|
valueFrom:
|
|
configMapKeyRef:
|
|
name: argocd-cmd-params-cm
|
|
key: server.tls.maxversion
|
|
optional: true
|
|
- name: ARGOCD_TLS_CIPHERS
|
|
valueFrom:
|
|
configMapKeyRef:
|
|
name: argocd-cmd-params-cm
|
|
key: server.tls.ciphers
|
|
optional: true
|
|
- name: ARGOCD_SERVER_CONNECTION_STATUS_CACHE_EXPIRATION
|
|
valueFrom:
|
|
configMapKeyRef:
|
|
name: argocd-cmd-params-cm
|
|
key: server.connection.status.cache.expiration
|
|
optional: true
|
|
- name: ARGOCD_SERVER_OIDC_CACHE_EXPIRATION
|
|
valueFrom:
|
|
configMapKeyRef:
|
|
name: argocd-cmd-params-cm
|
|
key: server.oidc.cache.expiration
|
|
optional: true
|
|
- name: ARGOCD_SERVER_STATIC_ASSETS
|
|
valueFrom:
|
|
configMapKeyRef:
|
|
name: argocd-cmd-params-cm
|
|
key: server.staticassets
|
|
optional: true
|
|
- name: ARGOCD_APP_STATE_CACHE_EXPIRATION
|
|
valueFrom:
|
|
configMapKeyRef:
|
|
name: argocd-cmd-params-cm
|
|
key: server.app.state.cache.expiration
|
|
optional: true
|
|
- name: REDIS_SERVER
|
|
valueFrom:
|
|
configMapKeyRef:
|
|
name: argocd-cmd-params-cm
|
|
key: redis.server
|
|
optional: true
|
|
- name: REDIS_COMPRESSION
|
|
valueFrom:
|
|
configMapKeyRef:
|
|
name: argocd-cmd-params-cm
|
|
key: redis.compression
|
|
optional: true
|
|
- name: REDISDB
|
|
valueFrom:
|
|
configMapKeyRef:
|
|
name: argocd-cmd-params-cm
|
|
key: redis.db
|
|
optional: true
|
|
- name: REDIS_USERNAME
|
|
valueFrom:
|
|
secretKeyRef:
|
|
name: "argocd-redis"
|
|
key: redis-username
|
|
optional: true
|
|
- name: REDIS_PASSWORD
|
|
valueFrom:
|
|
secretKeyRef:
|
|
name: "argocd-redis" # hard-coded in Job command and embedded Redis deployments (standalone and redis-ha)
|
|
key: auth
|
|
optional: false # Secret is not optional in this case !
|
|
- name: REDIS_SENTINEL_USERNAME
|
|
valueFrom:
|
|
secretKeyRef:
|
|
name: argocd-redis-ha-haproxy
|
|
key: redis-sentinel-username
|
|
optional: true
|
|
- name: REDIS_SENTINEL_PASSWORD
|
|
valueFrom:
|
|
secretKeyRef:
|
|
name: argocd-redis-ha-haproxy
|
|
key: redis-sentinel-password
|
|
optional: true
|
|
- name: ARGOCD_DEFAULT_CACHE_EXPIRATION
|
|
valueFrom:
|
|
configMapKeyRef:
|
|
name: argocd-cmd-params-cm
|
|
key: server.default.cache.expiration
|
|
optional: true
|
|
- name: ARGOCD_MAX_COOKIE_NUMBER
|
|
valueFrom:
|
|
configMapKeyRef:
|
|
name: argocd-cmd-params-cm
|
|
key: server.http.cookie.maxnumber
|
|
optional: true
|
|
- name: ARGOCD_SERVER_LISTEN_ADDRESS
|
|
valueFrom:
|
|
configMapKeyRef:
|
|
name: argocd-cmd-params-cm
|
|
key: server.listen.address
|
|
optional: true
|
|
- name: ARGOCD_SERVER_METRICS_LISTEN_ADDRESS
|
|
valueFrom:
|
|
configMapKeyRef:
|
|
name: argocd-cmd-params-cm
|
|
key: server.metrics.listen.address
|
|
optional: true
|
|
- name: ARGOCD_SERVER_OTLP_ADDRESS
|
|
valueFrom:
|
|
configMapKeyRef:
|
|
name: argocd-cmd-params-cm
|
|
key: otlp.address
|
|
optional: true
|
|
- name: ARGOCD_SERVER_OTLP_INSECURE
|
|
valueFrom:
|
|
configMapKeyRef:
|
|
name: argocd-cmd-params-cm
|
|
key: otlp.insecure
|
|
optional: true
|
|
- name: ARGOCD_SERVER_OTLP_HEADERS
|
|
valueFrom:
|
|
configMapKeyRef:
|
|
name: argocd-cmd-params-cm
|
|
key: otlp.headers
|
|
optional: true
|
|
- name: ARGOCD_SERVER_OTLP_ATTRS
|
|
valueFrom:
|
|
configMapKeyRef:
|
|
name: argocd-cmd-params-cm
|
|
key: otlp.attrs
|
|
optional: true
|
|
- name: ARGOCD_APPLICATION_NAMESPACES
|
|
valueFrom:
|
|
configMapKeyRef:
|
|
name: argocd-cmd-params-cm
|
|
key: application.namespaces
|
|
optional: true
|
|
- name: ARGOCD_SERVER_ENABLE_PROXY_EXTENSION
|
|
valueFrom:
|
|
configMapKeyRef:
|
|
name: argocd-cmd-params-cm
|
|
key: server.enable.proxy.extension
|
|
optional: true
|
|
- name: ARGOCD_K8SCLIENT_RETRY_MAX
|
|
valueFrom:
|
|
configMapKeyRef:
|
|
name: argocd-cmd-params-cm
|
|
key: server.k8sclient.retry.max
|
|
optional: true
|
|
- name: ARGOCD_K8SCLIENT_RETRY_BASE_BACKOFF
|
|
valueFrom:
|
|
configMapKeyRef:
|
|
name: argocd-cmd-params-cm
|
|
key: server.k8sclient.retry.base.backoff
|
|
optional: true
|
|
- name: ARGOCD_API_CONTENT_TYPES
|
|
valueFrom:
|
|
configMapKeyRef:
|
|
name: argocd-cmd-params-cm
|
|
key: server.api.content.types
|
|
optional: true
|
|
- name: ARGOCD_SERVER_WEBHOOK_PARALLELISM_LIMIT
|
|
valueFrom:
|
|
configMapKeyRef:
|
|
name: argocd-cmd-params-cm
|
|
key: server.webhook.parallelism.limit
|
|
optional: true
|
|
- name: ARGOCD_APPLICATIONSET_CONTROLLER_ENABLE_NEW_GIT_FILE_GLOBBING
|
|
valueFrom:
|
|
configMapKeyRef:
|
|
key: applicationsetcontroller.enable.new.git.file.globbing
|
|
name: argocd-cmd-params-cm
|
|
optional: true
|
|
- name: ARGOCD_APPLICATIONSET_CONTROLLER_SCM_ROOT_CA_PATH
|
|
valueFrom:
|
|
configMapKeyRef:
|
|
key: applicationsetcontroller.scm.root.ca.path
|
|
name: argocd-cmd-params-cm
|
|
optional: true
|
|
- name: ARGOCD_APPLICATIONSET_CONTROLLER_ALLOWED_SCM_PROVIDERS
|
|
valueFrom:
|
|
configMapKeyRef:
|
|
name: argocd-cmd-params-cm
|
|
key: applicationsetcontroller.allowed.scm.providers
|
|
optional: true
|
|
- name: ARGOCD_APPLICATIONSET_CONTROLLER_ENABLE_SCM_PROVIDERS
|
|
valueFrom:
|
|
configMapKeyRef:
|
|
name: argocd-cmd-params-cm
|
|
key: applicationsetcontroller.enable.scm.providers
|
|
optional: true
|
|
- name: ARGOCD_APPLICATIONSET_CONTROLLER_ENABLE_GITHUB_API_METRICS
|
|
valueFrom:
|
|
configMapKeyRef:
|
|
name: argocd-cmd-params-cm
|
|
key: applicationsetcontroller.enable.github.api.metrics
|
|
optional: true
|
|
- name: ARGOCD_HYDRATOR_ENABLED
|
|
valueFrom:
|
|
configMapKeyRef:
|
|
name: argocd-cmd-params-cm
|
|
key: hydrator.enabled
|
|
optional: true
|
|
- name: ARGOCD_SYNC_WITH_REPLACE_ALLOWED
|
|
valueFrom:
|
|
configMapKeyRef:
|
|
name: argocd-cmd-params-cm
|
|
key: server.sync.replace.allowed
|
|
optional: true
|
|
volumeMounts:
|
|
- mountPath: /app/config/ssh
|
|
name: ssh-known-hosts
|
|
- mountPath: /app/config/tls
|
|
name: tls-certs
|
|
- mountPath: /app/config/server/tls
|
|
name: argocd-repo-server-tls
|
|
- mountPath: /app/config/dex/tls
|
|
name: argocd-dex-server-tls
|
|
- mountPath: /home/argocd
|
|
name: plugins-home
|
|
- mountPath: /shared/app/custom
|
|
name: styles
|
|
- mountPath: /tmp
|
|
name: tmp
|
|
- name: argocd-cmd-params-cm
|
|
mountPath: /home/argocd/params
|
|
- mountPath: /tmp/extensions
|
|
name: extensions
|
|
ports:
|
|
- name: server
|
|
containerPort: 8080
|
|
protocol: TCP
|
|
- name: metrics
|
|
containerPort: 8083
|
|
protocol: TCP
|
|
livenessProbe:
|
|
httpGet:
|
|
path: /healthz?full=true
|
|
port: server
|
|
initialDelaySeconds: 10
|
|
periodSeconds: 10
|
|
timeoutSeconds: 1
|
|
successThreshold: 1
|
|
failureThreshold: 3
|
|
readinessProbe:
|
|
httpGet:
|
|
path: /healthz
|
|
port: server
|
|
initialDelaySeconds: 10
|
|
periodSeconds: 10
|
|
timeoutSeconds: 1
|
|
successThreshold: 1
|
|
failureThreshold: 3
|
|
resources: {}
|
|
securityContext:
|
|
allowPrivilegeEscalation: false
|
|
capabilities:
|
|
drop:
|
|
- ALL
|
|
readOnlyRootFilesystem: true
|
|
runAsNonRoot: true
|
|
seccompProfile:
|
|
type: RuntimeDefault
|
|
initContainers:
|
|
- name: extension-trivy
|
|
image: quay.io/argoprojlabs/argocd-extension-installer:v0.0.8
|
|
imagePullPolicy: IfNotPresent
|
|
resources: {}
|
|
securityContext:
|
|
allowPrivilegeEscalation: false
|
|
capabilities:
|
|
drop:
|
|
- ALL
|
|
readOnlyRootFilesystem: true
|
|
runAsNonRoot: true
|
|
runAsUser: 1000
|
|
seccompProfile:
|
|
type: RuntimeDefault
|
|
volumeMounts:
|
|
- name: extensions
|
|
mountPath: /tmp/extensions/
|
|
- name: tmp
|
|
mountPath: /tmp
|
|
env:
|
|
- name: EXTENSION_URL
|
|
value: https://github.com/mziyabo/argocd-trivy-extension/releases/download/v0.2.0/extension-trivy.tar
|
|
- name: EXTENSION_CHECKSUM_URL
|
|
value: https://github.com/mziyabo/argocd-trivy-extension/releases/download/v0.2.0/extension-trivy_checksums.txt
|
|
affinity:
|
|
podAntiAffinity:
|
|
preferredDuringSchedulingIgnoredDuringExecution:
|
|
- weight: 100
|
|
podAffinityTerm:
|
|
labelSelector:
|
|
matchLabels:
|
|
app.kubernetes.io/name: argocd-server
|
|
topologyKey: kubernetes.io/hostname
|
|
nodeSelector:
|
|
kubernetes.io/os: linux
|
|
volumes:
|
|
- name: extensions
|
|
emptyDir: {}
|
|
- name: plugins-home
|
|
emptyDir: {}
|
|
- name: tmp
|
|
emptyDir: {}
|
|
- name: ssh-known-hosts
|
|
configMap:
|
|
name: argocd-ssh-known-hosts-cm
|
|
- name: tls-certs
|
|
configMap:
|
|
name: argocd-tls-certs-cm
|
|
- name: styles
|
|
configMap:
|
|
name: argocd-styles-cm
|
|
optional: true
|
|
- name: argocd-repo-server-tls
|
|
secret:
|
|
secretName: argocd-repo-server-tls
|
|
optional: true
|
|
items:
|
|
- key: tls.crt
|
|
path: tls.crt
|
|
- key: tls.key
|
|
path: tls.key
|
|
- key: ca.crt
|
|
path: ca.crt
|
|
- name: argocd-dex-server-tls
|
|
secret:
|
|
secretName: argocd-dex-server-tls
|
|
optional: true
|
|
items:
|
|
- key: tls.crt
|
|
path: tls.crt
|
|
- key: ca.crt
|
|
path: ca.crt
|
|
- name: argocd-cmd-params-cm
|
|
configMap:
|
|
optional: true
|
|
name: argocd-cmd-params-cm
|
|
items:
|
|
- key: server.profile.enabled
|
|
path: profiler.enabled
|
|
dnsPolicy: ClusterFirst
|