Merge branch 'master' into feat/annotations

This commit is contained in:
Oliver Bähler 2021-07-07 15:22:44 +02:00 committed by GitHub
commit 877f3ccb40
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
72 changed files with 575 additions and 460 deletions

View file

@ -1,21 +0,0 @@
---
type: container
version: 1
name: argo-checkout
description: Checks out a source repository to /src
resources:
mem_mib: 500
cpu_cores: 0.1
image: argoproj/argoscm:v2.0
command: ["axscm"]
args: ["clone", "%%inputs.parameters.REPO%%", "/src", "--commit", "%%inputs.parameters.COMMIT%%"]
inputs:
parameters:
COMMIT:
default: "%%session.commit%%"
REPO:
default: "%%session.repo%%"
outputs:
artifacts:
CODE:
path: /src

View file

@ -1,58 +0,0 @@
---
type: workflow
version: 1
name: Publish Charts
inputs:
parameters:
COMMIT:
default: "%%session.commit%%"
REPO:
default: "%%session.repo%%"
steps:
- CHECKOUT:
template: argo-checkout
- PREPARE:
image: hypnoglow/kubernetes-helm:v2.6.1
resources:
mem_mib: 500
cpu_cores: 0.1
command: ["sh", "-c"]
args: [cd /src && helm init --client-only && ./scripts/publish.sh]
inputs:
artifacts:
CODE:
from: "%%steps.CHECKOUT.outputs.artifacts.CODE%%"
path: /src
outputs:
artifacts:
CODE:
path: /src/output
- PUBLISH:
image: argoproj/argoscm:v2.0
command: ["sh", "-c"]
args: [
axscm clone %%inputs.parameters.REPO%% --commit gh-pages /src && cd /src && cp -r /output/* . &&
git add . && git commit -m "Build on `date`" &&
axscm clone %%inputs.parameters.REPO%% /src --commit gh-pages --merge=gh-pages --push]
resources:
mem_mib: 500
cpu_cores: 0.1
inputs:
artifacts:
CODE:
from: "%%steps.PREPARE.outputs.artifacts.CODE%%"
path: /output
---
type: policy
version: 1
name: Publish Charts Policy
template: Publish Charts
notifications:
- when:
- on_failure
whom:
- committer
- author
when:
- event: on_push

View file

@ -1,22 +0,0 @@
version: 2.1
jobs:
lint:
docker:
- image: quay.io/helmpack/chart-testing:v3.3.1
steps:
- checkout
- run: ct lint --config .github/configs/ct-lint.yaml --lint-conf .github/configs/lintconf.yaml
publish:
docker:
- image: bash
steps:
- run: echo "Replaced by Github Workflow - https://github.com/argoproj/argo-helm/actions/workflows/publish.yml"
workflows:
version: 2
workflow:
jobs:
- lint
- publish:
requires:
- lint

3
.github/semantic.yml vendored Normal file
View file

@ -0,0 +1,3 @@
## Reference: https://github.com/zeke/semantic-pull-requests
# Always validate the PR title, and ignore the commits
titleOnly: true

View file

@ -21,7 +21,7 @@ jobs:
- name: Setup Chart Linting - name: Setup Chart Linting
id: lint id: lint
uses: helm/chart-testing-action@v2.0.1 uses: helm/chart-testing-action@v2.1.0
- name: List changed charts - name: List changed charts
id: list-changed id: list-changed
@ -37,7 +37,7 @@ jobs:
run: ct lint --debug --config ./.github/configs/ct-lint.yaml --lint-conf ./.github/configs/lintconf.yaml run: ct lint --debug --config ./.github/configs/ct-lint.yaml --lint-conf ./.github/configs/lintconf.yaml
- name: Create kind cluster - name: Create kind cluster
uses: helm/kind-action@v1.1.0 uses: helm/kind-action@v1.2.0
if: steps.list-changed.outputs.changed == 'true' if: steps.list-changed.outputs.changed == 'true'
- name: Run chart-testing (install) - name: Run chart-testing (install)

View file

@ -4,16 +4,16 @@
/charts/ @mkilchhofer /charts/ @mkilchhofer
# Argo Workflows # Argo Workflows
/charts/argo @stefansedich @paguos @vladlosev @yann-soubeyrand @oliverbaehler /charts/argo-workflows/ @stefansedich @paguos @vladlosev @yann-soubeyrand @oliverbaehler
# Argo CD # Argo CD
/charts/argo-cd @seanson @davidkarlsen @mr-sour @yann-soubeyrand @oliverbaehler /charts/argo-cd/ @seanson @davidkarlsen @mr-sour @yann-soubeyrand @oliverbaehler @mbevc1
# Argo Events # Argo Events
/charts/argo-events @jbehling @VaibhavPage @oliverbaehler /charts/argo-events/ @jbehling @VaibhavPage @oliverbaehler
# Argo Rollouts # Argo Rollouts
/charts/argo-rollouts @oliverbaehler /charts/argo-rollouts/ @oliverbaehler
# Argo CD Notifications # Argo CD Notifications
/charts/argocd-notifications @alexmt @andyfeller @oliverbaehler /charts/argocd-notifications/ @alexmt @andyfeller @oliverbaehler @mbevc1

View file

@ -1,8 +1,8 @@
apiVersion: v2 apiVersion: v2
appVersion: 2.0.1 appVersion: 2.0.4
description: A Helm chart for ArgoCD, a declarative, GitOps continuous delivery tool for Kubernetes. description: A Helm chart for ArgoCD, a declarative, GitOps continuous delivery tool for Kubernetes.
name: argo-cd name: argo-cd
version: 3.5.0 version: 3.7.1
home: https://github.com/argoproj/argo-helm home: https://github.com/argoproj/argo-helm
icon: https://raw.githubusercontent.com/argoproj/argo/master/docs/assets/argo.png icon: https://raw.githubusercontent.com/argoproj/argo/master/docs/assets/argo.png
keywords: keywords:

View file

@ -34,6 +34,21 @@ Changes in the `CustomResourceDefinition` resources shall be fixed easily by cop
## Upgrading ## Upgrading
### 3.2.*
With this minor version we introduced the evaluation for the ingress manifest (depending on the capabilities version), See [Pull Request](https://github.com/argoproj/argo-helm/pull/637).
[Issue 703](https://github.com/argoproj/argo-helm/issues/703) reported that the capabilities evaluation is **not handled correctly when deploying the chart via an ArgoCD instance**,
especially deploying on clusters running a cluster version prior to `1.19` (which misses `Ingress` on apiVersion `networking.k8s.io/v1`).
If you are running a cluster version prior to `1.19` you can avoid this issue by directly installing chart version `3.6.0` and setting `kubeVersionOverride` like:
```yaml
kubeVersionOverride: "1.18.0"
```
Then you should no longer encounter this issue.
### 3.0.0 and above ### 3.0.0 and above
Helm apiVersion switched to `v2`. Requires Helm `3.0.0` or above to install. [Read More](https://helm.sh/blog/migrate-from-helm-v2-to-helm-v3/) on how to migrate your release from Helm 2 to Helm 3. Helm apiVersion switched to `v2`. Requires Helm `3.0.0` or above to install. [Read More](https://helm.sh/blog/migrate-from-helm-v2-to-helm-v3/) on how to migrate your release from Helm 2 to Helm 3.
@ -68,6 +83,7 @@ server:
## Prerequisites ## Prerequisites
- Kubernetes 1.7+ - Kubernetes 1.7+
- Helm v3.0.0+
## Installing the Chart ## Installing the Chart
@ -82,25 +98,22 @@ NAME: my-release
... ...
``` ```
### Helm v3 Compatibility
Requires chart version 1.5.2 or newer.
Helm v3 has removed the `install-crds` hook so CRDs are now populated by files in the [crds](./crds) directory. Users of Helm v3 should set the `installCRDs` value to `false` to avoid warnings about nonexistent webhooks.
## Chart Values ## Chart Values
| Parameter | Description | Default | | Parameter | Description | Default |
|-----|------|---------| |-----|------|---------|
| global.image.imagePullPolicy | If defined, a imagePullPolicy applied to all ArgoCD deployments. | `"IfNotPresent"` | | global.image.imagePullPolicy | If defined, a imagePullPolicy applied to all ArgoCD deployments. | `"IfNotPresent"` |
| global.image.repository | If defined, a repository applied to all ArgoCD deployments. | `"argoproj/argocd"` | | global.image.repository | If defined, a repository applied to all ArgoCD deployments. | `"argoproj/argocd"` |
| global.image.tag | If defined, a tag applied to all ArgoCD deployments. | `"v1.8.4"` | | global.image.tag | If defined, a tag applied to all ArgoCD deployments. | `"v2.0.4"` |
| global.securityContext | Toggle and define securityContext | See [values.yaml](values.yaml) | | global.securityContext | Toggle and define securityContext | See [values.yaml](values.yaml) |
| global.imagePullSecrets | If defined, uses a Secret to pull an image from a private Docker registry or repository. | `[]` | | global.imagePullSecrets | If defined, uses a Secret to pull an image from a private Docker registry or repository. | `[]` |
| global.hostAliases | Mapping between IP and hostnames that will be injected as entries in the pod's hosts files | `[]` | | global.hostAliases | Mapping between IP and hostnames that will be injected as entries in the pod's hosts files | `[]` |
| kubeVersionOverride | Override the Kubernetes version, which is used to evaluate certain manifests | `""` |
| nameOverride | Provide a name in place of `argocd` | `"argocd"` | | nameOverride | Provide a name in place of `argocd` | `"argocd"` |
| installCRDs | Install CRDs if you are using Helm2. | `true` | | fullnameOverride | String to fully override `"argo-cd.fullname"` | `""` |
| configs.clusterCredentials | Provide one or multiple [external cluster credentials](https://argoproj.github.io/argo-cd/operator-manual/declarative-setup/#clusters) | `[]` (See [values.yaml](values.yaml)) | | configs.clusterCredentials | Provide one or multiple [external cluster credentials](https://argoproj.github.io/argo-cd/operator-manual/declarative-setup/#clusters) | `[]` (See [values.yaml](values.yaml)) |
| configs.gpgKeysAnnotations | GnuPG key ring annotations | `{}` |
| configs.gpgKeys | [GnuPG](https://argoproj.github.io/argo-cd/user-guide/gpg-verification/) keys to add to the key ring | `{}` (See [values.yaml](values.yaml)) |
| configs.knownHostsAnnotations | Known Hosts configmap annotations | `{}` | | configs.knownHostsAnnotations | Known Hosts configmap annotations | `{}` |
| configs.knownHosts.data.ssh_known_hosts | Known Hosts | See [values.yaml](values.yaml) | | configs.knownHosts.data.ssh_known_hosts | Known Hosts | See [values.yaml](values.yaml) |
| configs.secret.annotations | Annotations for argocd-secret | `{}` | | configs.secret.annotations | Annotations for argocd-secret | `{}` |
@ -130,6 +143,7 @@ Helm v3 has removed the `install-crds` hook so CRDs are now populated by files i
| controller.extraArgs | Additional arguments for the controller. A list of flags | `[]` | | controller.extraArgs | Additional arguments for the controller. A list of flags | `[]` |
| controller.enableStatefulSet | Enable deploying the controller as a StatefulSet instead of a Deployment. Used for HA installations. | `false` | | controller.enableStatefulSet | Enable deploying the controller as a StatefulSet instead of a Deployment. Used for HA installations. | `false` |
| controller.env | Environment variables for the controller. | `[]` | | controller.env | Environment variables for the controller. | `[]` |
| controller.envFrom | `envFrom` to pass to the controller. | `[]` (See [values.yaml](values.yaml)) |
| controller.image.repository | Repository to use for the controller | `global.image.repository` | | controller.image.repository | Repository to use for the controller | `global.image.repository` |
| controller.image.imagePullPolicy | Image pull policy for the controller | `global.image.imagePullPolicy` | | controller.image.imagePullPolicy | Image pull policy for the controller | `global.image.imagePullPolicy` |
| controller.image.tag | Tag to use for the controller | `global.image.tag` | | controller.image.tag | Tag to use for the controller | `global.image.tag` |
@ -181,6 +195,7 @@ Helm v3 has removed the `install-crds` hook so CRDs are now populated by files i
| repoServer.containerPort | Repo server port | `8081` | | repoServer.containerPort | Repo server port | `8081` |
| repoServer.extraArgs | Additional arguments for the repo server. A list of flags. | `[]` | | repoServer.extraArgs | Additional arguments for the repo server. A list of flags. | `[]` |
| repoServer.env | Environment variables for the repo server. | `[]` | | repoServer.env | Environment variables for the repo server. | `[]` |
| repoServer.envFrom | `envFrom` to pass to the repo server. | `[]` (See [values.yaml](values.yaml)) |
| repoServer.image.repository | Repository to use for the repo server | `global.image.repository` | | repoServer.image.repository | Repository to use for the repo server | `global.image.repository` |
| repoServer.image.imagePullPolicy | Image pull policy for the repo server | `global.image.imagePullPolicy` | | repoServer.image.imagePullPolicy | Image pull policy for the repo server | `global.image.imagePullPolicy` |
| repoServer.image.tag | Tag to use for the repo server | `global.image.tag` | | repoServer.image.tag | Tag to use for the repo server | `global.image.tag` |
@ -241,6 +256,7 @@ Helm v3 has removed the `install-crds` hook so CRDs are now populated by files i
| server.containerPort | Server container port. | `8080` | | server.containerPort | Server container port. | `8080` |
| server.extraArgs | Additional arguments for the server. A list of flags. | `[]` | | server.extraArgs | Additional arguments for the server. A list of flags. | `[]` |
| server.env | Environment variables for the server. | `[]` | | server.env | Environment variables for the server. | `[]` |
| server.envFrom | `envFrom` to pass to the server. | `[]` (See [values.yaml](values.yaml)) |
| server.image.repository | Repository to use for the server | `global.image.repository` | | server.image.repository | Repository to use for the server | `global.image.repository` |
| server.image.imagePullPolicy | Image pull policy for the server | `global.image.imagePullPolicy` | | server.image.imagePullPolicy | Image pull policy for the server | `global.image.imagePullPolicy` |
| server.image.tag | Tag to use for the server | `global.image.tag` | | server.image.tag | Tag to use for the server | `global.image.tag` |
@ -326,6 +342,7 @@ Helm v3 has removed the `install-crds` hook so CRDs are now populated by files i
| dex.metrics.serviceMonitor.selector | Prometheus ServiceMonitor selector. | `{}` | | dex.metrics.serviceMonitor.selector | Prometheus ServiceMonitor selector. | `{}` |
| dex.name | Dex name | `"dex-server"` | | dex.name | Dex name | `"dex-server"` |
| dex.env | Environment variables for the Dex server. | `[]` | | dex.env | Environment variables for the Dex server. | `[]` |
| dex.envFrom | `envFrom` to pass to the Dex server. | `[]` (See [values.yaml](values.yaml)) |
| dex.nodeSelector | [Node selector](https://kubernetes.io/docs/user-guide/node-selection/) | `{}` | | dex.nodeSelector | [Node selector](https://kubernetes.io/docs/user-guide/node-selection/) | `{}` |
| dex.podAnnotations | Annotations for the Dex server pods | `{}` | | dex.podAnnotations | Annotations for the Dex server pods | `{}` |
| dex.podLabels | Labels for the Dex server pods | `{}` | | dex.podLabels | Labels for the Dex server pods | `{}` |
@ -359,6 +376,7 @@ through `xxx.extraArgs`
| redis.extraArgs | Additional arguments for the `redis-server`. A list of flags. | `[]` | | redis.extraArgs | Additional arguments for the `redis-server`. A list of flags. | `[]` |
| redis.name | Redis name | `"redis"` | | redis.name | Redis name | `"redis"` |
| redis.env | Environment variables for the Redis server. | `[]` | | redis.env | Environment variables for the Redis server. | `[]` |
| redis.envFrom | `envFrom` to pass to the Redis server. | `[]` (See [values.yaml](values.yaml)) |
| redis.nodeSelector | [Node selector](https://kubernetes.io/docs/user-guide/node-selection/) | `{}` | | redis.nodeSelector | [Node selector](https://kubernetes.io/docs/user-guide/node-selection/) | `{}` |
| redis.podAnnotations | Annotations for the Redis server pods | `{}` | | redis.podAnnotations | Annotations for the Redis server pods | `{}` |
| redis.podLabels | Labels for the Redis server pods | `{}` | | redis.podLabels | Labels for the Redis server pods | `{}` |

View file

@ -5,8 +5,6 @@ metadata:
app.kubernetes.io/name: applications.argoproj.io app.kubernetes.io/name: applications.argoproj.io
app.kubernetes.io/part-of: argocd app.kubernetes.io/part-of: argocd
name: applications.argoproj.io name: applications.argoproj.io
annotations:
helm.sh/hook: crd-install
spec: spec:
group: argoproj.io group: argoproj.io
names: names:

View file

@ -5,8 +5,6 @@ metadata:
app.kubernetes.io/name: appprojects.argoproj.io app.kubernetes.io/name: appprojects.argoproj.io
app.kubernetes.io/part-of: argocd app.kubernetes.io/part-of: argocd
name: appprojects.argoproj.io name: appprojects.argoproj.io
annotations:
helm.sh/hook: crd-install
spec: spec:
group: argoproj.io group: argoproj.io
names: names:

View file

@ -144,15 +144,22 @@ app.kubernetes.io/component: {{ .component }}
Return the appropriate apiVersion for ingress Return the appropriate apiVersion for ingress
*/}} */}}
{{- define "argo-cd.ingress.apiVersion" -}} {{- define "argo-cd.ingress.apiVersion" -}}
{{- if semverCompare "<1.14-0" .Capabilities.KubeVersion.GitVersion -}} {{- if semverCompare "<1.14-0" (include "argo-cd.kubeVersion" $) -}}
{{- print "extensions/v1beta1" -}} {{- print "extensions/v1beta1" -}}
{{- else if semverCompare "<1.19-0" .Capabilities.KubeVersion.GitVersion -}} {{- else if semverCompare "<1.19-0" (include "argo-cd.kubeVersion" $) -}}
{{- print "networking.k8s.io/v1beta1" -}} {{- print "networking.k8s.io/v1beta1" -}}
{{- else -}} {{- else -}}
{{- print "networking.k8s.io/v1" -}} {{- print "networking.k8s.io/v1" -}}
{{- end -}} {{- end -}}
{{- end -}} {{- end -}}
{{/*
Return the target Kubernetes version
*/}}
{{- define "argo-cd.kubeVersion" -}}
{{- default .Capabilities.KubeVersion.Version .Values.kubeVersionOverride }}
{{- end -}}
{{/* {{/*
Argo Configuration Preset Values (Incluenced by Values configuration) Argo Configuration Preset Values (Incluenced by Values configuration)
*/}} */}}

View file

@ -0,0 +1,16 @@
apiVersion: v1
kind: ConfigMap
metadata:
{{- if .Values.configs.gpgKeysAnnotations }}
annotations:
{{- range $key, $value := .Values.configs.gpgKeysAnnotations }}
{{ $key }}: {{ $value | quote }}
{{- end }}
{{- end }}
labels:
{{- include "argo-cd.labels" (dict "context" . "name" "gpg-keys-cm") | nindent 4 }}
name: argocd-gpg-keys-cm
{{- with .Values.configs.gpgKeys }}
data:
{{- toYaml . | nindent 2 }}
{{- end }}

View file

@ -67,13 +67,15 @@ spec:
value: argocd value: argocd
{{- end }} {{- end }}
{{- end }} {{- end }}
{{- with .Values.openshift.envFrom }} {{- with .Values.repoServer.envFrom }}
envFrom: {{- toYaml . | nindent 8 }} envFrom: {{- toYaml . | nindent 8 }}
{{- end }} {{- end }}
volumeMounts: volumeMounts:
{{- if .Values.repoServer.volumeMounts }} {{- if .Values.repoServer.volumeMounts }}
{{- toYaml .Values.repoServer.volumeMounts | nindent 8}} {{- toYaml .Values.repoServer.volumeMounts | nindent 8 }}
{{- end }} {{- end }}
- mountPath: /app/config/gpg/source
name: gpg-keys
- mountPath: /app/config/gpg/keys - mountPath: /app/config/gpg/keys
name: gpg-keyring name: gpg-keyring
{{- if .Values.configs.knownHosts }} {{- if .Values.configs.knownHosts }}
@ -134,8 +136,11 @@ spec:
{{- end }} {{- end }}
volumes: volumes:
{{- if .Values.repoServer.volumes }} {{- if .Values.repoServer.volumes }}
{{- toYaml .Values.repoServer.volumes | nindent 6}} {{- toYaml .Values.repoServer.volumes | nindent 6 }}
{{- end }} {{- end }}
- name: gpg-keys
configMap:
name: argocd-gpg-keys-cm
- emptyDir: {} - emptyDir: {}
name: gpg-keyring name: gpg-keyring
{{- if .Values.configs.knownHosts }} {{- if .Values.configs.knownHosts }}

View file

@ -17,7 +17,7 @@ metadata:
spec: spec:
endpoints: endpoints:
- port: metrics - port: metrics
{{- with .Values.controller.metrics.serviceMonitor.interval }} {{- with .Values.repoServer.metrics.serviceMonitor.interval }}
interval: {{ . }} interval: {{ . }}
{{- end }} {{- end }}
path: /metrics path: /metrics

View file

@ -23,5 +23,5 @@ spec:
issuerRef: issuerRef:
kind: {{ .Values.server.certificate.issuer.kind | quote }} kind: {{ .Values.server.certificate.issuer.kind | quote }}
name: {{ .Values.server.certificate.issuer.name | quote }} name: {{ .Values.server.certificate.issuer.name | quote }}
secretName: argocd-secret secretName: {{ .Values.server.certificate.secretName | quote }}
{{- end }} {{- end }}

View file

@ -90,6 +90,8 @@ spec:
subPath: "custom.styles.css" subPath: "custom.styles.css"
name: custom-styles name: custom-styles
{{- end }} {{- end }}
- mountPath: /tmp
name: tmp-dir
ports: ports:
- name: {{ .Values.server.name }} - name: {{ .Values.server.name }}
containerPort: {{ .Values.server.containerPort }} containerPort: {{ .Values.server.containerPort }}
@ -149,6 +151,8 @@ spec:
{{- end }} {{- end }}
- emptyDir: {} - emptyDir: {}
name: static-files name: static-files
- emptyDir: {}
name: tmp-dir
{{- if .Values.configs.styles }} {{- if .Values.configs.styles }}
- configMap: - configMap:
name: argocd-custom-styles name: argocd-custom-styles

View file

@ -3,6 +3,7 @@
{{- $servicePort := ternary .Values.server.service.servicePortHttps .Values.server.service.servicePortHttp .Values.server.ingressGrpc.https -}} {{- $servicePort := ternary .Values.server.service.servicePortHttps .Values.server.service.servicePortHttp .Values.server.ingressGrpc.https -}}
{{- $paths := .Values.server.ingressGrpc.paths -}} {{- $paths := .Values.server.ingressGrpc.paths -}}
{{- $extraPaths := .Values.server.ingressGrpc.extraPaths -}} {{- $extraPaths := .Values.server.ingressGrpc.extraPaths -}}
{{- $pathType := .Values.server.ingressGrpc.pathType -}}
apiVersion: {{ include "argo-cd.ingress.apiVersion" . }} apiVersion: {{ include "argo-cd.ingress.apiVersion" . }}
kind: Ingress kind: Ingress
metadata: metadata:
@ -36,7 +37,7 @@ spec:
{{- range $p := $paths }} {{- range $p := $paths }}
- path: {{ $p }} - path: {{ $p }}
{{- if eq (include "argo-cd.ingress.apiVersion" $) "networking.k8s.io/v1" }} {{- if eq (include "argo-cd.ingress.apiVersion" $) "networking.k8s.io/v1" }}
pathType: Prefix pathType: {{ $pathType }}
{{- end }} {{- end }}
backend: backend:
{{- if eq (include "argo-cd.ingress.apiVersion" $) "networking.k8s.io/v1" }} {{- if eq (include "argo-cd.ingress.apiVersion" $) "networking.k8s.io/v1" }}
@ -63,7 +64,7 @@ spec:
{{- range $p := $paths }} {{- range $p := $paths }}
- path: {{ $p }} - path: {{ $p }}
{{- if eq (include "argo-cd.ingress.apiVersion" $) "networking.k8s.io/v1" }} {{- if eq (include "argo-cd.ingress.apiVersion" $) "networking.k8s.io/v1" }}
pathType: Prefix pathType: {{ $pathType }}
{{- end }} {{- end }}
backend: backend:
{{- if eq (include "argo-cd.ingress.apiVersion" $) "networking.k8s.io/v1" }} {{- if eq (include "argo-cd.ingress.apiVersion" $) "networking.k8s.io/v1" }}

View file

@ -3,6 +3,7 @@
{{- $servicePort := ternary .Values.server.service.servicePortHttps .Values.server.service.servicePortHttp .Values.server.ingress.https -}} {{- $servicePort := ternary .Values.server.service.servicePortHttps .Values.server.service.servicePortHttp .Values.server.ingress.https -}}
{{- $paths := .Values.server.ingress.paths -}} {{- $paths := .Values.server.ingress.paths -}}
{{- $extraPaths := .Values.server.ingress.extraPaths -}} {{- $extraPaths := .Values.server.ingress.extraPaths -}}
{{- $pathType := .Values.server.ingress.pathType -}}
apiVersion: {{ include "argo-cd.ingress.apiVersion" . }} apiVersion: {{ include "argo-cd.ingress.apiVersion" . }}
kind: Ingress kind: Ingress
metadata: metadata:
@ -36,7 +37,7 @@ spec:
{{- range $p := $paths }} {{- range $p := $paths }}
- path: {{ $p }} - path: {{ $p }}
{{- if eq (include "argo-cd.ingress.apiVersion" $) "networking.k8s.io/v1" }} {{- if eq (include "argo-cd.ingress.apiVersion" $) "networking.k8s.io/v1" }}
pathType: Prefix pathType: {{ $pathType }}
{{- end }} {{- end }}
backend: backend:
{{- if eq (include "argo-cd.ingress.apiVersion" $) "networking.k8s.io/v1" }} {{- if eq (include "argo-cd.ingress.apiVersion" $) "networking.k8s.io/v1" }}
@ -63,7 +64,7 @@ spec:
{{- range $p := $paths }} {{- range $p := $paths }}
- path: {{ $p }} - path: {{ $p }}
{{- if eq (include "argo-cd.ingress.apiVersion" $) "networking.k8s.io/v1" }} {{- if eq (include "argo-cd.ingress.apiVersion" $) "networking.k8s.io/v1" }}
pathType: Prefix pathType: {{ $pathType }}
{{- end }} {{- end }}
backend: backend:
{{- if eq (include "argo-cd.ingress.apiVersion" $) "networking.k8s.io/v1" }} {{- if eq (include "argo-cd.ingress.apiVersion" $) "networking.k8s.io/v1" }}

View file

@ -1,6 +0,0 @@
{{- if .Values.installCRDs }}
{{- range $path, $_ := .Files.Glob "crds/*.yaml" }}
{{ $.Files.Get $path }}
---
{{- end }}
{{- end }}

View file

@ -3,14 +3,12 @@
## ##
nameOverride: argocd nameOverride: argocd
fullnameOverride: "" fullnameOverride: ""
kubeVersionOverride: ""
# Optional CRD installation for those without Helm hooks
installCRDs: true
global: global:
image: image:
repository: quay.io/argoproj/argocd repository: quay.io/argoproj/argocd
tag: v2.0.1 tag: v2.0.4
imagePullPolicy: IfNotPresent imagePullPolicy: IfNotPresent
securityContext: {} securityContext: {}
# runAsUser: 999 # runAsUser: 999
@ -213,10 +211,14 @@ dex:
serviceMonitor: serviceMonitor:
enabled: false enabled: false
interval: 30s interval: 30s
# selector:
# prometheus: kube-prometheus
# namespace: monitoring
# additionalLabels: {}
image: image:
repository: quay.io/dexidp/dex repository: ghcr.io/dexidp/dex
tag: v2.26.0 tag: v2.27.0
imagePullPolicy: IfNotPresent imagePullPolicy: IfNotPresent
initImage: initImage:
repository: repository:
@ -493,8 +495,11 @@ server:
certificate: certificate:
enabled: false enabled: false
domain: argocd.example.com domain: argocd.example.com
issuer: {} issuer:
kind: # ClusterIssuer
name: # letsencrypt
additionalHosts: [] additionalHosts: []
secretName: argocd-server-tls
## Server service configuration ## Server service configuration
service: service:
@ -552,19 +557,28 @@ server:
# - argocd.example.com # - argocd.example.com
paths: paths:
- / - /
pathType: Prefix
extraPaths: extraPaths:
[] []
# - path: /* # - path: /*
# backend: # backend:
# serviceName: ssl-redirect # serviceName: ssl-redirect
# servicePort: use-annotation # servicePort: use-annotation
## for Kubernetes >=1.19 (when "networking.k8s.io/v1" is used)
# - path: /*
# pathType: Prefix
# backend:
# service:
# name: ssl-redirect
# port:
# name: use-annotation
tls: tls:
[] []
# - secretName: argocd-example-tls # - secretName: argocd-tls-certificate
# hosts: # hosts:
# - argocd.example.com # - argocd.example.com
https: false https: false
# dedicated ingess for gRPC as documented at # dedicated ingress for gRPC as documented at
# https://argoproj.github.io/argo-cd/operator-manual/ingress/ # https://argoproj.github.io/argo-cd/operator-manual/ingress/
ingressGrpc: ingressGrpc:
enabled: false enabled: false
@ -581,15 +595,24 @@ server:
# - argocd.example.com # - argocd.example.com
paths: paths:
- / - /
pathType: Prefix
extraPaths: extraPaths:
[] []
# - path: /* # - path: /*
# backend: # backend:
# serviceName: ssl-redirect # serviceName: ssl-redirect
# servicePort: use-annotation # servicePort: use-annotation
## for Kubernetes >=1.19 (when "networking.k8s.io/v1" is used)
# - path: /*
# pathType: Prefix
# backend:
# service:
# name: ssl-redirect
# port:
# name: use-annotation
tls: tls:
[] []
# - secretName: argocd-example-tls # - secretName: argocd-tls-certificate
# hosts: # hosts:
# - argocd.example.com # - argocd.example.com
https: false https: false
@ -663,7 +686,7 @@ server:
## Annotations to be added to ArgoCD rbac ConfigMap ## Annotations to be added to ArgoCD rbac ConfigMap
rbacConfigAnnotations: {} rbacConfigAnnotations: {}
# Boolean determining whether or not to create the configmap. If false, it is expected tthe configmap will be created # Boolean determining whether or not to create the configmap. If false, it is expected the configmap will be created
# by something else. ArgoCD will not work if there is no configMap created with the name above. # by something else. ArgoCD will not work if there is no configMap created with the name above.
rbacConfigCreate: true rbacConfigCreate: true
@ -956,6 +979,27 @@ configs:
# insecure: false # insecure: false
# caData: "<base64 encoded certificate>" # caData: "<base64 encoded certificate>"
gpgKeysAnnotations: {}
gpgKeys: {}
# 4AEE18F83AFDEB23: |
# -----BEGIN PGP PUBLIC KEY BLOCK-----
#
# mQENBFmUaEEBCACzXTDt6ZnyaVtueZASBzgnAmK13q9Urgch+sKYeIhdymjuMQta
# x15OklctmrZtqre5kwPUosG3/B2/ikuPYElcHgGPL4uL5Em6S5C/oozfkYzhwRrT
# SQzvYjsE4I34To4UdE9KA97wrQjGoz2Bx72WDLyWwctD3DKQtYeHXswXXtXwKfjQ
# 7Fy4+Bf5IPh76dA8NJ6UtjjLIDlKqdxLW4atHe6xWFaJ+XdLUtsAroZcXBeWDCPa
# buXCDscJcLJRKZVc62gOZXXtPfoHqvUPp3nuLA4YjH9bphbrMWMf810Wxz9JTd3v
# yWgGqNY0zbBqeZoGv+TuExlRHT8ASGFS9SVDABEBAAG0NUdpdEh1YiAod2ViLWZs
# b3cgY29tbWl0IHNpZ25pbmcpIDxub3JlcGx5QGdpdGh1Yi5jb20+iQEiBBMBCAAW
# BQJZlGhBCRBK7hj4Ov3rIwIbAwIZAQAAmQEH/iATWFmi2oxlBh3wAsySNCNV4IPf
# DDMeh6j80WT7cgoX7V7xqJOxrfrqPEthQ3hgHIm7b5MPQlUr2q+UPL22t/I+ESF6
# 9b0QWLFSMJbMSk+BXkvSjH9q8jAO0986/pShPV5DU2sMxnx4LfLfHNhTzjXKokws
# +8ptJ8uhMNIDXfXuzkZHIxoXk3rNcjDN5c5X+sK8UBRH092BIJWCOfaQt7v7wig5
# 4Ra28pM9GbHKXVNxmdLpCFyzvyMuCmINYYADsC848QQFFwnd4EQnupo6QvhEVx1O
# j7wDwvuH5dCrLuLwtwXaQh0onG4583p0LGms2Mf5F+Ick6o/4peOlBoZz48=
# =Bvzs
# -----END PGP PUBLIC KEY BLOCK-----
knownHostsAnnotations: {} knownHostsAnnotations: {}
knownHosts: knownHosts:
data: data:

View file

@ -19,3 +19,4 @@
.project .project
.idea/ .idea/
*.tmproj *.tmproj
ci/

View file

@ -1,7 +1,7 @@
apiVersion: v2 apiVersion: v2
description: A Helm chart to install Argo-Events in k8s Cluster description: A Helm chart to install Argo-Events in k8s Cluster
name: argo-events name: argo-events
version: 1.4.3 version: 1.6.2
keywords: keywords:
- argo-events - argo-events
- sensor-controller - sensor-controller

View file

@ -15,6 +15,6 @@ This is a **community maintained** chart. It installs the [argo-events](https://
## Notes on CRD Installation ## Notes on CRD Installation
Some users would prefer to install the CRDs _outside_ of the chart. You can disable the CRD installation of this chart by using `--set installCRD=false` when installing the chart. Some users would prefer to install the CRDs _outside_ of the chart. You can disable the CRD installation of this chart by using `--skip-crds` when installing the chart.
You can install the CRDs manually from `crds` folder. You can install the CRDs manually from `crds` folder.

View file

@ -1,5 +1,4 @@
{{- if not .Values.singleNamespace }} {{- if not .Values.singleNamespace }}
apiVersion: rbac.authorization.k8s.io/v1 apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding kind: ClusterRoleBinding
metadata: metadata:
@ -26,9 +25,9 @@ kind: ClusterRole
metadata: metadata:
name: argo-events-role name: argo-events-role
rules: rules:
{{- if .Values.additionalServiceAccountRules }} {{- with .Values.additionalServiceAccountRules }}
{{ .Values.additionalServiceAccountRules | toYaml | nindent 2}} {{- toYaml . | nindent 2 }}
{{- end }} {{- end }}
- apiGroups: - apiGroups:
- argoproj.io - argoproj.io
verbs: verbs:

View file

@ -1,5 +1,4 @@
{{- if .Values.singleNamespace }} {{- if .Values.singleNamespace }}
apiVersion: rbac.authorization.k8s.io/v1 apiVersion: rbac.authorization.k8s.io/v1
kind: RoleBinding kind: RoleBinding
metadata: metadata:
@ -28,8 +27,8 @@ metadata:
name: argo-events-role name: argo-events-role
namespace: {{ .Release.Namespace }} namespace: {{ .Release.Namespace }}
rules: rules:
{{- if .Values.additionalServiceAccountRules }} {{- with .Values.additionalServiceAccountRules }}
{{ .Values.additionalServiceAccountRules | toYaml | nindent 2}} {{- toYaml . | nindent 2 }}
{{- end }} {{- end }}
- apiGroups: - apiGroups:
- argoproj.io - argoproj.io

View file

@ -5,7 +5,11 @@ kind: ServiceAccount
metadata: metadata:
name: {{ .Values.serviceAccount }} name: {{ .Values.serviceAccount }}
namespace: {{ .Release.Namespace }} namespace: {{ .Release.Namespace }}
{{- with .Values.serviceAccountAnnotations }}
annotations: {{- toYaml . | nindent 4 }}
{{- end }}
{{- if .Values.additionalSaNamespaces }} {{- if .Values.additionalSaNamespaces }}
{{ $annotations := .Values.serviceAccountAnnotations }}
{{ $sa := .Values.serviceAccount }} {{ $sa := .Values.serviceAccount }}
{{- range $namespace := .Values.additionalSaNamespaces }} {{- range $namespace := .Values.additionalSaNamespaces }}
--- ---
@ -14,5 +18,8 @@ kind: ServiceAccount
metadata: metadata:
name: {{ $sa }} name: {{ $sa }}
namespace: {{ $namespace }} namespace: {{ $namespace }}
{{- with $annotations }}
annotations: {{- toYaml . | nindent 4 }}
{{- end }}
{{- end }} {{- end }}
{{- end }} {{- end }}

View file

@ -2,6 +2,7 @@ apiVersion: apps/v1
kind: Deployment kind: Deployment
metadata: metadata:
name: {{ .Release.Name }}-{{ .Values.eventbusController.name }} name: {{ .Release.Name }}-{{ .Values.eventbusController.name }}
namespace: {{ .Release.Namespace }}
labels: labels:
app: {{ .Release.Name }}-{{ .Values.eventbusController.name }} app: {{ .Release.Name }}-{{ .Values.eventbusController.name }}
chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }} chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
@ -55,6 +56,7 @@ spec:
port: 8081 port: 8081
initialDelaySeconds: 3 initialDelaySeconds: 3
periodSeconds: 3 periodSeconds: 3
resources: {{- toYaml .Values.eventbusController.resources | nindent 12 }}
{{- with .Values.eventbusController.priorityClassName }} {{- with .Values.eventbusController.priorityClassName }}
priorityClassName: {{ . | quote }} priorityClassName: {{ . | quote }}
{{- end }} {{- end }}

View file

@ -1,44 +0,0 @@
{{- if .Values.installCRD }}
apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
name: eventbus.argoproj.io
annotations:
helm.sh/hook: crd-install
helm.sh/hook-delete-policy: before-hook-creation
spec:
group: argoproj.io
names:
kind: EventBus
listKind: EventBusList
plural: eventbus
shortNames:
- eb
singular: eventbus
scope: Namespaced
versions:
- name: v1alpha1
served: true
storage: true
schema:
openAPIV3Schema:
properties:
apiVersion:
type: string
kind:
type: string
metadata:
type: object
spec:
type: object
x-kubernetes-preserve-unknown-fields: true
status:
type: object
x-kubernetes-preserve-unknown-fields: true
required:
- metadata
- spec
type: object
subresources:
status: {}
{{- end }}

View file

@ -2,6 +2,7 @@ apiVersion: apps/v1
kind: Deployment kind: Deployment
metadata: metadata:
name: {{ .Release.Name }}-{{ .Values.eventsourceController.name }} name: {{ .Release.Name }}-{{ .Values.eventsourceController.name }}
namespace: {{ .Release.Namespace }}
labels: labels:
app: {{ .Release.Name }}-{{ .Values.eventsourceController.name }} app: {{ .Release.Name }}-{{ .Values.eventsourceController.name }}
chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }} chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
@ -53,6 +54,7 @@ spec:
port: 8081 port: 8081
initialDelaySeconds: 3 initialDelaySeconds: 3
periodSeconds: 3 periodSeconds: 3
resources: {{- toYaml .Values.eventsourceController.resources | nindent 12 }}
{{- with .Values.eventsourceController.priorityClassName }} {{- with .Values.eventsourceController.priorityClassName }}
priorityClassName: {{ . | quote }} priorityClassName: {{ . | quote }}
{{- end }} {{- end }}

View file

@ -1,44 +0,0 @@
{{- if .Values.installCRD }}
apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
name: eventsources.argoproj.io
annotations:
helm.sh/hook: crd-install
helm.sh/hook-delete-policy: before-hook-creation
spec:
group: argoproj.io
scope: Namespaced
names:
kind: EventSource
plural: eventsources
singular: eventsource
listKind: EventSourceList
shortNames:
- es
versions:
- name: v1alpha1
served: true
storage: true
schema:
openAPIV3Schema:
properties:
apiVersion:
type: string
kind:
type: string
metadata:
type: object
spec:
type: object
x-kubernetes-preserve-unknown-fields: true
status:
type: object
x-kubernetes-preserve-unknown-fields: true
required:
- metadata
- spec
type: object
subresources:
status: {}
{{- end }}

View file

@ -2,6 +2,7 @@ apiVersion: apps/v1
kind: Deployment kind: Deployment
metadata: metadata:
name: {{ .Release.Name }}-{{ .Values.sensorController.name }} name: {{ .Release.Name }}-{{ .Values.sensorController.name }}
namespace: {{ .Release.Namespace }}
labels: labels:
app: {{ .Release.Name }}-{{ .Values.sensorController.name }} app: {{ .Release.Name }}-{{ .Values.sensorController.name }}
chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }} chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
@ -53,6 +54,7 @@ spec:
port: 8081 port: 8081
initialDelaySeconds: 3 initialDelaySeconds: 3
periodSeconds: 3 periodSeconds: 3
resources: {{- toYaml .Values.sensorController.resources | nindent 12 }}
{{- with .Values.sensorController.priorityClassName }} {{- with .Values.sensorController.priorityClassName }}
priorityClassName: {{ . | quote }} priorityClassName: {{ . | quote }}
{{- end }} {{- end }}

View file

@ -1,45 +0,0 @@
{{- if .Values.installCRD }}
# Define a "sensor" custom resource definition
apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
name: sensors.argoproj.io
annotations:
helm.sh/hook: crd-install
helm.sh/hook-delete-policy: before-hook-creation
spec:
group: argoproj.io
names:
kind: Sensor
listKind: SensorList
plural: sensors
singular: sensor
shortNames:
- sn
scope: Namespaced
versions:
- name: v1alpha1
served: true
storage: true
schema:
openAPIV3Schema:
properties:
apiVersion:
type: string
kind:
type: string
metadata:
type: object
spec:
type: object
x-kubernetes-preserve-unknown-fields: true
status:
type: object
x-kubernetes-preserve-unknown-fields: true
required:
- metadata
- spec
type: object
subresources:
status: {}
{{- end }}

View file

@ -1,5 +1,5 @@
# docker registry # docker registry
registry: argoproj registry: quay.io
# The image pull policy # The image pull policy
imagePullPolicy: Always imagePullPolicy: Always
@ -8,12 +8,12 @@ imagePullPolicy: Always
imagePullSecrets: [] imagePullSecrets: []
# - name: argo-pull-secret # - name: argo-pull-secret
# If set to false, skip installing the CRDs. Requires user to have them installed prior to helm chart installation.
installCRD: true
# ServiceAccount to use for running controller. # ServiceAccount to use for running controller.
serviceAccount: argo-events-sa serviceAccount: argo-events-sa
# serviceAccountAnnotations can be used to enable GKE workload identity, or other use-cases
serviceAccountAnnotations: {}
# Create service accounts in additional namespaces specified # Create service accounts in additional namespaces specified
# The SA will always be created in the release namespaces # The SA will always be created in the release namespaces
additionalSaNamespaces: [] additionalSaNamespaces: []
@ -44,33 +44,35 @@ singleNamespace: true
# sensor controller # sensor controller
sensorController: sensorController:
name: sensor-controller name: sensor-controller
image: sensor-controller image: argoproj/sensor-controller
tag: v1.3.1 tag: v1.3.1
replicaCount: 1 replicaCount: 1
sensorImage: sensor sensorImage: argoproj/sensor
podAnnotations: {} podAnnotations: {}
nodeSelector: {} nodeSelector: {}
podLabels: {} podLabels: {}
priorityClassName: "" priorityClassName: ""
tolerations: [] tolerations: []
affinity: {} affinity: {}
resources: {}
eventsourceController: eventsourceController:
name: eventsource-controller name: eventsource-controller
image: eventsource-controller image: argoproj/eventsource-controller
tag: v1.3.1 tag: v1.3.1
replicaCount: 1 replicaCount: 1
eventsourceImage: eventsource eventsourceImage: argoproj/eventsource
podAnnotations: {} podAnnotations: {}
nodeSelector: {} nodeSelector: {}
podLabels: {} podLabels: {}
priorityClassName: "" priorityClassName: ""
tolerations: [] tolerations: []
affinity: {} affinity: {}
resources: {}
eventbusController: eventbusController:
name: eventbus-controller name: eventbus-controller
image: eventbus-controller image: argoproj/eventbus-controller
tag: v1.3.1 tag: v1.3.1
replicaCount: 1 replicaCount: 1
podAnnotations: {} podAnnotations: {}
@ -79,6 +81,7 @@ eventbusController:
priorityClassName: "" priorityClassName: ""
tolerations: [] tolerations: []
affinity: {} affinity: {}
resources: {}
natsStreamingImage: nats-streaming:0.17.0 natsStreamingImage: nats-streaming:0.17.0
natsMetricsExporterImage: synadia/prometheus-nats-exporter:0.6.2 natsMetricsExporterImage: synadia/prometheus-nats-exporter:0.6.2

View file

@ -1,8 +1,8 @@
apiVersion: v1 apiVersion: v2
appVersion: "0.10.2" appVersion: "v1.0.1"
description: A Helm chart for Argo Rollouts description: A Helm chart for Argo Rollouts
name: argo-rollouts name: argo-rollouts
version: 0.5.3 version: 1.0.1
icon: https://raw.githubusercontent.com/argoproj/argo/master/argo.png icon: https://raw.githubusercontent.com/argoproj/argo/master/argo.png
home: https://github.com/argoproj/argo-helm home: https://github.com/argoproj/argo-helm
maintainers: maintainers:

View file

@ -1,12 +1,11 @@
Argo Rollouts Chart # Argo Rollouts Chart
=============
A Helm chart for Argo Rollouts, progressive delivery for Kubernetes.
Current chart version is `0.5.0` A Helm chart for Argo Rollouts, progressive delivery for Kubernetes.
Source code can be found [here](https://github.com/argoproj/argo-rollouts) Source code can be found [here](https://github.com/argoproj/argo-rollouts)
## Additional Information ## Additional Information
This is a **community maintained** chart. This chart installs [argo-rollouts](https://argoproj.github.io/argo-rollouts/), progressive delivery for Kubernetes. This is a **community maintained** chart. This chart installs [argo-rollouts](https://argoproj.github.io/argo-rollouts/), progressive delivery for Kubernetes.
The default installation is intended to be similar to the provided Argo Rollouts [releases](https://github.com/argoproj/argo-rollouts/releases). The default installation is intended to be similar to the provided Argo Rollouts [releases](https://github.com/argoproj/argo-rollouts/releases).
@ -14,6 +13,7 @@ The default installation is intended to be similar to the provided Argo Rollouts
## Prerequisites ## Prerequisites
- Kubernetes 1.7+ - Kubernetes 1.7+
- Helm v3.0.0+
## Installing the Chart ## Installing the Chart
@ -22,27 +22,49 @@ To install the chart with the release name `my-release`:
```console ```console
$ helm repo add argo https://argoproj.github.io/argo-helm $ helm repo add argo https://argoproj.github.io/argo-helm
$ helm install --name my-release argo/argo-rollouts $ helm install my-release argo/argo-rollouts
``` ```
## Chart Values ## Chart Values
| Key | Type | Default | Description | | Key | Type | Default | Description |
|-----|------|---------|-------------| |-----|------|---------|-------------|
| clusterInstall | bool | `true` | | | clusterInstall | bool | `true` | `false` runs controller in namespaced mode (does not require cluster RBAC) |
| controller.component | string | `"rollouts-controller"` | | | controller.component | string | `"rollouts-controller"` | Value of label `app.kubernetes.io/component` |
| controller.image.pullPolicy | string | `"IfNotPresent"` | | | controller.image.pullPolicy | string | `"IfNotPresent"` | Image pull policy |
| controller.image.repository | string | `"argoproj/argo-rollouts"` | | | controller.image.registry | string | `quay.io` | Registry to use |
| controller.image.tag | string | `"v0.10.2"` | | | controller.image.repository | string | `"argoproj/argo-rollouts"` | Repository to use |
| controller.name | string | `"argo-rollouts"` | | | controller.image.tag | string | `""` | Overrides the image tag (default is the chart appVersion) |
| controller.resources | Resource limits and requests for the controller pods. | `{}` | | controller.resources | object | `{}` | Resource limits and requests for the controller pods. |
| controller.tolerations | [Tolerations for use with node taints](https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/) | `[]` | | controller.tolerations | list | `[]` | [Tolerations for use with node taints](https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/) |
| controller.affinity | [Assign custom affinity rules to the deployment](https://kubernetes.io/docs/concepts/configuration/assign-pod-node/) | `{}` | | controller.affinity | object | `{}` | [Assign custom affinity rules to the deployment](https://kubernetes.io/docs/concepts/configuration/assign-pod-node/) |
| controller.nodeSelector | [Node selector](https://kubernetes.io/docs/user-guide/node-selection/) | `{}` | | controller.nodeSelector | object | `{}` | [Node selector](https://kubernetes.io/docs/user-guide/node-selection/) |
| controller.metrics.serviceMonitor.enabled | bool | `false` | | | controller.metrics.enabled | bool | `false` | Deploy metrics service |
| imagePullSecrets | list | `[]` | | | controller.metrics.serviceMonitor.enabled | bool | `false` | Enable a prometheus ServiceMonitor |
| installCRDs | bool | `true` | | | controller.metrics.serviceMonitor.additionalAnnotations | object | `{}` | Annotations to be added to the ServiceMonitor |
| crdAnnotations | object | `{}` | | | controller.metrics.serviceMonitor.additionalLabels | object | `{}` | Labels to be added to the ServiceMonitor |
| podAnnotations | object | `{}` | | | imagePullSecrets | list | `[]` | Registry secret names as an array |
| podLabels | object | `{}` | | | installCRDs | bool | `true` | Install and upgrade CRDs |
| serviceAccount.name | string | `"argo-rollouts"` | | | crdAnnotations | object | `{}` | Annotations to be added to all CRDs |
| podAnnotations | object | `{}` | Annotations to be added to the Rollout pods |
| podLabels | object | `{}` | Labels to be added to the Rollout pods |
| serviceAccount.create | bool | `true` | Specifies whether a service account should be created |
| serviceAccount.annotations | object | `{}` | Annotations to add to the service account |
| serviceAccount.name | string | `""` | The name of the service account to use. If not set and create is true, a name is generated using the fullname template |
| podSecurityContext | object | `{"runAsNonRoot": true}` | Security Context to set on pod level |
| containerSecurityContext | object | `{}` | Security Context to set on container level |
## Upgrading
### To 1.0.0
* This is a breaking change which only supports Helm v3.0.0+ now. If you still use Helm v2, please consider upgrading because v2 is EOL since November 2020.
To migrate to Helm v3 please have a look at the [Helm 2to3 Plugin](https://github.com/helm/helm-2to3). This tool will convert the existing ConfigMap used for Tiller to a Secret of type `helm.sh/release.v1`.
* `quay.io` is the default registry now
* We introduce a template function for the labels here to reduce code duplication. This also affects the Deployment `matchLabels` selector.
To upgrade an existing installation, please **add the `--force` parameter** to the `helm upgrade` command or **delete the Deployment resource** before you upgrade. This is necessary because Deployment's label selector is immutable.
* All resources are now prefixed with the template `"argo-rollouts.fullname"`.
This enables the users to override resource names via the `nameOverride` and `fullnameOverride` parameters.
* Breaking parameters update
* `securityContext` was renamed to `containerSecurityContext`
* Added `controller.image.registry`. Prior to this chart version you had to override the registry via `controller.image.repository`

View file

@ -30,3 +30,35 @@ Create chart name and version as used by the chart label.
{{- define "argo-rollouts.chart" -}} {{- define "argo-rollouts.chart" -}}
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}} {{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}}
{{- end -}} {{- end -}}
{{/*
Common labels
*/}}
{{- define "argo-rollouts.labels" -}}
helm.sh/chart: {{ include "argo-rollouts.chart" . }}
{{ include "argo-rollouts.selectorLabels" . }}
{{- if .Chart.AppVersion }}
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
{{- end }}
app.kubernetes.io/managed-by: {{ .Release.Service }}
app.kubernetes.io/part-of: argo-rollouts
{{- end }}
{{/*
Selector labels
*/}}
{{- define "argo-rollouts.selectorLabels" -}}
app.kubernetes.io/name: {{ include "argo-rollouts.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
{{- end }}
{{/*
Create the name of the service account to use
*/}}
{{- define "argo-rollouts.serviceAccountName" -}}
{{- if .Values.serviceAccount.create }}
{{- default (include "argo-rollouts.fullname" .) .Values.serviceAccount.name }}
{{- else }}
{{- default "default" .Values.serviceAccount.name }}
{{- end }}
{{- end }}

View file

@ -2,12 +2,11 @@
apiVersion: rbac.authorization.k8s.io/v1 apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole kind: ClusterRole
metadata: metadata:
name: {{ .Release.Name }}-aggregate-to-view name: {{ include "argo-rollouts.fullname" . }}-aggregate-to-view
labels: labels:
rbac.authorization.k8s.io/aggregate-to-view: "true" rbac.authorization.k8s.io/aggregate-to-view: "true"
app.kubernetes.io/component: aggregate-cluster-role app.kubernetes.io/component: {{ .Values.controller.component }}
app.kubernetes.io/name: {{ .Release.Name }}-aggregate-to-view {{- include "argo-rollouts.labels" . | nindent 4 }}
app.kubernetes.io/part-of: {{ .Release.Name }}
rules: rules:
- apiGroups: - apiGroups:
- argoproj.io - argoproj.io
@ -27,12 +26,11 @@ rules:
apiVersion: rbac.authorization.k8s.io/v1 apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole kind: ClusterRole
metadata: metadata:
name: {{ .Release.Name }}-aggregate-to-edit name: {{ include "argo-rollouts.fullname" . }}-aggregate-to-edit
labels: labels:
rbac.authorization.k8s.io/aggregate-to-edit: "true" rbac.authorization.k8s.io/aggregate-to-edit: "true"
app.kubernetes.io/component: aggregate-cluster-role app.kubernetes.io/component: {{ .Values.controller.component }}
app.kubernetes.io/name: {{ .Release.Name }}-aggregate-to-edit {{- include "argo-rollouts.labels" . | nindent 4 }}
app.kubernetes.io/part-of: {{ .Release.Name }}
rules: rules:
- apiGroups: - apiGroups:
- argoproj.io - argoproj.io
@ -58,12 +56,11 @@ rules:
apiVersion: rbac.authorization.k8s.io/v1 apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole kind: ClusterRole
metadata: metadata:
name: {{ .Release.Name }}-aggregate-to-admin name: {{ include "argo-rollouts.fullname" . }}-aggregate-to-admin
labels: labels:
rbac.authorization.k8s.io/aggregate-to-admin: "true" rbac.authorization.k8s.io/aggregate-to-admin: "true"
app.kubernetes.io/component: aggregate-cluster-role app.kubernetes.io/component: {{ .Values.controller.component }}
app.kubernetes.io/name: {{ .Release.Name }}-aggregate-to-admin {{- include "argo-rollouts.labels" . | nindent 4 }}
app.kubernetes.io/part-of: {{ .Release.Name }}
rules: rules:
- apiGroups: - apiGroups:
- argoproj.io - argoproj.io

View file

@ -2,11 +2,10 @@
apiVersion: rbac.authorization.k8s.io/v1 apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole kind: ClusterRole
metadata: metadata:
name: {{ .Release.Name }}-clusterrole name: {{ include "argo-rollouts.fullname" . }}
labels: labels:
app.kubernetes.io/component: {{ .Values.controller.component }} app.kubernetes.io/component: {{ .Values.controller.component }}
app.kubernetes.io/name: {{ .Release.Name }}-clusterrole {{- include "argo-rollouts.labels" . | nindent 4 }}
app.kubernetes.io/part-of: {{ .Release.Name }}
rules: rules:
- apiGroups: - apiGroups:
- argoproj.io - argoproj.io
@ -57,6 +56,16 @@ rules:
- update - update
- patch - patch
- delete - delete
- apiGroups:
- ""
- apps
resources:
- deployments
- podtemplates
verbs:
- get
- list
- watch
# services patch needed to update selector of canary/stable/active/preview services # services patch needed to update selector of canary/stable/active/preview services
- apiGroups: - apiGroups:
- "" - ""
@ -135,6 +144,7 @@ rules:
- watch - watch
- get - get
- update - update
- patch
- list - list
# trafficsplit access needed for using the SMI provider # trafficsplit access needed for using the SMI provider
- apiGroups: - apiGroups:
@ -147,4 +157,15 @@ rules:
- get - get
- update - update
- patch - patch
- apiGroups:
- getambassador.io
resources:
- mappings
verbs:
- create
- watch
- get
- update
- list
- delete
{{- end }} {{- end }}

View file

@ -2,17 +2,16 @@
apiVersion: rbac.authorization.k8s.io/v1 apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding kind: ClusterRoleBinding
metadata: metadata:
name: {{ .Release.Name }}-clusterrolebinding name: {{ include "argo-rollouts.fullname" . }}
labels: labels:
app.kubernetes.io/component: {{ .Values.controller.component }} app.kubernetes.io/component: {{ .Values.controller.component }}
app.kubernetes.io/name: {{ .Release.Name }}-clusterrolebinding {{- include "argo-rollouts.labels" . | nindent 4 }}
app.kubernetes.io/part-of: {{ .Release.Name }}
roleRef: roleRef:
apiGroup: rbac.authorization.k8s.io apiGroup: rbac.authorization.k8s.io
kind: ClusterRole kind: ClusterRole
name: {{ .Release.Name }}-clusterrole name: {{ include "argo-rollouts.fullname" . }}
subjects: subjects:
- kind: ServiceAccount - kind: ServiceAccount
name: {{ .Values.serviceAccount.name }} name: {{ include "argo-rollouts.serviceAccountName" . }}
namespace: {{ .Release.Namespace }} namespace: {{ .Release.Namespace }}
{{- end }} {{- end }}

View file

@ -1,52 +1,54 @@
apiVersion: apps/v1 apiVersion: apps/v1
kind: Deployment kind: Deployment
metadata: metadata:
name: {{ .Release.Name }} name: {{ include "argo-rollouts.fullname" . }}
labels: labels:
app.kubernetes.io/component: {{ .Values.controller.component }} app.kubernetes.io/component: {{ .Values.controller.component }}
app.kubernetes.io/name: {{ .Release.Name }} {{- include "argo-rollouts.labels" . | nindent 4 }}
app.kubernetes.io/part-of: {{ .Release.Name }}
{{- if .Values.podLabels }}
{{- toYaml .Values.podLabels | nindent 4 }}
{{- end }}
spec: spec:
selector: selector:
matchLabels: matchLabels:
app.kubernetes.io/name: {{ .Release.Name }} {{- include "argo-rollouts.selectorLabels" . | nindent 6 }}
strategy:
type: Recreate
template: template:
metadata: metadata:
{{- if .Values.podAnnotations }} {{- with .Values.podAnnotations }}
annotations: annotations:
{{- range $key, $value := .Values.podAnnotations }} {{- toYaml . | nindent 8 }}
{{ $key }}: {{ $value | quote }}
{{- end }}
{{- end }} {{- end }}
labels: labels:
app.kubernetes.io/name: {{ .Release.Name }} {{- include "argo-rollouts.selectorLabels" . | nindent 8 }}
{{- range $key, $value := .Values.podLabels }}
{{ $key }}: {{ $value | quote }}
{{- end }}
spec: spec:
{{- with .Values.imagePullSecrets }} {{- with .Values.imagePullSecrets }}
imagePullSecrets: imagePullSecrets:
{{- toYaml . | nindent 8 }} {{- toYaml . | nindent 8 }}
{{- end }} {{- end }}
serviceAccountName: {{ .Values.serviceAccount.name }} serviceAccountName: {{ include "argo-rollouts.serviceAccountName" . }}
containers: containers:
- image: "{{ .Values.controller.image.repository }}:{{ .Values.controller.image.tag }}" - image: "{{ .Values.controller.image.registry }}/{{ .Values.controller.image.repository }}:{{ default .Chart.AppVersion .Values.controller.image.tag }}"
{{- if not .Values.clusterInstall }} {{- if not .Values.clusterInstall }}
args: args:
- --namespaced - --namespaced
{{- end }} {{- end }}
imagePullPolicy: {{ .Values.controller.image.pullPolicy }} imagePullPolicy: {{ .Values.controller.image.pullPolicy }}
name: {{ .Values.controller.name }} name: argo-rollouts
resources: ports:
{{- toYaml .Values.controller.resources | nindent 10 }} - containerPort: 8090
name: metrics
securityContext: securityContext:
{{- toYaml .Values.securityContext | nindent 12 }} {{- toYaml .Values.containerSecurityContext | nindent 10 }}
resources: resources:
{{- toYaml .Values.controller.resources | nindent 10 }} {{- toYaml .Values.controller.resources | nindent 10 }}
{{- if .Values.controller.nodeSelector }} {{- if .Values.controller.nodeSelector }}
nodeSelector: nodeSelector:
{{- toYaml .Values.controller.nodeSelector | nindent 8 }} {{- toYaml .Values.controller.nodeSelector | nindent 8 }}
{{- end }} {{- end }}
securityContext:
{{- toYaml .Values.podSecurityContext | nindent 8 }}
{{- if .Values.controller.tolerations }} {{- if .Values.controller.tolerations }}
tolerations: tolerations:
{{- toYaml .Values.controller.tolerations | nindent 8 }} {{- toYaml .Values.controller.tolerations | nindent 8 }}
@ -55,5 +57,3 @@ spec:
affinity: affinity:
{{- toYaml .Values.controller.affinity | nindent 8 }} {{- toYaml .Values.controller.affinity | nindent 8 }}
{{- end }} {{- end }}
strategy:
type: Recreate

View file

@ -1,14 +1,14 @@
{{- if .Values.controller.metrics.enabled }}
apiVersion: v1 apiVersion: v1
kind: Service kind: Service
metadata: metadata:
name: {{ .Release.Name }}-metrics name: {{ include "argo-rollouts.fullname" . }}-metrics
labels: labels:
app.kubernetes.io/component: server app.kubernetes.io/component: server
app.kubernetes.io/name: {{ .Release.Name }}-metrics {{- include "argo-rollouts.labels" . | nindent 4 }}
app.kubernetes.io/part-of: {{ .Release.Name }} {{- with .Values.serviceAnnotations }}
annotations: annotations:
{{- range $key, $value := .Values.serviceAnnotations }} {{- toYaml . | nindent 4 }}
{{ $key }}: {{ $value | quote }}
{{- end }} {{- end }}
spec: spec:
ports: ports:
@ -17,4 +17,5 @@ spec:
port: 8090 port: 8090
targetPort: 8090 targetPort: 8090
selector: selector:
app.kubernetes.io/name: {{ .Release.Name }} {{- include "argo-rollouts.selectorLabels" . | nindent 6 }}
{{- end }}

View file

@ -1,11 +1,11 @@
{{- if not .Values.clusterInstall }}
apiVersion: rbac.authorization.k8s.io/v1 apiVersion: rbac.authorization.k8s.io/v1
kind: Role kind: Role
metadata: metadata:
name: {{ .Release.Name }}-role name: {{ include "argo-rollouts.fullname" . }}
labels: labels:
app.kubernetes.io/component: {{ .Values.controller.component }} app.kubernetes.io/component: {{ .Values.controller.component }}
app.kubernetes.io/name: {{ .Release.Name }}-role {{- include "argo-rollouts.labels" . | nindent 4 }}
app.kubernetes.io/part-of: {{ .Release.Name }}
rules: rules:
- apiGroups: - apiGroups:
- argoproj.io - argoproj.io
@ -145,3 +145,4 @@ rules:
- get - get
- update - update
- patch - patch
{{- end }}

View file

@ -1,15 +1,16 @@
{{- if not .Values.clusterInstall }}
apiVersion: rbac.authorization.k8s.io/v1 apiVersion: rbac.authorization.k8s.io/v1
kind: RoleBinding kind: RoleBinding
metadata: metadata:
name: {{ .Release.Name }}-role-binding name: {{ include "argo-rollouts.fullname" . }}
labels: labels:
app.kubernetes.io/component: {{ .Values.controller.component }} app.kubernetes.io/component: {{ .Values.controller.component }}
app.kubernetes.io/name: {{ .Release.Name }}-role-binding {{- include "argo-rollouts.labels" . | nindent 4 }}
app.kubernetes.io/part-of: {{ .Release.Name }}
roleRef: roleRef:
apiGroup: rbac.authorization.k8s.io apiGroup: rbac.authorization.k8s.io
kind: Role kind: Role
name: {{ .Release.Name }}-role name: {{ include "argo-rollouts.fullname" . }}
subjects: subjects:
- kind: ServiceAccount - kind: ServiceAccount
name: {{ .Values.serviceAccount.name }} name: {{ include "argo-rollouts.serviceAccountName" . }}
{{- end }}

View file

@ -1,8 +1,13 @@
{{- if .Values.serviceAccount.create -}}
apiVersion: v1 apiVersion: v1
kind: ServiceAccount kind: ServiceAccount
metadata: metadata:
name: {{ .Values.serviceAccount.name }} name: {{ include "argo-rollouts.serviceAccountName" . }}
labels: labels:
app.kubernetes.io/component: {{ .Values.controller.component }} app.kubernetes.io/component: {{ .Values.controller.component }}
app.kubernetes.io/name: {{ .Release.Name }} {{- include "argo-rollouts.labels" . | nindent 4 }}
app.kubernetes.io/part-of: {{ .Release.Name }} {{- with .Values.serviceAccount.annotations }}
annotations:
{{- toYaml . | nindent 4 }}
{{- end }}
{{- end }}

View file

@ -1,18 +1,17 @@
{{- if .Values.controller.metrics.serviceMonitor.enabled }} {{- if and .Values.controller.metrics.enabled .Values.controller.metrics.serviceMonitor.enabled }}
apiVersion: monitoring.coreos.com/v1 apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor kind: ServiceMonitor
metadata: metadata:
name: {{ .Release.Name }} name: {{ include "argo-rollouts.fullname" . }}
labels: labels:
app.kubernetes.io/component: server app.kubernetes.io/component: server
app.kubernetes.io/name: {{ .Release.Name }}-metrics {{- include "argo-rollouts.labels" . | nindent 4 }}
app.kubernetes.io/part-of: {{ .Release.Name }} {{- range $key, $value := .Values.controller.metrics.serviceMonitor.additionalLabels }}
{{- if .Values.controller.metrics.serviceMonitor.additionalLabels }} {{ $key }}: {{ $value | quote }}
{{ toYaml .Values.controller.metrics.serviceMonitor.additionalLabels | indent 4 }}
{{- end }} {{- end }}
{{- if .Values.controller.metrics.serviceMonitor.additionalAnnotations }} {{- with .Values.controller.metrics.serviceMonitor.additionalAnnotations }}
annotations: annotations:
{{ toYaml .Values.controller.metrics.serviceMonitor.additionalAnnotations | indent 4 }} {{- toYaml . | nindent 4 }}
{{- end }} {{- end }}
spec: spec:
endpoints: endpoints:
@ -23,6 +22,5 @@ spec:
selector: selector:
matchLabels: matchLabels:
app.kubernetes.io/component: server app.kubernetes.io/component: server
app.kubernetes.io/name: {{ .Release.Name }}-metrics {{- include "argo-rollouts.selectorLabels" . | nindent 6 }}
app.kubernetes.io/part-of: {{ .Release.Name }}
{{- end }} {{- end }}

View file

@ -3,10 +3,13 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition kind: CustomResourceDefinition
metadata: metadata:
annotations: annotations:
controller-gen.kubebuilder.io/version: v0.4.1 controller-gen.kubebuilder.io/version: v0.5.0
{{- if .Values.crdAnnotations }} {{- if .Values.crdAnnotations }}
{{- toYaml .Values.crdAnnotations | nindent 4 }} {{- toYaml .Values.crdAnnotations | nindent 4 }}
{{- end }} {{- end }}
labels:
app.kubernetes.io/name: argo-rollouts
app.kubernetes.io/part-of: argo-rollouts
name: analysisruns.argoproj.io name: analysisruns.argoproj.io
spec: spec:
group: argoproj.io group: argoproj.io
@ -2305,6 +2308,7 @@ spec:
start: start:
type: string type: string
step: step:
format: int64
type: integer type: integer
required: required:
- end - end
@ -2324,6 +2328,7 @@ spec:
start: start:
type: string type: string
step: step:
format: int64
type: integer type: integer
required: required:
- end - end
@ -2345,8 +2350,10 @@ spec:
threshold: threshold:
properties: properties:
marginal: marginal:
format: int64
type: integer type: integer
pass: pass:
format: int64
type: integer type: integer
required: required:
- marginal - marginal
@ -2404,6 +2411,7 @@ spec:
jsonPath: jsonPath:
type: string type: string
timeoutSeconds: timeoutSeconds:
format: int64
type: integer type: integer
url: url:
type: string type: string

View file

@ -3,10 +3,13 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition kind: CustomResourceDefinition
metadata: metadata:
annotations: annotations:
controller-gen.kubebuilder.io/version: v0.4.1 controller-gen.kubebuilder.io/version: v0.5.0
{{- if .Values.crdAnnotations }} {{- if .Values.crdAnnotations }}
{{- toYaml .Values.crdAnnotations | nindent 4 }} {{- toYaml .Values.crdAnnotations | nindent 4 }}
{{- end }} {{- end }}
labels:
app.kubernetes.io/name: argo-rollouts
app.kubernetes.io/part-of: argo-rollouts
name: analysistemplates.argoproj.io name: analysistemplates.argoproj.io
spec: spec:
group: argoproj.io group: argoproj.io
@ -2300,6 +2303,7 @@ spec:
start: start:
type: string type: string
step: step:
format: int64
type: integer type: integer
required: required:
- end - end
@ -2319,6 +2323,7 @@ spec:
start: start:
type: string type: string
step: step:
format: int64
type: integer type: integer
required: required:
- end - end
@ -2340,8 +2345,10 @@ spec:
threshold: threshold:
properties: properties:
marginal: marginal:
format: int64
type: integer type: integer
pass: pass:
format: int64
type: integer type: integer
required: required:
- marginal - marginal
@ -2399,6 +2406,7 @@ spec:
jsonPath: jsonPath:
type: string type: string
timeoutSeconds: timeoutSeconds:
format: int64
type: integer type: integer
url: url:
type: string type: string

View file

@ -3,10 +3,13 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition kind: CustomResourceDefinition
metadata: metadata:
annotations: annotations:
controller-gen.kubebuilder.io/version: v0.4.1 controller-gen.kubebuilder.io/version: v0.5.0
{{- if .Values.crdAnnotations }} {{- if .Values.crdAnnotations }}
{{- toYaml .Values.crdAnnotations | nindent 4 }} {{- toYaml .Values.crdAnnotations | nindent 4 }}
{{- end }} {{- end }}
labels:
app.kubernetes.io/name: argo-rollouts
app.kubernetes.io/part-of: argo-rollouts
name: clusteranalysistemplates.argoproj.io name: clusteranalysistemplates.argoproj.io
spec: spec:
group: argoproj.io group: argoproj.io
@ -2300,6 +2303,7 @@ spec:
start: start:
type: string type: string
step: step:
format: int64
type: integer type: integer
required: required:
- end - end
@ -2319,6 +2323,7 @@ spec:
start: start:
type: string type: string
step: step:
format: int64
type: integer type: integer
required: required:
- end - end
@ -2340,8 +2345,10 @@ spec:
threshold: threshold:
properties: properties:
marginal: marginal:
format: int64
type: integer type: integer
pass: pass:
format: int64
type: integer type: integer
required: required:
- marginal - marginal
@ -2399,6 +2406,7 @@ spec:
jsonPath: jsonPath:
type: string type: string
timeoutSeconds: timeoutSeconds:
format: int64
type: integer type: integer
url: url:
type: string type: string

View file

@ -3,10 +3,13 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition kind: CustomResourceDefinition
metadata: metadata:
annotations: annotations:
controller-gen.kubebuilder.io/version: v0.4.1 controller-gen.kubebuilder.io/version: v0.5.0
{{- if .Values.crdAnnotations }} {{- if .Values.crdAnnotations }}
{{- toYaml .Values.crdAnnotations | nindent 4 }} {{- toYaml .Values.crdAnnotations | nindent 4 }}
{{- end }} {{- end }}
labels:
app.kubernetes.io/name: argo-rollouts
app.kubernetes.io/part-of: argo-rollouts
name: experiments.argoproj.io name: experiments.argoproj.io
spec: spec:
group: argoproj.io group: argoproj.io

View file

@ -3,10 +3,13 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition kind: CustomResourceDefinition
metadata: metadata:
annotations: annotations:
controller-gen.kubebuilder.io/version: v0.4.1 controller-gen.kubebuilder.io/version: v0.5.0
{{- if .Values.crdAnnotations }} {{- if .Values.crdAnnotations }}
{{- toYaml .Values.crdAnnotations | nindent 4 }} {{- toYaml .Values.crdAnnotations | nindent 4 }}
{{- end }} {{- end }}
labels:
app.kubernetes.io/name: argo-rollouts
app.kubernetes.io/part-of: argo-rollouts
name: rollouts.argoproj.io name: rollouts.argoproj.io
spec: spec:
group: argoproj.io group: argoproj.io
@ -29,11 +32,13 @@ spec:
jsonPath: .status.replicas jsonPath: .status.replicas
name: Current name: Current
type: integer type: integer
- description: Total number of non-terminated pods targeted by this rollout that have the desired template spec - description: Total number of non-terminated pods targeted by this rollout that
have the desired template spec
jsonPath: .status.updatedReplicas jsonPath: .status.updatedReplicas
name: Up-to-date name: Up-to-date
type: integer type: integer
- description: Total number of available pods (ready for at least minReadySeconds) targeted by this rollout - description: Total number of available pods (ready for at least minReadySeconds)
targeted by this rollout
jsonPath: .status.availableReplicas jsonPath: .status.availableReplicas
name: Available name: Available
type: integer type: integer
@ -300,6 +305,12 @@ spec:
- type: integer - type: integer
- type: string - type: string
x-kubernetes-int-or-string: true x-kubernetes-int-or-string: true
scaleDownDelayRevisionLimit:
format: int32
type: integer
scaleDownDelaySeconds:
format: int32
type: integer
stableMetadata: stableMetadata:
properties: properties:
annotations: annotations:
@ -487,6 +498,15 @@ spec:
- ingress - ingress
- servicePort - servicePort
type: object type: object
ambassador:
properties:
mappings:
items:
type: string
type: array
required:
- mappings
type: object
istio: istio:
properties: properties:
destinationRule: destinationRule:
@ -2648,9 +2668,15 @@ spec:
- containers - containers
type: object type: object
type: object type: object
required: workloadRef:
- selector properties:
- template apiVersion:
type: string
kind:
type: string
name:
type: string
type: object
type: object type: object
status: status:
properties: properties:
@ -2765,6 +2791,8 @@ spec:
currentStepIndex: currentStepIndex:
format: int32 format: int32
type: integer type: integer
message:
type: string
observedGeneration: observedGeneration:
type: string type: string
pauseConditions: pauseConditions:
@ -2780,6 +2808,8 @@ spec:
- startTime - startTime
type: object type: object
type: array type: array
phase:
type: string
promoteFull: promoteFull:
type: boolean type: boolean
readyReplicas: readyReplicas:

View file

@ -3,7 +3,6 @@ installCRDs: true
clusterInstall: true clusterInstall: true
controller: controller:
name: argo-rollouts
component: rollouts-controller component: rollouts-controller
## Node selectors and tolerations for server scheduling to nodes with taints ## Node selectors and tolerations for server scheduling to nodes with taints
## Ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/ ## Ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/
@ -12,8 +11,9 @@ controller:
tolerations: [] tolerations: []
affinity: {} affinity: {}
image: image:
registry: quay.io
repository: argoproj/argo-rollouts repository: argoproj/argo-rollouts
tag: v0.10.2 tag: ""
pullPolicy: IfNotPresent pullPolicy: IfNotPresent
resources: {} resources: {}
@ -25,13 +25,20 @@ controller:
# memory: 64Mi # memory: 64Mi
metrics: metrics:
enabled: false
serviceMonitor: serviceMonitor:
enabled: false enabled: false
additionalLabels: {} additionalLabels: {}
additionalAnnotations: {} additionalAnnotations: {}
serviceAccount: serviceAccount:
name: argo-rollouts # Specifies whether a service account should be created
create: true
# Annotations to add to the service account
annotations: {}
# The name of the service account to use.
# If not set and create is true, a name is generated using the fullname template
name: ""
## Annotations to be added to all CRDs ## Annotations to be added to all CRDs
## ##
@ -41,6 +48,21 @@ crdAnnotations: {}
## ##
podAnnotations: {} podAnnotations: {}
## Security Context to set on pod level
##
podSecurityContext:
runAsNonRoot: true
## Security Context to set on container level
##
containerSecurityContext: {}
# capabilities:
# drop:
# - ALL
# readOnlyRootFilesystem: true
# runAsNonRoot: true
# runAsUser: 1000
## Annotations to be added to the Rollout service ## Annotations to be added to the Rollout service
## ##
serviceAnnotations: {} serviceAnnotations: {}

View file

@ -19,3 +19,4 @@
.project .project
.idea/ .idea/
*.tmproj *.tmproj
ci/

View file

@ -2,8 +2,8 @@ apiVersion: v2
name: argo-workflows name: argo-workflows
description: A Helm chart for Argo Workflows description: A Helm chart for Argo Workflows
type: application type: application
version: 0.1.3 version: 0.2.6
appVersion: "v3.0.2" appVersion: "v3.0.7"
icon: https://raw.githubusercontent.com/argoproj/argo-workflows/master/docs/assets/argo.png icon: https://raw.githubusercontent.com/argoproj/argo-workflows/master/docs/assets/argo.png
home: https://github.com/argoproj/argo-helm home: https://github.com/argoproj/argo-helm
sources: sources:

View file

@ -1,6 +1,6 @@
1. Get Argo Server external IP/domain by running: 1. Get Argo Server external IP/domain by running:
kubectl --namespace {{ .Release.Namespace }} get services -o wide | grep {{ .Release.Name }}-{{ .Values.server.name }} kubectl --namespace {{ .Release.Namespace }} get services -o wide | grep {{ template "argo-workflows.server.fullname" . }}
2. Submit the hello-world workflow by running: 2. Submit the hello-world workflow by running:

View file

@ -26,9 +26,17 @@ Create a default fully qualified app name.
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
*/}} */}}
{{- define "argo-workflows.fullname" -}} {{- define "argo-workflows.fullname" -}}
{{- if .Values.fullnameOverride -}}
{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}}
{{- else -}}
{{- $name := default .Chart.Name .Values.nameOverride -}} {{- $name := default .Chart.Name .Values.nameOverride -}}
{{- if contains $name .Release.Name -}}
{{- .Release.Name | trunc 63 | trimSuffix "-" -}}
{{- else -}}
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}} {{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}}
{{- end -}} {{- end -}}
{{- end -}}
{{- end -}}
{{/* {{/*
Create chart name and version as used by the chart label. Create chart name and version as used by the chart label.
@ -65,7 +73,7 @@ Create the name of the server service account to use
*/}} */}}
{{- define "argo-workflows.serverServiceAccountName" -}} {{- define "argo-workflows.serverServiceAccountName" -}}
{{- if .Values.server.serviceAccount.create -}} {{- if .Values.server.serviceAccount.create -}}
{{ default (include "argo-workflows.fullname" .) .Values.server.serviceAccount.name }} {{ default (include "argo-workflows.server.fullname" .) .Values.server.serviceAccount.name }}
{{- else -}} {{- else -}}
{{ default "default" .Values.server.serviceAccount.name }} {{ default "default" .Values.server.serviceAccount.name }}
{{- end -}} {{- end -}}
@ -76,7 +84,7 @@ Create the name of the controller service account to use
*/}} */}}
{{- define "argo-workflows.controllerServiceAccountName" -}} {{- define "argo-workflows.controllerServiceAccountName" -}}
{{- if .Values.controller.serviceAccount.create -}} {{- if .Values.controller.serviceAccount.create -}}
{{ default (include "argo-workflows.fullname" .) .Values.controller.serviceAccount.name }} {{ default (include "argo-workflows.controller.fullname" .) .Values.controller.serviceAccount.name }}
{{- else -}} {{- else -}}
{{ default "default" .Values.controller.serviceAccount.name }} {{ default "default" .Values.controller.serviceAccount.name }}
{{- end -}} {{- end -}}
@ -86,11 +94,18 @@ Create the name of the controller service account to use
Return the appropriate apiVersion for ingress Return the appropriate apiVersion for ingress
*/}} */}}
{{- define "argo-workflows.ingress.apiVersion" -}} {{- define "argo-workflows.ingress.apiVersion" -}}
{{- if semverCompare "<1.14-0" .Capabilities.KubeVersion.Version -}} {{- if semverCompare "<1.14-0" (include "argo-workflows.kubeVersion" $) -}}
{{- print "extensions/v1beta1" -}} {{- print "extensions/v1beta1" -}}
{{- else if semverCompare "<1.19-0" .Capabilities.KubeVersion.Version -}} {{- else if semverCompare "<1.19-0" (include "argo-workflows.kubeVersion" $) -}}
{{- print "networking.k8s.io/v1beta1" -}} {{- print "networking.k8s.io/v1beta1" -}}
{{- else -}} {{- else -}}
{{- print "networking.k8s.io/v1" -}} {{- print "networking.k8s.io/v1" -}}
{{- end -}} {{- end -}}
{{- end -}} {{- end -}}
{{/*
Return the target Kubernetes version
*/}}
{{- define "argo-workflows.kubeVersion" -}}
{{- default .Capabilities.KubeVersion.Version .Values.kubeVersionOverride }}
{{- end -}}

View file

@ -2,10 +2,7 @@
apiVersion: rbac.authorization.k8s.io/v1 apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole kind: ClusterRole
metadata: metadata:
annotations: name: {{ template "argo-workflows.fullname" . }}-view
helm.sh/hook: pre-install
helm.sh/hook-delete-policy: before-hook-creation
name: argo-workflows-aggregate-to-view
labels: labels:
rbac.authorization.k8s.io/aggregate-to-view: "true" rbac.authorization.k8s.io/aggregate-to-view: "true"
rules: rules:
@ -30,10 +27,7 @@ rules:
apiVersion: rbac.authorization.k8s.io/v1 apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole kind: ClusterRole
metadata: metadata:
annotations: name: {{ template "argo-workflows.fullname" . }}-edit
helm.sh/hook: pre-install
helm.sh/hook-delete-policy: before-hook-creation
name: argo-workflows-aggregate-to-edit
labels: labels:
rbac.authorization.k8s.io/aggregate-to-edit: "true" rbac.authorization.k8s.io/aggregate-to-edit: "true"
rules: rules:
@ -63,10 +57,7 @@ rules:
apiVersion: rbac.authorization.k8s.io/v1 apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole kind: ClusterRole
metadata: metadata:
annotations: name: {{ template "argo-workflows.fullname" . }}-admin
helm.sh/hook: pre-install
helm.sh/hook-delete-policy: before-hook-creation
name: argo-workflows-aggregate-to-admin
labels: labels:
rbac.authorization.k8s.io/aggregate-to-admin: "true" rbac.authorization.k8s.io/aggregate-to-admin: "true"
rules: rules:

View file

@ -55,8 +55,6 @@ rules:
resources: resources:
- workflowtemplates - workflowtemplates
- workflowtemplates/finalizers - workflowtemplates/finalizers
- clusterworkflowtemplates
- clusterworkflowtemplates/finalizers
verbs: verbs:
- get - get
- list - list
@ -131,11 +129,13 @@ rules:
- update - update
- patch - patch
- delete - delete
{{- if .Values.controller.clusterWorkflowTemplates.enabled }}
--- ---
apiVersion: rbac.authorization.k8s.io/v1 apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole kind: ClusterRole
metadata: metadata:
name: {{ .Release.Name }}-{{ .Values.controller.name }}-cluster-template name: {{ template "argo-workflows.controller.fullname" . }}-cluster-template
rules: rules:
- apiGroups: - apiGroups:
- argoproj.io - argoproj.io
@ -146,3 +146,4 @@ rules:
- get - get
- list - list
- watch - watch
{{- end }}

View file

@ -31,6 +31,8 @@ subjects:
{{- end }} {{- end }}
{{- end }} {{- end }}
{{- end }} {{- end }}
{{- if .Values.controller.clusterWorkflowTemplates.enabled }}
--- ---
apiVersion: rbac.authorization.k8s.io/v1 apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding kind: ClusterRoleBinding
@ -46,3 +48,4 @@ subjects:
- kind: ServiceAccount - kind: ServiceAccount
name: {{ template "argo-workflows.controllerServiceAccountName" . }} name: {{ template "argo-workflows.controllerServiceAccountName" . }}
namespace: {{ .Release.Namespace }} namespace: {{ .Release.Namespace }}
{{- end }}

View file

@ -70,19 +70,15 @@ spec:
apiVersion: v1 apiVersion: v1
fieldPath: metadata.name fieldPath: metadata.name
{{- with .Values.controller.extraEnv }} {{- with .Values.controller.extraEnv }}
{{ toYaml . | nindent 10 }} {{- toYaml . | nindent 12 }}
{{- end }} {{- end }}
resources: resources:
{{- toYaml .Values.controller.resources | nindent 12 }} {{- toYaml .Values.controller.resources | nindent 12 }}
ports: ports:
- name: metrics - name: metrics
containerPort: {{ .Values.controller.metricsConfig.port }} containerPort: {{ .Values.controller.metricsConfig.port }}
livenessProbe: - containerPort: 6060
httpGet: livenessProbe: {{ .Values.controller.livenessProbe | toYaml | nindent 12 }}
port: metrics
path: {{ .Values.controller.metricsConfig.path }}
initialDelaySeconds: 30
periodSeconds: 30
{{- with .Values.images.pullSecrets }} {{- with .Values.images.pullSecrets }}
imagePullSecrets: imagePullSecrets:
{{- toYaml . | nindent 8 }} {{- toYaml . | nindent 8 }}

View file

@ -1,3 +1,4 @@
{{- if .Values.controller.serviceAccount.create }}
apiVersion: v1 apiVersion: v1
kind: ServiceAccount kind: ServiceAccount
metadata: metadata:
@ -6,3 +7,4 @@ metadata:
annotations: annotations:
{{- toYaml .| nindent 4 }} {{- toYaml .| nindent 4 }}
{{- end }} {{- end }}
{{- end }}

View file

@ -111,6 +111,8 @@ rules:
- update - update
- patch - patch
- delete - delete
{{- if .Values.server.clusterWorkflowTemplates.enabled }}
--- ---
apiVersion: rbac.authorization.k8s.io/v1 apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole kind: ClusterRole
@ -134,3 +136,4 @@ rules:
- delete - delete
{{- end }} {{- end }}
{{- end }} {{- end }}
{{- end }}

View file

@ -21,6 +21,8 @@ subjects:
- kind: ServiceAccount - kind: ServiceAccount
name: {{ template "argo-workflows.serverServiceAccountName" . }} name: {{ template "argo-workflows.serverServiceAccountName" . }}
namespace: {{ .Release.Namespace }} namespace: {{ .Release.Namespace }}
{{- if .Values.server.clusterWorkflowTemplates.enabled }}
--- ---
apiVersion: rbac.authorization.k8s.io/v1 apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding kind: ClusterRoleBinding
@ -37,3 +39,4 @@ subjects:
name: {{ template "argo-workflows.serverServiceAccountName" . }} name: {{ template "argo-workflows.serverServiceAccountName" . }}
namespace: {{ .Release.Namespace }} namespace: {{ .Release.Namespace }}
{{- end -}} {{- end -}}
{{- end -}}

View file

@ -21,7 +21,7 @@ spec:
{{- end }} {{- end }}
{{- with .Values.server.podAnnotations }} {{- with .Values.server.podAnnotations }}
annotations: annotations:
{{- toYaml .Values.server.podAnnotations | nindent 8 }} {{- toYaml . | nindent 8 }}
{{- end }} {{- end }}
spec: spec:
serviceAccountName: {{ template "argo-workflows.serverServiceAccountName" . }} serviceAccountName: {{ template "argo-workflows.serverServiceAccountName" . }}
@ -60,15 +60,18 @@ spec:
initialDelaySeconds: 10 initialDelaySeconds: 10
periodSeconds: 20 periodSeconds: 20
env: env:
- name: IN_CLUSTER - name: IN_CLUSTER
value: "true" value: "true"
- name: ARGO_NAMESPACE - name: ARGO_NAMESPACE
valueFrom: valueFrom:
fieldRef: fieldRef:
apiVersion: v1 apiVersion: v1
fieldPath: metadata.namespace fieldPath: metadata.namespace
- name: BASE_HREF - name: BASE_HREF
value: {{ .Values.server.baseHref | quote }} value: {{ .Values.server.baseHref | quote }}
{{- with .Values.server.extraEnv }}
{{- toYaml . | nindent 12 }}
{{- end }}
resources: resources:
{{- toYaml .Values.server.resources | nindent 12 }} {{- toYaml .Values.server.resources | nindent 12 }}
volumeMounts: volumeMounts:

View file

@ -19,7 +19,7 @@ metadata:
{{- toYaml .Values.server.ingress.labels | nindent 4 }} {{- toYaml .Values.server.ingress.labels | nindent 4 }}
{{- end }} {{- end }}
spec: spec:
{{- if .Capabilities.APIVersions.Has "networking.k8s.io/v1" }} {{- if eq (include "argo-workflows.ingress.apiVersion" $) "networking.k8s.io/v1" }}
{{- with .Values.server.ingress.ingressClassName }} {{- with .Values.server.ingress.ingressClassName }}
ingressClassName: {{ . }} ingressClassName: {{ . }}
{{- end }} {{- end }}
@ -35,11 +35,11 @@ spec:
{{- end }} {{- end }}
{{- range $p := $paths }} {{- range $p := $paths }}
- path: {{ $p }} - path: {{ $p }}
{{- if $.Capabilities.APIVersions.Has "networking.k8s.io/v1" }} {{- if eq (include "argo-workflows.ingress.apiVersion" $) "networking.k8s.io/v1" }}
pathType: Prefix pathType: Prefix
{{- end }} {{- end }}
backend: backend:
{{- if $.Capabilities.APIVersions.Has "networking.k8s.io/v1" }} {{- if eq (include "argo-workflows.ingress.apiVersion" $) "networking.k8s.io/v1" }}
service: service:
name: {{ $serviceName }} name: {{ $serviceName }}
port: port:
@ -62,11 +62,11 @@ spec:
{{- end }} {{- end }}
{{- range $p := $paths }} {{- range $p := $paths }}
- path: {{ $p }} - path: {{ $p }}
{{- if $.Capabilities.APIVersions.Has "networking.k8s.io/v1" }} {{- if eq (include "argo-workflows.ingress.apiVersion" $) "networking.k8s.io/v1" }}
pathType: Prefix pathType: Prefix
{{- end }} {{- end }}
backend: backend:
{{- if $.Capabilities.APIVersions.Has "networking.k8s.io/v1" }} {{- if eq (include "argo-workflows.ingress.apiVersion" $) "networking.k8s.io/v1" }}
service: service:
name: {{ $serviceName }} name: {{ $serviceName }}
port: port:

View file

@ -12,6 +12,18 @@ init:
createAggregateRoles: true createAggregateRoles: true
## String to partially override "argo-workflows.fullname" template
##
nameOverride:
## String to fully override "argo-workflows.fullname" template
##
fullnameOverride:
## Override the Kubernetes version, which is used to evaluate certain manifests
##
kubeVersionOverride: ""
# Restrict Argo to only deploy into a single namespace by apply Roles and RoleBindings instead of the Cluster equivalents, # Restrict Argo to only deploy into a single namespace by apply Roles and RoleBindings instead of the Cluster equivalents,
# and start argo-cli with the --namespaced flag. Use it in clusters with strict access policy. # and start argo-cli with the --namespaced flag. Use it in clusters with strict access policy.
singleNamespace: false singleNamespace: false
@ -93,7 +105,7 @@ controller:
additionalLabels: {} additionalLabels: {}
serviceAccount: serviceAccount:
create: true create: true
name: argo name: ""
# Annotations applied to created service account # Annotations applied to created service account
annotations: {} annotations: {}
name: workflow-controller name: workflow-controller
@ -120,9 +132,22 @@ controller:
# service type `LoadBalancer` # service type `LoadBalancer`
loadBalancerSourceRanges: [] loadBalancerSourceRanges: []
resources: {} resources: {}
# The list of environment variable definitions to be added to the controller livenessProbe:
# manages container verbatim. httpGet:
port: 6060
path: /healthz
# Require three failures to tolerate transient errors.
failureThreshold: 3
initialDelaySeconds: 90
periodSeconds: 60
timeoutSeconds: 30
## Extra environment variables to provide to the controller container
## extraEnv:
## - name: FOO
## value: "bar"
extraEnv: [] extraEnv: []
# Extra arguments to be added to the controller # Extra arguments to be added to the controller
extraArgs: [] extraArgs: []
replicas: 1 replicas: 1
@ -143,6 +168,9 @@ controller:
priorityClassName: "" priorityClassName: ""
# https://argoproj.github.io/argo-workflows/links/ # https://argoproj.github.io/argo-workflows/links/
links: [] links: []
clusterWorkflowTemplates:
# Create a ClusterRole and CRB for the controller to access ClusterWorkflowTemplates.
enabled: true
# executor controls how the init and wait container should be customized # executor controls how the init and wait container should be customized
executor: executor:
@ -187,7 +215,7 @@ server:
# servicePortName: http # servicePortName: http
serviceAccount: serviceAccount:
create: true create: true
name: argo-server name: ""
annotations: {} annotations: {}
# Annotations to be applied to the UI Service # Annotations to be applied to the UI Service
serviceAnnotations: {} serviceAnnotations: {}
@ -223,6 +251,12 @@ server:
# https://argoproj.github.io/argo-workflows/tls/ # https://argoproj.github.io/argo-workflows/tls/
secure: false secure: false
## Extra environment variables to provide to the argo-server container
## extraEnv:
## - name: FOO
## value: "bar"
extraEnv: []
# Extra arguments to provide to the Argo server binary. # Extra arguments to provide to the Argo server binary.
extraArgs: [] extraArgs: []
@ -254,6 +288,14 @@ server:
# backend: # backend:
# serviceName: ssl-redirect # serviceName: ssl-redirect
# servicePort: use-annotation # servicePort: use-annotation
## for Kubernetes >=1.19 (when "networking.k8s.io/v1" is used)
# - path: /*
# pathType: Prefix
# backend:
# service
# name: ssl-redirect
# port:
# name: use-annotation
tls: tls:
[] []
# - secretName: argocd-example-tls # - secretName: argocd-example-tls
@ -262,6 +304,8 @@ server:
https: false https: false
clusterWorkflowTemplates: clusterWorkflowTemplates:
# Create a ClusterRole and CRB for the server to access ClusterWorkflowTemplates.
enabled: true
# Give the server permissions to edit ClusterWorkflowTemplates. # Give the server permissions to edit ClusterWorkflowTemplates.
enableEditing: true enableEditing: true
sso: sso:

View file

@ -98,3 +98,6 @@ spec:
tolerations: tolerations:
{{- toYaml . | nindent 8 }} {{- toYaml . | nindent 8 }}
{{- end }} {{- end }}
{{- with .Values.priorityClassName }}
priorityClassName: {{ . }}
{{- end }}

View file

@ -71,6 +71,8 @@ tolerations: []
affinity: {} affinity: {}
priorityClassName: ""
mountSSHKnownHostsVolume: true mountSSHKnownHostsVolume: true
mountTLSCertsVolume: true mountTLSCertsVolume: true
mountGPGKeysVolume: false mountGPGKeysVolume: false

View file

@ -3,7 +3,7 @@ appVersion: 1.1.1
description: A Helm chart for ArgoCD notifications, an add-on to ArgoCD. description: A Helm chart for ArgoCD notifications, an add-on to ArgoCD.
name: argocd-notifications name: argocd-notifications
type: application type: application
version: 1.3.2 version: 1.4.0
home: https://github.com/argoproj/argo-helm home: https://github.com/argoproj/argo-helm
icon: https://raw.githubusercontent.com/argoproj/argo/master/docs/assets/argo.png icon: https://raw.githubusercontent.com/argoproj/argo/master/docs/assets/argo.png
keywords: keywords:

View file

@ -5,4 +5,8 @@ metadata:
name: {{ include "argocd-notifications.bots.slack.serviceAccountName" . }} name: {{ include "argocd-notifications.bots.slack.serviceAccountName" . }}
labels: labels:
{{- include "argocd-notifications.bots.slack.labels" . | nindent 4 }} {{- include "argocd-notifications.bots.slack.labels" . | nindent 4 }}
{{- with .Values.bots.slack.serviceAccount.annotations }}
annotations:
{{- toYaml . | nindent 4 }}
{{ end }}
{{ end }} {{ end }}

View file

@ -5,6 +5,13 @@ metadata:
name: {{ include "argocd-notifications.name" . }}-metrics name: {{ include "argocd-notifications.name" . }}-metrics
labels: labels:
{{- include "argocd-notifications.metrics.labels" . | nindent 4 }} {{- include "argocd-notifications.metrics.labels" . | nindent 4 }}
{{- with .Values.metrics.service.labels }}
{{- toYaml . | nindent 4 }}
{{- end }}
{{- with .Values.metrics.service.annotations }}
annotations:
{{- toYaml . | nindent 4 }}
{{- end }}
spec: spec:
selector: selector:
{{- include "argocd-notifications.selectorLabels" . | nindent 4 }} {{- include "argocd-notifications.selectorLabels" . | nindent 4 }}

View file

@ -5,4 +5,8 @@ metadata:
name: {{ include "argocd-notifications.serviceAccountName" . }} name: {{ include "argocd-notifications.serviceAccountName" . }}
labels: labels:
{{- include "argocd-notifications.labels" . | nindent 4 }} {{- include "argocd-notifications.labels" . | nindent 4 }}
{{- with .Values.serviceAccount.annotations }}
annotations:
{{- toYaml . | nindent 4 }}
{{- end }}
{{- end }} {{- end }}

View file

@ -52,6 +52,9 @@ extraArgs: []
metrics: metrics:
enabled: false enabled: false
port: 9001 port: 9001
service:
annotations: {}
labels: {}
serviceMonitor: serviceMonitor:
enabled: false enabled: false
additionalLabels: {} additionalLabels: {}
@ -93,6 +96,8 @@ serviceAccount:
# If not set and create is true, a name is generated using the fullname template # If not set and create is true, a name is generated using the fullname template
name: argocd-notifications-controller name: argocd-notifications-controller
annotations: {}
cm: cm:
# Whether helm chart creates controller config map # Whether helm chart creates controller config map
create: true create: true
@ -371,6 +376,8 @@ bots:
# If not set and create is true, a name is generated using the fullname template # If not set and create is true, a name is generated using the fullname template
name: argocd-notifications-bot name: argocd-notifications-bot
annotations: {}
resources: {} resources: {}
# limits: # limits:
# cpu: 100m # cpu: 100m