fix(argo-workflows): fix merge conflicts
Signed-off-by: g-linville <53102776+g-linville@users.noreply.github.com>
This commit is contained in:
commit
5dd1f4a84c
142 changed files with 2080 additions and 1427 deletions
|
@ -1,4 +0,0 @@
|
||||||
chart-repos:
|
|
||||||
- argo=https://argoproj.github.io/argo-helm
|
|
||||||
- minio=https://helm.min.io/
|
|
||||||
- dandydeveloper=https://dandydeveloper.github.io/charts/
|
|
|
@ -5,32 +5,13 @@ jobs:
|
||||||
- image: quay.io/helmpack/chart-testing:v3.3.1
|
- image: quay.io/helmpack/chart-testing:v3.3.1
|
||||||
steps:
|
steps:
|
||||||
- checkout
|
- checkout
|
||||||
- run: helm repo add stable https://charts.helm.sh/stable
|
- run: ct lint --config .github/configs/ct-lint.yaml --lint-conf .github/configs/lintconf.yaml
|
||||||
- run: ct lint --config .circleci/chart-testing.yaml --lint-conf .circleci/lintconf.yaml
|
|
||||||
# Technically this only needs to be run on master, but it's good to have it run on every PR
|
|
||||||
# so that it is regularly tested.
|
|
||||||
publish:
|
publish:
|
||||||
docker:
|
docker:
|
||||||
# We just need an image with `helm` on it. Handily we know of one already.
|
- image: bash
|
||||||
- image: quay.io/helmpack/chart-testing:v3.3.1
|
|
||||||
steps:
|
steps:
|
||||||
# install the additional keys needed to push to GitHub. Alex Collins owns these keys.
|
- run: echo "Replaced by Github Workflow - https://github.com/argoproj/argo-helm/actions/workflows/publish.yml"
|
||||||
- add_ssh_keys
|
|
||||||
- run: git config --global user.email "nobody@circleci.com"
|
|
||||||
- run: git config --global user.name "Circle CI Build"
|
|
||||||
- checkout
|
|
||||||
- run: helm repo add stable https://charts.helm.sh/stable
|
|
||||||
- run: helm repo add minio https://helm.min.io/
|
|
||||||
- run: helm repo add dandydeveloper https://dandydeveloper.github.io/charts/
|
|
||||||
# Only actually publish charts on master.
|
|
||||||
- run: |
|
|
||||||
set -x
|
|
||||||
if [ "$CIRCLE_BRANCH" = "master" ]; then
|
|
||||||
export GIT_PUSH=true
|
|
||||||
else
|
|
||||||
export GIT_PUSH=false
|
|
||||||
fi
|
|
||||||
sh ./scripts/publish.sh
|
|
||||||
workflows:
|
workflows:
|
||||||
version: 2
|
version: 2
|
||||||
workflow:
|
workflow:
|
||||||
|
@ -38,4 +19,4 @@ workflows:
|
||||||
- lint
|
- lint
|
||||||
- publish:
|
- publish:
|
||||||
requires:
|
requires:
|
||||||
- lint
|
- lint
|
2
.github/configs/cr.yaml
vendored
Normal file
2
.github/configs/cr.yaml
vendored
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
## Reference: https://github.com/helm/chart-releaser
|
||||||
|
index-path: "./index.yaml"
|
19
.github/configs/ct-install.yaml
vendored
Normal file
19
.github/configs/ct-install.yaml
vendored
Normal file
|
@ -0,0 +1,19 @@
|
||||||
|
## Reference: https://github.com/helm/chart-testing/blob/master/doc/ct_lint-and-install.md
|
||||||
|
# Don't add the 'debug' attribute, otherwise the workflow won't work anymore
|
||||||
|
# Only Used for the CT Install Stage
|
||||||
|
remote: origin
|
||||||
|
chart-dirs:
|
||||||
|
- charts
|
||||||
|
chart-repos:
|
||||||
|
- argo=https://argoproj.github.io/argo-helm
|
||||||
|
- minio=https://helm.min.io/
|
||||||
|
- dandydeveloper=https://dandydeveloper.github.io/charts/
|
||||||
|
- stable=https://charts.helm.sh/stable
|
||||||
|
- incubator=https://charts.helm.sh/incubator
|
||||||
|
helm-extra-args: "--timeout 600s"
|
||||||
|
validate-chart-schema: false
|
||||||
|
validate-maintainers: true
|
||||||
|
validate-yaml: true
|
||||||
|
exclude-deprecated: true
|
||||||
|
excluded-charts:
|
||||||
|
- "argocd-applicationset"
|
18
.github/configs/ct-lint.yaml
vendored
Normal file
18
.github/configs/ct-lint.yaml
vendored
Normal file
|
@ -0,0 +1,18 @@
|
||||||
|
## Reference: https://github.com/helm/chart-testing/blob/master/doc/ct_lint-and-install.md
|
||||||
|
# Don't add the 'debug' attribute, otherwise the workflow won't work anymore
|
||||||
|
# Only Used for the CT Lint Stage
|
||||||
|
remote: origin
|
||||||
|
chart-dirs:
|
||||||
|
- charts
|
||||||
|
chart-repos:
|
||||||
|
- argo=https://argoproj.github.io/argo-helm
|
||||||
|
- minio=https://helm.min.io/
|
||||||
|
- dandydeveloper=https://dandydeveloper.github.io/charts/
|
||||||
|
- stable=https://charts.helm.sh/stable
|
||||||
|
- incubator=https://charts.helm.sh/incubator
|
||||||
|
helm-extra-args: "--timeout 600s"
|
||||||
|
validate-chart-schema: false
|
||||||
|
validate-maintainers: true
|
||||||
|
validate-yaml: true
|
||||||
|
exclude-deprecated: true
|
||||||
|
excluded-charts: []
|
1
.github/stale.yml
vendored
1
.github/stale.yml
vendored
|
@ -1 +0,0 @@
|
||||||
# See https://github.com/probot/stale
|
|
45
.github/workflows/lint-and-test.yml
vendored
Normal file
45
.github/workflows/lint-and-test.yml
vendored
Normal file
|
@ -0,0 +1,45 @@
|
||||||
|
## Reference: https://github.com/helm/chart-testing-action
|
||||||
|
---
|
||||||
|
name: Linting and Testing
|
||||||
|
on: pull_request
|
||||||
|
jobs:
|
||||||
|
chart-test:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Checkout
|
||||||
|
uses: actions/checkout@v2
|
||||||
|
with:
|
||||||
|
fetch-depth: 0
|
||||||
|
|
||||||
|
- name: Set up Helm
|
||||||
|
uses: azure/setup-helm@v1
|
||||||
|
|
||||||
|
- name: Set up python
|
||||||
|
uses: actions/setup-python@v2
|
||||||
|
with:
|
||||||
|
python-version: 3.7
|
||||||
|
|
||||||
|
- name: Setup Chart Linting
|
||||||
|
id: lint
|
||||||
|
uses: helm/chart-testing-action@v2.0.1
|
||||||
|
|
||||||
|
- name: List changed charts
|
||||||
|
id: list-changed
|
||||||
|
run: |
|
||||||
|
## If executed with debug this won't work anymore.
|
||||||
|
changed=$(ct --config ./.github/configs/ct-lint.yaml list-changed)
|
||||||
|
charts=$(echo "$changed" | tr '\n' ' ' | xargs)
|
||||||
|
if [[ -n "$changed" ]]; then
|
||||||
|
echo "::set-output name=changed::true"
|
||||||
|
echo "::set-output name=changed_charts::$charts"
|
||||||
|
fi
|
||||||
|
- name: Run chart-testing (lint)
|
||||||
|
run: ct lint --debug --config ./.github/configs/ct-lint.yaml --lint-conf ./.github/configs/lintconf.yaml
|
||||||
|
|
||||||
|
- name: Create kind cluster
|
||||||
|
uses: helm/kind-action@v1.1.0
|
||||||
|
if: steps.list-changed.outputs.changed == 'true'
|
||||||
|
|
||||||
|
- name: Run chart-testing (install)
|
||||||
|
run: ct install --config ./.github/configs/ct-install.yaml
|
||||||
|
if: steps.list-changed.outputs.changed == 'true'
|
14
.github/workflows/pr-sizing.yml
vendored
Normal file
14
.github/workflows/pr-sizing.yml
vendored
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
## Reference: https://github.com/pascalgn/size-label-action
|
||||||
|
---
|
||||||
|
name: 'PR Size'
|
||||||
|
on:
|
||||||
|
pull_request_target:
|
||||||
|
types: [opened, synchronize, reopened]
|
||||||
|
jobs:
|
||||||
|
size-label:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: size-label
|
||||||
|
uses: "pascalgn/size-label-action@v0.4.2"
|
||||||
|
env:
|
||||||
|
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
|
42
.github/workflows/publish.yml
vendored
Normal file
42
.github/workflows/publish.yml
vendored
Normal file
|
@ -0,0 +1,42 @@
|
||||||
|
---
|
||||||
|
name: Chart Publish
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- master
|
||||||
|
- rewrite-build
|
||||||
|
jobs:
|
||||||
|
publish:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Checkout
|
||||||
|
uses: actions/checkout@v2
|
||||||
|
with:
|
||||||
|
fetch-depth: 0
|
||||||
|
|
||||||
|
- name: Install Helm
|
||||||
|
uses: azure/setup-helm@v1
|
||||||
|
|
||||||
|
- name: Add dependency chart repos
|
||||||
|
run: |
|
||||||
|
helm repo add argo https://argoproj.github.io/argo-helm
|
||||||
|
helm repo add minio https://helm.min.io/
|
||||||
|
helm repo add dandydeveloper https://dandydeveloper.github.io/charts/
|
||||||
|
helm repo add stable https://charts.helm.sh/stable
|
||||||
|
helm repo add incubator https://charts.helm.sh/incubator
|
||||||
|
- name: Configure Git
|
||||||
|
run: |
|
||||||
|
git config user.name "$GITHUB_ACTOR"
|
||||||
|
git config user.email "$GITHUB_ACTOR@users.noreply.github.com"
|
||||||
|
|
||||||
|
## This is required to consider the old Circle-CI Index and to stay compatible with all the old releases.
|
||||||
|
- name: Fetch current Chart Index
|
||||||
|
run: |
|
||||||
|
git checkout origin/gh-pages index.yaml
|
||||||
|
|
||||||
|
- name: Run chart-releaser
|
||||||
|
uses: helm/chart-releaser-action@v1.2.0
|
||||||
|
with:
|
||||||
|
config: "./.github/configs/cr.yaml"
|
||||||
|
env:
|
||||||
|
CR_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
|
4
.github/workflows/stale.yml
vendored
4
.github/workflows/stale.yml
vendored
|
@ -1,14 +1,10 @@
|
||||||
name: Mark stale issues and pull requests
|
name: Mark stale issues and pull requests
|
||||||
|
|
||||||
on:
|
on:
|
||||||
schedule:
|
schedule:
|
||||||
- cron: "30 1 * * *"
|
- cron: "30 1 * * *"
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
stale:
|
stale:
|
||||||
|
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/stale@v3
|
- uses: actions/stale@v3
|
||||||
with:
|
with:
|
||||||
|
|
|
@ -1,16 +1,19 @@
|
||||||
# https://help.github.com/en/github/creating-cloning-and-archiving-repositories/about-code-owners
|
# https://help.github.com/en/github/creating-cloning-and-archiving-repositories/about-code-owners
|
||||||
|
|
||||||
|
# All charts
|
||||||
|
/charts/ @mkilchhofer
|
||||||
|
|
||||||
# Argo Workflows
|
# Argo Workflows
|
||||||
/charts/argo @stefansedich @paguos @vladlosev @yann-soubeyrand @oliverbaehler
|
/charts/argo @stefansedich @paguos @vladlosev @yann-soubeyrand @oliverbaehler
|
||||||
|
|
||||||
# Argo CD
|
# Argo CD
|
||||||
/charts/argo-cd @seanson @spencergilbert @davidkarlsen @mr-sour @yann-soubeyrand @oliverbaehler
|
/charts/argo-cd @seanson @davidkarlsen @mr-sour @yann-soubeyrand @oliverbaehler
|
||||||
|
|
||||||
# Argo Events
|
# Argo Events
|
||||||
/charts/argo-events @jbehling @VaibhavPage @oliverbaehler
|
/charts/argo-events @jbehling @VaibhavPage @oliverbaehler
|
||||||
|
|
||||||
# Argo Rollouts
|
# Argo Rollouts
|
||||||
/charts/argo-rollouts @cabrinha @oliverbaehler
|
/charts/argo-rollouts @oliverbaehler
|
||||||
|
|
||||||
# Argo CD Notifications
|
# Argo CD Notifications
|
||||||
/charts/argocd-notifications @alexmt @andyfeller @oliverbaehler
|
/charts/argocd-notifications @alexmt @andyfeller @oliverbaehler
|
||||||
|
|
|
@ -22,6 +22,12 @@ helm delete argo-cd --purge
|
||||||
kubectl delete crd -l app.kubernetes.io/part-of=argocd
|
kubectl delete crd -l app.kubernetes.io/part-of=argocd
|
||||||
```
|
```
|
||||||
|
|
||||||
|
Pre-requisites:
|
||||||
|
```
|
||||||
|
helm repo add redis-ha https://dandydeveloper.github.io/charts/
|
||||||
|
helm dependency update
|
||||||
|
```
|
||||||
|
|
||||||
Minimally:
|
Minimally:
|
||||||
|
|
||||||
```
|
```
|
||||||
|
@ -80,7 +86,7 @@ As part of the Continuous Integration system we run Helm's [Chart Testing](https
|
||||||
|
|
||||||
The checks for this tool are stricter than the standard Helm requirements, where fields normally considered optional like `maintainer` are required in the standard spec and must be valid GitHub usernames.
|
The checks for this tool are stricter than the standard Helm requirements, where fields normally considered optional like `maintainer` are required in the standard spec and must be valid GitHub usernames.
|
||||||
|
|
||||||
Linting configuration can be found in [lintconf.yaml](.circleci/lintconf.yaml)
|
Linting configuration can be found in [ct-lint.yaml](./.github/configs/ct-lint.yaml)
|
||||||
|
|
||||||
The linting can be invoked manually with the following command:
|
The linting can be invoked manually with the following command:
|
||||||
|
|
||||||
|
@ -90,11 +96,4 @@ The linting can be invoked manually with the following command:
|
||||||
|
|
||||||
## Publishing Changes
|
## Publishing Changes
|
||||||
|
|
||||||
Changes are automatically publish whenever a commit is merged to master. The CI job (see `.circleci/config.yaml`) runs this:
|
Changes are automatically publish whenever a commit is merged to master. The CI job (see `./.github/workflows/publish.yml`).
|
||||||
|
|
||||||
```
|
|
||||||
GIT_PUSH=true ./scripts/publish.sh
|
|
||||||
```
|
|
||||||
|
|
||||||
Script generates tar file for each chart in `charts` directory and push changes to `gh-pages` branch.
|
|
||||||
Write access to https://github.com/argoproj/argo-helm.git is required to publish changes.
|
|
|
@ -1,5 +1,7 @@
|
||||||
# Argo Helm Charts
|
# Argo Helm Charts
|
||||||
|
|
||||||
|
[](https://github.com/argoproj/argo-helm/actions/workflows/publish.yml)
|
||||||
|
|
||||||
Argo Helm is a collection of **community maintained** charts for http://argoproj.io/ projects. The charts can be added using following command:
|
Argo Helm is a collection of **community maintained** charts for http://argoproj.io/ projects. The charts can be added using following command:
|
||||||
|
|
||||||
```
|
```
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
dependencies:
|
dependencies:
|
||||||
- name: redis-ha
|
- name: redis-ha
|
||||||
repository: https://dandydeveloper.github.io/charts/
|
repository: https://dandydeveloper.github.io/charts/
|
||||||
version: 4.10.1
|
version: 4.12.14
|
||||||
digest: sha256:e1e0526ad009ecc065df937b48c4e0e5877e5194242c7888b1dc4467775f2663
|
digest: sha256:34275a4f4df92c570d07b0553da5d1fa200b6f057f7091746c853fd7399ee30a
|
||||||
generated: "2021-04-01T08:36:01.324672-07:00"
|
generated: "2021-05-03T16:02:41.4356045-04:00"
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
apiVersion: v2
|
apiVersion: v2
|
||||||
appVersion: 2.0.0
|
appVersion: 2.0.1
|
||||||
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.0.0
|
version: 3.5.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:
|
||||||
|
@ -16,6 +16,6 @@ maintainers:
|
||||||
- name: seanson
|
- name: seanson
|
||||||
dependencies:
|
dependencies:
|
||||||
- name: redis-ha
|
- name: redis-ha
|
||||||
version: 4.10.1
|
version: 4.12.14
|
||||||
repository: https://dandydeveloper.github.io/charts/
|
repository: https://dandydeveloper.github.io/charts/
|
||||||
condition: redis-ha.enabled
|
condition: redis-ha.enabled
|
||||||
|
|
|
@ -12,6 +12,26 @@ The default installation is intended to be similar to the provided ArgoCD [relea
|
||||||
|
|
||||||
This chart currently installs the non-HA version of ArgoCD.
|
This chart currently installs the non-HA version of ArgoCD.
|
||||||
|
|
||||||
|
### Synchronizing Changes from Original Repository
|
||||||
|
|
||||||
|
In the original [ArgoCD repository](https://github.com/argoproj/argo-cd/) an [`manifests/install.yaml`](https://github.com/argoproj/argo-cd/blob/master/manifests/install.yaml) is generated using `kustomize`. It's the basis for the installation as [described in the docs](https://argo-cd.readthedocs.io/en/stable/getting_started/#1-install-argo-cd).
|
||||||
|
|
||||||
|
When installing ArgoCD using this helm chart the user should have a similar experience and configuration rolled out. Hence, it makes sense to try to achieve a similar output of rendered `.yaml` resources when calling `helm template` using the default settings in `values.yaml`.
|
||||||
|
|
||||||
|
To update the templates and default settings in `values.yaml` it may come in handy to look up the diff of the `manifests/install.yaml` between two versions accordingly. This can either be done directly via github and look for `manifests/install.yaml`:
|
||||||
|
|
||||||
|
https://github.com/argoproj/argo-cd/compare/v1.8.7...v2.0.0#files_bucket
|
||||||
|
|
||||||
|
Or you clone the repository and do a local `git-diff`:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
git clone https://github.com/argoproj/argo-cd.git
|
||||||
|
cd argo-cd
|
||||||
|
git diff v1.8.7 v2.0.0 -- manifests/install.yaml
|
||||||
|
```
|
||||||
|
|
||||||
|
Changes in the `CustomResourceDefinition` resources shall be fixed easily by copying 1:1 from the [`manifests/crds` folder](https://github.com/argoproj/argo-cd/tree/master/manifests/crds) into this [`charts/argo-cd/crds` folder](https://github.com/argoproj/argo-helm/tree/master/charts/argo-cd/crds).
|
||||||
|
|
||||||
## Upgrading
|
## Upgrading
|
||||||
|
|
||||||
### 3.0.0 and above
|
### 3.0.0 and above
|
||||||
|
@ -20,7 +40,7 @@ Helm apiVersion switched to `v2`. Requires Helm `3.0.0` or above to install. [Re
|
||||||
|
|
||||||
### 2.14.7 and above
|
### 2.14.7 and above
|
||||||
|
|
||||||
The `matchLabels` key in the ArgoCD Appliaction Controller is no longer hard-coded. Note that labels are immutable so caution should be exercised when making changes to this resource.
|
The `matchLabels` key in the ArgoCD Application Controller is no longer hard-coded. Note that labels are immutable so caution should be exercised when making changes to this resource.
|
||||||
|
|
||||||
### 2.10.x to 2.11.0
|
### 2.10.x to 2.11.0
|
||||||
|
|
||||||
|
@ -80,6 +100,7 @@ Helm v3 has removed the `install-crds` hook so CRDs are now populated by files i
|
||||||
| 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 | `[]` |
|
||||||
| 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` |
|
| installCRDs | Install CRDs if you are using Helm2. | `true` |
|
||||||
|
| 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.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 | `{}` |
|
||||||
|
@ -92,6 +113,7 @@ Helm v3 has removed the `install-crds` hook so CRDs are now populated by files i
|
||||||
| configs.tlsCertsAnnotations | TLS certificate configmap annotations | `{}` |
|
| configs.tlsCertsAnnotations | TLS certificate configmap annotations | `{}` |
|
||||||
| configs.tlsCerts.data."argocd.example.com" | TLS certificate | See [values.yaml](values.yaml) |
|
| configs.tlsCerts.data."argocd.example.com" | TLS certificate | See [values.yaml](values.yaml) |
|
||||||
| configs.secret.extra | add additional secrets to be added to argocd-secret | `{}` |
|
| configs.secret.extra | add additional secrets to be added to argocd-secret | `{}` |
|
||||||
|
| configs.styles | Define custom CSS styles for your argo instance ([Read More](https://argo-cd.readthedocs.io/en/stable/operator-manual/custom-styles/)). This Settings will automatically mount the provided css and reference it in the argo configuration. | `""` (See [values.yaml](values.yaml)) |
|
||||||
| openshift.enabled | enables using arbitrary uid for argo repo server | `false` |
|
| openshift.enabled | enables using arbitrary uid for argo repo server | `false` |
|
||||||
|
|
||||||
## ArgoCD Controller
|
## ArgoCD Controller
|
||||||
|
@ -226,12 +248,14 @@ Helm v3 has removed the `install-crds` hook so CRDs are now populated by files i
|
||||||
| server.ingress.enabled | Enable an ingress resource for the server | `false` |
|
| server.ingress.enabled | Enable an ingress resource for the server | `false` |
|
||||||
| server.ingress.hosts | List of ingress hosts | `[]` |
|
| server.ingress.hosts | List of ingress hosts | `[]` |
|
||||||
| server.ingress.labels | Additional ingress labels. | `{}` |
|
| server.ingress.labels | Additional ingress labels. | `{}` |
|
||||||
|
| server.ingress.ingressClassName | Defines which ingress controller will implement the resource | `""` |
|
||||||
| server.ingress.tls | Ingress TLS configuration. | `[]` |
|
| server.ingress.tls | Ingress TLS configuration. | `[]` |
|
||||||
| server.ingress.https | Uses `server.service.servicePortHttps` instead `server.service.servicePortHttp` | `false` |
|
| server.ingress.https | Uses `server.service.servicePortHttps` instead `server.service.servicePortHttp` | `false` |
|
||||||
| server.ingressGrpc.annotations | Additional ingress annotations for dedicated [gRPC-ingress] | `{}` |
|
| server.ingressGrpc.annotations | Additional ingress annotations for dedicated [gRPC-ingress] | `{}` |
|
||||||
| server.ingressGrpc.enabled | Enable an ingress resource for the server for dedicated [gRPC-ingress] | `false` |
|
| server.ingressGrpc.enabled | Enable an ingress resource for the server for dedicated [gRPC-ingress] | `false` |
|
||||||
| server.ingressGrpc.hosts | List of ingress hosts for dedicated [gRPC-ingress] | `[]` |
|
| server.ingressGrpc.hosts | List of ingress hosts for dedicated [gRPC-ingress] | `[]` |
|
||||||
| server.ingressGrpc.labels | Additional ingress labels for dedicated [gRPC-ingress] | `{}` |
|
| server.ingressGrpc.labels | Additional ingress labels for dedicated [gRPC-ingress] | `{}` |
|
||||||
|
| server.ingressGrpc.ingressClassName | Defines which ingress controller will implement the resource [gRPC-ingress] | `""` |
|
||||||
| server.ingressGrpc.tls | Ingress TLS configuration for dedicated [gRPC-ingress] | `[]` |
|
| server.ingressGrpc.tls | Ingress TLS configuration for dedicated [gRPC-ingress] | `[]` |
|
||||||
| server.route.enabled | Enable a OpenShift route for the server | `false` |
|
| server.route.enabled | Enable a OpenShift route for the server | `false` |
|
||||||
| server.route.hostname | Hostname of OpenShift route | `""` |
|
| server.route.hostname | Hostname of OpenShift route | `""` |
|
||||||
|
@ -331,7 +355,8 @@ through `xxx.extraArgs`
|
||||||
| redis.enabled | Enable redis | `true` |
|
| redis.enabled | Enable redis | `true` |
|
||||||
| redis.image.imagePullPolicy | Redis imagePullPolicy | `"IfNotPresent"` |
|
| redis.image.imagePullPolicy | Redis imagePullPolicy | `"IfNotPresent"` |
|
||||||
| redis.image.repository | Redis repository | `"redis"` |
|
| redis.image.repository | Redis repository | `"redis"` |
|
||||||
| redis.image.tag | Redis tag | `"5.0.8"` |
|
| redis.image.tag | Redis tag | `"6.2.1-alpine"` |
|
||||||
|
| 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.nodeSelector | [Node selector](https://kubernetes.io/docs/user-guide/node-selection/) | `{}` |
|
| redis.nodeSelector | [Node selector](https://kubernetes.io/docs/user-guide/node-selection/) | `{}` |
|
||||||
|
@ -351,6 +376,6 @@ through `xxx.extraArgs`
|
||||||
| redis-ha.redis.config.save | Will save the DB if both the given number of seconds and the given number of write operations against the DB occurred. `""` is disabled | `""` |
|
| redis-ha.redis.config.save | Will save the DB if both the given number of seconds and the given number of write operations against the DB occurred. `""` is disabled | `""` |
|
||||||
| redis-ha.haproxy.enabled | Enabled HAProxy LoadBalancing/Proxy | `true` |
|
| redis-ha.haproxy.enabled | Enabled HAProxy LoadBalancing/Proxy | `true` |
|
||||||
| redis-ha.haproxy.metrics.enabled | HAProxy enable prometheus metric scraping | `true` |
|
| redis-ha.haproxy.metrics.enabled | HAProxy enable prometheus metric scraping | `true` |
|
||||||
| redis-ha.image.tag | Redis tag | `"5.0.8-alpine"` |
|
| redis-ha.image.tag | Redis tag | `"6.2.1-alpine"` |
|
||||||
|
|
||||||
[gRPC-ingress]: https://argoproj.github.io/argo-cd/operator-manual/ingress/
|
[gRPC-ingress]: https://argoproj.github.io/argo-cd/operator-manual/ingress/
|
||||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -20,8 +20,6 @@ spec:
|
||||||
scope: Namespaced
|
scope: Namespaced
|
||||||
versions:
|
versions:
|
||||||
- name: v1alpha1
|
- name: v1alpha1
|
||||||
served: true
|
|
||||||
storage: true
|
|
||||||
schema:
|
schema:
|
||||||
openAPIV3Schema:
|
openAPIV3Schema:
|
||||||
description: 'AppProject provides a logical grouping of applications, providing controls for: * where the apps may deploy to (cluster whitelist) * what may be deployed (repository whitelist, resource whitelist/blacklist) * who can access these applications (roles, OIDC group claims bindings) * and what they can do (RBAC policies) * automation access to these roles (JWT tokens)'
|
description: 'AppProject provides a logical grouping of applications, providing controls for: * where the apps may deploy to (cluster whitelist) * what may be deployed (repository whitelist, resource whitelist/blacklist) * who can access these applications (roles, OIDC group claims bindings) * and what they can do (RBAC policies) * automation access to these roles (JWT tokens)'
|
||||||
|
@ -71,16 +69,16 @@ spec:
|
||||||
destinations:
|
destinations:
|
||||||
description: Destinations contains list of destinations available for deployment
|
description: Destinations contains list of destinations available for deployment
|
||||||
items:
|
items:
|
||||||
description: ApplicationDestination contains deployment destination information
|
description: ApplicationDestination holds information about the application's destination
|
||||||
properties:
|
properties:
|
||||||
name:
|
name:
|
||||||
description: Name of the destination cluster which can be used instead of server (url) field
|
description: Name is an alternate way of specifying the target cluster by its symbolic name
|
||||||
type: string
|
type: string
|
||||||
namespace:
|
namespace:
|
||||||
description: Namespace overrides the environment namespace value in the ksonnet app.yaml
|
description: Namespace specifies the target namespace for the application's resources. The namespace will only be set for namespace-scoped resources that have not set a value for .metadata.namespace
|
||||||
type: string
|
type: string
|
||||||
server:
|
server:
|
||||||
description: Server overrides the environment server value in the ksonnet app.yaml
|
description: Server specifies the URL of the target cluster and must be set to the Kubernetes control plane API
|
||||||
type: string
|
type: string
|
||||||
type: object
|
type: object
|
||||||
type: array
|
type: array
|
||||||
|
@ -116,7 +114,9 @@ spec:
|
||||||
description: OrphanedResources specifies if controller should monitor orphaned resources of apps in this project
|
description: OrphanedResources specifies if controller should monitor orphaned resources of apps in this project
|
||||||
properties:
|
properties:
|
||||||
ignore:
|
ignore:
|
||||||
|
description: Ignore contains a list of resources that are to be excluded from orphaned resources monitoring
|
||||||
items:
|
items:
|
||||||
|
description: OrphanedResourceKey is a reference to a resource to be ignored from
|
||||||
properties:
|
properties:
|
||||||
group:
|
group:
|
||||||
type: string
|
type: string
|
||||||
|
@ -173,7 +173,7 @@ spec:
|
||||||
type: object
|
type: object
|
||||||
type: array
|
type: array
|
||||||
signatureKeys:
|
signatureKeys:
|
||||||
description: List of PGP key IDs that commits to be synced to must be signed with
|
description: SignatureKeys contains a list of PGP key IDs that commits in Git must be signed with in order to be allowed for sync
|
||||||
items:
|
items:
|
||||||
description: SignatureKey is the specification of a key required to verify commit signatures with
|
description: SignatureKey is the specification of a key required to verify commit signatures with
|
||||||
properties:
|
properties:
|
||||||
|
@ -225,34 +225,35 @@ spec:
|
||||||
type: array
|
type: array
|
||||||
type: object
|
type: object
|
||||||
status:
|
status:
|
||||||
description: Status of the AppProject
|
description: AppProjectStatus contains status information for AppProject CRs
|
||||||
properties:
|
properties:
|
||||||
jwtTokensByRole:
|
jwtTokensByRole:
|
||||||
description: JWT Tokens issued for each of the roles in the project
|
|
||||||
additionalProperties:
|
additionalProperties:
|
||||||
|
description: JWTTokens represents a list of JWT tokens
|
||||||
properties:
|
properties:
|
||||||
items:
|
items:
|
||||||
description: List of JWT Tokens issued for the role
|
items:
|
||||||
items:
|
description: JWTToken holds the issuedAt and expiresAt values of a token
|
||||||
description: Holds the issuedAt and expiresAt values of the token
|
|
||||||
properties:
|
properties:
|
||||||
exp:
|
exp:
|
||||||
description: The expiresAt value of a token
|
|
||||||
format: int64
|
format: int64
|
||||||
type: integer
|
type: integer
|
||||||
iat:
|
iat:
|
||||||
description: The issuedAt value of a token
|
|
||||||
format: int64
|
format: int64
|
||||||
type: integer
|
type: integer
|
||||||
id:
|
id:
|
||||||
description: ID of the token
|
|
||||||
type: string
|
type: string
|
||||||
|
required:
|
||||||
|
- iat
|
||||||
type: object
|
type: object
|
||||||
type: array
|
type: array
|
||||||
type: object
|
type: object
|
||||||
|
description: JWTTokensByRole contains a list of JWT tokens issued for a given role
|
||||||
type: object
|
type: object
|
||||||
type: object
|
type: object
|
||||||
required:
|
required:
|
||||||
- metadata
|
- metadata
|
||||||
- spec
|
- spec
|
||||||
type: object
|
type: object
|
||||||
|
served: true
|
||||||
|
storage: true
|
||||||
|
|
|
@ -9,7 +9,8 @@ In order to access the server UI you have the following options:
|
||||||
- Add the `--insecure` flag to `server.extraArgs` in the values file and terminate SSL at your ingress: https://github.com/argoproj/argo-cd/blob/master/docs/operator-manual/ingress.md#option-2-multiple-ingress-objects-and-hosts
|
- Add the `--insecure` flag to `server.extraArgs` in the values file and terminate SSL at your ingress: https://github.com/argoproj/argo-cd/blob/master/docs/operator-manual/ingress.md#option-2-multiple-ingress-objects-and-hosts
|
||||||
|
|
||||||
|
|
||||||
After reaching the UI the first time you can login with username: admin and the password will be the
|
After reaching the UI the first time you can login with username: admin and the random password generated during the installation. You can find the password by running:
|
||||||
name of the server pod. You can get the pod name by running:
|
|
||||||
|
|
||||||
kubectl get pods -n {{ .Release.Namespace }} -l app.kubernetes.io/name={{ include "argo-cd.name" . }}-server -o name | cut -d'/' -f 2
|
kubectl -n {{ .Release.Namespace }} get secret argocd-initial-admin-secret -o jsonpath="{.data.password}" | base64 -d
|
||||||
|
|
||||||
|
(You should delete the initial secret afterwards as suggested by the Getting Started Guide: https://github.com/argoproj/argo-cd/blob/master/docs/getting_started.md#4-login-using-the-cli)
|
||||||
|
|
|
@ -138,4 +138,35 @@ app.kubernetes.io/instance: {{ .context.Release.Name }}
|
||||||
{{- if .component }}
|
{{- if .component }}
|
||||||
app.kubernetes.io/component: {{ .component }}
|
app.kubernetes.io/component: {{ .component }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Return the appropriate apiVersion for ingress
|
||||||
|
*/}}
|
||||||
|
{{- define "argo-cd.ingress.apiVersion" -}}
|
||||||
|
{{- if semverCompare "<1.14-0" .Capabilities.KubeVersion.GitVersion -}}
|
||||||
|
{{- print "extensions/v1beta1" -}}
|
||||||
|
{{- else if semverCompare "<1.19-0" .Capabilities.KubeVersion.GitVersion -}}
|
||||||
|
{{- print "networking.k8s.io/v1beta1" -}}
|
||||||
|
{{- else -}}
|
||||||
|
{{- print "networking.k8s.io/v1" -}}
|
||||||
|
{{- end -}}
|
||||||
|
{{- end -}}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Argo Configuration Preset Values (Incluenced by Values configuration)
|
||||||
|
*/}}
|
||||||
|
{{- define "argo-cd.config.presets" -}}
|
||||||
|
{{- if .Values.configs.styles }}
|
||||||
|
ui.cssurl: "./custom/custom.styles.css"
|
||||||
|
{{- end }}
|
||||||
|
{{- end -}}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Merge Argo Configuration with Preset Configuration
|
||||||
|
*/}}
|
||||||
|
{{- define "argo-cd.config" -}}
|
||||||
|
{{- if .Values.server.configEnabled -}}
|
||||||
|
{{- toYaml (mergeOverwrite (default dict (fromYaml (include "argo-cd.config.presets" $))) .Values.server.config) }}
|
||||||
|
{{- end -}}
|
||||||
|
{{- end -}}
|
|
@ -6,6 +6,9 @@ metadata:
|
||||||
labels:
|
labels:
|
||||||
{{- include "argo-cd.labels" (dict "context" . "component" .Values.controller.name "name" .Values.controller.name) | nindent 4 }}
|
{{- include "argo-cd.labels" (dict "context" . "component" .Values.controller.name "name" .Values.controller.name) | nindent 4 }}
|
||||||
rules:
|
rules:
|
||||||
|
{{- if .Values.controller.clusterRoleRules.enabled }}
|
||||||
|
{{- toYaml .Values.controller.clusterRoleRules.rules | nindent 2 }}
|
||||||
|
{{ else }}
|
||||||
- apiGroups:
|
- apiGroups:
|
||||||
- '*'
|
- '*'
|
||||||
resources:
|
resources:
|
||||||
|
@ -16,4 +19,5 @@ rules:
|
||||||
- '*'
|
- '*'
|
||||||
verbs:
|
verbs:
|
||||||
- '*'
|
- '*'
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
|
|
@ -70,6 +70,9 @@ spec:
|
||||||
{{- if .Values.controller.env }}
|
{{- if .Values.controller.env }}
|
||||||
env:
|
env:
|
||||||
{{- toYaml .Values.controller.env | nindent 8 }}
|
{{- toYaml .Values.controller.env | nindent 8 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- with .Values.controller.envFrom }}
|
||||||
|
envFrom: {{- toYaml . | nindent 8 }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
ports:
|
ports:
|
||||||
- name: controller
|
- name: controller
|
||||||
|
@ -92,10 +95,12 @@ spec:
|
||||||
timeoutSeconds: {{ .Values.controller.readinessProbe.timeoutSeconds }}
|
timeoutSeconds: {{ .Values.controller.readinessProbe.timeoutSeconds }}
|
||||||
successThreshold: {{ .Values.controller.readinessProbe.successThreshold }}
|
successThreshold: {{ .Values.controller.readinessProbe.successThreshold }}
|
||||||
failureThreshold: {{ .Values.controller.readinessProbe.failureThreshold }}
|
failureThreshold: {{ .Values.controller.readinessProbe.failureThreshold }}
|
||||||
{{- if .Values.controller.volumeMounts }}
|
|
||||||
volumeMounts:
|
volumeMounts:
|
||||||
{{- toYaml .Values.controller.volumeMounts | nindent 10}}
|
- mountPath: /app/config/controller/tls
|
||||||
{{- end }}
|
name: argocd-repo-server-tls
|
||||||
|
{{- with .Values.controller.volumeMounts }}
|
||||||
|
{{- toYaml . | nindent 8 }}
|
||||||
|
{{- end }}
|
||||||
resources:
|
resources:
|
||||||
{{- toYaml .Values.controller.resources | nindent 10 }}
|
{{- toYaml .Values.controller.resources | nindent 10 }}
|
||||||
{{- if .Values.controller.nodeSelector }}
|
{{- if .Values.controller.nodeSelector }}
|
||||||
|
@ -115,10 +120,21 @@ spec:
|
||||||
hostAliases:
|
hostAliases:
|
||||||
{{ toYaml . | indent 6 }}
|
{{ toYaml . | indent 6 }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- if .Values.controller.volumes }}
|
|
||||||
volumes:
|
volumes:
|
||||||
{{- toYaml .Values.controller.volumes | nindent 8 }}
|
- name: argocd-repo-server-tls
|
||||||
{{- end }}
|
secret:
|
||||||
|
items:
|
||||||
|
- key: tls.crt
|
||||||
|
path: tls.crt
|
||||||
|
- key: tls.key
|
||||||
|
path: tls.key
|
||||||
|
- key: ca.crt
|
||||||
|
path: ca.crt
|
||||||
|
optional: true
|
||||||
|
secretName: argocd-repo-server-tls
|
||||||
|
{{- with .Values.controller.volumes }}
|
||||||
|
{{- toYaml . | nindent 6 }}
|
||||||
|
{{- end }}
|
||||||
{{- if .Values.controller.priorityClassName }}
|
{{- if .Values.controller.priorityClassName }}
|
||||||
priorityClassName: {{ .Values.controller.priorityClassName }}
|
priorityClassName: {{ .Values.controller.priorityClassName }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
|
|
@ -17,7 +17,9 @@ metadata:
|
||||||
spec:
|
spec:
|
||||||
endpoints:
|
endpoints:
|
||||||
- port: metrics
|
- port: metrics
|
||||||
interval: 30s
|
{{- with .Values.controller.metrics.serviceMonitor.interval }}
|
||||||
|
interval: {{ . }}
|
||||||
|
{{- end }}
|
||||||
path: /metrics
|
path: /metrics
|
||||||
namespaceSelector:
|
namespaceSelector:
|
||||||
matchNames:
|
matchNames:
|
||||||
|
|
|
@ -11,6 +11,5 @@ metadata:
|
||||||
{{ $key }}: {{ $value | quote }}
|
{{ $key }}: {{ $value | quote }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
data:
|
data: {{- include "argo-cd.config" $ | nindent 4 }}
|
||||||
{{- toYaml .Values.server.config | nindent 4 }}
|
|
||||||
{{- end }}
|
{{- end }}
|
|
@ -0,0 +1,11 @@
|
||||||
|
{{- if .Values.configs.styles }}
|
||||||
|
apiVersion: v1
|
||||||
|
kind: ConfigMap
|
||||||
|
metadata:
|
||||||
|
name: argocd-custom-styles
|
||||||
|
labels:
|
||||||
|
{{- include "argo-cd.labels" (dict "context" . "component" .Values.repoServer.name "name" .Values.repoServer.name) | nindent 4 }}
|
||||||
|
data:
|
||||||
|
custom.styles.css: |
|
||||||
|
{{- .Values.configs.styles | nindent 4 }}
|
||||||
|
{{- end }}
|
26
charts/argo-cd/templates/argocd-configs/cluster-secrets.yaml
Normal file
26
charts/argo-cd/templates/argocd-configs/cluster-secrets.yaml
Normal file
|
@ -0,0 +1,26 @@
|
||||||
|
{{- range .Values.configs.clusterCredentials }}
|
||||||
|
---
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Secret
|
||||||
|
metadata:
|
||||||
|
name: {{ include "argo-cd.name" $ }}-cluster-{{ .name }}
|
||||||
|
labels:
|
||||||
|
{{- include "argo-cd.labels" (dict "context" $) | nindent 4 }}
|
||||||
|
{{- with .labels }}
|
||||||
|
{{- toYaml . | nindent 4 }}
|
||||||
|
{{- end }}
|
||||||
|
argocd.argoproj.io/secret-type: cluster
|
||||||
|
{{- with .annotations }}
|
||||||
|
annotations:
|
||||||
|
{{- toYaml . | nindent 4 }}
|
||||||
|
{{- end }}
|
||||||
|
type: Opaque
|
||||||
|
stringData:
|
||||||
|
name: {{ required "A valid .Values.configs.clusterCredentials[].name entry is required!" .name }}
|
||||||
|
server: {{ required "A valid .Values.configs.clusterCredentials[].server entry is required!" .server }}
|
||||||
|
{{- with .namespaces }}
|
||||||
|
namespaces: {{ . }}
|
||||||
|
{{- end }}
|
||||||
|
config: |
|
||||||
|
{{- required "A valid .Values.configs.clusterCredentials[].config entry is required!" .config | toPrettyJson | nindent 4 }}
|
||||||
|
{{- end }}
|
|
@ -67,6 +67,9 @@ spec:
|
||||||
value: argocd
|
value: argocd
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
{{- with .Values.openshift.envFrom }}
|
||||||
|
envFrom: {{- toYaml . | nindent 8 }}
|
||||||
|
{{- end }}
|
||||||
volumeMounts:
|
volumeMounts:
|
||||||
{{- if .Values.repoServer.volumeMounts }}
|
{{- if .Values.repoServer.volumeMounts }}
|
||||||
{{- toYaml .Values.repoServer.volumeMounts | nindent 8}}
|
{{- toYaml .Values.repoServer.volumeMounts | nindent 8}}
|
||||||
|
@ -81,6 +84,8 @@ spec:
|
||||||
- mountPath: /app/config/tls
|
- mountPath: /app/config/tls
|
||||||
name: tls-certs
|
name: tls-certs
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
- mountPath: /app/config/reposerver/tls
|
||||||
|
name: argocd-repo-server-tls
|
||||||
- mountPath: /tmp
|
- mountPath: /tmp
|
||||||
name: tmp-dir
|
name: tmp-dir
|
||||||
ports:
|
ports:
|
||||||
|
@ -143,6 +148,17 @@ spec:
|
||||||
name: argocd-tls-certs-cm
|
name: argocd-tls-certs-cm
|
||||||
name: tls-certs
|
name: tls-certs
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
- name: argocd-repo-server-tls
|
||||||
|
secret:
|
||||||
|
items:
|
||||||
|
- key: tls.crt
|
||||||
|
path: tls.crt
|
||||||
|
- key: tls.key
|
||||||
|
path: tls.key
|
||||||
|
- key: ca.crt
|
||||||
|
path: ca.crt
|
||||||
|
optional: true
|
||||||
|
secretName: argocd-repo-server-tls
|
||||||
- emptyDir: {}
|
- emptyDir: {}
|
||||||
name: tmp-dir
|
name: tmp-dir
|
||||||
{{- if .Values.repoServer.initContainers }}
|
{{- if .Values.repoServer.initContainers }}
|
||||||
|
|
|
@ -17,7 +17,9 @@ metadata:
|
||||||
spec:
|
spec:
|
||||||
endpoints:
|
endpoints:
|
||||||
- port: metrics
|
- port: metrics
|
||||||
interval: 30s
|
{{- with .Values.controller.metrics.serviceMonitor.interval }}
|
||||||
|
interval: {{ . }}
|
||||||
|
{{- end }}
|
||||||
path: /metrics
|
path: /metrics
|
||||||
namespaceSelector:
|
namespaceSelector:
|
||||||
matchNames:
|
matchNames:
|
||||||
|
|
|
@ -67,6 +67,9 @@ spec:
|
||||||
{{- if .Values.server.env }}
|
{{- if .Values.server.env }}
|
||||||
env:
|
env:
|
||||||
{{- toYaml .Values.server.env | nindent 8 }}
|
{{- toYaml .Values.server.env | nindent 8 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- with .Values.server.envFrom }}
|
||||||
|
envFrom: {{- toYaml . | nindent 8 }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
volumeMounts:
|
volumeMounts:
|
||||||
{{- if .Values.server.volumeMounts }}
|
{{- if .Values.server.volumeMounts }}
|
||||||
|
@ -80,6 +83,13 @@ spec:
|
||||||
- mountPath: /app/config/tls
|
- mountPath: /app/config/tls
|
||||||
name: tls-certs
|
name: tls-certs
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
- mountPath: /app/config/server/tls
|
||||||
|
name: argocd-repo-server-tls
|
||||||
|
{{- if .Values.configs.styles }}
|
||||||
|
- mountPath: "/shared/app/custom/custom.styles.css"
|
||||||
|
subPath: "custom.styles.css"
|
||||||
|
name: custom-styles
|
||||||
|
{{- end }}
|
||||||
ports:
|
ports:
|
||||||
- name: {{ .Values.server.name }}
|
- name: {{ .Values.server.name }}
|
||||||
containerPort: {{ .Values.server.containerPort }}
|
containerPort: {{ .Values.server.containerPort }}
|
||||||
|
@ -139,6 +149,11 @@ spec:
|
||||||
{{- end }}
|
{{- end }}
|
||||||
- emptyDir: {}
|
- emptyDir: {}
|
||||||
name: static-files
|
name: static-files
|
||||||
|
{{- if .Values.configs.styles }}
|
||||||
|
- configMap:
|
||||||
|
name: argocd-custom-styles
|
||||||
|
name: custom-styles
|
||||||
|
{{- end }}
|
||||||
{{- if .Values.configs.knownHosts }}
|
{{- if .Values.configs.knownHosts }}
|
||||||
- configMap:
|
- configMap:
|
||||||
name: argocd-ssh-known-hosts-cm
|
name: argocd-ssh-known-hosts-cm
|
||||||
|
@ -149,6 +164,17 @@ spec:
|
||||||
name: argocd-tls-certs-cm
|
name: argocd-tls-certs-cm
|
||||||
name: tls-certs
|
name: tls-certs
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
- name: argocd-repo-server-tls
|
||||||
|
secret:
|
||||||
|
items:
|
||||||
|
- key: tls.crt
|
||||||
|
path: tls.crt
|
||||||
|
- key: tls.key
|
||||||
|
path: tls.key
|
||||||
|
- key: ca.crt
|
||||||
|
path: ca.crt
|
||||||
|
optional: true
|
||||||
|
secretName: argocd-repo-server-tls
|
||||||
{{- if .Values.server.priorityClassName }}
|
{{- if .Values.server.priorityClassName }}
|
||||||
priorityClassName: {{ .Values.server.priorityClassName }}
|
priorityClassName: {{ .Values.server.priorityClassName }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
|
|
@ -3,11 +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 -}}
|
||||||
{{- if .Capabilities.APIVersions.Has "networking.k8s.io/v1beta1" }}
|
apiVersion: {{ include "argo-cd.ingress.apiVersion" . }}
|
||||||
apiVersion: networking.k8s.io/v1beta1
|
|
||||||
{{ else }}
|
|
||||||
apiVersion: extensions/v1beta1
|
|
||||||
{{ end -}}
|
|
||||||
kind: Ingress
|
kind: Ingress
|
||||||
metadata:
|
metadata:
|
||||||
{{- if .Values.server.ingressGrpc.annotations }}
|
{{- if .Values.server.ingressGrpc.annotations }}
|
||||||
|
@ -19,41 +15,74 @@ metadata:
|
||||||
name: {{ template "argo-cd.server.fullname" . }}-grpc
|
name: {{ template "argo-cd.server.fullname" . }}-grpc
|
||||||
labels:
|
labels:
|
||||||
{{- include "argo-cd.labels" (dict "context" . "component" .Values.server.name "name" .Values.server.name) | nindent 4 }}
|
{{- include "argo-cd.labels" (dict "context" . "component" .Values.server.name "name" .Values.server.name) | nindent 4 }}
|
||||||
{{- if .Values.server.ingressGrpc.labels }}
|
{{- if .Values.server.ingressGrpc.labels }}
|
||||||
{{- toYaml .Values.server.ingressGrpc.labels | nindent 4 }}
|
{{- toYaml .Values.server.ingressGrpc.labels | nindent 4 }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
spec:
|
spec:
|
||||||
|
{{- if eq (include "argo-cd.ingress.apiVersion" $) "networking.k8s.io/v1" }}
|
||||||
|
{{- with .Values.server.ingress.ingressClassName }}
|
||||||
|
ingressClassName: {{ . }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
rules:
|
rules:
|
||||||
{{- if .Values.server.ingressGrpc.hosts }}
|
{{- if .Values.server.ingressGrpc.hosts }}
|
||||||
{{- range $host := .Values.server.ingressGrpc.hosts }}
|
{{- range $host := .Values.server.ingressGrpc.hosts }}
|
||||||
- host: {{ $host }}
|
- host: {{ $host }}
|
||||||
http:
|
http:
|
||||||
paths:
|
paths:
|
||||||
{{- if $extraPaths }}
|
{{- if $extraPaths }}
|
||||||
{{- toYaml $extraPaths | nindent 10 }}
|
{{- toYaml $extraPaths | nindent 10 }}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
{{- range $p := $paths }}
|
{{- range $p := $paths }}
|
||||||
- path: {{ $p }}
|
- path: {{ $p }}
|
||||||
|
{{- if eq (include "argo-cd.ingress.apiVersion" $) "networking.k8s.io/v1" }}
|
||||||
|
pathType: Prefix
|
||||||
|
{{- end }}
|
||||||
backend:
|
backend:
|
||||||
|
{{- if eq (include "argo-cd.ingress.apiVersion" $) "networking.k8s.io/v1" }}
|
||||||
|
service:
|
||||||
|
name: {{ $serviceName }}
|
||||||
|
port:
|
||||||
|
{{- if kindIs "float64" $servicePort }}
|
||||||
|
number: {{ $servicePort }}
|
||||||
|
{{- else }}
|
||||||
|
name: {{ $servicePort }}
|
||||||
|
{{- end }}
|
||||||
|
{{- else }}
|
||||||
serviceName: {{ $serviceName }}
|
serviceName: {{ $serviceName }}
|
||||||
servicePort: {{ $servicePort }}
|
servicePort: {{ $servicePort }}
|
||||||
{{- end -}}
|
{{- end }}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
|
{{- end -}}
|
||||||
{{- else }}
|
{{- else }}
|
||||||
- http:
|
- http:
|
||||||
paths:
|
paths:
|
||||||
{{- if $extraPaths }}
|
{{- if $extraPaths }}
|
||||||
{{- toYaml $extraPaths | nindent 10 }}
|
{{- toYaml $extraPaths | nindent 10 }}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
{{- range $p := $paths }}
|
{{- range $p := $paths }}
|
||||||
- path: {{ $p }}
|
- path: {{ $p }}
|
||||||
|
{{- if eq (include "argo-cd.ingress.apiVersion" $) "networking.k8s.io/v1" }}
|
||||||
|
pathType: Prefix
|
||||||
|
{{- end }}
|
||||||
backend:
|
backend:
|
||||||
|
{{- if eq (include "argo-cd.ingress.apiVersion" $) "networking.k8s.io/v1" }}
|
||||||
|
service:
|
||||||
|
name: {{ $serviceName }}
|
||||||
|
port:
|
||||||
|
{{- if kindIs "float64" $servicePort }}
|
||||||
|
number: {{ $servicePort }}
|
||||||
|
{{- else }}
|
||||||
|
name: {{ $servicePort }}
|
||||||
|
{{- end }}
|
||||||
|
{{- else }}
|
||||||
serviceName: {{ $serviceName }}
|
serviceName: {{ $serviceName }}
|
||||||
servicePort: {{ $servicePort }}
|
servicePort: {{ $servicePort }}
|
||||||
{{- end -}}
|
{{- end }}
|
||||||
|
{{- end -}}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
{{- if .Values.server.ingressGrpc.tls }}
|
{{- if .Values.server.ingressGrpc.tls }}
|
||||||
tls:
|
tls:
|
||||||
{{- toYaml .Values.server.ingressGrpc.tls | nindent 4 }}
|
{{- toYaml .Values.server.ingressGrpc.tls | nindent 4 }}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
|
|
|
@ -3,11 +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 -}}
|
||||||
{{- if .Capabilities.APIVersions.Has "networking.k8s.io/v1beta1" }}
|
apiVersion: {{ include "argo-cd.ingress.apiVersion" . }}
|
||||||
apiVersion: networking.k8s.io/v1beta1
|
|
||||||
{{ else }}
|
|
||||||
apiVersion: extensions/v1beta1
|
|
||||||
{{ end -}}
|
|
||||||
kind: Ingress
|
kind: Ingress
|
||||||
metadata:
|
metadata:
|
||||||
{{- if .Values.server.ingress.annotations }}
|
{{- if .Values.server.ingress.annotations }}
|
||||||
|
@ -19,41 +15,74 @@ metadata:
|
||||||
name: {{ template "argo-cd.server.fullname" . }}
|
name: {{ template "argo-cd.server.fullname" . }}
|
||||||
labels:
|
labels:
|
||||||
{{- include "argo-cd.labels" (dict "context" . "component" .Values.server.name "name" .Values.server.name) | nindent 4 }}
|
{{- include "argo-cd.labels" (dict "context" . "component" .Values.server.name "name" .Values.server.name) | nindent 4 }}
|
||||||
{{- if .Values.server.ingress.labels }}
|
{{- if .Values.server.ingress.labels }}
|
||||||
{{- toYaml .Values.server.ingress.labels | nindent 4 }}
|
{{- toYaml .Values.server.ingress.labels | nindent 4 }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
spec:
|
spec:
|
||||||
|
{{- if eq (include "argo-cd.ingress.apiVersion" $) "networking.k8s.io/v1" }}
|
||||||
|
{{- with .Values.server.ingress.ingressClassName }}
|
||||||
|
ingressClassName: {{ . }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
rules:
|
rules:
|
||||||
{{- if .Values.server.ingress.hosts }}
|
{{- if .Values.server.ingress.hosts }}
|
||||||
{{- range $host := .Values.server.ingress.hosts }}
|
{{- range $host := .Values.server.ingress.hosts }}
|
||||||
- host: {{ $host }}
|
- host: {{ $host }}
|
||||||
http:
|
http:
|
||||||
paths:
|
paths:
|
||||||
{{- if $extraPaths }}
|
{{- if $extraPaths }}
|
||||||
{{- toYaml $extraPaths | nindent 10 }}
|
{{- toYaml $extraPaths | nindent 10 }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- range $p := $paths }}
|
{{- range $p := $paths }}
|
||||||
- path: {{ $p }}
|
- path: {{ $p }}
|
||||||
|
{{- if eq (include "argo-cd.ingress.apiVersion" $) "networking.k8s.io/v1" }}
|
||||||
|
pathType: Prefix
|
||||||
|
{{- end }}
|
||||||
backend:
|
backend:
|
||||||
|
{{- if eq (include "argo-cd.ingress.apiVersion" $) "networking.k8s.io/v1" }}
|
||||||
|
service:
|
||||||
|
name: {{ $serviceName }}
|
||||||
|
port:
|
||||||
|
{{- if kindIs "float64" $servicePort }}
|
||||||
|
number: {{ $servicePort }}
|
||||||
|
{{- else }}
|
||||||
|
name: {{ $servicePort }}
|
||||||
|
{{- end }}
|
||||||
|
{{- else }}
|
||||||
serviceName: {{ $serviceName }}
|
serviceName: {{ $serviceName }}
|
||||||
servicePort: {{ $servicePort }}
|
servicePort: {{ $servicePort }}
|
||||||
{{- end -}}
|
{{- end }}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
|
{{- end -}}
|
||||||
{{- else }}
|
{{- else }}
|
||||||
- http:
|
- http:
|
||||||
paths:
|
paths:
|
||||||
{{- if $extraPaths }}
|
{{- if $extraPaths }}
|
||||||
{{- toYaml $extraPaths | nindent 10 }}
|
{{- toYaml $extraPaths | nindent 10 }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- range $p := $paths }}
|
{{- range $p := $paths }}
|
||||||
- path: {{ $p }}
|
- path: {{ $p }}
|
||||||
|
{{- if eq (include "argo-cd.ingress.apiVersion" $) "networking.k8s.io/v1" }}
|
||||||
|
pathType: Prefix
|
||||||
|
{{- end }}
|
||||||
backend:
|
backend:
|
||||||
|
{{- if eq (include "argo-cd.ingress.apiVersion" $) "networking.k8s.io/v1" }}
|
||||||
|
service:
|
||||||
|
name: {{ $serviceName }}
|
||||||
|
port:
|
||||||
|
{{- if kindIs "float64" $servicePort }}
|
||||||
|
number: {{ $servicePort }}
|
||||||
|
{{- else }}
|
||||||
|
name: {{ $servicePort }}
|
||||||
|
{{- end }}
|
||||||
|
{{- else }}
|
||||||
serviceName: {{ $serviceName }}
|
serviceName: {{ $serviceName }}
|
||||||
servicePort: {{ $servicePort }}
|
servicePort: {{ $servicePort }}
|
||||||
{{- end -}}
|
{{- end }}
|
||||||
|
{{- end -}}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
{{- if .Values.server.ingress.tls }}
|
{{- if .Values.server.ingress.tls }}
|
||||||
tls:
|
tls:
|
||||||
{{- toYaml .Values.server.ingress.tls | nindent 4 }}
|
{{- toYaml .Values.server.ingress.tls | nindent 4 }}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
|
|
|
@ -44,3 +44,6 @@ spec:
|
||||||
{{ toYaml .Values.server.service.loadBalancerSourceRanges | indent 4 }}
|
{{ toYaml .Values.server.service.loadBalancerSourceRanges | indent 4 }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
|
{{- with .Values.server.service.externalTrafficPolicy }}
|
||||||
|
externalTrafficPolicy: {{ . }}
|
||||||
|
{{- end }}
|
||||||
|
|
|
@ -17,7 +17,9 @@ metadata:
|
||||||
spec:
|
spec:
|
||||||
endpoints:
|
endpoints:
|
||||||
- port: metrics
|
- port: metrics
|
||||||
interval: 30s
|
{{- with .Values.controller.metrics.serviceMonitor.interval }}
|
||||||
|
interval: {{ . }}
|
||||||
|
{{- end }}
|
||||||
path: /metrics
|
path: /metrics
|
||||||
namespaceSelector:
|
namespaceSelector:
|
||||||
matchNames:
|
matchNames:
|
||||||
|
|
|
@ -62,6 +62,9 @@ spec:
|
||||||
{{- if .Values.dex.env }}
|
{{- if .Values.dex.env }}
|
||||||
env:
|
env:
|
||||||
{{- toYaml .Values.dex.env | nindent 8 }}
|
{{- toYaml .Values.dex.env | nindent 8 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- with .Values.dex.envFrom }}
|
||||||
|
envFrom: {{- toYaml . | nindent 8 }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
ports:
|
ports:
|
||||||
- name: http
|
- name: http
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
{{- if .Values.dex.serviceAccount.create }}
|
{{- if and .Values.dex.enabled .Values.dex.serviceAccount.create }}
|
||||||
apiVersion: v1
|
apiVersion: v1
|
||||||
kind: ServiceAccount
|
kind: ServiceAccount
|
||||||
automountServiceAccountToken: {{ .Values.dex.serviceAccount.automountServiceAccountToken }}
|
automountServiceAccountToken: {{ .Values.dex.serviceAccount.automountServiceAccountToken }}
|
||||||
|
|
|
@ -17,7 +17,9 @@ metadata:
|
||||||
spec:
|
spec:
|
||||||
endpoints:
|
endpoints:
|
||||||
- port: metrics
|
- port: metrics
|
||||||
interval: 30s
|
{{- with .Values.controller.metrics.serviceMonitor.interval }}
|
||||||
|
interval: {{ . }}
|
||||||
|
{{- end }}
|
||||||
path: /metrics
|
path: /metrics
|
||||||
namespaceSelector:
|
namespaceSelector:
|
||||||
matchNames:
|
matchNames:
|
||||||
|
|
|
@ -41,14 +41,20 @@ spec:
|
||||||
- ""
|
- ""
|
||||||
- --appendonly
|
- --appendonly
|
||||||
- "no"
|
- "no"
|
||||||
|
{{- with .Values.redis.extraArgs }}
|
||||||
|
{{- . | toYaml | nindent 8 }}
|
||||||
|
{{- end }}
|
||||||
image: {{ .Values.redis.image.repository }}:{{ .Values.redis.image.tag }}
|
image: {{ .Values.redis.image.repository }}:{{ .Values.redis.image.tag }}
|
||||||
imagePullPolicy: {{ .Values.redis.image.imagePullPolicy}}
|
imagePullPolicy: {{ .Values.redis.image.imagePullPolicy}}
|
||||||
{{- if .Values.redis.containerSecurityContext }}
|
{{- if .Values.redis.containerSecurityContext }}
|
||||||
securityContext: {{- toYaml .Values.redis.containerSecurityContext | nindent 10 }}
|
securityContext: {{- toYaml .Values.redis.containerSecurityContext | nindent 10 }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- if .Values.redis.env }}
|
{{- if .Values.redis.env }}
|
||||||
env:
|
env:
|
||||||
{{- toYaml .Values.redis.env | nindent 8 }}
|
{{- toYaml .Values.redis.env | nindent 8 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- with .Values.redis.envFrom }}
|
||||||
|
envFrom: {{- toYaml . | nindent 8 }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
ports:
|
ports:
|
||||||
- containerPort: {{ .Values.redis.containerPort }}
|
- containerPort: {{ .Values.redis.containerPort }}
|
||||||
|
|
|
@ -9,8 +9,8 @@ installCRDs: true
|
||||||
|
|
||||||
global:
|
global:
|
||||||
image:
|
image:
|
||||||
repository: argoproj/argocd
|
repository: quay.io/argoproj/argocd
|
||||||
tag: v2.0.0
|
tag: v2.0.1
|
||||||
imagePullPolicy: IfNotPresent
|
imagePullPolicy: IfNotPresent
|
||||||
securityContext: {}
|
securityContext: {}
|
||||||
# runAsUser: 999
|
# runAsUser: 999
|
||||||
|
@ -27,8 +27,8 @@ controller:
|
||||||
name: application-controller
|
name: application-controller
|
||||||
|
|
||||||
image:
|
image:
|
||||||
repository: # argoproj/argocd
|
repository: # defaults to global.image.repository
|
||||||
tag: # v1.7.11
|
tag: # defaults to global.image.tag
|
||||||
imagePullPolicy: # IfNotPresent
|
imagePullPolicy: # IfNotPresent
|
||||||
|
|
||||||
# If changing the number of replicas you must pass the number as ARGOCD_CONTROLLER_REPLICAS as an environment variable
|
# If changing the number of replicas you must pass the number as ARGOCD_CONTROLLER_REPLICAS as an environment variable
|
||||||
|
@ -61,6 +61,14 @@ controller:
|
||||||
# - name: "ARGOCD_CONTROLLER_REPLICAS"
|
# - name: "ARGOCD_CONTROLLER_REPLICAS"
|
||||||
# value: ""
|
# value: ""
|
||||||
|
|
||||||
|
## envFrom to pass to argocd-controller
|
||||||
|
##
|
||||||
|
envFrom: []
|
||||||
|
# - configMapRef:
|
||||||
|
# name: config-map-name
|
||||||
|
# - secretRef:
|
||||||
|
# name: secret-name
|
||||||
|
|
||||||
## Annotations to be added to controller pods
|
## Annotations to be added to controller pods
|
||||||
##
|
##
|
||||||
podAnnotations: {}
|
podAnnotations: {}
|
||||||
|
@ -143,6 +151,7 @@ controller:
|
||||||
servicePort: 8082
|
servicePort: 8082
|
||||||
serviceMonitor:
|
serviceMonitor:
|
||||||
enabled: false
|
enabled: false
|
||||||
|
interval: 30s
|
||||||
# selector:
|
# selector:
|
||||||
# prometheus: kube-prometheus
|
# prometheus: kube-prometheus
|
||||||
# namespace: monitoring
|
# namespace: monitoring
|
||||||
|
@ -183,6 +192,13 @@ controller:
|
||||||
## Enable if you would like to grant rights to ArgoCD to deploy to the local Kubernetes cluster.
|
## Enable if you would like to grant rights to ArgoCD to deploy to the local Kubernetes cluster.
|
||||||
clusterAdminAccess:
|
clusterAdminAccess:
|
||||||
enabled: true
|
enabled: true
|
||||||
|
## Enable Custom Rules for the Application Controller's Cluster Role resource
|
||||||
|
## Enable this and set the rules: to whatever custom rules you want for the Cluster Role resource.
|
||||||
|
## Defaults to off
|
||||||
|
clusterRoleRules:
|
||||||
|
enabled: false
|
||||||
|
rules: []
|
||||||
|
|
||||||
|
|
||||||
## Dex
|
## Dex
|
||||||
dex:
|
dex:
|
||||||
|
@ -196,6 +212,7 @@ dex:
|
||||||
labels: {}
|
labels: {}
|
||||||
serviceMonitor:
|
serviceMonitor:
|
||||||
enabled: false
|
enabled: false
|
||||||
|
interval: 30s
|
||||||
|
|
||||||
image:
|
image:
|
||||||
repository: quay.io/dexidp/dex
|
repository: quay.io/dexidp/dex
|
||||||
|
@ -210,6 +227,13 @@ dex:
|
||||||
##
|
##
|
||||||
env: []
|
env: []
|
||||||
|
|
||||||
|
## envFrom to pass to the Dex server
|
||||||
|
envFrom: []
|
||||||
|
# - configMapRef:
|
||||||
|
# name: config-map-name
|
||||||
|
# - secretRef:
|
||||||
|
# name: secret-name
|
||||||
|
|
||||||
## Annotations to be added to the Dex server pods
|
## Annotations to be added to the Dex server pods
|
||||||
##
|
##
|
||||||
podAnnotations: {}
|
podAnnotations: {}
|
||||||
|
@ -276,9 +300,15 @@ redis:
|
||||||
|
|
||||||
image:
|
image:
|
||||||
repository: redis
|
repository: redis
|
||||||
tag: 5.0.10-alpine
|
tag: 6.2.2-alpine
|
||||||
imagePullPolicy: IfNotPresent
|
imagePullPolicy: IfNotPresent
|
||||||
|
|
||||||
|
## Additional command line arguments to pass to redis-server
|
||||||
|
##
|
||||||
|
extraArgs: []
|
||||||
|
# - --bind
|
||||||
|
# - "0.0.0.0"
|
||||||
|
|
||||||
containerPort: 6379
|
containerPort: 6379
|
||||||
servicePort: 6379
|
servicePort: 6379
|
||||||
|
|
||||||
|
@ -286,6 +316,14 @@ redis:
|
||||||
##
|
##
|
||||||
env: []
|
env: []
|
||||||
|
|
||||||
|
## envFrom to pass to the Redis server
|
||||||
|
##
|
||||||
|
envFrom: []
|
||||||
|
# - configMapRef:
|
||||||
|
# name: config-map-name
|
||||||
|
# - secretRef:
|
||||||
|
# name: secret-name
|
||||||
|
|
||||||
## Annotations to be added to the Redis server pods
|
## Annotations to be added to the Redis server pods
|
||||||
##
|
##
|
||||||
podAnnotations: {}
|
podAnnotations: {}
|
||||||
|
@ -347,7 +385,7 @@ redis-ha:
|
||||||
metrics:
|
metrics:
|
||||||
enabled: true
|
enabled: true
|
||||||
image:
|
image:
|
||||||
tag: 5.0.8-alpine
|
tag: 6.2.2-alpine
|
||||||
|
|
||||||
## Server
|
## Server
|
||||||
server:
|
server:
|
||||||
|
@ -363,8 +401,8 @@ server:
|
||||||
targetMemoryUtilizationPercentage: 50
|
targetMemoryUtilizationPercentage: 50
|
||||||
|
|
||||||
image:
|
image:
|
||||||
repository: # argoproj/argocd
|
repository: # defaults to global.image.repository
|
||||||
tag: # v1.7.11
|
tag: # defaults to global.image.tag
|
||||||
imagePullPolicy: # IfNotPresent
|
imagePullPolicy: # IfNotPresent
|
||||||
|
|
||||||
## Additional command line arguments to pass to argocd-server
|
## Additional command line arguments to pass to argocd-server
|
||||||
|
@ -376,6 +414,14 @@ server:
|
||||||
##
|
##
|
||||||
env: []
|
env: []
|
||||||
|
|
||||||
|
## envFrom to pass to argocd-server
|
||||||
|
##
|
||||||
|
envFrom: []
|
||||||
|
# - configMapRef:
|
||||||
|
# name: config-map-name
|
||||||
|
# - secretRef:
|
||||||
|
# name: secret-name
|
||||||
|
|
||||||
## Specify postStart and preStop lifecycle hooks for your argo-cd-server container
|
## Specify postStart and preStop lifecycle hooks for your argo-cd-server container
|
||||||
##
|
##
|
||||||
lifecycle: {}
|
lifecycle: {}
|
||||||
|
@ -466,6 +512,7 @@ server:
|
||||||
loadBalancerIP: ""
|
loadBalancerIP: ""
|
||||||
loadBalancerSourceRanges: []
|
loadBalancerSourceRanges: []
|
||||||
externalIPs: []
|
externalIPs: []
|
||||||
|
externalTrafficPolicy: ""
|
||||||
|
|
||||||
## Server metrics service configuration
|
## Server metrics service configuration
|
||||||
metrics:
|
metrics:
|
||||||
|
@ -476,6 +523,7 @@ server:
|
||||||
servicePort: 8083
|
servicePort: 8083
|
||||||
serviceMonitor:
|
serviceMonitor:
|
||||||
enabled: false
|
enabled: false
|
||||||
|
interval: 30s
|
||||||
# selector:
|
# selector:
|
||||||
# prometheus: kube-prometheus
|
# prometheus: kube-prometheus
|
||||||
# namespace: monitoring
|
# namespace: monitoring
|
||||||
|
@ -493,6 +541,7 @@ server:
|
||||||
enabled: false
|
enabled: false
|
||||||
annotations: {}
|
annotations: {}
|
||||||
labels: {}
|
labels: {}
|
||||||
|
ingressClassName: ""
|
||||||
|
|
||||||
## Argo Ingress.
|
## Argo Ingress.
|
||||||
## Hostnames must be provided if Ingress is enabled.
|
## Hostnames must be provided if Ingress is enabled.
|
||||||
|
@ -521,6 +570,7 @@ server:
|
||||||
enabled: false
|
enabled: false
|
||||||
annotations: {}
|
annotations: {}
|
||||||
labels: {}
|
labels: {}
|
||||||
|
ingressClassName: ""
|
||||||
|
|
||||||
## Argo Ingress.
|
## Argo Ingress.
|
||||||
## Hostnames must be provided if Ingress is enabled.
|
## Hostnames must be provided if Ingress is enabled.
|
||||||
|
@ -731,8 +781,8 @@ repoServer:
|
||||||
targetMemoryUtilizationPercentage: 50
|
targetMemoryUtilizationPercentage: 50
|
||||||
|
|
||||||
image:
|
image:
|
||||||
repository: # argoproj/argocd
|
repository: # defaults to global.image.repository
|
||||||
tag: # v1.7.11
|
tag: # defaults to global.image.tag
|
||||||
imagePullPolicy: # IfNotPresent
|
imagePullPolicy: # IfNotPresent
|
||||||
|
|
||||||
## Additional command line arguments to pass to argocd-repo-server
|
## Additional command line arguments to pass to argocd-repo-server
|
||||||
|
@ -743,6 +793,14 @@ repoServer:
|
||||||
##
|
##
|
||||||
env: []
|
env: []
|
||||||
|
|
||||||
|
## envFrom to pass to argocd-repo-server
|
||||||
|
##
|
||||||
|
envFrom: []
|
||||||
|
# - configMapRef:
|
||||||
|
# name: config-map-name
|
||||||
|
# - secretRef:
|
||||||
|
# name: secret-name
|
||||||
|
|
||||||
## Argo repoServer log format: text|json
|
## Argo repoServer log format: text|json
|
||||||
logFormat: text
|
logFormat: text
|
||||||
## Argo repoServer log level
|
## Argo repoServer log level
|
||||||
|
@ -822,6 +880,7 @@ repoServer:
|
||||||
servicePort: 8084
|
servicePort: 8084
|
||||||
serviceMonitor:
|
serviceMonitor:
|
||||||
enabled: false
|
enabled: false
|
||||||
|
interval: 30s
|
||||||
# selector:
|
# selector:
|
||||||
# prometheus: kube-prometheus
|
# prometheus: kube-prometheus
|
||||||
# namespace: monitoring
|
# namespace: monitoring
|
||||||
|
@ -872,6 +931,31 @@ repoServer:
|
||||||
|
|
||||||
## Argo Configs
|
## Argo Configs
|
||||||
configs:
|
configs:
|
||||||
|
## External Cluster Credentials
|
||||||
|
## reference:
|
||||||
|
## - https://argoproj.github.io/argo-cd/operator-manual/declarative-setup/#clusters
|
||||||
|
## - https://argoproj.github.io/argo-cd/operator-manual/security/#external-cluster-credentials
|
||||||
|
clusterCredentials: []
|
||||||
|
# - name: mycluster
|
||||||
|
# server: https://mycluster.com
|
||||||
|
# labels: {}
|
||||||
|
# annotations: {}
|
||||||
|
# config:
|
||||||
|
# bearerToken: "<authentication token>"
|
||||||
|
# tlsClientConfig:
|
||||||
|
# insecure: false
|
||||||
|
# caData: "<base64 encoded certificate>"
|
||||||
|
# - name: mycluster2
|
||||||
|
# server: https://mycluster2.com
|
||||||
|
# labels: {}
|
||||||
|
# annotations: {}
|
||||||
|
# namespaces: namespace1,namespace2
|
||||||
|
# config:
|
||||||
|
# bearerToken: "<authentication token>"
|
||||||
|
# tlsClientConfig:
|
||||||
|
# insecure: false
|
||||||
|
# caData: "<base64 encoded certificate>"
|
||||||
|
|
||||||
knownHostsAnnotations: {}
|
knownHostsAnnotations: {}
|
||||||
knownHosts:
|
knownHosts:
|
||||||
data:
|
data:
|
||||||
|
@ -975,9 +1059,16 @@ configs:
|
||||||
|
|
||||||
# Argo expects the password in the secret to be bcrypt hashed. You can create this hash with
|
# Argo expects the password in the secret to be bcrypt hashed. You can create this hash with
|
||||||
# `htpasswd -nbBC 10 "" $ARGO_PWD | tr -d ':\n' | sed 's/$2y/$2a/'`
|
# `htpasswd -nbBC 10 "" $ARGO_PWD | tr -d ':\n' | sed 's/$2y/$2a/'`
|
||||||
# argocdServerAdminPassword:
|
# argocdServerAdminPassword: ""
|
||||||
# Password modification time defaults to current time if not set
|
# Password modification time defaults to current time if not set
|
||||||
# argocdServerAdminPasswordMtime: "2006-01-02T15:04:05Z"
|
# argocdServerAdminPasswordMtime: "2006-01-02T15:04:05Z"
|
||||||
|
|
||||||
|
## Custom CSS Styles
|
||||||
|
## Reference: https://argo-cd.readthedocs.io/en/stable/operator-manual/custom-styles/
|
||||||
|
# styles: |
|
||||||
|
# .nav-bar {
|
||||||
|
# background: linear-gradient(to bottom, #999, #777, #333, #222, #111);
|
||||||
|
# }
|
||||||
|
|
||||||
openshift:
|
openshift:
|
||||||
enabled: false
|
enabled: false
|
||||||
|
|
|
@ -1,11 +0,0 @@
|
||||||
apiVersion: v1
|
|
||||||
description: A Helm chart for Argo-CI
|
|
||||||
name: argo-ci
|
|
||||||
version: 0.1.7
|
|
||||||
icon: https://raw.githubusercontent.com/argoproj/argo/master/docs/assets/argo.png
|
|
||||||
appVersion: v1.0.0-alpha2
|
|
||||||
home: https://github.com/argoproj/argo-helm
|
|
||||||
maintainers:
|
|
||||||
- name: alexec
|
|
||||||
- name: alexmt
|
|
||||||
- name: jessesuen
|
|
|
@ -1,3 +0,0 @@
|
||||||
# Argo CI Chart
|
|
||||||
|
|
||||||
This is a **community maintained** chart.
|
|
|
@ -1,6 +0,0 @@
|
||||||
dependencies:
|
|
||||||
- name: argo
|
|
||||||
repository: https://argoproj.github.io/argo-helm
|
|
||||||
version: 0.2.1
|
|
||||||
digest: sha256:af0f837200061b1720c0e05168dfc4a9537582f3004de62eeb5ef01b4c78db64
|
|
||||||
generated: 2018-10-23T14:50:47.570677461-07:00
|
|
|
@ -1,4 +0,0 @@
|
||||||
dependencies:
|
|
||||||
- name: argo
|
|
||||||
version: 0.2.1
|
|
||||||
repository: https://argoproj.github.io/argo-helm
|
|
|
@ -1,16 +0,0 @@
|
||||||
{{/* vim: set filetype=mustache: */}}
|
|
||||||
{{/*
|
|
||||||
Expand the name of the chart.
|
|
||||||
*/}}
|
|
||||||
{{- define "name" -}}
|
|
||||||
{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}}
|
|
||||||
{{- end -}}
|
|
||||||
|
|
||||||
{{/*
|
|
||||||
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).
|
|
||||||
*/}}
|
|
||||||
{{- define "fullname" -}}
|
|
||||||
{{- $name := default .Chart.Name .Values.nameOverride -}}
|
|
||||||
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}}
|
|
||||||
{{- end -}}
|
|
|
@ -1,39 +0,0 @@
|
||||||
apiVersion: apps/v1
|
|
||||||
kind: Deployment
|
|
||||||
metadata:
|
|
||||||
name: {{ .Release.Name }}-ci
|
|
||||||
labels:
|
|
||||||
chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
|
|
||||||
release: {{ .Release.Name }}
|
|
||||||
heritage: {{ .Release.Service }}
|
|
||||||
spec:
|
|
||||||
selector:
|
|
||||||
matchLabels:
|
|
||||||
app: {{ .Release.Name }}-ci
|
|
||||||
release: {{ .Release.Name }}
|
|
||||||
template:
|
|
||||||
metadata:
|
|
||||||
labels:
|
|
||||||
app: {{ .Release.Name }}-ci
|
|
||||||
release: {{ .Release.Name }}
|
|
||||||
spec:
|
|
||||||
containers:
|
|
||||||
- name: ci
|
|
||||||
image: "{{ .Values.imageNamespace }}/{{ .Values.ciImage }}:{{ .Values.imageTag }}"
|
|
||||||
imagePullPolicy: {{ .Values.imagePullPolicy }}
|
|
||||||
env:
|
|
||||||
- name: IN_CLUSTER
|
|
||||||
value: "true"
|
|
||||||
- name: NAMESPACE
|
|
||||||
value: {{ .Values.workflowNamespace }}
|
|
||||||
- name: ARGO_CI_IMAGE
|
|
||||||
value: "{{ .Values.imageNamespace }}/{{ .Values.ciImage }}:{{ .Values.imageTag }}"
|
|
||||||
- name: CONTROLLER_INSTANCE_ID
|
|
||||||
value: {{ .Release.Name }}
|
|
||||||
ports:
|
|
||||||
- containerPort: 8001
|
|
||||||
- containerPort: 8002
|
|
||||||
{{- with .Values.imagePullSecrets }}
|
|
||||||
imagePullSecrets:
|
|
||||||
{{- toYaml . | nindent 8 }}
|
|
||||||
{{- end }}
|
|
|
@ -1,17 +0,0 @@
|
||||||
apiVersion: v1
|
|
||||||
kind: Service
|
|
||||||
metadata:
|
|
||||||
name: {{ .Release.Name }}-ci
|
|
||||||
labels:
|
|
||||||
chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
|
|
||||||
release: {{ .Release.Name }}
|
|
||||||
heritage: {{ .Release.Service }}
|
|
||||||
spec:
|
|
||||||
ports:
|
|
||||||
- port: 80
|
|
||||||
protocol: TCP
|
|
||||||
targetPort: 8001
|
|
||||||
selector:
|
|
||||||
app: {{ .Release.Name }}-ci
|
|
||||||
sessionAffinity: None
|
|
||||||
type: LoadBalancer
|
|
|
@ -1,14 +0,0 @@
|
||||||
imageNamespace: argoproj
|
|
||||||
ciImage: argoci
|
|
||||||
imageTag: v1.0.0-alpha2
|
|
||||||
imagePullPolicy: Always
|
|
||||||
# Secrets with credentials to pull images from a private registry
|
|
||||||
imagePullSecrets: []
|
|
||||||
# - name: argo-pull-secret
|
|
||||||
workflowNamespace: default
|
|
||||||
|
|
||||||
argo:
|
|
||||||
imagesNamespace: argoproj
|
|
||||||
installMinio: true
|
|
||||||
minioBucketName: argo-artifacts
|
|
||||||
useReleaseAsInstanceID: true
|
|
|
@ -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.2.4
|
version: 1.4.2
|
||||||
keywords:
|
keywords:
|
||||||
- argo-events
|
- argo-events
|
||||||
- sensor-controller
|
- sensor-controller
|
||||||
|
@ -12,6 +12,6 @@ sources:
|
||||||
maintainers:
|
maintainers:
|
||||||
- name: VaibhavPage
|
- name: VaibhavPage
|
||||||
- name: whynowy
|
- name: whynowy
|
||||||
appVersion: 1.2.3
|
appVersion: 1.3.1
|
||||||
icon: https://raw.githubusercontent.com/argoproj/argo/master/docs/assets/argo.png
|
icon: https://raw.githubusercontent.com/argoproj/argo/master/docs/assets/argo.png
|
||||||
home: https://github.com/argoproj/argo-helm
|
home: https://github.com/argoproj/argo-helm
|
||||||
|
|
|
@ -1,6 +1,3 @@
|
||||||
serviceAccount: argo-events-sa-test
|
serviceAccount: argo-events-sa-test
|
||||||
additionalSaNamespaces:
|
|
||||||
- nsone
|
|
||||||
- nstwo
|
|
||||||
instanceID: test-argo-events
|
instanceID: test-argo-events
|
||||||
singleNamespace: false
|
singleNamespace: false
|
||||||
|
|
|
@ -47,10 +47,13 @@ rules:
|
||||||
- workflowtemplates/finalizers
|
- workflowtemplates/finalizers
|
||||||
- sensors
|
- sensors
|
||||||
- sensors/finalizers
|
- sensors/finalizers
|
||||||
|
- sensors/status
|
||||||
- eventsources
|
- eventsources
|
||||||
- eventsources/finalizers
|
- eventsources/finalizers
|
||||||
|
- eventsources/status
|
||||||
- eventbus
|
- eventbus
|
||||||
- eventbus/finalizers
|
- eventbus/finalizers
|
||||||
|
- eventbus/status
|
||||||
- apiGroups:
|
- apiGroups:
|
||||||
- ""
|
- ""
|
||||||
resources:
|
resources:
|
||||||
|
|
|
@ -49,10 +49,13 @@ rules:
|
||||||
- workflowtemplates/finalizers
|
- workflowtemplates/finalizers
|
||||||
- sensors
|
- sensors
|
||||||
- sensors/finalizers
|
- sensors/finalizers
|
||||||
|
- sensors/status
|
||||||
- eventsources
|
- eventsources
|
||||||
- eventsources/finalizers
|
- eventsources/finalizers
|
||||||
|
- eventsources/status
|
||||||
- eventbus
|
- eventbus
|
||||||
- eventbus/finalizers
|
- eventbus/finalizers
|
||||||
|
- eventbus/status
|
||||||
- apiGroups:
|
- apiGroups:
|
||||||
- ""
|
- ""
|
||||||
resources:
|
resources:
|
||||||
|
|
|
@ -18,6 +18,12 @@ spec:
|
||||||
labels:
|
labels:
|
||||||
app: {{ .Release.Name }}-{{ .Values.eventbusController.name }}
|
app: {{ .Release.Name }}-{{ .Values.eventbusController.name }}
|
||||||
release: {{ .Release.Name }}
|
release: {{ .Release.Name }}
|
||||||
|
{{- with .Values.eventbusController.podLabels }}
|
||||||
|
{{- tpl (toYaml .) $ | nindent 8 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- with .Values.eventbusController.podAnnotations }}
|
||||||
|
annotations: {{- toYaml . | nindent 8 }}
|
||||||
|
{{- end }}
|
||||||
spec:
|
spec:
|
||||||
serviceAccountName: {{ .Values.serviceAccount }}
|
serviceAccountName: {{ .Values.serviceAccount }}
|
||||||
containers:
|
containers:
|
||||||
|
@ -49,6 +55,9 @@ spec:
|
||||||
port: 8081
|
port: 8081
|
||||||
initialDelaySeconds: 3
|
initialDelaySeconds: 3
|
||||||
periodSeconds: 3
|
periodSeconds: 3
|
||||||
|
{{- with .Values.eventbusController.priorityClassName }}
|
||||||
|
priorityClassName: {{ . | quote }}
|
||||||
|
{{- end }}
|
||||||
{{- with .Values.securityContext }}
|
{{- with .Values.securityContext }}
|
||||||
securityContext: {{- toYaml . | nindent 8 }}
|
securityContext: {{- toYaml . | nindent 8 }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
|
|
@ -18,6 +18,12 @@ spec:
|
||||||
labels:
|
labels:
|
||||||
app: {{ .Release.Name }}-{{ .Values.eventsourceController.name }}
|
app: {{ .Release.Name }}-{{ .Values.eventsourceController.name }}
|
||||||
release: {{ .Release.Name }}
|
release: {{ .Release.Name }}
|
||||||
|
{{- with .Values.eventsourceController.podLabels }}
|
||||||
|
{{- tpl (toYaml .) $ | nindent 8 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- with .Values.eventsourceController.podAnnotations }}
|
||||||
|
annotations: {{- toYaml . | nindent 8 }}
|
||||||
|
{{- end }}
|
||||||
spec:
|
spec:
|
||||||
serviceAccountName: {{ .Values.serviceAccount }}
|
serviceAccountName: {{ .Values.serviceAccount }}
|
||||||
containers:
|
containers:
|
||||||
|
@ -47,6 +53,9 @@ spec:
|
||||||
port: 8081
|
port: 8081
|
||||||
initialDelaySeconds: 3
|
initialDelaySeconds: 3
|
||||||
periodSeconds: 3
|
periodSeconds: 3
|
||||||
|
{{- with .Values.eventsourceController.priorityClassName }}
|
||||||
|
priorityClassName: {{ . | quote }}
|
||||||
|
{{- end }}
|
||||||
{{- with .Values.securityContext }}
|
{{- with .Values.securityContext }}
|
||||||
securityContext: {{- toYaml . | nindent 8 }}
|
securityContext: {{- toYaml . | nindent 8 }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
|
|
@ -18,6 +18,12 @@ spec:
|
||||||
labels:
|
labels:
|
||||||
app: {{ .Release.Name }}-{{ .Values.sensorController.name }}
|
app: {{ .Release.Name }}-{{ .Values.sensorController.name }}
|
||||||
release: {{ .Release.Name }}
|
release: {{ .Release.Name }}
|
||||||
|
{{- with .Values.sensorController.podLabels }}
|
||||||
|
{{- tpl (toYaml .) $ | nindent 8 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- with .Values.sensorController.podAnnotations }}
|
||||||
|
annotations: {{- toYaml . | nindent 8 }}
|
||||||
|
{{- end }}
|
||||||
spec:
|
spec:
|
||||||
serviceAccountName: {{ .Values.serviceAccount }}
|
serviceAccountName: {{ .Values.serviceAccount }}
|
||||||
containers:
|
containers:
|
||||||
|
@ -47,6 +53,9 @@ spec:
|
||||||
port: 8081
|
port: 8081
|
||||||
initialDelaySeconds: 3
|
initialDelaySeconds: 3
|
||||||
periodSeconds: 3
|
periodSeconds: 3
|
||||||
|
{{- with .Values.sensorController.priorityClassName }}
|
||||||
|
priorityClassName: {{ . | quote }}
|
||||||
|
{{- end }}
|
||||||
{{- with .Values.securityContext }}
|
{{- with .Values.securityContext }}
|
||||||
securityContext: {{- toYaml . | nindent 8 }}
|
securityContext: {{- toYaml . | nindent 8 }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
|
|
@ -45,30 +45,39 @@ singleNamespace: true
|
||||||
sensorController:
|
sensorController:
|
||||||
name: sensor-controller
|
name: sensor-controller
|
||||||
image: sensor-controller
|
image: sensor-controller
|
||||||
tag: v1.2.3
|
tag: v1.3.1
|
||||||
replicaCount: 1
|
replicaCount: 1
|
||||||
sensorImage: sensor
|
sensorImage: sensor
|
||||||
|
podAnnotations: {}
|
||||||
nodeSelector: {}
|
nodeSelector: {}
|
||||||
tolerations: {}
|
podLabels: {}
|
||||||
|
priorityClassName: ""
|
||||||
|
tolerations: []
|
||||||
affinity: {}
|
affinity: {}
|
||||||
|
|
||||||
eventsourceController:
|
eventsourceController:
|
||||||
name: eventsource-controller
|
name: eventsource-controller
|
||||||
image: eventsource-controller
|
image: eventsource-controller
|
||||||
tag: v1.2.3
|
tag: v1.3.1
|
||||||
replicaCount: 1
|
replicaCount: 1
|
||||||
eventsourceImage: eventsource
|
eventsourceImage: eventsource
|
||||||
|
podAnnotations: {}
|
||||||
nodeSelector: {}
|
nodeSelector: {}
|
||||||
tolerations: {}
|
podLabels: {}
|
||||||
|
priorityClassName: ""
|
||||||
|
tolerations: []
|
||||||
affinity: {}
|
affinity: {}
|
||||||
|
|
||||||
eventbusController:
|
eventbusController:
|
||||||
name: eventbus-controller
|
name: eventbus-controller
|
||||||
image: eventbus-controller
|
image: eventbus-controller
|
||||||
tag: v1.2.3
|
tag: v1.3.1
|
||||||
replicaCount: 1
|
replicaCount: 1
|
||||||
|
podAnnotations: {}
|
||||||
nodeSelector: {}
|
nodeSelector: {}
|
||||||
tolerations: {}
|
podLabels: {}
|
||||||
|
priorityClassName: ""
|
||||||
|
tolerations: []
|
||||||
affinity: {}
|
affinity: {}
|
||||||
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
|
||||||
|
|
|
@ -2,7 +2,7 @@ apiVersion: v1
|
||||||
appVersion: "0.10.2"
|
appVersion: "0.10.2"
|
||||||
description: A Helm chart for Argo Rollouts
|
description: A Helm chart for Argo Rollouts
|
||||||
name: argo-rollouts
|
name: argo-rollouts
|
||||||
version: 0.5.0
|
version: 0.5.3
|
||||||
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:
|
||||||
|
|
|
@ -130,6 +130,7 @@ rules:
|
||||||
- networking.istio.io
|
- networking.istio.io
|
||||||
resources:
|
resources:
|
||||||
- virtualservices
|
- virtualservices
|
||||||
|
- destinationrules
|
||||||
verbs:
|
verbs:
|
||||||
- watch
|
- watch
|
||||||
- get
|
- get
|
||||||
|
|
|
@ -38,6 +38,10 @@ spec:
|
||||||
imagePullPolicy: {{ .Values.controller.image.pullPolicy }}
|
imagePullPolicy: {{ .Values.controller.image.pullPolicy }}
|
||||||
name: {{ .Values.controller.name }}
|
name: {{ .Values.controller.name }}
|
||||||
resources:
|
resources:
|
||||||
|
{{- toYaml .Values.controller.resources | nindent 10 }}
|
||||||
|
securityContext:
|
||||||
|
{{- toYaml .Values.securityContext | nindent 12 }}
|
||||||
|
resources:
|
||||||
{{- toYaml .Values.controller.resources | nindent 10 }}
|
{{- toYaml .Values.controller.resources | nindent 10 }}
|
||||||
{{- if .Values.controller.nodeSelector }}
|
{{- if .Values.controller.nodeSelector }}
|
||||||
nodeSelector:
|
nodeSelector:
|
||||||
|
|
|
@ -17,6 +17,7 @@ spec:
|
||||||
shortNames:
|
shortNames:
|
||||||
- ar
|
- ar
|
||||||
singular: analysisrun
|
singular: analysisrun
|
||||||
|
preserveUnknownFields: false
|
||||||
scope: Namespaced
|
scope: Namespaced
|
||||||
versions:
|
versions:
|
||||||
- additionalPrinterColumns:
|
- additionalPrinterColumns:
|
||||||
|
|
|
@ -17,6 +17,7 @@ spec:
|
||||||
shortNames:
|
shortNames:
|
||||||
- at
|
- at
|
||||||
singular: analysistemplate
|
singular: analysistemplate
|
||||||
|
preserveUnknownFields: false
|
||||||
scope: Namespaced
|
scope: Namespaced
|
||||||
versions:
|
versions:
|
||||||
- name: v1alpha1
|
- name: v1alpha1
|
||||||
|
|
|
@ -17,6 +17,7 @@ spec:
|
||||||
shortNames:
|
shortNames:
|
||||||
- cat
|
- cat
|
||||||
singular: clusteranalysistemplate
|
singular: clusteranalysistemplate
|
||||||
|
preserveUnknownFields: false
|
||||||
scope: Cluster
|
scope: Cluster
|
||||||
versions:
|
versions:
|
||||||
- name: v1alpha1
|
- name: v1alpha1
|
||||||
|
|
|
@ -17,6 +17,7 @@ spec:
|
||||||
shortNames:
|
shortNames:
|
||||||
- exp
|
- exp
|
||||||
singular: experiment
|
singular: experiment
|
||||||
|
preserveUnknownFields: false
|
||||||
scope: Namespaced
|
scope: Namespaced
|
||||||
versions:
|
versions:
|
||||||
- additionalPrinterColumns:
|
- additionalPrinterColumns:
|
||||||
|
|
|
@ -17,6 +17,7 @@ spec:
|
||||||
shortNames:
|
shortNames:
|
||||||
- ro
|
- ro
|
||||||
singular: rollout
|
singular: rollout
|
||||||
|
preserveUnknownFields: false
|
||||||
scope: Namespaced
|
scope: Namespaced
|
||||||
versions:
|
versions:
|
||||||
- additionalPrinterColumns:
|
- additionalPrinterColumns:
|
||||||
|
|
15
charts/argo-workflows/Chart.yaml
Normal file
15
charts/argo-workflows/Chart.yaml
Normal file
|
@ -0,0 +1,15 @@
|
||||||
|
apiVersion: v2
|
||||||
|
name: argo-workflows
|
||||||
|
description: A Helm chart for Argo Workflows
|
||||||
|
type: application
|
||||||
|
version: 0.1.2
|
||||||
|
appVersion: "v3.0.2"
|
||||||
|
icon: https://raw.githubusercontent.com/argoproj/argo-workflows/master/docs/assets/argo.png
|
||||||
|
home: https://github.com/argoproj/argo-helm
|
||||||
|
sources:
|
||||||
|
- https://github.com/argoproj/argo-workflows
|
||||||
|
maintainers:
|
||||||
|
- name: alexec
|
||||||
|
- name: alexmt
|
||||||
|
- name: jessesuen
|
||||||
|
- name: benjaminws
|
48
charts/argo-workflows/README.md
Normal file
48
charts/argo-workflows/README.md
Normal file
|
@ -0,0 +1,48 @@
|
||||||
|
# Argo Workflows Chart
|
||||||
|
|
||||||
|
This is a **community maintained** chart. It is used to set up argo and it's needed dependencies through one command. This is used in conjunction with [helm](https://github.com/kubernetes/helm).
|
||||||
|
|
||||||
|
If you want your deployment of this helm chart to most closely match the [argo CLI](https://github.com/argoproj/argo-workflows), you should deploy it in the `kube-system` namespace.
|
||||||
|
|
||||||
|
## Pre-Requisites
|
||||||
|
|
||||||
|
This chart uses an install hook to configure the CRD definition. Installation of CRDs is a somewhat privileged process in itself and in RBAC enabled clusters the `default` service account for namespaces does not typically have the ability to do create these.
|
||||||
|
|
||||||
|
A few options are:
|
||||||
|
|
||||||
|
- Manually create a ServiceAccount in the Namespace which your release will be deployed w/ appropriate bindings to perform this action and set the `init.serviceAccount` attribute
|
||||||
|
- Augment the `default` ServiceAccount permissions in the Namespace in which your Release is deployed to have the appropriate permissions
|
||||||
|
|
||||||
|
## Usage Notes
|
||||||
|
|
||||||
|
This chart defaults to setting the `controller.instanceID.enabled` to `false` now, which means the deployed controller will act upon any workflow deployed to the cluster. If you would like to limit the behavior and deploy multiple workflow controllers, please use the `controller.instanceID.enabled` attribute along with one of it's configuration options to set the `instanceID` of the workflow controller to be properly scoped for your needs.
|
||||||
|
|
||||||
|
## Values
|
||||||
|
|
||||||
|
The `values.yaml` contains items used to tweak a deployment of this chart.
|
||||||
|
Fields to note:
|
||||||
|
|
||||||
|
- `controller.instanceID.enabled`: If set to true, the Argo Controller will **ONLY** monitor Workflow submissions with a `--instanceid` attribute
|
||||||
|
- `controller.instanceID.useReleaseName`: If set to true then chart set controller instance id to release name
|
||||||
|
- `controller.instanceID.explicitID`: Allows customization of an instance id for the workflow controller to monitor
|
||||||
|
- `controller.workflowNamespaces`: This is a list of namespaces where workflows will be ran
|
||||||
|
|
||||||
|
## Breaking changes from the deprecated `argo` chart
|
||||||
|
|
||||||
|
1. the `installCRD` value has been removed. CRDs are now only installed from the conventional crds/ directory
|
||||||
|
1. the CRDs were updated to `apiextensions.k8s.io/v1`
|
||||||
|
1. the container image registry/project/tag format was changed to be more in line with the more common
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
image:
|
||||||
|
registry: quay.io
|
||||||
|
repository: argoproj/argocli
|
||||||
|
tag: v3.0.1
|
||||||
|
```
|
||||||
|
|
||||||
|
this also makes it easier for automatic update tooling (eg. renovate bot) to detect and update images.
|
||||||
|
|
||||||
|
1. switched to quay.io as the default registry for all images
|
||||||
|
1. removed any included usage of Minio
|
||||||
|
1. aligned the configuration of serviceAccounts with the argo-cd chart, ie: what used to be `server.createServiceAccount` is now `server.serviceAccount.create`
|
||||||
|
1. moved the previously known as `telemetryServicePort` inside the `telemetryConfig` as `telemetryConfig.servicePort` - same for `metricsConfig`
|
5
charts/argo-workflows/ci/enable-ingress-values.yaml
Normal file
5
charts/argo-workflows/ci/enable-ingress-values.yaml
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
server:
|
||||||
|
ingress:
|
||||||
|
enabled: true
|
||||||
|
hosts:
|
||||||
|
- argo-workflows.127.0.0.1.xip.io
|
7
charts/argo-workflows/ci/enable-metrics-values.yaml
Normal file
7
charts/argo-workflows/ci/enable-metrics-values.yaml
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
controller:
|
||||||
|
serviceMonitor:
|
||||||
|
enabled: false
|
||||||
|
metricsConfig:
|
||||||
|
enabled: true
|
||||||
|
telemetryConfig:
|
||||||
|
enabled: true
|
5
charts/argo-workflows/ci/enable-rbac-values.yaml
Normal file
5
charts/argo-workflows/ci/enable-rbac-values.yaml
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
workflow:
|
||||||
|
serviceAccount:
|
||||||
|
create: true # Specifies whether a service account should be created
|
||||||
|
rbac:
|
||||||
|
create: true # adds Role and RoleBinding for the above specified service account to be able to run workflows
|
|
@ -1,14 +1,9 @@
|
||||||
apiVersion: apiextensions.k8s.io/v1beta1
|
apiVersion: apiextensions.k8s.io/v1
|
||||||
kind: CustomResourceDefinition
|
kind: CustomResourceDefinition
|
||||||
metadata:
|
metadata:
|
||||||
name: clusterworkflowtemplates.argoproj.io
|
name: clusterworkflowtemplates.argoproj.io
|
||||||
annotations:
|
|
||||||
helm.sh/hook: crd-install
|
|
||||||
helm.sh/hook-delete-policy: before-hook-creation
|
|
||||||
spec:
|
spec:
|
||||||
group: argoproj.io
|
group: argoproj.io
|
||||||
version: v1alpha1
|
|
||||||
scope: Cluster
|
|
||||||
names:
|
names:
|
||||||
kind: ClusterWorkflowTemplate
|
kind: ClusterWorkflowTemplate
|
||||||
listKind: ClusterWorkflowTemplateList
|
listKind: ClusterWorkflowTemplateList
|
||||||
|
@ -17,7 +12,24 @@ spec:
|
||||||
- clusterwftmpl
|
- clusterwftmpl
|
||||||
- cwft
|
- cwft
|
||||||
singular: clusterworkflowtemplate
|
singular: clusterworkflowtemplate
|
||||||
|
scope: Cluster
|
||||||
versions:
|
versions:
|
||||||
- name: v1alpha1
|
- name: v1alpha1
|
||||||
|
schema:
|
||||||
|
openAPIV3Schema:
|
||||||
|
properties:
|
||||||
|
apiVersion:
|
||||||
|
type: string
|
||||||
|
kind:
|
||||||
|
type: string
|
||||||
|
metadata:
|
||||||
|
type: object
|
||||||
|
spec:
|
||||||
|
type: object
|
||||||
|
x-kubernetes-preserve-unknown-fields: true
|
||||||
|
required:
|
||||||
|
- metadata
|
||||||
|
- spec
|
||||||
|
type: object
|
||||||
served: true
|
served: true
|
||||||
storage: true
|
storage: true
|
38
charts/argo-workflows/crds/argoproj.io_cronworkflows.yaml
Normal file
38
charts/argo-workflows/crds/argoproj.io_cronworkflows.yaml
Normal file
|
@ -0,0 +1,38 @@
|
||||||
|
apiVersion: apiextensions.k8s.io/v1
|
||||||
|
kind: CustomResourceDefinition
|
||||||
|
metadata:
|
||||||
|
name: cronworkflows.argoproj.io
|
||||||
|
spec:
|
||||||
|
group: argoproj.io
|
||||||
|
names:
|
||||||
|
kind: CronWorkflow
|
||||||
|
listKind: CronWorkflowList
|
||||||
|
plural: cronworkflows
|
||||||
|
shortNames:
|
||||||
|
- cwf
|
||||||
|
- cronwf
|
||||||
|
singular: cronworkflow
|
||||||
|
scope: Namespaced
|
||||||
|
versions:
|
||||||
|
- name: v1alpha1
|
||||||
|
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
|
||||||
|
served: true
|
||||||
|
storage: true
|
|
@ -0,0 +1,34 @@
|
||||||
|
apiVersion: apiextensions.k8s.io/v1
|
||||||
|
kind: CustomResourceDefinition
|
||||||
|
metadata:
|
||||||
|
name: workfloweventbindings.argoproj.io
|
||||||
|
spec:
|
||||||
|
group: argoproj.io
|
||||||
|
names:
|
||||||
|
kind: WorkflowEventBinding
|
||||||
|
listKind: WorkflowEventBindingList
|
||||||
|
plural: workfloweventbindings
|
||||||
|
shortNames:
|
||||||
|
- wfeb
|
||||||
|
singular: workfloweventbinding
|
||||||
|
scope: Namespaced
|
||||||
|
versions:
|
||||||
|
- name: v1alpha1
|
||||||
|
schema:
|
||||||
|
openAPIV3Schema:
|
||||||
|
properties:
|
||||||
|
apiVersion:
|
||||||
|
type: string
|
||||||
|
kind:
|
||||||
|
type: string
|
||||||
|
metadata:
|
||||||
|
type: object
|
||||||
|
spec:
|
||||||
|
type: object
|
||||||
|
x-kubernetes-preserve-unknown-fields: true
|
||||||
|
required:
|
||||||
|
- metadata
|
||||||
|
- spec
|
||||||
|
type: object
|
||||||
|
served: true
|
||||||
|
storage: true
|
48
charts/argo-workflows/crds/argoproj.io_workflows.yaml
Normal file
48
charts/argo-workflows/crds/argoproj.io_workflows.yaml
Normal file
|
@ -0,0 +1,48 @@
|
||||||
|
apiVersion: apiextensions.k8s.io/v1
|
||||||
|
kind: CustomResourceDefinition
|
||||||
|
metadata:
|
||||||
|
name: workflows.argoproj.io
|
||||||
|
spec:
|
||||||
|
group: argoproj.io
|
||||||
|
names:
|
||||||
|
kind: Workflow
|
||||||
|
listKind: WorkflowList
|
||||||
|
plural: workflows
|
||||||
|
shortNames:
|
||||||
|
- wf
|
||||||
|
singular: workflow
|
||||||
|
scope: Namespaced
|
||||||
|
versions:
|
||||||
|
- additionalPrinterColumns:
|
||||||
|
- description: Status of the workflow
|
||||||
|
jsonPath: .status.phase
|
||||||
|
name: Status
|
||||||
|
type: string
|
||||||
|
- description: When the workflow was started
|
||||||
|
format: date-time
|
||||||
|
jsonPath: .status.startedAt
|
||||||
|
name: Age
|
||||||
|
type: date
|
||||||
|
name: v1alpha1
|
||||||
|
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
|
||||||
|
served: true
|
||||||
|
storage: true
|
||||||
|
subresources: {}
|
|
@ -0,0 +1,34 @@
|
||||||
|
apiVersion: apiextensions.k8s.io/v1
|
||||||
|
kind: CustomResourceDefinition
|
||||||
|
metadata:
|
||||||
|
name: workflowtemplates.argoproj.io
|
||||||
|
spec:
|
||||||
|
group: argoproj.io
|
||||||
|
names:
|
||||||
|
kind: WorkflowTemplate
|
||||||
|
listKind: WorkflowTemplateList
|
||||||
|
plural: workflowtemplates
|
||||||
|
shortNames:
|
||||||
|
- wftmpl
|
||||||
|
singular: workflowtemplate
|
||||||
|
scope: Namespaced
|
||||||
|
versions:
|
||||||
|
- name: v1alpha1
|
||||||
|
schema:
|
||||||
|
openAPIV3Schema:
|
||||||
|
properties:
|
||||||
|
apiVersion:
|
||||||
|
type: string
|
||||||
|
kind:
|
||||||
|
type: string
|
||||||
|
metadata:
|
||||||
|
type: object
|
||||||
|
spec:
|
||||||
|
type: object
|
||||||
|
x-kubernetes-preserve-unknown-fields: true
|
||||||
|
required:
|
||||||
|
- metadata
|
||||||
|
- spec
|
||||||
|
type: object
|
||||||
|
served: true
|
||||||
|
storage: true
|
7
charts/argo-workflows/templates/NOTES.txt
Normal file
7
charts/argo-workflows/templates/NOTES.txt
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
1. Get Argo Server external IP/domain by running:
|
||||||
|
|
||||||
|
kubectl --namespace {{ .Release.Namespace }} get services -o wide | grep {{ .Release.Name }}-{{ .Values.server.name }}
|
||||||
|
|
||||||
|
2. Submit the hello-world workflow by running:
|
||||||
|
|
||||||
|
argo submit https://raw.githubusercontent.com/argoproj/argo-workflows/master/examples/hello-world.yaml --watch
|
96
charts/argo-workflows/templates/_helpers.tpl
Normal file
96
charts/argo-workflows/templates/_helpers.tpl
Normal file
|
@ -0,0 +1,96 @@
|
||||||
|
{{/* vim: set filetype=mustache: */}}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Create argo workflows server name and version as used by the chart label.
|
||||||
|
*/}}
|
||||||
|
{{- define "argo-workflows.server.fullname" -}}
|
||||||
|
{{- printf "%s-%s" (include "argo-workflows.fullname" .) .Values.server.name | trunc 63 | trimSuffix "-" -}}
|
||||||
|
{{- end -}}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Create controller name and version as used by the chart label.
|
||||||
|
*/}}
|
||||||
|
{{- define "argo-workflows.controller.fullname" -}}
|
||||||
|
{{- printf "%s-%s" (include "argo-workflows.fullname" .) .Values.controller.name | trunc 63 | trimSuffix "-" -}}
|
||||||
|
{{- end -}}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Expand the name of the chart.
|
||||||
|
*/}}
|
||||||
|
{{- define "argo-workflows.name" -}}
|
||||||
|
{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
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).
|
||||||
|
*/}}
|
||||||
|
{{- define "argo-workflows.fullname" -}}
|
||||||
|
{{- $name := default .Chart.Name .Values.nameOverride -}}
|
||||||
|
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}}
|
||||||
|
{{- end -}}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Create chart name and version as used by the chart label.
|
||||||
|
*/}}
|
||||||
|
{{- define "argo-workflows.chart" -}}
|
||||||
|
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}}
|
||||||
|
{{- end -}}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Common labels
|
||||||
|
*/}}
|
||||||
|
{{- define "argo-workflows.labels" -}}
|
||||||
|
helm.sh/chart: {{ include "argo-workflows.chart" .context }}
|
||||||
|
{{ include "argo-workflows.selectorLabels" (dict "context" .context "component" .component "name" .name) }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .context.Release.Service }}
|
||||||
|
app.kubernetes.io/part-of: argo-workflows
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Selector labels
|
||||||
|
*/}}
|
||||||
|
{{- define "argo-workflows.selectorLabels" -}}
|
||||||
|
{{- if .name -}}
|
||||||
|
app.kubernetes.io/name: {{ include "argo-workflows.name" .context }}-{{ .name }}
|
||||||
|
{{ end -}}
|
||||||
|
app.kubernetes.io/instance: {{ .context.Release.Name }}
|
||||||
|
{{- if .component }}
|
||||||
|
app.kubernetes.io/component: {{ .component }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Create the name of the server service account to use
|
||||||
|
*/}}
|
||||||
|
{{- define "argo-workflows.serverServiceAccountName" -}}
|
||||||
|
{{- if .Values.server.serviceAccount.create -}}
|
||||||
|
{{ default (include "argo-workflows.fullname" .) .Values.server.serviceAccount.name }}
|
||||||
|
{{- else -}}
|
||||||
|
{{ default "default" .Values.server.serviceAccount.name }}
|
||||||
|
{{- end -}}
|
||||||
|
{{- end -}}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Create the name of the controller service account to use
|
||||||
|
*/}}
|
||||||
|
{{- define "argo-workflows.controllerServiceAccountName" -}}
|
||||||
|
{{- if .Values.controller.serviceAccount.create -}}
|
||||||
|
{{ default (include "argo-workflows.fullname" .) .Values.controller.serviceAccount.name }}
|
||||||
|
{{- else -}}
|
||||||
|
{{ default "default" .Values.controller.serviceAccount.name }}
|
||||||
|
{{- end -}}
|
||||||
|
{{- end -}}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Return the appropriate apiVersion for ingress
|
||||||
|
*/}}
|
||||||
|
{{- define "argo-workflows.ingress.apiVersion" -}}
|
||||||
|
{{- if semverCompare "<1.14-0" .Capabilities.KubeVersion.Version -}}
|
||||||
|
{{- print "extensions/v1beta1" -}}
|
||||||
|
{{- else if semverCompare "<1.19-0" .Capabilities.KubeVersion.Version -}}
|
||||||
|
{{- print "networking.k8s.io/v1beta1" -}}
|
||||||
|
{{- else -}}
|
||||||
|
{{- print "networking.k8s.io/v1" -}}
|
||||||
|
{{- end -}}
|
||||||
|
{{- end -}}
|
|
@ -5,7 +5,7 @@ metadata:
|
||||||
annotations:
|
annotations:
|
||||||
helm.sh/hook: pre-install
|
helm.sh/hook: pre-install
|
||||||
helm.sh/hook-delete-policy: before-hook-creation
|
helm.sh/hook-delete-policy: before-hook-creation
|
||||||
name: argo-aggregate-to-view
|
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:
|
||||||
|
@ -14,6 +14,8 @@ rules:
|
||||||
resources:
|
resources:
|
||||||
- workflows
|
- workflows
|
||||||
- workflows/finalizers
|
- workflows/finalizers
|
||||||
|
- workfloweventbindings
|
||||||
|
- workfloweventbindings/finalizers
|
||||||
- workflowtemplates
|
- workflowtemplates
|
||||||
- workflowtemplates/finalizers
|
- workflowtemplates/finalizers
|
||||||
- cronworkflows
|
- cronworkflows
|
||||||
|
@ -31,7 +33,7 @@ metadata:
|
||||||
annotations:
|
annotations:
|
||||||
helm.sh/hook: pre-install
|
helm.sh/hook: pre-install
|
||||||
helm.sh/hook-delete-policy: before-hook-creation
|
helm.sh/hook-delete-policy: before-hook-creation
|
||||||
name: argo-aggregate-to-edit
|
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:
|
||||||
|
@ -40,6 +42,8 @@ rules:
|
||||||
resources:
|
resources:
|
||||||
- workflows
|
- workflows
|
||||||
- workflows/finalizers
|
- workflows/finalizers
|
||||||
|
- workfloweventbindings
|
||||||
|
- workfloweventbindings/finalizers
|
||||||
- workflowtemplates
|
- workflowtemplates
|
||||||
- workflowtemplates/finalizers
|
- workflowtemplates/finalizers
|
||||||
- cronworkflows
|
- cronworkflows
|
||||||
|
@ -62,7 +66,7 @@ metadata:
|
||||||
annotations:
|
annotations:
|
||||||
helm.sh/hook: pre-install
|
helm.sh/hook: pre-install
|
||||||
helm.sh/hook-delete-policy: before-hook-creation
|
helm.sh/hook-delete-policy: before-hook-creation
|
||||||
name: argo-aggregate-to-admin
|
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:
|
||||||
|
@ -71,6 +75,8 @@ rules:
|
||||||
resources:
|
resources:
|
||||||
- workflows
|
- workflows
|
||||||
- workflows/finalizers
|
- workflows/finalizers
|
||||||
|
- workfloweventbindings
|
||||||
|
- workfloweventbindings/finalizers
|
||||||
- workflowtemplates
|
- workflowtemplates
|
||||||
- workflowtemplates/finalizers
|
- workflowtemplates/finalizers
|
||||||
- cronworkflows
|
- cronworkflows
|
|
@ -5,7 +5,9 @@ kind: Role
|
||||||
kind: ClusterRole
|
kind: ClusterRole
|
||||||
{{- end }}
|
{{- end }}
|
||||||
metadata:
|
metadata:
|
||||||
name: {{ .Release.Name }}-{{ .Values.controller.name }}
|
name: {{ template "argo-workflows.controller.fullname" . }}
|
||||||
|
labels:
|
||||||
|
{{- include "argo-workflows.labels" (dict "context" . "component" .Values.controller.name "name" .Values.controller.name) | nindent 4 }}
|
||||||
rules:
|
rules:
|
||||||
- apiGroups:
|
- apiGroups:
|
||||||
- ""
|
- ""
|
||||||
|
@ -128,7 +130,6 @@ rules:
|
||||||
- patch
|
- patch
|
||||||
- delete
|
- delete
|
||||||
|
|
||||||
{{- if not .Values.singleNamespace }}
|
|
||||||
---
|
---
|
||||||
apiVersion: rbac.authorization.k8s.io/v1
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
kind: ClusterRole
|
kind: ClusterRole
|
||||||
|
@ -144,4 +145,3 @@ rules:
|
||||||
- get
|
- get
|
||||||
- list
|
- list
|
||||||
- watch
|
- watch
|
||||||
{{- end }}
|
|
|
@ -1,11 +1,9 @@
|
||||||
apiVersion: v1
|
apiVersion: v1
|
||||||
kind: ConfigMap
|
kind: ConfigMap
|
||||||
metadata:
|
metadata:
|
||||||
name: {{ .Release.Name }}-{{ .Values.controller.name }}-configmap
|
name: {{ template "argo-workflows.controller.fullname" . }}-configmap
|
||||||
labels:
|
labels:
|
||||||
chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
|
{{- include "argo-workflows.labels" (dict "context" . "component" .Values.controller.name "name" "cm") | nindent 4 }}
|
||||||
release: {{ .Release.Name }}
|
|
||||||
heritage: {{ .Release.Service }}
|
|
||||||
data:
|
data:
|
||||||
config: |
|
config: |
|
||||||
{{- if .Values.controller.instanceID.enabled }}
|
{{- if .Values.controller.instanceID.enabled }}
|
||||||
|
@ -31,7 +29,7 @@ data:
|
||||||
securityContext: {{- toYaml . | nindent 8 }}
|
securityContext: {{- toYaml . | nindent 8 }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- if or .Values.minio.install .Values.useDefaultArtifactRepo }}
|
{{- if .Values.useDefaultArtifactRepo }}
|
||||||
artifactRepository:
|
artifactRepository:
|
||||||
{{- if .Values.artifactRepository.archiveLogs }}
|
{{- if .Values.artifactRepository.archiveLogs }}
|
||||||
archiveLogs: {{ .Values.artifactRepository.archiveLogs }}
|
archiveLogs: {{ .Values.artifactRepository.archiveLogs }}
|
||||||
|
@ -44,13 +42,13 @@ data:
|
||||||
{{- if .Values.useStaticCredentials }}
|
{{- if .Values.useStaticCredentials }}
|
||||||
accessKeySecret:
|
accessKeySecret:
|
||||||
key: {{ .Values.artifactRepository.s3.accessKeySecret.key }}
|
key: {{ .Values.artifactRepository.s3.accessKeySecret.key }}
|
||||||
name: {{ .Values.artifactRepository.s3.accessKeySecret.name | default (printf "%s-%s" .Release.Name "minio") }}
|
name: {{ .Values.artifactRepository.s3.accessKeySecret.name }}
|
||||||
secretKeySecret:
|
secretKeySecret:
|
||||||
key: {{ .Values.artifactRepository.s3.secretKeySecret.key }}
|
key: {{ .Values.artifactRepository.s3.secretKeySecret.key }}
|
||||||
name: {{ .Values.artifactRepository.s3.secretKeySecret.name | default (printf "%s-%s" .Release.Name "minio") }}
|
name: {{ .Values.artifactRepository.s3.secretKeySecret.name }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
bucket: {{ .Values.artifactRepository.s3.bucket | default .Values.minio.defaultBucket.name }}
|
bucket: {{ .Values.artifactRepository.s3.bucket }}
|
||||||
endpoint: {{ .Values.artifactRepository.s3.endpoint | default (printf "%s-%s" .Release.Name "minio:9000") }}
|
endpoint: {{ .Values.artifactRepository.s3.endpoint }}
|
||||||
insecure: {{ .Values.artifactRepository.s3.insecure }}
|
insecure: {{ .Values.artifactRepository.s3.insecure }}
|
||||||
{{- if .Values.artifactRepository.s3.keyFormat }}
|
{{- if .Values.artifactRepository.s3.keyFormat }}
|
||||||
keyFormat: {{ .Values.artifactRepository.s3.keyFormat | quote }}
|
keyFormat: {{ .Values.artifactRepository.s3.keyFormat | quote }}
|
|
@ -5,7 +5,9 @@ kind: RoleBinding
|
||||||
kind: ClusterRoleBinding
|
kind: ClusterRoleBinding
|
||||||
{{- end }}
|
{{- end }}
|
||||||
metadata:
|
metadata:
|
||||||
name: {{ .Release.Name }}-{{ .Values.controller.name }}
|
name: {{ template "argo-workflows.controller.fullname" . }}
|
||||||
|
labels:
|
||||||
|
{{- include "argo-workflows.labels" (dict "context" . "component" .Values.controller.name "name" .Values.controller.name) | nindent 4 }}
|
||||||
roleRef:
|
roleRef:
|
||||||
apiGroup: rbac.authorization.k8s.io
|
apiGroup: rbac.authorization.k8s.io
|
||||||
{{- if .Values.singleNamespace }}
|
{{- if .Values.singleNamespace }}
|
||||||
|
@ -13,13 +15,13 @@ roleRef:
|
||||||
{{ else }}
|
{{ else }}
|
||||||
kind: ClusterRole
|
kind: ClusterRole
|
||||||
{{- end }}
|
{{- end }}
|
||||||
name: {{ .Release.Name }}-{{ .Values.controller.name }}
|
name: {{ template "argo-workflows.controller.fullname" . }}
|
||||||
subjects:
|
subjects:
|
||||||
- kind: ServiceAccount
|
- kind: ServiceAccount
|
||||||
name: {{ .Values.controller.serviceAccount }}
|
name: {{ template "argo-workflows.controllerServiceAccountName" . }}
|
||||||
namespace: {{ .Release.Namespace }}
|
namespace: {{ .Release.Namespace }}
|
||||||
{{- if .Values.controller.workflowNamespaces }}
|
{{- if .Values.controller.workflowNamespaces }}
|
||||||
{{- $uiServiceAccount := .Values.controller.serviceAccount }}
|
{{- $uiServiceAccount := (include "argo-workflows.controllerServiceAccountName" .) }}
|
||||||
{{- $namespace := .Release.Namespace }}
|
{{- $namespace := .Release.Namespace }}
|
||||||
{{- range $key := .Values.controller.workflowNamespaces }}
|
{{- range $key := .Values.controller.workflowNamespaces }}
|
||||||
{{- if not (eq $key $namespace) }}
|
{{- if not (eq $key $namespace) }}
|
||||||
|
@ -30,18 +32,18 @@ subjects:
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
|
||||||
{{- if not .Values.singleNamespace }}
|
|
||||||
---
|
---
|
||||||
apiVersion: rbac.authorization.k8s.io/v1
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
kind: ClusterRoleBinding
|
kind: ClusterRoleBinding
|
||||||
metadata:
|
metadata:
|
||||||
name: {{ .Release.Name }}-{{ .Values.controller.name }}-cluster-template
|
name: {{ template "argo-workflows.controller.fullname" . }}-cluster-template
|
||||||
|
labels:
|
||||||
|
{{- include "argo-workflows.labels" (dict "context" . "component" .Values.controller.name "name" .Values.controller.name) | nindent 4 }}
|
||||||
roleRef:
|
roleRef:
|
||||||
apiGroup: rbac.authorization.k8s.io
|
apiGroup: rbac.authorization.k8s.io
|
||||||
kind: ClusterRole
|
kind: ClusterRole
|
||||||
name: {{ .Release.Name }}-{{ .Values.controller.name }}-cluster-template
|
name: {{ template "argo-workflows.controller.fullname" . }}-cluster-template
|
||||||
subjects:
|
subjects:
|
||||||
- kind: ServiceAccount
|
- kind: ServiceAccount
|
||||||
name: {{ .Values.controller.serviceAccount }}
|
name: {{ template "argo-workflows.controllerServiceAccountName" . }}
|
||||||
namespace: {{ .Release.Namespace }}
|
namespace: {{ .Release.Namespace }}
|
||||||
{{- end }}
|
|
|
@ -2,12 +2,9 @@
|
||||||
apiVersion: policy/v1beta1
|
apiVersion: policy/v1beta1
|
||||||
kind: PodDisruptionBudget
|
kind: PodDisruptionBudget
|
||||||
metadata:
|
metadata:
|
||||||
name: {{ .Release.Name }}-{{ .Values.controller.name}}
|
name: {{ template "argo-workflows.controller.fullname" . }}
|
||||||
labels:
|
labels:
|
||||||
app: {{ .Release.Name }}-{{ .Values.controller.name}}
|
{{- include "argo-workflows.labels" (dict "context" . "component" .Values.controller.name "name" .Values.controller.name) | nindent 4 }}
|
||||||
chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
|
|
||||||
release: {{ .Release.Name }}
|
|
||||||
heritage: {{ .Release.Service }}
|
|
||||||
spec:
|
spec:
|
||||||
{{- if .Values.controller.pdb.minAvailable }}
|
{{- if .Values.controller.pdb.minAvailable }}
|
||||||
minAvailable: {{ .Values.controller.pdb.minAvailable }}
|
minAvailable: {{ .Values.controller.pdb.minAvailable }}
|
||||||
|
@ -18,6 +15,5 @@ spec:
|
||||||
{{- end }}
|
{{- end }}
|
||||||
selector:
|
selector:
|
||||||
matchLabels:
|
matchLabels:
|
||||||
app: {{ .Release.Name }}-{{ .Values.controller.name}}
|
{{- include "argo-workflows.selectorLabels" (dict "context" . "name" .Values.controller.name) | nindent 6 }}
|
||||||
release: {{ .Release.Name }}
|
|
||||||
{{- end }}
|
{{- end }}
|
|
@ -0,0 +1,104 @@
|
||||||
|
apiVersion: apps/v1
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
name: {{ template "argo-workflows.controller.fullname" . }}
|
||||||
|
labels:
|
||||||
|
{{- include "argo-workflows.labels" (dict "context" . "component" .Values.controller.name "name" .Values.controller.name) | nindent 4 }}
|
||||||
|
app.kubernetes.io/version: {{ default .Chart.AppVersion .Values.controller.image.tag | quote }}
|
||||||
|
spec:
|
||||||
|
replicas: {{ .Values.controller.replicas }}
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
{{- include "argo-workflows.selectorLabels" (dict "context" . "name" .Values.controller.name) | nindent 6 }}
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
{{- include "argo-workflows.labels" (dict "context" . "component" .Values.controller.name "name" .Values.controller.name) | nindent 8 }}
|
||||||
|
app.kubernetes.io/version: {{ default .Chart.AppVersion .Values.controller.image.tag | quote }}
|
||||||
|
{{- with.Values.controller.podLabels }}
|
||||||
|
{{- toYaml . | nindent 8 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- with .Values.controller.podAnnotations }}
|
||||||
|
annotations:
|
||||||
|
{{- toYaml . | nindent 8 }}
|
||||||
|
{{- end }}
|
||||||
|
spec:
|
||||||
|
serviceAccountName: {{ template "argo-workflows.controllerServiceAccountName" . }}
|
||||||
|
{{- with .Values.controller.podSecurityContext }}
|
||||||
|
securityContext:
|
||||||
|
{{- toYaml . | nindent 8 }}
|
||||||
|
{{- end }}
|
||||||
|
containers:
|
||||||
|
- name: controller
|
||||||
|
image: "{{ .Values.controller.image.registry }}/{{ .Values.controller.image.repository }}:{{ .Values.controller.image.tag | default .Chart.AppVersion }}"
|
||||||
|
imagePullPolicy: {{ .Values.images.pullPolicy }}
|
||||||
|
command: [ "workflow-controller" ]
|
||||||
|
args:
|
||||||
|
- "--configmap"
|
||||||
|
- "{{ template "argo-workflows.controller.fullname" . }}-configmap"
|
||||||
|
- "--executor-image"
|
||||||
|
- "{{ .Values.executor.image.registry }}/{{ .Values.executor.image.repository }}:{{ .Values.executor.image.tag | default .Chart.AppVersion }}"
|
||||||
|
- "--loglevel"
|
||||||
|
- "{{ .Values.controller.logging.level }}"
|
||||||
|
- "--gloglevel"
|
||||||
|
- "{{ .Values.controller.logging.globallevel }}"
|
||||||
|
{{- if .Values.singleNamespace }}
|
||||||
|
- "--namespaced"
|
||||||
|
{{- end }}
|
||||||
|
{{- with .Values.controller.workflowWorkers }}
|
||||||
|
- "--workflow-workers"
|
||||||
|
- {{ . | quote }}
|
||||||
|
{{- end }}
|
||||||
|
{{- with .Values.controller.podWorkers }}
|
||||||
|
- "--pod-workers"
|
||||||
|
- {{ . | quote }}
|
||||||
|
{{- end }}
|
||||||
|
{{- with .Values.controller.extraArgs }}
|
||||||
|
{{- toYaml . | nindent 10 }}
|
||||||
|
{{- end }}
|
||||||
|
securityContext:
|
||||||
|
{{- toYaml .Values.controller.securityContext | nindent 12 }}
|
||||||
|
env:
|
||||||
|
- name: ARGO_NAMESPACE
|
||||||
|
valueFrom:
|
||||||
|
fieldRef:
|
||||||
|
apiVersion: v1
|
||||||
|
fieldPath: metadata.namespace
|
||||||
|
- name: LEADER_ELECTION_IDENTITY
|
||||||
|
valueFrom:
|
||||||
|
fieldRef:
|
||||||
|
apiVersion: v1
|
||||||
|
fieldPath: metadata.name
|
||||||
|
{{- with .Values.controller.extraEnv }}
|
||||||
|
{{ toYaml . | nindent 10 }}
|
||||||
|
{{- end }}
|
||||||
|
resources:
|
||||||
|
{{- toYaml .Values.controller.resources | nindent 12 }}
|
||||||
|
ports:
|
||||||
|
- name: metrics
|
||||||
|
containerPort: {{ .Values.controller.metricsConfig.port }}
|
||||||
|
livenessProbe:
|
||||||
|
httpGet:
|
||||||
|
port: metrics
|
||||||
|
path: {{ .Values.controller.metricsConfig.path }}
|
||||||
|
initialDelaySeconds: 30
|
||||||
|
periodSeconds: 30
|
||||||
|
{{- with .Values.images.pullSecrets }}
|
||||||
|
imagePullSecrets:
|
||||||
|
{{- toYaml . | nindent 8 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- with .Values.controller.nodeSelector }}
|
||||||
|
nodeSelector:
|
||||||
|
{{- toYaml . | nindent 8 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- with .Values.controller.tolerations }}
|
||||||
|
tolerations:
|
||||||
|
{{- toYaml . | nindent 8 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- with .Values.controller.affinity }}
|
||||||
|
affinity:
|
||||||
|
{{- toYaml . | nindent 8 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- with .Values.controller.priorityClassName }}
|
||||||
|
priorityClassName: {{ . }}
|
||||||
|
{{- end }}
|
|
@ -0,0 +1,8 @@
|
||||||
|
apiVersion: v1
|
||||||
|
kind: ServiceAccount
|
||||||
|
metadata:
|
||||||
|
name: {{ template "argo-workflows.controllerServiceAccountName" . }}
|
||||||
|
{{ with .Values.controller.serviceAccount.annotations }}
|
||||||
|
annotations:
|
||||||
|
{{- toYaml .| nindent 4 }}
|
||||||
|
{{- end }}
|
|
@ -0,0 +1,38 @@
|
||||||
|
{{- if or .Values.controller.metricsConfig.enabled .Values.controller.telemetryConfig.enabled }}
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: {{ template "argo-workflows.controller.fullname" . }}
|
||||||
|
labels:
|
||||||
|
{{- include "argo-workflows.labels" (dict "context" . "component" .Values.controller.name "name" .Values.controller.name) | nindent 4 }}
|
||||||
|
app.kubernetes.io/version: {{ default .Chart.AppVersion .Values.controller.image.tag | quote }}
|
||||||
|
{{- with .Values.controller.serviceLabels }}
|
||||||
|
{{ toYaml . | nindent 4 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- with .Values.controller.serviceAnnotations }}
|
||||||
|
annotations:
|
||||||
|
{{- toYaml . | nindent 4}}
|
||||||
|
{{- end }}
|
||||||
|
spec:
|
||||||
|
ports:
|
||||||
|
{{- if .Values.controller.metricsConfig.enabled }}
|
||||||
|
- name: {{ .Values.controller.metricsConfig.servicePortName }}
|
||||||
|
port: {{ .Values.controller.metricsConfig.servicePort }}
|
||||||
|
protocol: TCP
|
||||||
|
targetPort: {{ .Values.controller.metricsConfig.port }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.controller.telemetryConfig.enabled }}
|
||||||
|
- name: {{ .Values.controller.telemetryConfig.servicePortName }}
|
||||||
|
port: {{ .Values.controller.telemetryConfig.servicePort }}
|
||||||
|
protocol: TCP
|
||||||
|
targetPort: {{ .Values.controller.telemetryConfig.port }}
|
||||||
|
{{- end }}
|
||||||
|
selector:
|
||||||
|
{{- include "argo-workflows.selectorLabels" (dict "context" . "name" .Values.controller.name) | nindent 4 }}
|
||||||
|
sessionAffinity: None
|
||||||
|
type: {{ .Values.controller.serviceType }}
|
||||||
|
{{- if and (eq .Values.controller.serviceType "LoadBalancer") .Values.controller.loadBalancerSourceRanges }}
|
||||||
|
loadBalancerSourceRanges:
|
||||||
|
{{- toYaml .Values.controller.loadBalancerSourceRanges | nindent 4 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end -}}
|
|
@ -2,14 +2,11 @@
|
||||||
apiVersion: monitoring.coreos.com/v1
|
apiVersion: monitoring.coreos.com/v1
|
||||||
kind: ServiceMonitor
|
kind: ServiceMonitor
|
||||||
metadata:
|
metadata:
|
||||||
name: {{ .Release.Name }}-{{ .Values.controller.name }}
|
name: {{ template "argo-workflows.controller.fullname" . }}
|
||||||
labels:
|
labels:
|
||||||
app: {{ .Release.Name }}-{{ .Values.controller.name}}
|
{{- include "argo-workflows.labels" (dict "context" . "component" .Values.controller.name "name" .Values.controller.name) | nindent 4 }}
|
||||||
chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
|
{{- with .Values.controller.serviceMonitor.additionalLabels }}
|
||||||
release: {{ .Release.Name }}
|
{{- toYaml . | nindent 4 }}
|
||||||
heritage: {{ .Release.Service }}
|
|
||||||
{{- if .Values.controller.serviceMonitor.additionalLabels }}
|
|
||||||
{{ toYaml .Values.controller.serviceMonitor.additionalLabels | indent 4 }}
|
|
||||||
{{- end }}
|
{{- end }}
|
||||||
spec:
|
spec:
|
||||||
endpoints:
|
endpoints:
|
||||||
|
@ -28,6 +25,5 @@ spec:
|
||||||
- {{ .Release.Namespace }}
|
- {{ .Release.Namespace }}
|
||||||
selector:
|
selector:
|
||||||
matchLabels:
|
matchLabels:
|
||||||
app: {{ .Release.Name }}-{{ .Values.controller.name}}
|
{{- include "argo-workflows.selectorLabels" (dict "context" . "name" .Values.controller.name) | nindent 6 }}
|
||||||
release: {{ .Release.Name }}
|
|
||||||
{{- end }}
|
{{- end }}
|
|
@ -2,18 +2,18 @@
|
||||||
apiVersion: rbac.authorization.k8s.io/v1
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
kind: RoleBinding
|
kind: RoleBinding
|
||||||
metadata:
|
metadata:
|
||||||
name: {{ .Release.Name }}-workflow
|
name: {{ template "argo-workflows.fullname" . }}-workflow
|
||||||
{{- if .Values.workflow.namespace }}
|
{{- with .Values.workflow.namespace }}
|
||||||
namespace: {{ .Values.workflow.namespace }}
|
namespace: {{ . }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
roleRef:
|
roleRef:
|
||||||
apiGroup: rbac.authorization.k8s.io
|
apiGroup: rbac.authorization.k8s.io
|
||||||
kind: Role
|
kind: Role
|
||||||
name: {{ .Release.Name }}-workflow
|
name: {{ template "argo-workflows.fullname" . }}-workflow
|
||||||
subjects:
|
subjects:
|
||||||
- kind: ServiceAccount
|
- kind: ServiceAccount
|
||||||
name: {{ .Values.workflow.serviceAccount.name }}
|
name: {{ .Values.workflow.serviceAccount.name }}
|
||||||
{{- if .Values.workflow.namespace }}
|
{{- with .Values.workflow.namespace }}
|
||||||
namespace: {{ .Values.workflow.namespace }}
|
namespace: {{ . }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- end }}
|
{{- end }}
|
|
@ -2,9 +2,9 @@
|
||||||
apiVersion: rbac.authorization.k8s.io/v1
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
kind: Role
|
kind: Role
|
||||||
metadata:
|
metadata:
|
||||||
name: {{ .Release.Name }}-workflow
|
name: {{ template "argo-workflows.fullname" . }}-workflow
|
||||||
{{- if .Values.workflow.namespace }}
|
{{- with .Values.workflow.namespace }}
|
||||||
namespace: {{ .Values.workflow.namespace }}
|
namespace: {{ . }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
rules:
|
rules:
|
||||||
- apiGroups:
|
- apiGroups:
|
|
@ -3,8 +3,8 @@ apiVersion: v1
|
||||||
kind: ServiceAccount
|
kind: ServiceAccount
|
||||||
metadata:
|
metadata:
|
||||||
name: {{ .Values.workflow.serviceAccount.name }}
|
name: {{ .Values.workflow.serviceAccount.name }}
|
||||||
{{- if .Values.workflow.namespace }}
|
{{- with .Values.workflow.namespace }}
|
||||||
namespace: {{ .Values.workflow.namespace }}
|
namespace: {{ . }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- with .Values.workflow.serviceAccount.annotations }}
|
{{- with .Values.workflow.serviceAccount.annotations }}
|
||||||
annotations:
|
annotations:
|
|
@ -1,12 +1,14 @@
|
||||||
{{- if .Values.server.enabled }}
|
{{- if .Values.server.enabled }}
|
||||||
apiVersion: rbac.authorization.k8s.io/v1
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
{{- if .Values.singleNamespace }}
|
{{- if .Values.singleNamespace }}
|
||||||
kind: Role
|
kind: Role
|
||||||
{{- else }}
|
{{- else }}
|
||||||
kind: ClusterRole
|
kind: ClusterRole
|
||||||
{{- end }}
|
{{- end }}
|
||||||
metadata:
|
metadata:
|
||||||
name: {{ .Release.Name }}-{{ .Values.server.name }}
|
name: {{ template "argo-workflows.server.fullname" . }}
|
||||||
|
labels:
|
||||||
|
{{- include "argo-workflows.labels" (dict "context" . "component" .Values.server.name "name" .Values.server.name) | nindent 4 }}
|
||||||
rules:
|
rules:
|
||||||
- apiGroups:
|
- apiGroups:
|
||||||
- ""
|
- ""
|
||||||
|
@ -28,7 +30,7 @@ rules:
|
||||||
- list
|
- list
|
||||||
- watch
|
- watch
|
||||||
- delete
|
- delete
|
||||||
{{- if .Values.server.sso }}
|
{{- if .Values.server.sso }}
|
||||||
- apiGroups:
|
- apiGroups:
|
||||||
- ""
|
- ""
|
||||||
resources:
|
resources:
|
||||||
|
@ -44,9 +46,7 @@ rules:
|
||||||
- secrets
|
- secrets
|
||||||
verbs:
|
verbs:
|
||||||
- create
|
- create
|
||||||
{{- end}}
|
{{- if .Values.server.sso.rbac }}
|
||||||
{{- if .Values.server.sso }}
|
|
||||||
{{- if .Values.server.sso.rbac }}
|
|
||||||
- apiGroups:
|
- apiGroups:
|
||||||
- ""
|
- ""
|
||||||
resources:
|
resources:
|
||||||
|
@ -54,8 +54,8 @@ rules:
|
||||||
verbs:
|
verbs:
|
||||||
- get
|
- get
|
||||||
- list
|
- list
|
||||||
|
{{- end }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- end }}
|
|
||||||
- apiGroups:
|
- apiGroups:
|
||||||
- ""
|
- ""
|
||||||
resources:
|
resources:
|
||||||
|
@ -95,29 +95,29 @@ rules:
|
||||||
- get
|
- get
|
||||||
{{- end}}
|
{{- end}}
|
||||||
- apiGroups:
|
- apiGroups:
|
||||||
- argoproj.io
|
- argoproj.io
|
||||||
resources:
|
resources:
|
||||||
- workflows
|
- eventsources
|
||||||
- workfloweventbindings
|
- sensors
|
||||||
- workflowtemplates
|
- workflows
|
||||||
- cronworkflows
|
- workfloweventbindings
|
||||||
- cronworkflows/finalizers
|
- workflowtemplates
|
||||||
- clusterworkflowtemplates
|
- cronworkflows
|
||||||
verbs:
|
verbs:
|
||||||
- create
|
- create
|
||||||
- get
|
- get
|
||||||
- list
|
- list
|
||||||
- watch
|
- watch
|
||||||
- update
|
- update
|
||||||
- patch
|
- patch
|
||||||
- delete
|
- delete
|
||||||
|
|
||||||
{{- if not .Values.singleNamespace }}
|
|
||||||
---
|
---
|
||||||
apiVersion: rbac.authorization.k8s.io/v1
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
kind: ClusterRole
|
kind: ClusterRole
|
||||||
metadata:
|
metadata:
|
||||||
name: {{ .Release.Name }}-{{ .Values.server.name }}-cluster-template
|
name: {{ template "argo-workflows.server.fullname" . }}-cluster-template
|
||||||
|
labels:
|
||||||
|
{{- include "argo-workflows.labels" (dict "context" . "component" .Values.server.name "name" .Values.server.name) | nindent 4 }}
|
||||||
rules:
|
rules:
|
||||||
- apiGroups:
|
- apiGroups:
|
||||||
- argoproj.io
|
- argoproj.io
|
||||||
|
@ -134,4 +134,3 @@ rules:
|
||||||
- delete
|
- delete
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- end }}
|
|
39
charts/argo-workflows/templates/server/server-crb.yaml
Normal file
39
charts/argo-workflows/templates/server/server-crb.yaml
Normal file
|
@ -0,0 +1,39 @@
|
||||||
|
{{- if and .Values.server.enabled .Values.server.serviceAccount.create -}}
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
{{- if .Values.singleNamespace }}
|
||||||
|
kind: RoleBinding
|
||||||
|
{{ else }}
|
||||||
|
kind: ClusterRoleBinding
|
||||||
|
{{- end }}
|
||||||
|
metadata:
|
||||||
|
name: {{ template "argo-workflows.server.fullname" . }}
|
||||||
|
labels:
|
||||||
|
{{- include "argo-workflows.labels" (dict "context" . "component" .Values.server.name "name" .Values.server.name) | nindent 4 }}
|
||||||
|
roleRef:
|
||||||
|
apiGroup: rbac.authorization.k8s.io
|
||||||
|
{{- if .Values.singleNamespace }}
|
||||||
|
kind: Role
|
||||||
|
{{ else }}
|
||||||
|
kind: ClusterRole
|
||||||
|
{{- end }}
|
||||||
|
name: {{ template "argo-workflows.server.fullname" . }}
|
||||||
|
subjects:
|
||||||
|
- kind: ServiceAccount
|
||||||
|
name: {{ template "argo-workflows.serverServiceAccountName" . }}
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
---
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: ClusterRoleBinding
|
||||||
|
metadata:
|
||||||
|
name: {{ template "argo-workflows.server.fullname" . }}-cluster-template
|
||||||
|
labels:
|
||||||
|
{{- include "argo-workflows.labels" (dict "context" . "component" .Values.server.name "name" .Values.server.name) | nindent 4 }}
|
||||||
|
roleRef:
|
||||||
|
apiGroup: rbac.authorization.k8s.io
|
||||||
|
kind: ClusterRole
|
||||||
|
name: {{ template "argo-workflows.server.fullname" . }}-cluster-template
|
||||||
|
subjects:
|
||||||
|
- kind: ServiceAccount
|
||||||
|
name: {{ template "argo-workflows.serverServiceAccountName" . }}
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
{{- end -}}
|
|
@ -0,0 +1,19 @@
|
||||||
|
{{- if and .Values.server.enabled .Values.server.pdb.enabled -}}
|
||||||
|
apiVersion: policy/v1beta1
|
||||||
|
kind: PodDisruptionBudget
|
||||||
|
metadata:
|
||||||
|
name: {{ template "argo-workflows.server.fullname" . }}
|
||||||
|
labels:
|
||||||
|
{{- include "argo-workflows.labels" (dict "context" . "component" .Values.server.name "name" .Values.server.name) | nindent 4 }}
|
||||||
|
spec:
|
||||||
|
{{- if .Values.server.pdb.minAvailable }}
|
||||||
|
minAvailable: {{ .Values.server.pdb.minAvailable }}
|
||||||
|
{{- else if .Values.server.pdb.maxUnavailable }}
|
||||||
|
maxUnavailable: {{ .Values.server.pdb.maxUnavailable }}
|
||||||
|
{{- else }}
|
||||||
|
minAvailable: 0
|
||||||
|
{{- end }}
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
{{- include "argo-workflows.selectorLabels" (dict "context" . "name" .Values.server.name) | nindent 6 }}
|
||||||
|
{{- end -}}
|
|
@ -2,55 +2,52 @@
|
||||||
apiVersion: apps/v1
|
apiVersion: apps/v1
|
||||||
kind: Deployment
|
kind: Deployment
|
||||||
metadata:
|
metadata:
|
||||||
name: {{ .Release.Name }}-{{ .Values.server.name}}
|
name: {{ template "argo-workflows.server.fullname" . }}
|
||||||
labels:
|
labels:
|
||||||
chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
|
{{- include "argo-workflows.labels" (dict "context" . "component" .Values.server.name "name" .Values.server.name) | nindent 4 }}
|
||||||
release: {{ .Release.Name }}
|
app.kubernetes.io/version: {{ default .Chart.AppVersion .Values.server.image.tag | quote }}
|
||||||
heritage: {{ .Release.Service }}
|
|
||||||
spec:
|
spec:
|
||||||
replicas: {{ .Values.server.replicas }}
|
replicas: {{ .Values.server.replicas }}
|
||||||
selector:
|
selector:
|
||||||
matchLabels:
|
matchLabels:
|
||||||
app: {{ .Release.Name }}-{{ .Values.server.name}}
|
{{- include "argo-workflows.selectorLabels" (dict "context" . "name" .Values.server.name) | nindent 6 }}
|
||||||
release: {{ .Release.Name }}
|
|
||||||
template:
|
template:
|
||||||
metadata:
|
metadata:
|
||||||
labels:
|
labels:
|
||||||
app: {{ .Release.Name }}-{{ .Values.server.name}}
|
{{- include "argo-workflows.labels" (dict "context" . "component" .Values.server.name "name" .Values.server.name) | nindent 8 }}
|
||||||
release: {{ .Release.Name }}
|
app.kubernetes.io/version: {{ default .Chart.AppVersion .Values.server.image.tag | quote }}
|
||||||
{{- if .Values.server.podLabels }}
|
{{- with .Values.server.podLabels }}
|
||||||
{{- toYaml .Values.server.podLabels | nindent 8 }}
|
{{- toYaml . | nindent 8 }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- if .Values.server.podAnnotations }}
|
{{- with .Values.server.podAnnotations }}
|
||||||
annotations:
|
annotations:
|
||||||
{{ toYaml .Values.server.podAnnotations | indent 8}}{{- end }}
|
{{- toYaml .Values.server.podAnnotations | nindent 8 }}
|
||||||
|
{{- end }}
|
||||||
spec:
|
spec:
|
||||||
serviceAccountName: {{ .Values.server.serviceAccount | quote }}
|
serviceAccountName: {{ template "argo-workflows.serverServiceAccountName" . }}
|
||||||
{{- if .Values.server.podSecurityContext }}
|
{{- with .Values.server.podSecurityContext }}
|
||||||
securityContext:
|
securityContext:
|
||||||
{{- toYaml .Values.server.podSecurityContext | nindent 8 }}
|
{{- toYaml . | nindent 8 }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
containers:
|
containers:
|
||||||
- name: argo-server
|
- name: argo-server
|
||||||
|
image: "{{ .Values.server.image.registry }}/{{ .Values.server.image.repository }}:{{ .Values.server.image.tag | default .Chart.AppVersion }}"
|
||||||
|
imagePullPolicy: {{ .Values.images.pullPolicy }}
|
||||||
|
securityContext:
|
||||||
|
{{- toYaml .Values.server.securityContext | nindent 12 }}
|
||||||
args:
|
args:
|
||||||
- server
|
- server
|
||||||
- --configmap={{ .Release.Name }}-{{ .Values.controller.name }}-configmap
|
- --configmap={{ template "argo-workflows.controller.fullname" . }}-configmap
|
||||||
{{- if .Values.server.extraArgs }}
|
{{- with .Values.server.extraArgs }}
|
||||||
{{- toYaml .Values.server.extraArgs | nindent 10 }}
|
{{- toYaml . | nindent 10 }}
|
||||||
{{- end }}
|
|
||||||
{{- if .Values.server.secure }}
|
|
||||||
- "--secure"
|
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
- "--secure={{ .Values.server.secure }}"
|
||||||
{{- if .Values.singleNamespace }}
|
{{- if .Values.singleNamespace }}
|
||||||
- "--namespaced"
|
- "--namespaced"
|
||||||
{{- end }}
|
{{- end }}
|
||||||
image: "{{ .Values.images.namespace }}/{{ .Values.images.server }}:{{ default .Values.images.tag .Values.server.image.tag }}"
|
|
||||||
imagePullPolicy: {{ .Values.images.pullPolicy }}
|
|
||||||
{{- if .Values.server.podPortName }}
|
|
||||||
ports:
|
ports:
|
||||||
- name: {{ .Values.server.podPortName }}
|
- name: web
|
||||||
containerPort: 2746
|
containerPort: 2746
|
||||||
{{- end }}
|
|
||||||
readinessProbe:
|
readinessProbe:
|
||||||
httpGet:
|
httpGet:
|
||||||
path: /
|
path: /
|
||||||
|
@ -102,7 +99,7 @@ spec:
|
||||||
affinity:
|
affinity:
|
||||||
{{- toYaml . | nindent 8 }}
|
{{- toYaml . | nindent 8 }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- if .Values.server.priorityClassName }}
|
{{- with .Values.server.priorityClassName }}
|
||||||
priorityClassName: {{ .Values.server.priorityClassName }}
|
priorityClassName: {{ . }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- end -}}
|
{{- end -}}
|
88
charts/argo-workflows/templates/server/server-ingress.yaml
Normal file
88
charts/argo-workflows/templates/server/server-ingress.yaml
Normal file
|
@ -0,0 +1,88 @@
|
||||||
|
{{- if .Values.server.ingress.enabled -}}
|
||||||
|
{{- $serviceName := include "argo-workflows.server.fullname" . -}}
|
||||||
|
{{- $servicePort := .Values.server.servicePort -}}
|
||||||
|
{{- $paths := .Values.server.ingress.paths -}}
|
||||||
|
{{- $extraPaths := .Values.server.ingress.extraPaths -}}
|
||||||
|
apiVersion: {{ include "argo-workflows.ingress.apiVersion" . }}
|
||||||
|
kind: Ingress
|
||||||
|
metadata:
|
||||||
|
{{- if .Values.server.ingress.annotations }}
|
||||||
|
annotations:
|
||||||
|
{{- range $key, $value := .Values.server.ingress.annotations }}
|
||||||
|
{{ $key }}: {{ $value | quote }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
name: {{ template "argo-workflows.server.fullname" . }}
|
||||||
|
labels:
|
||||||
|
{{- include "argo-workflows.labels" (dict "context" . "component" .Values.server.name "name" .Values.server.name) | nindent 4 }}
|
||||||
|
{{- if .Values.server.ingress.labels }}
|
||||||
|
{{- toYaml .Values.server.ingress.labels | nindent 4 }}
|
||||||
|
{{- end }}
|
||||||
|
spec:
|
||||||
|
{{- if .Capabilities.APIVersions.Has "networking.k8s.io/v1" }}
|
||||||
|
{{- with .Values.server.ingress.ingressClassName }}
|
||||||
|
ingressClassName: {{ . }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
rules:
|
||||||
|
{{- if .Values.server.ingress.hosts }}
|
||||||
|
{{- range $host := .Values.server.ingress.hosts }}
|
||||||
|
- host: {{ $host }}
|
||||||
|
http:
|
||||||
|
paths:
|
||||||
|
{{- if $extraPaths }}
|
||||||
|
{{- toYaml $extraPaths | nindent 10 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- range $p := $paths }}
|
||||||
|
- path: {{ $p }}
|
||||||
|
{{- if $.Capabilities.APIVersions.Has "networking.k8s.io/v1" }}
|
||||||
|
pathType: Prefix
|
||||||
|
{{- end }}
|
||||||
|
backend:
|
||||||
|
{{- if $.Capabilities.APIVersions.Has "networking.k8s.io/v1" }}
|
||||||
|
service:
|
||||||
|
name: {{ $serviceName }}
|
||||||
|
port:
|
||||||
|
{{- if kindIs "float64" $servicePort }}
|
||||||
|
number: {{ $servicePort }}
|
||||||
|
{{- else }}
|
||||||
|
name: {{ $servicePort }}
|
||||||
|
{{- end }}
|
||||||
|
{{- else }}
|
||||||
|
serviceName: {{ $serviceName }}
|
||||||
|
servicePort: {{ $servicePort }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end -}}
|
||||||
|
{{- end -}}
|
||||||
|
{{- else }}
|
||||||
|
- http:
|
||||||
|
paths:
|
||||||
|
{{- if $extraPaths }}
|
||||||
|
{{- toYaml $extraPaths | nindent 10 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- range $p := $paths }}
|
||||||
|
- path: {{ $p }}
|
||||||
|
{{- if $.Capabilities.APIVersions.Has "networking.k8s.io/v1" }}
|
||||||
|
pathType: Prefix
|
||||||
|
{{- end }}
|
||||||
|
backend:
|
||||||
|
{{- if $.Capabilities.APIVersions.Has "networking.k8s.io/v1" }}
|
||||||
|
service:
|
||||||
|
name: {{ $serviceName }}
|
||||||
|
port:
|
||||||
|
{{- if kindIs "float64" $servicePort }}
|
||||||
|
number: {{ $servicePort }}
|
||||||
|
{{- else }}
|
||||||
|
name: {{ $servicePort }}
|
||||||
|
{{- end }}
|
||||||
|
{{- else }}
|
||||||
|
serviceName: {{ $serviceName }}
|
||||||
|
servicePort: {{ $servicePort }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end -}}
|
||||||
|
{{- end -}}
|
||||||
|
{{- if .Values.server.ingress.tls }}
|
||||||
|
tls:
|
||||||
|
{{- toYaml .Values.server.ingress.tls | nindent 4 }}
|
||||||
|
{{- end -}}
|
||||||
|
{{- end -}}
|
10
charts/argo-workflows/templates/server/server-sa.yaml
Normal file
10
charts/argo-workflows/templates/server/server-sa.yaml
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
{{- if and .Values.server.enabled .Values.server.serviceAccount.create -}}
|
||||||
|
apiVersion: v1
|
||||||
|
kind: ServiceAccount
|
||||||
|
metadata:
|
||||||
|
name: {{ template "argo-workflows.serverServiceAccountName" . }}
|
||||||
|
{{- with .Values.server.serviceAccount.annotations }}
|
||||||
|
annotations:
|
||||||
|
{{- toYaml . | nindent 4 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end -}}
|
31
charts/argo-workflows/templates/server/server-service.yaml
Normal file
31
charts/argo-workflows/templates/server/server-service.yaml
Normal file
|
@ -0,0 +1,31 @@
|
||||||
|
{{- if .Values.server.enabled -}}
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: {{ template "argo-workflows.server.fullname" . }}
|
||||||
|
labels:
|
||||||
|
{{- include "argo-workflows.labels" (dict "context" . "component" .Values.server.name "name" .Values.server.name) | nindent 4 }}
|
||||||
|
app.kubernetes.io/version: {{ default .Chart.AppVersion .Values.server.image.tag | quote }}
|
||||||
|
{{- with .Values.server.serviceAnnotations }}
|
||||||
|
annotations:
|
||||||
|
{{- toYaml . | nindent 4 }}
|
||||||
|
{{- end }}
|
||||||
|
spec:
|
||||||
|
ports:
|
||||||
|
- port: {{ .Values.server.servicePort }}
|
||||||
|
{{- with .Values.server.servicePortName }}
|
||||||
|
name: {{ . }}
|
||||||
|
{{- end }}
|
||||||
|
targetPort: 2746
|
||||||
|
selector:
|
||||||
|
{{- include "argo-workflows.selectorLabels" (dict "context" . "name" .Values.server.name) | nindent 4 }}
|
||||||
|
sessionAffinity: None
|
||||||
|
type: {{ .Values.server.serviceType }}
|
||||||
|
{{- if and (eq .Values.server.serviceType "LoadBalancer") .Values.server.loadBalancerIP }}
|
||||||
|
loadBalancerIP: {{ .Values.server.loadBalancerIP | quote }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if and (eq .Values.server.serviceType "LoadBalancer") .Values.server.loadBalancerSourceRanges }}
|
||||||
|
loadBalancerSourceRanges:
|
||||||
|
{{- toYaml .Values.server.loadBalancerSourceRanges | nindent 4 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end -}}
|
|
@ -1,16 +1,9 @@
|
||||||
images:
|
images:
|
||||||
namespace: argoproj
|
# imagePullPolicy to apply to all containers
|
||||||
controller: workflow-controller
|
|
||||||
server: argocli
|
|
||||||
executor: argoexec
|
|
||||||
pullPolicy: Always
|
pullPolicy: Always
|
||||||
# Secrets with credentials to pull images from a private registry
|
# Secrets with credentials to pull images from a private registry
|
||||||
pullSecrets: []
|
pullSecrets: []
|
||||||
# - name: argo-pull-secret
|
# - name: argo-pull-secret
|
||||||
tag: v2.12.5
|
|
||||||
|
|
||||||
crdVersion: v1alpha1
|
|
||||||
installCRD: true
|
|
||||||
|
|
||||||
init:
|
init:
|
||||||
# By default the installation will not set an explicit one, which will mean it uses `default` for the namespace the chart is
|
# By default the installation will not set an explicit one, which will mean it uses `default` for the namespace the chart is
|
||||||
|
@ -24,17 +17,19 @@ createAggregateRoles: true
|
||||||
singleNamespace: false
|
singleNamespace: false
|
||||||
|
|
||||||
workflow:
|
workflow:
|
||||||
namespace: "" # Specify namespace if workflows run in another namespace than argo. This controls where the service account and RBAC resources will be created.
|
namespace: "" # Specify namespace if workflows run in another namespace than argo. This controls where the service account and RBAC resources will be created.
|
||||||
serviceAccount:
|
serviceAccount:
|
||||||
create: false # Specifies whether a service account should be created
|
create: false # Specifies whether a service account should be created
|
||||||
annotations: {}
|
annotations: {}
|
||||||
name: "argo-workflow" # Service account which is used to run workflows
|
name: "argo-workflow" # Service account which is used to run workflows
|
||||||
rbac:
|
rbac:
|
||||||
create: false # adds Role and RoleBinding for the above specified service account to be able to run workflows
|
create: false # adds Role and RoleBinding for the above specified service account to be able to run workflows
|
||||||
|
|
||||||
controller:
|
controller:
|
||||||
image:
|
image:
|
||||||
# Overrides .images.tag if defined.
|
registry: quay.io
|
||||||
|
repository: argoproj/workflow-controller
|
||||||
|
# Overrides the image tag whose default is the chart appVersion.
|
||||||
tag: ""
|
tag: ""
|
||||||
# parallelism dictates how many workflows can be running at the same time
|
# parallelism dictates how many workflows can be running at the same time
|
||||||
parallelism:
|
parallelism:
|
||||||
|
@ -48,7 +43,17 @@ controller:
|
||||||
metricsConfig:
|
metricsConfig:
|
||||||
enabled: false
|
enabled: false
|
||||||
path: /metrics
|
path: /metrics
|
||||||
port: 8080
|
port: 9090
|
||||||
|
servicePort: 8080
|
||||||
|
servicePortName: metrics
|
||||||
|
# the controller container's securityContext
|
||||||
|
securityContext:
|
||||||
|
readOnlyRootFilesystem: true
|
||||||
|
runAsNonRoot: true
|
||||||
|
allowPrivilegeEscalation: false
|
||||||
|
capabilities:
|
||||||
|
drop:
|
||||||
|
- ALL
|
||||||
persistence: {}
|
persistence: {}
|
||||||
# connectionPool:
|
# connectionPool:
|
||||||
# maxIdleConns: 100
|
# maxIdleConns: 100
|
||||||
|
@ -69,24 +74,28 @@ controller:
|
||||||
# passwordSecret:
|
# passwordSecret:
|
||||||
# name: argo-postgres-config
|
# name: argo-postgres-config
|
||||||
# key: password
|
# key: password
|
||||||
workflowDefaults: {} # Only valid for 2.7+
|
workflowDefaults: {} # Only valid for 2.7+
|
||||||
# spec:
|
# spec:
|
||||||
# ttlStrategy:
|
# ttlStrategy:
|
||||||
# secondsAfterCompletion: 84600
|
# secondsAfterCompletion: 84600
|
||||||
# workflowWorkers: 32
|
# workflowWorkers: 32
|
||||||
# podWorkers: 32
|
# podWorkers: 32
|
||||||
workflowRestrictions: {} # Only valid for 2.9+
|
workflowRestrictions: {} # Only valid for 2.9+
|
||||||
# templateReferencing: Strict|Secure
|
# templateReferencing: Strict|Secure
|
||||||
telemetryConfig:
|
telemetryConfig:
|
||||||
enabled: false
|
enabled: false
|
||||||
path: /telemetry
|
path: /telemetry
|
||||||
port: 8081
|
port: 8081
|
||||||
|
servicePort: 8081
|
||||||
|
servicePortName: telemetry
|
||||||
serviceMonitor:
|
serviceMonitor:
|
||||||
enabled: false
|
enabled: false
|
||||||
additionalLabels: {}
|
additionalLabels: {}
|
||||||
serviceAccount: argo
|
serviceAccount:
|
||||||
# Service account annotations
|
create: true
|
||||||
serviceAccountAnnotations: {}
|
name: argo
|
||||||
|
# Annotations applied to created service account
|
||||||
|
annotations: {}
|
||||||
name: workflow-controller
|
name: workflow-controller
|
||||||
workflowNamespaces:
|
workflowNamespaces:
|
||||||
- default
|
- default
|
||||||
|
@ -103,10 +112,6 @@ controller:
|
||||||
level: info
|
level: info
|
||||||
globallevel: "0"
|
globallevel: "0"
|
||||||
serviceType: ClusterIP
|
serviceType: ClusterIP
|
||||||
metricsServicePort: 8080
|
|
||||||
metricsServicePortName: metrics
|
|
||||||
telemetryServicePort: 8081
|
|
||||||
telemetryServicePortName: telemetry
|
|
||||||
# Annotations to be applied to the controller Service
|
# Annotations to be applied to the controller Service
|
||||||
serviceAnnotations: {}
|
serviceAnnotations: {}
|
||||||
# Optional labels to add to the controller Service
|
# Optional labels to add to the controller Service
|
||||||
|
@ -136,13 +141,15 @@ controller:
|
||||||
# ref: https://kubernetes.io/docs/concepts/configuration/pod-priority-preemption/
|
# ref: https://kubernetes.io/docs/concepts/configuration/pod-priority-preemption/
|
||||||
# PriorityClass: system-cluster-critical
|
# PriorityClass: system-cluster-critical
|
||||||
priorityClassName: ""
|
priorityClassName: ""
|
||||||
# https://argoproj.github.io/argo/links/
|
# https://argoproj.github.io/argo-workflows/links/
|
||||||
links: []
|
links: []
|
||||||
|
|
||||||
# executor controls how the init and wait container should be customized
|
# executor controls how the init and wait container should be customized
|
||||||
executor:
|
executor:
|
||||||
image:
|
image:
|
||||||
# Overrides .images.tag if defined.
|
registry: quay.io
|
||||||
|
repository: argoproj/argoexec
|
||||||
|
# Overrides the image tag whose default is the chart appVersion.
|
||||||
tag: ""
|
tag: ""
|
||||||
resources: {}
|
resources: {}
|
||||||
# Adds environment variables for the executor.
|
# Adds environment variables for the executor.
|
||||||
|
@ -154,10 +161,12 @@ server:
|
||||||
enabled: true
|
enabled: true
|
||||||
# only updates base url of resources on client side,
|
# only updates base url of resources on client side,
|
||||||
# it's expected that a proxy server rewrites the request URL and gets rid of this prefix
|
# it's expected that a proxy server rewrites the request URL and gets rid of this prefix
|
||||||
# https://github.com/argoproj/argo/issues/716#issuecomment-433213190
|
# https://github.com/argoproj/argo-workflows/issues/716#issuecomment-433213190
|
||||||
baseHref: /
|
baseHref: /
|
||||||
image:
|
image:
|
||||||
# Overrides .images.tag if defined.
|
registry: quay.io
|
||||||
|
repository: argoproj/argocli
|
||||||
|
# Overrides the image tag whose default is the chart appVersion.
|
||||||
tag: ""
|
tag: ""
|
||||||
# optional map of annotations to be applied to the ui Pods
|
# optional map of annotations to be applied to the ui Pods
|
||||||
podAnnotations: {}
|
podAnnotations: {}
|
||||||
|
@ -165,16 +174,21 @@ server:
|
||||||
podLabels: {}
|
podLabels: {}
|
||||||
# SecurityContext to set on the server pods
|
# SecurityContext to set on the server pods
|
||||||
podSecurityContext: {}
|
podSecurityContext: {}
|
||||||
|
securityContext:
|
||||||
|
readOnlyRootFilesystem: false
|
||||||
|
runAsNonRoot: true
|
||||||
|
allowPrivilegeEscalation: false
|
||||||
|
capabilities:
|
||||||
|
drop:
|
||||||
|
- ALL
|
||||||
name: server
|
name: server
|
||||||
serviceType: ClusterIP
|
serviceType: ClusterIP
|
||||||
servicePort: 2746
|
servicePort: 2746
|
||||||
# servicePortName: http
|
# servicePortName: http
|
||||||
serviceAccount: argo-server
|
serviceAccount:
|
||||||
# Whether to create the service account with the name specified in
|
create: true
|
||||||
# server.serviceAccount and bind it to the server role.
|
name: argo-server
|
||||||
createServiceAccount: true
|
annotations: {}
|
||||||
# Service account annotations
|
|
||||||
serviceAccountAnnotations: {}
|
|
||||||
# Annotations to be applied to the UI Service
|
# Annotations to be applied to the UI Service
|
||||||
serviceAnnotations: {}
|
serviceAnnotations: {}
|
||||||
# Optional labels to add to the UI Service
|
# Optional labels to add to the UI Service
|
||||||
|
@ -206,7 +220,7 @@ server:
|
||||||
# Run the argo server in "secure" mode. Configure this value instead of
|
# Run the argo server in "secure" mode. Configure this value instead of
|
||||||
# "--secure" in extraArgs. See the following documentation for more details
|
# "--secure" in extraArgs. See the following documentation for more details
|
||||||
# on secure mode:
|
# on secure mode:
|
||||||
# https://argoproj.github.io/argo/tls/#encrypted
|
# https://argoproj.github.io/argo-workflows/tls/
|
||||||
secure: false
|
secure: false
|
||||||
|
|
||||||
# Extra arguments to provide to the Argo server binary.
|
# Extra arguments to provide to the Argo server binary.
|
||||||
|
@ -221,36 +235,32 @@ server:
|
||||||
##
|
##
|
||||||
ingress:
|
ingress:
|
||||||
enabled: false
|
enabled: false
|
||||||
|
annotations: {}
|
||||||
|
labels: {}
|
||||||
|
ingressClassName: ""
|
||||||
|
|
||||||
## Annotations to be added to the web ingress.
|
## Argo Workflows Server Ingress.
|
||||||
|
## Hostnames must be provided if Ingress is enabled.
|
||||||
|
## Secrets must be manually created in the namespace
|
||||||
##
|
##
|
||||||
# annotations:
|
hosts:
|
||||||
# kubernetes.io/ingress.class: nginx
|
[]
|
||||||
# kubernetes.io/tls-acme: "true"
|
# - argocd.example.com
|
||||||
|
paths:
|
||||||
|
- /
|
||||||
|
extraPaths:
|
||||||
|
[]
|
||||||
|
# - path: /*
|
||||||
|
# backend:
|
||||||
|
# serviceName: ssl-redirect
|
||||||
|
# servicePort: use-annotation
|
||||||
|
tls:
|
||||||
|
[]
|
||||||
|
# - secretName: argocd-example-tls
|
||||||
|
# hosts:
|
||||||
|
# - argocd.example.com
|
||||||
|
https: false
|
||||||
|
|
||||||
## Labels to be added to the web ingress.
|
|
||||||
##
|
|
||||||
# labels:
|
|
||||||
# use-cloudflare-solver: "true"
|
|
||||||
|
|
||||||
## Hostnames.
|
|
||||||
## Must be provided if Ingress is enabled.
|
|
||||||
##
|
|
||||||
# hosts:
|
|
||||||
# - argo.domain.com
|
|
||||||
|
|
||||||
## Additional Paths for each host
|
|
||||||
# paths:
|
|
||||||
# - serviceName: "ssl-redirect"
|
|
||||||
# servicePort: "use-annotation"
|
|
||||||
|
|
||||||
## TLS configuration.
|
|
||||||
## Secrets must be manually created in the namespace.
|
|
||||||
##
|
|
||||||
# tls:
|
|
||||||
# - secretName: argo-ui-tls
|
|
||||||
# hosts:
|
|
||||||
# - argo.domain.com
|
|
||||||
clusterWorkflowTemplates:
|
clusterWorkflowTemplates:
|
||||||
# Give the server permissions to edit ClusterWorkflowTemplates.
|
# Give the server permissions to edit ClusterWorkflowTemplates.
|
||||||
enableEditing: true
|
enableEditing: true
|
||||||
|
@ -294,7 +304,7 @@ artifactRepository:
|
||||||
# Note the `key` attribute is not the actual secret, it's the PATH to
|
# Note the `key` attribute is not the actual secret, it's the PATH to
|
||||||
# the contents in the associated secret, as defined by the `name` attribute.
|
# the contents in the associated secret, as defined by the `name` attribute.
|
||||||
accessKeySecret:
|
accessKeySecret:
|
||||||
# name: <releaseName>-minio (default)
|
# name: <releaseName>-minio
|
||||||
key: accesskey
|
key: accesskey
|
||||||
secretKeySecret:
|
secretKeySecret:
|
||||||
# name: <releaseName>-minio
|
# name: <releaseName>-minio
|
||||||
|
@ -306,25 +316,16 @@ artifactRepository:
|
||||||
# roleARN:
|
# roleARN:
|
||||||
# useSDKCreds: true
|
# useSDKCreds: true
|
||||||
# gcs:
|
# gcs:
|
||||||
# bucket: <project>-argo
|
# bucket: <project>-argo
|
||||||
# keyFormat: "{{workflow.namespace}}/{{workflow.name}}/"
|
# keyFormat: "{{workflow.namespace}}/{{workflow.name}}/"
|
||||||
# serviceAccountKeySecret is a secret selector.
|
# serviceAccountKeySecret is a secret selector.
|
||||||
# It references the k8s secret named 'my-gcs-credentials'.
|
# It references the k8s secret named 'my-gcs-credentials'.
|
||||||
# This secret is expected to have have the key 'serviceAccountKey',
|
# This secret is expected to have have the key 'serviceAccountKey',
|
||||||
# containing the base64 encoded credentials
|
# containing the base64 encoded credentials
|
||||||
# to the bucket.
|
# to the bucket.
|
||||||
#
|
#
|
||||||
# If it's running on GKE and Workload Identity is used,
|
# If it's running on GKE and Workload Identity is used,
|
||||||
# serviceAccountKeySecret is not needed.
|
# serviceAccountKeySecret is not needed.
|
||||||
# serviceAccountKeySecret:
|
# serviceAccountKeySecret:
|
||||||
# name: my-gcs-credentials
|
# name: my-gcs-credentials
|
||||||
# key: serviceAccountKey
|
# key: serviceAccountKey
|
||||||
|
|
||||||
|
|
||||||
# NOTE: These are setting attributes for the `minio` optional dependency
|
|
||||||
minio:
|
|
||||||
# If set to true then chart installs minio and generate according artifactRepository section in workflow controller config map
|
|
||||||
install: false
|
|
||||||
defaultBucket:
|
|
||||||
enabled: true
|
|
||||||
name: argo-artifacts
|
|
|
@ -1,21 +0,0 @@
|
||||||
# Patterns to ignore when building packages.
|
|
||||||
# This supports shell glob matching, relative path matching, and
|
|
||||||
# negation (prefixed with !). Only one pattern per line.
|
|
||||||
.DS_Store
|
|
||||||
# Common VCS dirs
|
|
||||||
.git/
|
|
||||||
.gitignore
|
|
||||||
.bzr/
|
|
||||||
.bzrignore
|
|
||||||
.hg/
|
|
||||||
.hgignore
|
|
||||||
.svn/
|
|
||||||
# Common backup files
|
|
||||||
*.swp
|
|
||||||
*.bak
|
|
||||||
*.tmp
|
|
||||||
*~
|
|
||||||
# Various IDEs
|
|
||||||
.project
|
|
||||||
.idea/
|
|
||||||
*.tmproj
|
|
|
@ -1,6 +0,0 @@
|
||||||
dependencies:
|
|
||||||
- name: minio
|
|
||||||
repository: https://helm.min.io/
|
|
||||||
version: 8.0.9
|
|
||||||
digest: sha256:0f43ad0a4b4e9af47615ef3da85054712eb28f154418d96b7b974a095cc19260
|
|
||||||
generated: "2021-01-13T15:31:40.823086-08:00"
|
|
|
@ -1,17 +0,0 @@
|
||||||
apiVersion: v2
|
|
||||||
appVersion: v2.12.5
|
|
||||||
description: A Helm chart for Argo Workflows
|
|
||||||
name: argo
|
|
||||||
version: 0.16.9
|
|
||||||
icon: https://raw.githubusercontent.com/argoproj/argo/master/docs/assets/argo.png
|
|
||||||
home: https://github.com/argoproj/argo-helm
|
|
||||||
maintainers:
|
|
||||||
- name: alexec
|
|
||||||
- name: alexmt
|
|
||||||
- name: jessesuen
|
|
||||||
- name: benjaminws
|
|
||||||
dependencies:
|
|
||||||
- name: minio
|
|
||||||
version: 8.0.9
|
|
||||||
repository: https://helm.min.io/
|
|
||||||
condition: minio.install
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue