Merge branch 'main' into add-check-for-prometheus-crd

This commit is contained in:
Jason Meridth 2024-03-24 07:56:59 -05:00 committed by GitHub
commit dc33346174
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
39 changed files with 517 additions and 478 deletions

View file

@ -2,7 +2,7 @@ apiVersion: v2
appVersion: v1.9.1
description: A Helm chart for Argo Events, the event-driven workflow automation framework
name: argo-events
version: 2.4.3
version: 2.4.4
home: https://github.com/argoproj/argo-helm
icon: https://avatars.githubusercontent.com/u/30269780?s=200&v=4
keywords:
@ -18,5 +18,5 @@ annotations:
fingerprint: 2B8F22F57260EFA67BE1C5824B11F800CD9D2252
url: https://argoproj.github.io/argo-helm/pgp_keys.asc
artifacthub.io/changes: |
- kind: changed
description: Bump argo-events to v1.9.1
- kind: added
description: Support ability to set .Values.namespaceOverride

View file

@ -87,6 +87,7 @@ done
| global.podLabels | object | `{}` | Labels for the all deployed pods |
| global.securityContext | object | `{}` | Toggle and define securityContext. See [values.yaml] |
| nameOverride | string | `"argo-events"` | Provide a name in place of `argo-events` |
| namespaceOverride | string | `.Release.Namespace` | Override the namespace |
| openshift | bool | `false` | Deploy on OpenShift |
### Controller

View file

@ -136,3 +136,11 @@ Define Pdb apiVersion
{{- printf "policy/v1beta1" -}}
{{- end }}
{{- end }}
{{/*
Expand the namespace of the release.
Allows overriding it for multi-namespace deployments in combined charts.
*/}}
{{- define "argo-events.namespace" -}}
{{- default .Release.Namespace .Values.namespaceOverride | trunc 63 | trimSuffix "-" -}}
{{- end }}

View file

@ -2,7 +2,7 @@ apiVersion: v1
kind: ConfigMap
metadata:
name: {{ include "argo-events.controller.fullname" . }}
namespace: {{ .Release.Namespace | quote }}
namespace: {{ include "argo-events.namespace" . | quote }}
labels:
{{- include "argo-events.labels" (dict "context" . "name" .Values.controller.name) | nindent 4 }}
data:

View file

@ -2,7 +2,7 @@ apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ include "argo-events.controller.fullname" . }}
namespace: {{ .Release.Namespace | quote }}
namespace: {{ include "argo-events.namespace" . | quote }}
labels:
{{- include "argo-events.labels" (dict "context" . "component" .Values.controller.name "name" .Values.controller.name) | nindent 4 }}
app.kubernetes.io/version: {{ include "argo-events.controller_chart_version_label" . }}

View file

@ -3,7 +3,7 @@ apiVersion: {{ template "argo-events.pdb.apiVersion" . }}
kind: PodDisruptionBudget
metadata:
name: {{ template "argo-events.controller.fullname" . }}
namespace: {{ .Release.Namespace | quote }}
namespace: {{ include "argo-events.namespace" . | quote }}
labels:
{{- include "argo-events.labels" (dict "context" . "component" .Values.controller.name "name" .Values.controller.name) | nindent 4 }}
{{- with .Values.controller.pdb.labels }}

View file

@ -4,7 +4,7 @@ kind: {{ .Values.controller.rbac.namespaced | ternary "Role" "ClusterRole" }}
metadata:
name: {{ include "argo-events.controller.fullname" . }}
{{- if .Values.controller.rbac.namespaced }}
namespace: {{ .Release.Namespace | quote }}
namespace: {{ include "argo-events.namespace" . | quote }}
{{- end }}
labels:
{{- include "argo-events.labels" (dict "context" . "component" .Values.controller.name "name" .Values.controller.name) | nindent 4 }}
@ -122,5 +122,5 @@ roleRef:
subjects:
- kind: ServiceAccount
name: {{ include "argo-events.controller.serviceAccountName" . }}
namespace: {{ .Release.Namespace | quote }}
namespace: {{ include "argo-events.namespace" . | quote }}
{{- end }}

View file

@ -3,7 +3,7 @@ apiVersion: v1
kind: Service
metadata:
name: {{ template "argo-events.controller.fullname" . }}-metrics
namespace: {{ .Release.Namespace | quote }}
namespace: {{ include "argo-events.namespace" . | quote }}
{{- with .Values.controller.metrics.service.annotations }}
annotations:
{{- range $key, $value := . }}

View file

@ -4,7 +4,7 @@ kind: ServiceAccount
automountServiceAccountToken: {{ .Values.controller.serviceAccount.automountServiceAccountToken }}
metadata:
name: {{ include "argo-events.controller.serviceAccountName" . }}
namespace: {{ .Release.Namespace | quote }}
namespace: {{ include "argo-events.namespace" . | quote }}
{{- with .Values.controller.serviceAccount.annotations }}
annotations:
{{- range $key, $value := . }}

View file

@ -3,7 +3,7 @@ apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor
metadata:
name: {{ template "argo-events.controller.fullname" . }}
namespace: {{ default .Release.Namespace .Values.controller.metrics.serviceMonitor.namespace | quote }}
namespace: {{ default (include "argo-events.namespace" .) .Values.controller.metrics.serviceMonitor.namespace | quote }}
labels:
{{- include "argo-events.labels" (dict "context" . "component" .Values.controller.name "name" .Values.controller.name) | nindent 4 }}
{{- with .Values.controller.metrics.serviceMonitor.selector }}
@ -29,7 +29,7 @@ spec:
{{- end }}
namespaceSelector:
matchNames:
- {{ .Release.Namespace | quote }}
- {{ include "argo-events.namespace" . | quote }}
selector:
matchLabels:
{{- include "argo-events.selectorLabels" (dict "context" . "component" .Values.controller.name "name" (printf "%s-metrics" .Values.controller.name)) | nindent 6 }}

View file

@ -12,5 +12,5 @@ roleRef:
subjects:
- kind: ServiceAccount
name: {{ include "argo-events.webhook.serviceAccountName" . }}
namespace: {{ .Release.Namespace | quote }}
namespace: {{ include "argo-events.namespace" . | quote }}
{{- end }}

View file

@ -3,7 +3,7 @@ apiVersion: apps/v1
kind: Deployment
metadata:
name: events-webhook
namespace: {{ .Release.Namespace | quote }}
namespace: {{ include "argo-events.namespace" . | quote }}
labels:
{{- include "argo-events.labels" (dict "context" . "component" .Values.webhook.name "name" .Values.webhook.name) | nindent 4 }}
app.kubernetes.io/version: {{ include "argo-events.webhook_chart_version_label" . }}

View file

@ -3,7 +3,7 @@ apiVersion: {{ template "argo-events.pdb.apiVersion" . }}
kind: PodDisruptionBudget
metadata:
name: {{ template "argo-events.webhook.fullname" . }}
namespace: {{ .Release.Namespace | quote }}
namespace: {{ include "argo-events.namespace" . | quote }}
labels:
{{- include "argo-events.labels" (dict "context" . "component" .Values.webhook.name "name" .Values.webhook.name) | nindent 4 }}
{{- with .Values.webhook.pdb.labels }}

View file

@ -3,7 +3,7 @@ apiVersion: v1
kind: Service
metadata:
name: events-webhook
namespace: {{ .Release.Namespace | quote }}
namespace: {{ include "argo-events.namespace" . | quote }}
labels:
{{- include "argo-events.labels" (dict "context" . "name" .Values.webhook.name) | nindent 4 }}
spec:

View file

@ -4,7 +4,7 @@ kind: ServiceAccount
automountServiceAccountToken: {{ .Values.webhook.serviceAccount.automountServiceAccountToken }}
metadata:
name: {{ include "argo-events.webhook.serviceAccountName" . }}
namespace: {{ .Release.Namespace | quote }}
namespace: {{ include "argo-events.namespace" . | quote }}
{{- with .Values.webhook.serviceAccount.annotations }}
annotations:
{{- range $key, $value := . }}

View file

@ -6,6 +6,9 @@
nameOverride: argo-events
# -- String to fully override "argo-events.fullname" template
fullnameOverride: ""
# -- Override the namespace
# @default -- `.Release.Namespace`
namespaceOverride: ""
# -- Deploy on OpenShift
openshift: false

View file

@ -2,7 +2,7 @@ apiVersion: v2
appVersion: v1.6.6
description: A Helm chart for Argo Rollouts
name: argo-rollouts
version: 2.34.3
version: 2.35.0
home: https://github.com/argoproj/argo-helm
icon: https://argoproj.github.io/argo-rollouts/assets/logo.png
keywords:
@ -18,5 +18,5 @@ annotations:
fingerprint: 2B8F22F57260EFA67BE1C5824B11F800CD9D2252
url: https://argoproj.github.io/argo-helm/pgp_keys.asc
artifacthub.io/changes: |
- kind: changed
description: Bump argo-rollouts to v1.6.6
- kind: added
description: Added Deployment labels

View file

@ -50,6 +50,7 @@ For full list of changes please check ArtifactHub [changelog].
| extraObjects | list | `[]` | Additional manifests to deploy within the chart. A list of objects. |
| fullnameOverride | string | `nil` | String to fully override "argo-rollouts.fullname" template |
| global.deploymentAnnotations | object | `{}` | Annotations for all deployed Deployments |
| global.deploymentLabels | object | `{}` | Labels for all deployed Deployments |
| imagePullSecrets | list | `[]` | Secrets with credentials to pull images from a private registry. Registry secret names as an array. |
| installCRDs | bool | `true` | Install and upgrade CRDs |
| keepCRDs | bool | `true` | Keep CRD's on helm uninstall |
@ -60,6 +61,7 @@ For full list of changes please check ArtifactHub [changelog].
| notifications.secret.items | object | `{}` | Generic key:value pairs to be inserted into the notifications secret |
| notifications.templates | object | `{}` | Notification templates |
| notifications.triggers | object | `{}` | The trigger defines the condition when the notification should be sent |
| providerRBAC.additionalRules | list | `[]` | Additional RBAC rules for others providers |
| providerRBAC.enabled | bool | `true` | Toggles addition of provider-specific RBAC rules to the controller Role and ClusterRole |
| providerRBAC.providers.ambassador | bool | `true` | Adds RBAC rules for the Ambassador provider |
| providerRBAC.providers.apisix | bool | `true` | Adds RBAC rules for the Apisix provider |
@ -82,6 +84,7 @@ For full list of changes please check ArtifactHub [changelog].
| controller.containerPorts.metrics | int | `8090` | Metrics container port |
| controller.createClusterRole | bool | `true` | flag to enable creation of cluster controller role (requires cluster RBAC) |
| controller.deploymentAnnotations | object | `{}` | Annotations to be added to the controller deployment |
| controller.deploymentLabels | object | `{}` | Labels to be added to the controller deployment |
| controller.extraArgs | list | `[]` | Additional command line arguments to pass to rollouts-controller. A list of flags. |
| controller.extraContainers | list | `[]` | Literal yaml for extra containers to be added to controller deployment. |
| controller.extraEnv | list | `[]` | Additional environment variables for rollouts-controller. A list of name/value maps. |
@ -138,6 +141,7 @@ For full list of changes please check ArtifactHub [changelog].
| dashboard.containerSecurityContext | object | `{}` | Security Context to set on container level |
| dashboard.createClusterRole | bool | `true` | flag to enable creation of dashbord cluster role (requires cluster RBAC) |
| dashboard.deploymentAnnotations | object | `{}` | Annotations to be added to the dashboard deployment |
| dashboard.deploymentLabels | object | `{}` | Labels to be added to the dashboard deployment |
| dashboard.enabled | bool | `false` | Deploy dashboard server |
| dashboard.extraArgs | list | `[]` | Additional command line arguments to pass to rollouts-dashboard. A list of flags. |
| dashboard.extraEnv | list | `[]` | Additional environment variables for rollouts-dashboard. A list of name/value maps. |

View file

@ -258,23 +258,26 @@ rules:
{{- if .Values.providerRBAC.providers.contour }}
# Access needed when using the Contour provider
- apiGroups:
- projectcontour.io
- projectcontour.io
resources:
- httpproxies
- httpproxies
verbs:
- get
- list
- watch
- update
- get
- list
- watch
- update
{{- end }}
{{- if .Values.providerRBAC.providers.glooPlatform }}
# Access needed when using the Gloo Platform provider
- apiGroups:
- networking.gloo.solo.io
- networking.gloo.solo.io
resources:
- routetables
- routetables
verbs:
- '*'
- '*'
{{- end }}
{{- with .Values.providerRBAC.additionalRules }}
{{ toYaml . }}
{{- end }}
{{- end }}
{{- end }}

View file

@ -10,6 +10,9 @@ metadata:
name: {{ include "argo-rollouts.fullname" . }}
namespace: {{ .Release.Namespace | quote }}
labels:
{{- range $key, $value := (mergeOverwrite (deepCopy .Values.global.deploymentLabels) .Values.controller.deploymentLabels) }}
{{ $key }}: {{ $value | quote }}
{{- end }}
app.kubernetes.io/component: {{ .Values.controller.component }}
{{- include "argo-rollouts.labels" . | nindent 4 }}
spec:

View file

@ -11,6 +11,9 @@ metadata:
name: {{ include "argo-rollouts.fullname" . }}-dashboard
namespace: {{ .Release.Namespace | quote }}
labels:
{{- range $key, $value := (mergeOverwrite (deepCopy .Values.global.deploymentLabels) .Values.dashboard.deploymentLabels) }}
{{ $key }}: {{ $value | quote }}
{{- end }}
app.kubernetes.io/component: {{ .Values.dashboard.component }}
{{- include "argo-rollouts.labels" . | nindent 4 }}
spec:

View file

@ -41,12 +41,16 @@ extraObjects: []
global:
# -- Annotations for all deployed Deployments
deploymentAnnotations: {}
# -- Labels for all deployed Deployments
deploymentLabels: {}
controller:
# -- Value of label `app.kubernetes.io/component`
component: rollouts-controller
# -- Annotations to be added to the controller deployment
deploymentAnnotations: {}
# -- Labels to be added to the controller deployment
deploymentLabels: {}
# -- Annotations to be added to application controller pods
podAnnotations: {}
# -- [Node selector]
@ -273,6 +277,8 @@ providerRBAC:
contour: true
# -- Adds RBAC rules for the Gloo Platform provider, see `https://github.com/argoproj-labs/rollouts-plugin-trafficrouter-glooplatform/blob/main/README.md`
glooPlatform: true
# -- Additional RBAC rules for others providers
additionalRules: []
dashboard:
# -- Deploy dashboard server
@ -283,6 +289,8 @@ dashboard:
component: rollouts-dashboard
# -- Annotations to be added to the dashboard deployment
deploymentAnnotations: {}
# -- Labels to be added to the dashboard deployment
deploymentLabels: {}
# -- Annotations to be added to application dashboard pods
podAnnotations: {}
# -- [Node selector]

View file

@ -2,7 +2,7 @@ apiVersion: v2
name: argocd-apps
description: A Helm chart for managing additional Argo CD Applications and Projects
type: application
version: 1.6.2
version: 2.0.0
home: https://github.com/argoproj/argo-helm
icon: https://argo-cd.readthedocs.io/en/stable/assets/logo.png
keywords:
@ -18,4 +18,4 @@ annotations:
url: https://argoproj.github.io/argo-helm/pgp_keys.asc
artifacthub.io/changes: |
- kind: added
description: Support Template Patch to ApplicationSet
description: make the chart use maps instead of lists

View file

@ -28,11 +28,11 @@ $ helm install my-release argo/argocd-apps
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| applications | list | `[]` (See [values.yaml]) | Deploy Argo CD Applications within this helm release |
| applicationsets | list | `[]` (See [values.yaml]) | Deploy Argo CD ApplicationSets within this helm release |
| extensions | list | `[]` (See [values.yaml]) | DEPRECATED - Please refer [Deprecation Notice](https://github.com/argoproj-labs/argocd-extensions?tab=readme-ov-file#deprecation-notice) for more info. |
| applications | object | `{}` (See [values.yaml]) | Deploy Argo CD Applications within this helm release |
| applicationsets | object | `{}` (See [values.yaml]) | Deploy Argo CD ApplicationSets within this helm release |
| extensions | object | `{}` (See [values.yaml]) | DEPRECATED - Please refer [Deprecation Notice](https://github.com/argoproj-labs/argocd-extensions?tab=readme-ov-file#deprecation-notice) for more info. |
| itemTemplates | list | `[]` (See [values.yaml]) | Deploy Argo CD Applications/ApplicationSets/Projects within this helm release |
| projects | list | `[]` (See [values.yaml]) | Deploy Argo CD Projects within this helm release |
| projects | object | `{}` (See [values.yaml]) | Deploy Argo CD Projects within this helm release |
----------------------------------------------
Autogenerated from chart metadata using [helm-docs](https://github.com/norwoodj/helm-docs)

View file

@ -1,28 +1,28 @@
# Test with multi-source applications
applications:
- name: argocd-application-multiple-sources
additionalLabels: {}
additionalAnnotations: {}
finalizers:
- resources-finalizer.argocd.argoproj.io
project: default
sources:
- chart: elasticsearch
repoURL: https://helm.elastic.co
targetRevision: 8.5.1
- repoURL: https://github.com/argoproj/argocd-example-apps.git
path: guestbook
targetRevision: HEAD
destination:
server: https://kubernetes.default.svc
namespace: default
syncPolicy:
automated:
prune: false
selfHeal: false
ignoreDifferences:
- group: apps
kind: Deployment
jsonPointers:
- /spec/replicas
argocd-application-multiple-sources:
additionalLabels: {}
additionalAnnotations: {}
finalizers:
- resources-finalizer.argocd.argoproj.io
project: default
sources:
- chart: elasticsearch
repoURL: https://helm.elastic.co
targetRevision: 8.5.1
- repoURL: https://github.com/argoproj/argocd-example-apps.git
path: guestbook
targetRevision: HEAD
destination:
server: https://kubernetes.default.svc
namespace: default
syncPolicy:
automated:
prune: false
selfHeal: false
ignoreDifferences:
- group: apps
kind: Deployment
jsonPointers:
- /spec/replicas

View file

@ -1,33 +1,33 @@
# Test with applications
applications:
- name: argocd-application
additionalLabels: {}
additionalAnnotations: {}
finalizers:
- resources-finalizer.argocd.argoproj.io
project: default
source:
repoURL: https://github.com/argoproj/argocd-example-apps.git
targetRevision: HEAD
path: guestbook
directory:
recurse: true
destination:
server: https://kubernetes.default.svc
namespace: default
syncPolicy:
automated:
prune: false
selfHeal: false
syncOptions:
- ApplyOutOfSyncOnly=true
revisionHistoryLimit: null
ignoreDifferences:
- group: apps
kind: Deployment
jsonPointers:
- /spec/replicas
info:
- name: url
value: https://argoproj.github.io/
argocd-application:
additionalLabels: {}
additionalAnnotations: {}
finalizers:
- resources-finalizer.argocd.argoproj.io
project: default
source:
repoURL: https://github.com/argoproj/argocd-example-apps.git
targetRevision: HEAD
path: guestbook
directory:
recurse: true
destination:
server: https://kubernetes.default.svc
namespace: default
syncPolicy:
automated:
prune: false
selfHeal: false
syncOptions:
- ApplyOutOfSyncOnly=true
revisionHistoryLimit: null
ignoreDifferences:
- group: apps
kind: Deployment
jsonPointers:
- /spec/replicas
info:
- name: url
value: https://argoproj.github.io/

View file

@ -1,24 +1,24 @@
# Test with multi-source applicationsets
applicationsets:
- name: applicationset-multiple-sources
generators:
- list:
elements:
- cluster: default-cluster
url: https://kubernetes.default.svc
template:
metadata:
name: '{{cluster}}-guestbook'
spec:
project: default
sources:
- chart: elasticsearch
repoURL: https://helm.elastic.co
targetRevision: 8.5.1
- repoURL: https://github.com/argoproj/argocd-example-apps.git
path: guestbook
targetRevision: HEAD
destination:
server: '{{url}}'
namespace: default
applicationset-multiple-sources:
generators:
- list:
elements:
- cluster: default-cluster
url: https://kubernetes.default.svc
template:
metadata:
name: '{{cluster}}-guestbook'
spec:
project: default
sources:
- chart: elasticsearch
repoURL: https://helm.elastic.co
targetRevision: 8.5.1
- repoURL: https://github.com/argoproj/argocd-example-apps.git
path: guestbook
targetRevision: HEAD
destination:
server: '{{url}}'
namespace: default

View file

@ -1,41 +1,41 @@
# Test applicationsets with Progressive Syncs
applicationsets:
- name: applicationset-progressive-syncs
generators:
- list:
elements:
- cluster: engineering-dev
url: https://1.2.3.4
env: env-dev
- cluster: engineering-prod
url: https://9.8.7.6/
env: env-prod
strategy:
type: RollingSync
rollingSync:
steps:
- matchExpressions:
- key: envLabel
operator: In
values:
- env-dev
- matchExpressions:
- key: envLabel
operator: In
values:
- env-prod
template:
metadata:
name: '{{.cluster}}-guestbook'
labels:
envLabel: '{{.env}}'
spec:
project: my-project
source:
repoURL: https://github.com/argoproj/argocd-example-apps.git
targetRevision: HEAD
path: guestbook/{{.cluster}}
destination:
server: '{{.url}}'
namespace: guestbook
applicationset-progressive-syncs:
generators:
- list:
elements:
- cluster: engineering-dev
url: https://1.2.3.4
env: env-dev
- cluster: engineering-prod
url: https://9.8.7.6/
env: env-prod
strategy:
type: RollingSync
rollingSync:
steps:
- matchExpressions:
- key: envLabel
operator: In
values:
- env-dev
- matchExpressions:
- key: envLabel
operator: In
values:
- env-prod
template:
metadata:
name: '{{.cluster}}-guestbook'
labels:
envLabel: '{{.env}}'
spec:
project: my-project
source:
repoURL: https://github.com/argoproj/argocd-example-apps.git
targetRevision: HEAD
path: guestbook/{{.cluster}}
destination:
server: '{{.url}}'
namespace: guestbook

View file

@ -1,90 +1,90 @@
# Test with applicationsets
applicationsets:
- name: applicationset
additionalLabels: {}
additionalAnnotations: {}
# See PR #10026 (ArgoCD v2.5 or later)
# goTemplate: false
generators:
- git:
repoURL: https://github.com/argoproj/argocd-example-apps.git
revision: HEAD
directories:
- path: guestbook
- path: kustomize-*
# Ref https://argo-cd.readthedocs.io/en/stable/operator-manual/applicationset/Controlling-Resource-Modification/#allow-temporarily-toggling-auto-sync
ignoreApplicationDifferences:
- jsonPointers:
- /spec/syncPolicy
template:
metadata:
name: '{{path.basename}}'
labels: {}
annotations: {}
spec:
project: default
source:
applicationset:
additionalLabels: {}
additionalAnnotations: {}
# See PR #10026 (ArgoCD v2.5 or later)
# goTemplate: false
generators:
- git:
repoURL: https://github.com/argoproj/argocd-example-apps.git
targetRevision: HEAD
path: '{{path}}'
destination:
server: https://kubernetes.default.svc
namespace: default
syncPolicy:
automated:
prune: false
selfHeal: false
ignoreDifferences:
- group: apps
kind: Deployment
jsonPointers:
- /spec/replicas
info:
- name: url
value: https://argoproj.github.io/
syncPolicy:
# Set Application finalizer
preserveResourcesOnDeletion: false
templatePatch: |
spec:
source:
helm:
valueFiles:
{{- range $valueFile := .valueFiles }}
- {{ $valueFile }}
{{- end }}
{{- if .autoSync }}
syncPolicy:
automated:
prune: {{ .prune }}
{{- end }}
- name: applicationset-list-generator
generators:
- list:
elements:
- cluster: engineering-dev
url: https://kubernetes.default.svc
template:
metadata: {}
spec:
project: '{{cluster}}'
source:
targetRevision: HEAD
repoURL: https://github.com/argoproj/argo-cd.git
# New path value is generated here:
path: 'applicationset/examples/template-override/{{cluster}}-override'
destination: {}
template:
metadata:
name: '{{cluster}}-guestbook'
spec:
project: '{{cluster}}'
source:
repoURL: https://github.com/argoproj/argo-cd.git
targetRevision: HEAD
# This 'default' value is not used: it is is replaced by the generator's template path, above
path: applicationset/examples/template-override/default
destination:
server: '{{url}}'
namespace: guestbook
revision: HEAD
directories:
- path: guestbook
- path: kustomize-*
# Ref https://argo-cd.readthedocs.io/en/stable/operator-manual/applicationset/Controlling-Resource-Modification/#allow-temporarily-toggling-auto-sync
ignoreApplicationDifferences:
- jsonPointers:
- /spec/syncPolicy
template:
metadata:
name: '{{path.basename}}'
labels: {}
annotations: {}
spec:
project: default
source:
repoURL: https://github.com/argoproj/argocd-example-apps.git
targetRevision: HEAD
path: '{{path}}'
destination:
server: https://kubernetes.default.svc
namespace: default
syncPolicy:
automated:
prune: false
selfHeal: false
ignoreDifferences:
- group: apps
kind: Deployment
jsonPointers:
- /spec/replicas
info:
- name: url
value: https://argoproj.github.io/
syncPolicy:
# Set Application finalizer
preserveResourcesOnDeletion: false
templatePatch: |
spec:
source:
helm:
valueFiles:
{{- range $valueFile := .valueFiles }}
- {{ $valueFile }}
{{- end }}
{{- if .autoSync }}
syncPolicy:
automated:
prune: {{ .prune }}
{{- end }}
applicationset-list-generator:
generators:
- list:
elements:
- cluster: engineering-dev
url: https://kubernetes.default.svc
template:
metadata: {}
spec:
project: '{{cluster}}'
source:
targetRevision: HEAD
repoURL: https://github.com/argoproj/argo-cd.git
# New path value is generated here:
path: 'applicationset/examples/template-override/{{cluster}}-override'
destination: {}
template:
metadata:
name: '{{cluster}}-guestbook'
spec:
project: '{{cluster}}'
source:
repoURL: https://github.com/argoproj/argo-cd.git
targetRevision: HEAD
# This 'default' value is not used: it is is replaced by the generator's template path, above
path: applicationset/examples/template-override/default
destination:
server: '{{url}}'
namespace: guestbook

View file

@ -1,50 +1,50 @@
{{- range .Values.applications }}
{{- range $appName, $appData:= .Values.applications }}
---
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
{{- with .additionalAnnotations }}
{{- with $appData.additionalAnnotations }}
annotations:
{{- range $key, $value := . }}
{{ $key }}: {{ $value | quote }}
{{- end }}
{{- end }}
{{- with .additionalLabels }}
{{- with $appData.additionalLabels }}
labels:
{{- toYaml . | nindent 4 }}
{{- end }}
name: {{ .name }}
{{- with .namespace }}
name: {{ $appName }}
{{- with $appData.namespace }}
namespace: {{ . }}
{{- end }}
{{- with .finalizers }}
{{- with $appData.finalizers }}
finalizers:
{{- toYaml . | nindent 4 }}
{{- end }}
spec:
project: {{ tpl .project $ }}
{{- with .source }}
project: {{ tpl $appData.project $ }}
{{- with $appData.source }}
source:
{{- toYaml . | nindent 4 }}
{{- end }}
{{- with .sources }}
{{- with $appData.sources }}
sources:
{{- toYaml . | nindent 4 }}
{{- end }}
destination:
{{- toYaml .destination | nindent 4 }}
{{- with .syncPolicy }}
{{- toYaml $appData.destination | nindent 4 }}
{{- with $appData.syncPolicy }}
syncPolicy:
{{- toYaml . | nindent 4 }}
{{- end }}
{{- with .revisionHistoryLimit }}
{{- with $appData.revisionHistoryLimit }}
revisionHistoryLimit: {{ . }}
{{- end }}
{{- with .ignoreDifferences }}
{{- with $appData.ignoreDifferences }}
ignoreDifferences:
{{- toYaml . | nindent 4 }}
{{- end }}
{{- with .info }}
{{- with $appData.info }}
info:
{{- toYaml . | nindent 4 }}
{{- end }}

View file

@ -1,44 +1,43 @@
{{- range .Values.applicationsets }}
{{- range $appSetName, $appSetData:= .Values.applicationsets }}
---
apiVersion: argoproj.io/v1alpha1
kind: ApplicationSet
metadata:
{{- with .additionalAnnotations }}
{{- with $appSetData.additionalAnnotations }}
annotations:
{{- range $key, $value := . }}
{{ $key }}: {{ $value | quote }}
{{- end }}
{{- end }}
{{- with .additionalLabels }}
{{- with $appSetData.additionalLabels }}
labels:
{{- toYaml . | nindent 4 }}
{{- end }}
name: {{ .name }}
{{- with .namespace }}
name: {{ $appSetName }}
{{- with $appSetData.namespace }}
namespace: {{ . }}
{{- end }}
spec:
{{- if hasKey . "goTemplate" }}
goTemplate: {{ .goTemplate }}
{{- if hasKey $appSetData "goTemplate" }}
goTemplate: {{ $appSetData.goTemplate }}
{{- end }}
{{- with .generators }}
{{- with $appSetData.generators }}
generators:
{{- toYaml . | nindent 4 }}
{{- end }}
{{- with .ignoreApplicationDifferences }}
{{- with $appSetData.ignoreApplicationDifferences }}
ignoreApplicationDifferences:
{{- toYaml . | nindent 4 }}
{{- end }}
{{- with .strategy }}
{{- with $appSetData.strategy }}
strategy:
{{- toYaml . | nindent 4 }}
{{- end }}
{{- with .syncPolicy }}
{{- with $appSetData.syncPolicy }}
syncPolicy:
{{- toYaml . | nindent 4 }}
{{- end }}
{{- with .template }}
{{- with $appSetData.template }}
template:
{{- with .metadata }}
metadata:
@ -84,7 +83,7 @@ spec:
{{- end }}
{{- end -}}
{{- end }}
{{- with .templatePatch }}
{{- with $appSetData.templatePatch }}
templatePatch: |
{{- . | nindent 4 }}
{{- end }}

View file

@ -1,25 +1,25 @@
{{- range .Values.extensions }}
{{- range $extensionName, $extensionData:= .Values.extensions }}
---
apiVersion: argoproj.io/v1alpha1
kind: ArgoCDExtension
metadata:
name: {{ .name }}
{{- with .namespace }}
name: {{ $extensionName }}
{{- with $extensionData.namespace }}
namespace: {{ . }}
{{- end }}
finalizers:
- extensions-finalizer.argocd.argoproj.io
{{- with .additionalLabels }}
{{- with $extensionData.additionalLabels }}
labels:
{{- toYaml . | nindent 4 }}
{{- end }}
{{- with .additionalAnnotations }}
{{- with $extensionData.additionalAnnotations }}
annotations:
{{- range $key, $value := . }}
{{ $key }}: {{ $value | quote }}
{{- end }}
{{- end }}
{{- with .sources }}
{{- with $extensionData.sources }}
spec:
sources:
{{- toYaml . | nindent 4 }}

View file

@ -1,72 +1,72 @@
{{- range .Values.projects }}
{{- range $projectName, $projectData := .Values.projects }}
---
apiVersion: argoproj.io/v1alpha1
kind: AppProject
metadata:
{{- with .additionalAnnotations }}
{{- with $projectData.additionalAnnotations }}
annotations:
{{- range $key, $value := . }}
{{ $key }}: {{ $value | quote }}
{{- end }}
{{- end }}
{{- with .additionalLabels }}
{{- with $projectData.additionalLabels }}
labels:
{{- toYaml . | nindent 4 }}
{{- end }}
name: {{ .name }}
{{- with .namespace }}
name: {{ $projectName }}
{{- with $projectData.namespace }}
namespace: {{ . }}
{{- end }}
{{- with .finalizers }}
{{- with $projectData.finalizers }}
finalizers:
{{- toYaml . | nindent 4 }}
{{- end }}
spec:
{{- with .permitOnlyProjectScopedClusters }}
{{- with $projectData.permitOnlyProjectScopedClusters }}
permitOnlyProjectScopedClusters: {{ . }}
{{- end }}
description: {{ .description }}
{{- with .sourceRepos }}
description: {{ $projectData.description }}
{{- with $projectData.sourceRepos }}
sourceRepos:
{{- toYaml . | nindent 4 }}
{{- end }}
{{- with .destinations }}
{{- with $projectData.destinations }}
destinations:
{{- toYaml . | nindent 4 }}
{{- end }}
{{- with .clusterResourceWhitelist }}
{{- with $projectData.clusterResourceWhitelist }}
clusterResourceWhitelist:
{{- toYaml . | nindent 4 }}
{{- end }}
{{- with .clusterResourceBlacklist }}
{{- with $projectData.clusterResourceBlacklist }}
clusterResourceBlacklist:
{{- toYaml . | nindent 4 }}
{{- end }}
{{- with .namespaceResourceBlacklist }}
{{- with $projectData.namespaceResourceBlacklist }}
namespaceResourceBlacklist:
{{- toYaml . | nindent 4 }}
{{- end }}
{{- with .namespaceResourceWhitelist }}
{{- with $projectData.namespaceResourceWhitelist }}
namespaceResourceWhitelist:
{{- toYaml . | nindent 4 }}
{{- end }}
{{- with .orphanedResources }}
{{- with $projectData.orphanedResources }}
orphanedResources:
{{- toYaml . | nindent 4 }}
{{- end }}
{{- with .roles }}
{{- with $projectData.roles }}
roles:
{{- toYaml . | nindent 4 }}
{{- end }}
{{- with .syncWindows }}
{{- with $projectData.syncWindows }}
syncWindows:
{{- toYaml . | nindent 4 }}
{{- end }}
{{- with .signatureKeys }}
{{- with $projectData.signatureKeys }}
signatureKeys:
{{- toYaml . | nindent 4 }}
{{- end }}
{{- with .sourceNamespaces }}
{{- with $projectData.sourceNamespaces }}
sourceNamespaces:
{{- toYaml . | nindent 4 }}
{{- end }}

View file

@ -1,176 +1,176 @@
# -- Deploy Argo CD Applications within this helm release
# @default -- `[]` (See [values.yaml])
# @default -- `{}` (See [values.yaml])
## Ref: https://github.com/argoproj/argo-cd/blob/master/docs/operator-manual/
applications: []
# - name: guestbook
# namespace: argocd
# additionalLabels: {}
# additionalAnnotations: {}
# finalizers:
# - resources-finalizer.argocd.argoproj.io
# project: guestbook
# source:
# repoURL: https://github.com/argoproj/argocd-example-apps.git
# targetRevision: HEAD
# path: guestbook
# directory:
# recurse: true
# # ArgoCD v2.6 or later
# sources:
applications: {}
# guestbook:
# namespace: argocd
# additionalLabels: {}
# additionalAnnotations: {}
# finalizers:
# - resources-finalizer.argocd.argoproj.io
# project: guestbook
# source:
# repoURL: https://github.com/argoproj/argocd-example-apps.git
# targetRevision: HEAD
# path: guestbook
# directory:
# recurse: true
# # ArgoCD v2.6 or later
# sources:
# - chart: elasticsearch
# repoURL: https://helm.elastic.co
# targetRevision: 8.5.1
# - repoURL: https://github.com/argoproj/argocd-example-apps.git
# path: guestbook
# targetRevision: HEAD
# destination:
# server: https://kubernetes.default.svc
# namespace: guestbook
# syncPolicy:
# automated:
# prune: false
# selfHeal: false
# syncOptions:
# - CreateNamespace=true
# revisionHistoryLimit: null
# ignoreDifferences:
# - group: apps
# kind: Deployment
# jsonPointers:
# - /spec/replicas
# info:
# - name: url
# value: https://argoproj.github.io/
# destination:
# server: https://kubernetes.default.svc
# namespace: guestbook
# syncPolicy:
# automated:
# prune: false
# selfHeal: false
# syncOptions:
# - CreateNamespace=true
# revisionHistoryLimit: null
# ignoreDifferences:
# - group: apps
# kind: Deployment
# jsonPointers:
# - /spec/replicas
# info:
# - name: url
# value: https://argoproj.github.io/
# -- Deploy Argo CD Projects within this helm release
# @default -- `[]` (See [values.yaml])
# @default -- `{}` (See [values.yaml])
## Ref: https://github.com/argoproj/argo-cd/blob/master/docs/operator-manual/
projects: []
# - name: guestbook
# namespace: argocd
# additionalLabels: {}
# additionalAnnotations: {}
# permitOnlyProjectScopedClusters: false
# finalizers:
# - resources-finalizer.argocd.argoproj.io
# description: Example Project
# sourceRepos:
# - '*'
# destinations:
# - namespace: guestbook
# server: https://kubernetes.default.svc
# clusterResourceWhitelist: []
# clusterResourceBlacklist: []
# namespaceResourceBlacklist:
# - group: ''
# kind: ResourceQuota
# - group: ''
# kind: LimitRange
# - group: ''
# kind: NetworkPolicy
# orphanedResources: {}
# roles: []
# namespaceResourceWhitelist:
# - group: 'apps'
# kind: Deployment
# - group: 'apps'
# kind: StatefulSet
# orphanedResources: {}
# roles: []
# syncWindows:
# - kind: allow
# schedule: '10 1 * * *'
# duration: 1h
# applications:
# - '*-prod'
# manualSync: true
# signatureKeys:
# - keyID: ABCDEF1234567890
# sourceNamespaces:
# - argocd
projects: {}
# guestbook:
# namespace: argocd
# additionalLabels: {}
# additionalAnnotations: {}
# permitOnlyProjectScopedClusters: false
# finalizers:
# - resources-finalizer.argocd.argoproj.io
# description: Example Project
# sourceRepos:
# - '*'
# destinations:
# - namespace: guestbook
# server: https://kubernetes.default.svc
# clusterResourceWhitelist: []
# clusterResourceBlacklist: []
# namespaceResourceBlacklist:
# - group: ''
# kind: ResourceQuota
# - group: ''
# kind: LimitRange
# - group: ''
# kind: NetworkPolicy
# orphanedResources: {}
# roles: []
# namespaceResourceWhitelist:
# - group: 'apps'
# kind: Deployment
# - group: 'apps'
# kind: StatefulSet
# orphanedResources: {}
# roles: []
# syncWindows:
# - kind: allow
# schedule: '10 1 * * *'
# duration: 1h
# applications:
# - '*-prod'
# manualSync: true
# signatureKeys:
# - keyID: ABCDEF1234567890
# sourceNamespaces:
# - argocd
# -- Deploy Argo CD ApplicationSets within this helm release
# @default -- `[]` (See [values.yaml])
# @default -- `{}` (See [values.yaml])
## Ref: https://argo-cd.readthedocs.io/en/stable/operator-manual/applicationset/
applicationsets: []
# - name: guestbook
# namespace: argocd
# additionalLabels: {}
# additionalAnnotations: {}
# # See PR #10026 (ArgoCD v2.5 or later)
# # goTemplate: false
# generators:
# - git:
# repoURL: https://github.com/argoproj/argocd-example-apps.git
# revision: HEAD
# directories:
# - path: guestbook
# - path: kustomize-*
# # Ref https://argo-cd.readthedocs.io/en/stable/operator-manual/applicationset/Controlling-Resource-Modification/#allow-temporarily-toggling-auto-sync
# ignoreApplicationDifferences:
# - jsonPointers:
# - /spec/syncPolicy
# # Progressive Syncs is an experimental feature and it must be explicitly enabled
# # Ref: https://argo-cd.readthedocs.io/en/stable/operator-manual/applicationset/Progressive-Syncs/#enabling-progressive-syncs
# strategy:
# type: RollingSync
# rollingSync:
# steps:
# - matchExpressions:
# - key: project
# operator: In
# values:
# - guestbook
# - matchExpressions:
# - key: project
# operator: In
# values:
# - kustomize-foo
# - kustomize-bar
# template:
# metadata:
# name: '{{path.basename}}'
# labels:
# project: '{{path.basename}}'
# annotations: {}
# spec:
# project: default
# source:
# repoURL: https://github.com/argoproj/argocd-example-apps.git
# targetRevision: HEAD
# path: '{{path}}'
# destination:
# server: https://kubernetes.default.svc
# namespace: default
# syncPolicy:
# automated:
# prune: false
# selfHeal: false
# ignoreDifferences:
# - group: apps
# kind: Deployment
# jsonPointers:
# - /spec/replicas
# info:
# - name: url
# value: https://argoproj.github.io/
# syncPolicy:
# # Set Application finalizer
# preserveResourcesOnDeletion: false
# # Templating is only available on string type
# templatePatch: |
# spec:
# source:
# helm:
# valueFiles:
# {{- range $valueFile := .valueFiles }}
# - {{ $valueFile }}
# {{- end }}
# {{- if .autoSync }}
# syncPolicy:
# automated:
# prune: {{ .prune }}
# {{- end }}
applicationsets: {}
# guestbook:
# namespace: argocd
# additionalLabels: {}
# additionalAnnotations: {}
# # See PR #10026 (ArgoCD v2.5 or later)
# # goTemplate: false
# generators:
# - git:
# repoURL: https://github.com/argoproj/argocd-example-apps.git
# revision: HEAD
# directories:
# - path: guestbook
# - path: kustomize-*
# # Ref https://argo-cd.readthedocs.io/en/stable/operator-manual/applicationset/Controlling-Resource-Modification/#allow-temporarily-toggling-auto-sync
# ignoreApplicationDifferences:
# - jsonPointers:
# - /spec/syncPolicy
# # Progressive Syncs is an experimental feature and it must be explicitly enabled
# # Ref: https://argo-cd.readthedocs.io/en/stable/operator-manual/applicationset/Progressive-Syncs/#enabling-progressive-syncs
# strategy:
# type: RollingSync
# rollingSync:
# steps:
# - matchExpressions:
# - key: project
# operator: In
# values:
# - guestbook
# - matchExpressions:
# - key: project
# operator: In
# values:
# - kustomize-foo
# - kustomize-bar
# template:
# metadata:
# name: '{{path.basename}}'
# labels:
# project: '{{path.basename}}'
# annotations: {}
# spec:
# project: default
# source:
# repoURL: https://github.com/argoproj/argocd-example-apps.git
# targetRevision: HEAD
# path: '{{path}}'
# destination:
# server: https://kubernetes.default.svc
# namespace: default
# syncPolicy:
# automated:
# prune: false
# selfHeal: false
# ignoreDifferences:
# - group: apps
# kind: Deployment
# jsonPointers:
# - /spec/replicas
# info:
# - name: url
# value: https://argoproj.github.io/
# syncPolicy:
# # Set Application finalizer
# preserveResourcesOnDeletion: false
# # Templating is only available on string type
# templatePatch: |
# spec:
# source:
# helm:
# valueFiles:
# {{- range $valueFile := .valueFiles }}
# - {{ $valueFile }}
# {{- end }}
# {{- if .autoSync }}
# syncPolicy:
# automated:
# prune: {{ .prune }}
# {{- end }}
# -- Deploy Argo CD Applications/ApplicationSets/Projects within this helm release
# @default -- `[]` (See [values.yaml])
@ -238,16 +238,16 @@ itemTemplates: []
# namespace: guestbook
# -- DEPRECATED - Please refer [Deprecation Notice](https://github.com/argoproj-labs/argocd-extensions?tab=readme-ov-file#deprecation-notice) for more info.
# @default -- `[]` (See [values.yaml])
# @default -- `{}` (See [values.yaml])
## This function in tech preview stage, do expect unstability or breaking changes in newer versions. Bump image.tag if necessary.
## Ref: https://github.com/argoproj-labs/argocd-extensions
extensions: []
# - name: example
# namespace: argocd
# additionalLabels: {}
# additionalAnnotations: {}
# sources:
# - git:
# url: https://github.com/argoproj-labs/argocd-example-extension.git
# - web:
# url: https://github.com/argoproj-labs/argocd-example-extension/releases/download/v0.1.0/extension.tar
extensions: {}
# example:
# namespace: argocd
# additionalLabels: {}
# additionalAnnotations: {}
# sources:
# - git:
# url: https://github.com/argoproj-labs/argocd-example-extension.git
# - web:
# url: https://github.com/argoproj-labs/argocd-example-extension/releases/download/v0.1.0/extension.tar

View file

@ -2,7 +2,7 @@ apiVersion: v2
name: argocd-image-updater
description: A Helm chart for Argo CD Image Updater, a tool to automatically update the container images of Kubernetes workloads which are managed by Argo CD
type: application
version: 0.9.5
version: 0.9.6
appVersion: v0.12.2
home: https://github.com/argoproj-labs/argocd-image-updater
icon: https://argocd-image-updater.readthedocs.io/en/stable/assets/logo.png
@ -18,5 +18,9 @@ annotations:
fingerprint: 2B8F22F57260EFA67BE1C5824B11F800CD9D2252
url: https://argoproj.github.io/argo-helm/pgp_keys.asc
artifacthub.io/changes: |
- kind: added
description: Allow overriding of .Release.Namespace with .Values.namespaceOverride
- kind: fixed
description: Properly quoting the config map values
- kind: fixed
description: Only adding a data field to argocd-image-updater-ssh-config when there's data to be added
- kind: changed
description: Only include config.argocd if config.applicationsAPIKind is set to 'argocd'

View file

@ -5,7 +5,7 @@ metadata:
{{- include "argocd-image-updater.labels" . | nindent 4 }}
name: argocd-image-updater-ssh-config
namespace: {{ include "argocd-image-updater.namespace" . | quote }}
{{- with .Values.config.sshConfig }}
data:
{{- with .Values.config.sshConfig }}
{{- toYaml . | nindent 2 }}
{{- end }}
{{- end }}

View file

@ -8,30 +8,32 @@ metadata:
namespace: {{ include "argocd-image-updater.namespace" . | quote }}
data:
{{- with .Values.config.applicationsAPIKind }}
applications_api: {{ . }}
applications_api: {{ . | quote }}
{{- if eq . "argocd" }}
argocd.grpc_web: {{ $.Values.config.argocd.grpcWeb | quote }}
{{- with $.Values.config.argocd.serverAddress }}
argocd.server_addr: {{ . | quote }}
{{- end }}
argocd.grpc_web: {{ .Values.config.argocd.grpcWeb | quote }}
{{- with .Values.config.argocd.serverAddress }}
argocd.server_addr: {{ . }}
argocd.insecure: {{ $.Values.config.argocd.insecure | quote }}
argocd.plaintext: {{ $.Values.config.argocd.plaintext | quote }}
{{- end -}}
{{- end }}
argocd.insecure: {{ .Values.config.argocd.insecure | quote }}
argocd.plaintext: {{ .Values.config.argocd.plaintext | quote }}
{{- with .Values.config.logLevel }}
log.level: {{ . }}
log.level: {{ . | quote }}
{{- end }}
{{- with .Values.config.gitCommitUser }}
git.user: {{ . }}
git.user: {{ . | quote }}
{{- end }}
{{- with .Values.config.gitCommitMail }}
git.email: {{ . }}
git.email: {{ . | quote }}
{{- end }}
{{- with .Values.config.gitCommitTemplate }}
git.commit-message-template: |
{{- nindent 4 . }}
{{- end }}
kube.events: {{ .Values.config.disableKubeEvents | quote }}
{{- with .Values.config.registries }}
registries.conf: |
{{- with .Values.config.registries }}
registries:
{{- toYaml . | nindent 6 }}
{{- end }}
registries:
{{- toYaml . | nindent 6 }}
{{- end }}

View file

@ -4,7 +4,7 @@ apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
labels:
{{ include "argocd-image-updater.labels" . | nindent 4 }}
{{- include "argocd-image-updater.labels" . | nindent 4 }}
name: {{ include "argocd-image-updater.fullname" . }}
namespace: {{ include "argocd-image-updater.namespace" . | quote }}
rules:
@ -37,7 +37,7 @@ apiVersion: rbac.authorization.k8s.io/v1
kind: RoleBinding
metadata:
labels:
{{ include "argocd-image-updater.labels" . | nindent 4 }}
{{- include "argocd-image-updater.labels" . | nindent 4 }}
name: {{ include "argocd-image-updater.fullname" . }}
namespace: {{ include "argocd-image-updater.namespace" . | quote }}
roleRef:

View file

@ -101,6 +101,7 @@ config:
applicationsAPIKind: ""
# Described in detail here https://argocd-image-updater.readthedocs.io/en/stable/install/running/#flags
# Note: this is only relevant if config.applicationsAPIKind == 'argocd'
argocd:
# -- Use the gRPC-web protocol to connect to the Argo CD API
grpcWeb: true