merge conflicts
This commit is contained in:
commit
482a205e9a
253 changed files with 16036 additions and 1389 deletions
|
@ -7,6 +7,12 @@ exemptions:
|
|||
reason: "Helm deps are not currently scanned. Maintainers are watching developments to dependabot-core #2237" # Justification of this exemption (mandatory, it will be displayed on the UI)
|
||||
- check: sbom
|
||||
reason: "Tracking Helm dependencies is not yet a stable practice."
|
||||
- check: self_assessment
|
||||
reason: "Refer to self assessments supplied by the codebases Argo Helm supports."
|
||||
- check: signed_releases
|
||||
reason: "Argo Helm releases are made via Artifact Hub, where they are signed. The unsigned GitHub releases are for reference only."
|
||||
- check: license_scanning
|
||||
reason: "Temporary exemption: pending response from CNCF Service Desk"
|
||||
|
||||
# TODO:
|
||||
# License scanning information
|
||||
|
|
6
.github/CODEOWNERS
vendored
Normal file
6
.github/CODEOWNERS
vendored
Normal file
|
@ -0,0 +1,6 @@
|
|||
* @mkilchhofer @jmeridth @yu-croco
|
||||
|
||||
/charts/argo-workflows/ @vladlosev @jmeridth @yu-croco @tico24
|
||||
/charts/argo-cd/ @mbevc1 @mkilchhofer @yu-croco @jmeridth @pdrastil @tico24
|
||||
/charts/argo-events/ @pdrastil @jmeridth @tico24 @yu-croco
|
||||
/charts/argo-rollouts/ @jmeridth @yu-croco
|
10
.github/configs/cr.yaml
vendored
10
.github/configs/cr.yaml
vendored
|
@ -1,2 +1,12 @@
|
|||
## Reference: https://github.com/helm/chart-releaser
|
||||
index-path: "./index.yaml"
|
||||
|
||||
# PGP signing
|
||||
sign: true
|
||||
key: Argo Helm maintainers
|
||||
# keyring: # Set via env variable CR_KEYRING
|
||||
# passphrase-file: # Set via env variable CR_PASSPHRASE_FILE
|
||||
|
||||
# Enable automatic generation of release notes using GitHubs release notes generator.
|
||||
# see: https://docs.github.com/en/repositories/releasing-projects-on-github/automatically-generated-release-notes
|
||||
generate-release-notes: true
|
||||
|
|
1
.github/configs/ct-lint.yaml
vendored
1
.github/configs/ct-lint.yaml
vendored
|
@ -7,7 +7,6 @@ chart-dirs:
|
|||
- charts
|
||||
chart-repos:
|
||||
- dandydeveloper=https://dandydeveloper.github.io/charts/
|
||||
helm-extra-args: "--timeout 600s"
|
||||
validate-chart-schema: false
|
||||
validate-maintainers: true
|
||||
validate-yaml: true
|
||||
|
|
18
.github/configs/labeler.yaml
vendored
18
.github/configs/labeler.yaml
vendored
|
@ -1,17 +1,23 @@
|
|||
argo-cd:
|
||||
- charts/argo-cd/**/*
|
||||
- changed-files:
|
||||
- any-glob-to-any-file: charts/argo-cd/**
|
||||
|
||||
argo-events:
|
||||
- charts/argo-events/**/*
|
||||
- changed-files:
|
||||
- any-glob-to-any-file: charts/argo-events/**
|
||||
|
||||
argo-rollouts:
|
||||
- charts/argo-rollouts/**/*
|
||||
- changed-files:
|
||||
- any-glob-to-any-file: charts/argo-rollouts/**
|
||||
|
||||
argo-workflows:
|
||||
- charts/argo-workflows/**/*
|
||||
- changed-files:
|
||||
- any-glob-to-any-file: charts/argo-workflows/**
|
||||
|
||||
argocd-image-updater:
|
||||
- charts/argocd-image-updater/**/*
|
||||
- changed-files:
|
||||
- any-glob-to-any-file: charts/argocd-image-updater/**
|
||||
|
||||
argocd-apps:
|
||||
- charts/argocd-apps/**/*
|
||||
- changed-files:
|
||||
- any-glob-to-any-file: charts/argocd-apps/**
|
||||
|
|
4
.github/pull_request_template.md
vendored
4
.github/pull_request_template.md
vendored
|
@ -1,6 +1,8 @@
|
|||
<!--
|
||||
Note on DCO:
|
||||
|
||||
If the DCO action in the integration test fails, one or more of your commits are not signed off. Please click on the *Details* link next to the DCO action for instructions on how to resolve this.
|
||||
-->
|
||||
|
||||
Checklist:
|
||||
|
||||
|
@ -11,4 +13,4 @@ Checklist:
|
|||
* [ ] I have signed off all my commits as required by [DCO](https://github.com/argoproj/argoproj/blob/master/community/CONTRIBUTING.md).
|
||||
* [ ] My build is green ([troubleshooting builds](https://argo-cd.readthedocs.io/en/stable/developer-guide/ci/)).
|
||||
|
||||
Changes are automatically published when merged to `main`. They are not published on branches.
|
||||
<!-- Changes are automatically published when merged to `main`. They are not published on branches. -->
|
||||
|
|
57
.github/workflows/chart-version-bump.yml
vendored
Normal file
57
.github/workflows/chart-version-bump.yml
vendored
Normal file
|
@ -0,0 +1,57 @@
|
|||
## Used on Renovate PRs to bump the chart version and add a changelog entry
|
||||
## Reference: https://github.com/stefanzweifel/git-auto-commit-action
|
||||
## Reference: https://github.com/marketplace/actions/changed-files
|
||||
name: 'Chart Version Bump and Changelog'
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
types:
|
||||
- labeled
|
||||
|
||||
permissions:
|
||||
contents: write
|
||||
|
||||
jobs:
|
||||
helm-bumper:
|
||||
if: ${{ (contains(github.event.pull_request.labels.*.name, 'renovate')) }}
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
|
||||
with:
|
||||
token: ${{ secrets.PAT }}
|
||||
fetch-depth: 0
|
||||
|
||||
- name: Get changed files
|
||||
id: changed-files
|
||||
uses: tj-actions/changed-files@ae82ed4ae04587b665efad2f206578aa6f0e8539 # v42.0.0
|
||||
with:
|
||||
files: charts/{argo-workflows,argo-cd,argo-events,argo-rollouts,argocd-image-updater}/Chart.yaml
|
||||
|
||||
- name: "Bump Version and Changelog"
|
||||
run: |
|
||||
chartName="$(echo \"${{ steps.changed-files.outputs.all_changed_files }}\" | cut -d '/' -f2)"
|
||||
echo "Changed chart name is: $chartName"
|
||||
echo "----------------------------------------"
|
||||
|
||||
parentDir="charts/${chartName}"
|
||||
|
||||
# Bump the chart version by one patch version
|
||||
version=$(grep '^version:' ${parentDir}/Chart.yaml | awk '{print $2}')
|
||||
major=$(echo $version | cut -d. -f1)
|
||||
minor=$(echo $version | cut -d. -f2)
|
||||
patch=$(echo $version | cut -d. -f3)
|
||||
patch=$(expr $patch + 1)
|
||||
sed -i "s/^version:.*/version: ${major}.${minor}.${patch}/g" ${parentDir}/Chart.yaml
|
||||
|
||||
# Add a changelog entry
|
||||
appVersion=$(grep '^appVersion:' ${parentDir}/Chart.yaml | awk '{print $2}')
|
||||
sed -i -e '/^ artifacthub.io\/changes: |/,$d' ${parentDir}/Chart.yaml
|
||||
echo " artifacthub.io/changes: |" >> ${parentDir}/Chart.yaml
|
||||
echo " - kind: changed" >> ${parentDir}/Chart.yaml
|
||||
echo " description: Bump ${chartName} to ${appVersion}" >> ${parentDir}/Chart.yaml
|
||||
cat ${parentDir}/Chart.yaml
|
||||
|
||||
- name: "Commit and push changes"
|
||||
uses: stefanzweifel/git-auto-commit-action@8756aa072ef5b4a080af5dc8fef36c5d586e521d # v5.0.0
|
||||
with:
|
||||
commit_options: '--signoff'
|
28
.github/workflows/lint-and-test.yml
vendored
28
.github/workflows/lint-and-test.yml
vendored
|
@ -6,30 +6,42 @@ permissions:
|
|||
contents: read
|
||||
|
||||
jobs:
|
||||
linter-artifacthub:
|
||||
runs-on: ubuntu-latest
|
||||
container:
|
||||
image: public.ecr.aws/artifacthub/ah:v1.14.0
|
||||
options: --user 1001
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
|
||||
- name: Run ah lint
|
||||
working-directory: ./charts
|
||||
run: ah lint
|
||||
|
||||
chart-test:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v3
|
||||
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
- name: Set up Helm
|
||||
uses: azure/setup-helm@v3
|
||||
uses: azure/setup-helm@5119fcb9089d432beecbf79bb2c7915207344b78 # v3.5
|
||||
with:
|
||||
version: v3.10.1 # Also update in publish.yaml
|
||||
|
||||
- name: Set up python
|
||||
uses: actions/setup-python@v4
|
||||
uses: actions/setup-python@0a5c61591373683505ea898e09a3ea4f39ef2b9c # v5.0.0
|
||||
with:
|
||||
python-version: 3.9
|
||||
|
||||
- name: Setup Chart Linting
|
||||
id: lint
|
||||
uses: helm/chart-testing-action@v2.3.0
|
||||
uses: helm/chart-testing-action@e6669bcd63d7cb57cb4380c33043eebe5d111992 # v2.6.1
|
||||
with:
|
||||
# Note: Also update in scripts/lint.sh
|
||||
version: v3.7.0
|
||||
version: v3.10.0
|
||||
|
||||
- name: List changed charts
|
||||
id: list-changed
|
||||
|
@ -38,8 +50,8 @@ jobs:
|
|||
changed=$(ct --config ./.github/configs/ct-lint.yaml --target-branch ${{ github.base_ref }} 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"
|
||||
echo "changed=true" >> $GITHUB_OUTPUT
|
||||
echo "changed_charts=$charts" >> $GITHUB_OUTPUT
|
||||
fi
|
||||
- name: Run chart-testing (lint)
|
||||
run: ct lint --debug --config ./.github/configs/ct-lint.yaml --target-branch ${{ github.base_ref }} --lint-conf ./.github/configs/lintconf.yaml
|
||||
|
@ -56,7 +68,7 @@ jobs:
|
|||
echo -e '\033[0;32mDocumentation up to date\033[0m ✔'
|
||||
fi
|
||||
- name: Create kind cluster
|
||||
uses: helm/kind-action@v1.4.0
|
||||
uses: helm/kind-action@dda0770415bac9fc20092cacbc54aa298604d140 # v1.8.0
|
||||
if: steps.list-changed.outputs.changed == 'true'
|
||||
with:
|
||||
config: .github/configs/kind-config.yaml
|
||||
|
|
11
.github/workflows/pr-sizing.yml
vendored
11
.github/workflows/pr-sizing.yml
vendored
|
@ -1,8 +1,12 @@
|
|||
## Reference: https://github.com/pascalgn/size-label-action
|
||||
name: 'PR Labeling'
|
||||
|
||||
on:
|
||||
pull_request_target:
|
||||
types: [opened, synchronize, reopened]
|
||||
types:
|
||||
- opened
|
||||
- synchronize
|
||||
- reopened
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
|
@ -12,7 +16,7 @@ jobs:
|
|||
triage:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/labeler@v4
|
||||
- uses: actions/labeler@8558fd74291d67161a8a78ce36a881fa63b766a9 # v5.0.0
|
||||
with:
|
||||
configuration-path: ".github/configs/labeler.yaml"
|
||||
repo-token: "${{ secrets.GITHUB_TOKEN }}"
|
||||
|
@ -21,7 +25,6 @@ jobs:
|
|||
size-label:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: size-label
|
||||
uses: "pascalgn/size-label-action@v0.4.3"
|
||||
- uses: pascalgn/size-label-action@37a5ad4ae20ea8032abf169d953bcd661fd82cd3 # v0.5.0
|
||||
env:
|
||||
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
|
||||
|
|
3
.github/workflows/pr-title.yml
vendored
3
.github/workflows/pr-title.yml
vendored
|
@ -19,7 +19,7 @@ jobs:
|
|||
name: Validate PR title
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: amannn/action-semantic-pull-request@v5
|
||||
- uses: amannn/action-semantic-pull-request@e9fabac35e210fea40ca5b14c0da95a099eff26f # v5.4.0
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
with:
|
||||
|
@ -31,6 +31,7 @@ jobs:
|
|||
argo-workflows
|
||||
argocd-image-updater
|
||||
argocd-apps
|
||||
deps
|
||||
github
|
||||
# Configure that a scope must always be provided.
|
||||
requireScope: true
|
||||
|
|
5
.github/workflows/publish.yml
vendored
5
.github/workflows/publish.yml
vendored
|
@ -11,15 +11,16 @@ jobs:
|
|||
publish:
|
||||
permissions:
|
||||
contents: write # for helm/chart-releaser-action to push chart release and create a release
|
||||
packages: write # to push OCI chart package to GitHub Registry
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v3
|
||||
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
- name: Install Helm
|
||||
uses: azure/setup-helm@v3
|
||||
uses: azure/setup-helm@5119fcb9089d432beecbf79bb2c7915207344b78 # v3.5
|
||||
with:
|
||||
version: v3.10.1 # Also update in lint-and-test.yaml
|
||||
|
||||
|
|
73
.github/workflows/scorecard.yml
vendored
Normal file
73
.github/workflows/scorecard.yml
vendored
Normal file
|
@ -0,0 +1,73 @@
|
|||
# This workflow uses actions that are not certified by GitHub. They are provided
|
||||
# by a third-party and are governed by separate terms of service, privacy
|
||||
# policy, and support documentation.
|
||||
|
||||
name: Scorecard supply-chain security
|
||||
on:
|
||||
# For Branch-Protection check. Only the default branch is supported. See
|
||||
# https://github.com/ossf/scorecard/blob/main/docs/checks.md#branch-protection
|
||||
branch_protection_rule:
|
||||
# To guarantee Maintained check is occasionally updated. See
|
||||
# https://github.com/ossf/scorecard/blob/main/docs/checks.md#maintained
|
||||
schedule:
|
||||
- cron: '21 6 * * 6'
|
||||
push:
|
||||
branches: [ "main" ]
|
||||
|
||||
# Declare default permissions as read only.
|
||||
permissions: read-all
|
||||
|
||||
jobs:
|
||||
analysis:
|
||||
if: github.repository_owner == 'argoproj'
|
||||
name: Scorecard analysis
|
||||
runs-on: ubuntu-latest
|
||||
permissions:
|
||||
# Needed to upload the results to code-scanning dashboard.
|
||||
security-events: write
|
||||
# Needed to publish results and get a badge (see publish_results below).
|
||||
id-token: write
|
||||
# Uncomment the permissions below if installing in a private repository.
|
||||
# contents: read
|
||||
# actions: read
|
||||
|
||||
steps:
|
||||
- name: "Checkout code"
|
||||
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
|
||||
with:
|
||||
persist-credentials: false
|
||||
|
||||
- name: "Run analysis"
|
||||
uses: ossf/scorecard-action@0864cf19026789058feabb7e87baa5f140aac736 # v2.3.1
|
||||
with:
|
||||
results_file: results.sarif
|
||||
results_format: sarif
|
||||
# (Optional) "write" PAT token. Uncomment the `repo_token` line below if:
|
||||
# - you want to enable the Branch-Protection check on a *public* repository, or
|
||||
# - you are installing Scorecard on a *private* repository
|
||||
# To create the PAT, follow the steps in https://github.com/ossf/scorecard-action#authentication-with-pat.
|
||||
repo_token: ${{ secrets.SCORECARD_TOKEN }}
|
||||
|
||||
# Public repositories:
|
||||
# - Publish results to OpenSSF REST API for easy access by consumers
|
||||
# - Allows the repository to include the Scorecard badge.
|
||||
# - See https://github.com/ossf/scorecard-action#publishing-results.
|
||||
# For private repositories:
|
||||
# - `publish_results` will always be set to `false`, regardless
|
||||
# of the value entered here.
|
||||
publish_results: true
|
||||
|
||||
# Upload the results as artifacts (optional). Commenting out will disable uploads of run results in SARIF
|
||||
# format to the repository Actions tab.
|
||||
- name: "Upload artifact"
|
||||
uses: actions/upload-artifact@694cdabd8bdb0f10b2cea11669e1bf5453eed0a6 # v4.2.0
|
||||
with:
|
||||
name: SARIF file
|
||||
path: results.sarif
|
||||
retention-days: 5
|
||||
|
||||
# Upload the results to GitHub's code scanning dashboard.
|
||||
- name: "Upload to code-scanning"
|
||||
uses: github/codeql-action/upload-sarif@cdcdbb579706841c47f7063dda365e292e5cad7a # v2.13.4
|
||||
with:
|
||||
sarif_file: results.sarif
|
2
.github/workflows/stale.yml
vendored
2
.github/workflows/stale.yml
vendored
|
@ -14,7 +14,7 @@ jobs:
|
|||
pull-requests: write # for actions/stale to close stale PRs
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/stale@v7
|
||||
- uses: actions/stale@28ca1036281a5e5922ead5184a1bbf96e5fc984e # v9.0.0
|
||||
with:
|
||||
repo-token: ${{ secrets.GITHUB_TOKEN }}
|
||||
# Number of days of inactivity before an issue becomes stale
|
||||
|
|
16
CODEOWNERS
16
CODEOWNERS
|
@ -1,16 +0,0 @@
|
|||
# https://help.github.com/en/github/creating-cloning-and-archiving-repositories/about-code-owners
|
||||
|
||||
# Other and new charts
|
||||
/charts/ @oliverbaehler
|
||||
|
||||
# Argo Workflows
|
||||
/charts/argo-workflows/ @stefansedich @paguos @vladlosev @yann-soubeyrand @jmeridth @yu-croco
|
||||
|
||||
# Argo CD
|
||||
/charts/argo-cd/ @davidkarlsen @mr-sour @yann-soubeyrand @mbevc1 @mkilchhofer @yu-croco @jmeridth @pdrastil
|
||||
|
||||
# Argo Events
|
||||
/charts/argo-events/ @jbehling @VaibhavPage @pdrastil
|
||||
|
||||
# Argo Rollouts
|
||||
/charts/argo-rollouts/
|
9
CODE_OF_CONDUCT.md
Normal file
9
CODE_OF_CONDUCT.md
Normal file
|
@ -0,0 +1,9 @@
|
|||
# Code of Conduct
|
||||
|
||||
We adhere to the [CNCF Code of Conduct](https://github.com/cncf/foundation/blob/main/code-of-conduct.md). Please reference the link for details.
|
||||
|
||||
## TL;DR (too long didn't read)
|
||||
|
||||
Be kind
|
||||
|
||||
Your participation is at the discression of the maintainers of this project.
|
|
@ -47,6 +47,8 @@ Any breaking changes to a chart (backwards incompatible) require:
|
|||
|
||||
### New Application Versions
|
||||
|
||||
Helm charts are intended to be created for all non-patched releases of Argo CD, Workflows, Rollouts, and Events. Associated dependencies, such as Redis, will use the version recommended by the associated release.
|
||||
|
||||
When selecting new application versions ensure you make the following changes:
|
||||
|
||||
* `values.yaml`: Bump all instances of the container image version
|
||||
|
@ -64,7 +66,7 @@ Each release for each chart must be immutable. Any change to a chart (even just
|
|||
|
||||
### Chart Versioning
|
||||
|
||||
Currently we require a chart version bump for every change to a chart, including updating information for older verions. This may change in the future.
|
||||
Currently we require a chart version bump for every change to a chart, including updating information for older versions. This may change in the future.
|
||||
|
||||
### Artifact Hub Annotations
|
||||
|
||||
|
@ -122,7 +124,7 @@ helm install charts/argo-workflows -n argo
|
|||
argo version
|
||||
```
|
||||
|
||||
Follow this instructions for running a hello world workflow.
|
||||
Follow [these](https://argoproj.github.io/argo-workflows/quick-start/#submitting-an-example-workflow) instructions for running a hello world workflow.
|
||||
|
||||
### Testing Argo CD Changes
|
||||
|
||||
|
|
14
EMERITUS.md
Normal file
14
EMERITUS.md
Normal file
|
@ -0,0 +1,14 @@
|
|||
# Emeritus Approvers
|
||||
|
||||
These are the people who have been approvers in the past, and have since retired from the role.
|
||||
|
||||
We thank them for their service to the project.
|
||||
|
||||
| Emeritus | GitHub ID |
|
||||
| -------- | --------- |
|
||||
| Oliver Bähler | [oliverbaehler](https://github.com/oliverbaehler) |
|
||||
| Stefan Sedich | [stefansedich](https://github.com/stefansedich) |
|
||||
| Pablo Osinaga | [paguos](https://github.com/paguos) |
|
||||
| Yann Soubeyrand | [yann-soubeyrand](https://github.com/yann-soubeyrand) |
|
||||
| David J. M. Karlsen | [davidkarlsen](https://github.com/davidkarlsen) |
|
||||
| John Behling | [jbehling](https://github.com/jbehling) |
|
9
OWNERS
9
OWNERS
|
@ -1,9 +0,0 @@
|
|||
owners:
|
||||
- alexec
|
||||
- alexmt
|
||||
- jessesuen
|
||||
|
||||
approvers:
|
||||
- alexec
|
||||
- alexmt
|
||||
- jessesuen
|
24
README.md
24
README.md
|
@ -1,13 +1,16 @@
|
|||
# Argo Helm Charts
|
||||
|
||||
[](https://argoproj.github.io/community/join-slack)
|
||||
[](https://opensource.org/licenses/Apache-2.0)
|
||||
[](https://github.com/argoproj/argo-helm/actions/workflows/publish.yml)
|
||||
[](https://artifacthub.io/packages/search?repo=argo)
|
||||
[](https://clomonitor.io/projects/cncf/argo)
|
||||
[](https://api.securityscorecards.dev/projects/github.com/argoproj/argo-helm)
|
||||
[](https://www.bestpractices.dev/projects/7942)
|
||||
|
||||
Argo Helm is a collection of **community maintained** charts for [https://argoproj.github.io](https://argoproj.github.io) projects. The charts can be added using following command:
|
||||
|
||||
```
|
||||
```bash
|
||||
helm repo add argo https://argoproj.github.io/argo-helm
|
||||
```
|
||||
|
||||
|
@ -15,9 +18,26 @@ helm repo add argo https://argoproj.github.io/argo-helm
|
|||
|
||||
We'd love to have you contribute! Please refer to our [contribution guidelines](CONTRIBUTING.md) for details.
|
||||
|
||||
### Custom resource definitions
|
||||
|
||||
Some users would prefer to install the CRDs _outside_ of the chart. You can disable the CRD installation of the main four charts (argo-cd, argo-workflows, argo-events, argo-rollouts) by using `--set crds.install=false` when installing the chart.
|
||||
|
||||
Helm cannot upgrade custom resource definitions in the `<chart>/crds` folder [by design](https://helm.sh/docs/chart_best_practices/custom_resource_definitions/#some-caveats-and-explanations). Our CRDs have been moved to `<chart>/templates` to address this design decision.
|
||||
|
||||
If you are using versions of a chart that have the CRDs in the root of the chart or have elected to manage the Argo CRDs outside of the chart, please use `kubectl` to upgrade CRDs manually from [templates/crds](templates/crds/) folder or via the manifests from the upstream project repo:
|
||||
|
||||
Example:
|
||||
|
||||
```bash
|
||||
kubectl apply -k "https://github.com/argoproj/argo-cd/manifests/crds?ref=<appVersion>"
|
||||
|
||||
# Eg. version v2.4.9
|
||||
kubectl apply -k "https://github.com/argoproj/argo-cd/manifests/crds?ref=v2.4.9"
|
||||
```
|
||||
|
||||
### Security Policy
|
||||
|
||||
If you have a security concern relating to either this project repo or an individual helm chart, please [open an issue](https://github.com/argoproj/argo-helm/issues/new/choose) or [start a discussion](https://github.com/argoproj/argo-helm/discussions/new).
|
||||
Please refer to [SECURITY.md](SECURITY.md) for details on how to report security issues.
|
||||
|
||||
### Changelog
|
||||
|
||||
|
|
38
SECURITY-INSIGHTS.yml
Normal file
38
SECURITY-INSIGHTS.yml
Normal file
|
@ -0,0 +1,38 @@
|
|||
header:
|
||||
schema-version: '1.0.0'
|
||||
expiration-date: '2024-11-04T10:00:00.000Z'
|
||||
project-url: https://github.com/argoproj/argo-helm
|
||||
project-lifecycle:
|
||||
status: active
|
||||
bug-fixes-only: false
|
||||
core-maintainers:
|
||||
- https://github.com/mkilchhofer
|
||||
- https://github.com/jmeridth
|
||||
contribution-policy:
|
||||
accepts-pull-requests: true
|
||||
accepts-automated-pull-requests: true
|
||||
automated-tools-list:
|
||||
- automated-tool: dependabot
|
||||
action: allowed
|
||||
path:
|
||||
- /
|
||||
contributing-policy: https://github.com/argoproj/argo-helm/blob/main/CONTRIBUTING.md
|
||||
code-of-conduct: https://github.com/cncf/foundation/blob/master/code-of-conduct.md
|
||||
distribution-points:
|
||||
- https://argoproj.github.io/argo-helm
|
||||
- https://artifacthub.io/packages/search?org=argoproj&repo=argo
|
||||
security-contacts:
|
||||
- type: website
|
||||
value: https://github.com/argoproj/argo-helm/security/advisories/new
|
||||
primary: true
|
||||
vulnerability-reporting:
|
||||
accepts-vulnerability-reports: true
|
||||
email-contact: cncf-argo-maintainers@lists.cncf.io
|
||||
security-policy: https://github.com/argoproj/argo-helm/blob/main/SECURITY.md
|
||||
comment: |
|
||||
Our preferred contact method related to vulnerabilities is the Security tab on GitHub.
|
||||
Click the button "Report a vulnerability" to open the advisory form.
|
||||
Please refer to the security policy for reporting information prior to using the email contact.
|
||||
dependencies:
|
||||
env-dependencies-policy:
|
||||
policy-url: https://github.com/argoproj/argo-helm/blob/master/CONTRIBUTING.md#new-application-versions
|
21
SECURITY.md
Normal file
21
SECURITY.md
Normal file
|
@ -0,0 +1,21 @@
|
|||
# Security Policy
|
||||
|
||||
## Supported Versions and Upstream Reporting
|
||||
|
||||
Each helm chart currently supports the designated application version in the Chart.yaml. There is a chance a security issue you've discovered may not be with the helm chart but with the upstream application. Please visit that application's Security policy document to find out how to report the security issue.
|
||||
|
||||
* [Security Policy for Argo Workflows](https://github.com/argoproj/argo-workflows/blob/master/SECURITY.md)
|
||||
* [Security Policy for Argo Events](https://github.com/argoproj/argo-events/blob/master/SECURITY.md)
|
||||
* [Security Policy for Argo Rollouts](https://github.com/argoproj/argo-rollouts/blob/master/docs/security.md)
|
||||
* [Security Policy for Argo CD](https://github.com/argoproj/argo-cd/blob/master/SECURITY.md)
|
||||
* [Security Policy for Argo CD Image Updater](https://github.com/argoproj-labs/argocd-image-updater/blob/master/SECURITY.md)
|
||||
|
||||
## Reporting a Vulnerability for Argo Helm Charts
|
||||
|
||||
We have enabled the ability to privately report security issues through the Security tab above.
|
||||
|
||||
[Here are the details on how to file](https://docs.github.com/en/code-security/security-advisories/guidance-on-reporting-and-writing/privately-reporting-a-security-vulnerability#privately-reporting-a-security-vulnerability) on how to do that
|
||||
|
||||
A repository owner/maintainer will respond as fast as possible to coordinate confirmation of issue and remediation.
|
||||
|
||||
Thank you for helping to ensure this code stays secure.
|
|
@ -1,6 +1,6 @@
|
|||
dependencies:
|
||||
- name: redis-ha
|
||||
repository: https://dandydeveloper.github.io/charts/
|
||||
version: 4.22.4
|
||||
digest: sha256:5df60910862b364ebfb82cba2b2f0951c39ad36446647fb3f501bdeadc92fbd7
|
||||
generated: "2022-12-26T22:58:11.561184+09:00"
|
||||
version: 4.23.0
|
||||
digest: sha256:589f9972fbdf36194d443c9d3be2a1747f43e03c435fc48004cc0cbe6b3c6e3c
|
||||
generated: "2023-05-15T19:25:26.049618+09:00"
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
apiVersion: v2
|
||||
appVersion: v2.5.9
|
||||
kubeVersion: ">=1.22.0-0"
|
||||
appVersion: v2.9.5
|
||||
kubeVersion: ">=1.23.0-0"
|
||||
description: A Helm chart for Argo CD, a declarative, GitOps continuous delivery tool for Kubernetes.
|
||||
name: argo-cd
|
||||
version: 5.19.12
|
||||
version: 5.53.9
|
||||
home: https://github.com/argoproj/argo-helm
|
||||
icon: https://argo-cd.readthedocs.io/en/stable/assets/logo.png
|
||||
sources:
|
||||
|
@ -18,10 +18,13 @@ maintainers:
|
|||
url: https://argoproj.github.io/
|
||||
dependencies:
|
||||
- name: redis-ha
|
||||
version: 4.22.4
|
||||
version: 4.23.0
|
||||
repository: https://dandydeveloper.github.io/charts/
|
||||
condition: redis-ha.enabled
|
||||
annotations:
|
||||
artifacthub.io/signKey: |
|
||||
fingerprint: 2B8F22F57260EFA67BE1C5824B11F800CD9D2252
|
||||
url: https://argoproj.github.io/argo-helm/pgp_keys.asc
|
||||
artifacthub.io/changes: |
|
||||
- kind: fixed
|
||||
description: Align changelog structure to show changelogs on Artifact Hub
|
||||
description: Fixed labels template for ArgoCD server service account.
|
||||
|
|
|
@ -42,7 +42,7 @@ repoServer:
|
|||
minReplicas: 2
|
||||
|
||||
applicationSet:
|
||||
replicaCount: 2
|
||||
replicas: 2
|
||||
```
|
||||
|
||||
### HA mode without autoscaling
|
||||
|
@ -61,7 +61,7 @@ repoServer:
|
|||
replicas: 2
|
||||
|
||||
applicationSet:
|
||||
replicaCount: 2
|
||||
replicas: 2
|
||||
```
|
||||
|
||||
### Synchronizing Changes from Original Repository
|
||||
|
@ -105,9 +105,44 @@ For full list of changes please check ArtifactHub [changelog].
|
|||
|
||||
Highlighted versions provide information about additional steps that should be performed by user when upgrading to newer version.
|
||||
|
||||
### 5.53.0
|
||||
|
||||
Argocd-repo-server can now optionally use Persistent Volumes for its mountpoints instead of only emptydir()
|
||||
|
||||
### 5.52.0
|
||||
Because [Argo CD Extensions] is now deprecated and no further changes will be made, we switched to [Argo CD Extension Installer], adding an Argo CD Extension Installer to init-container in the Argo CD API server.
|
||||
If you used old mechanism, please move to new mechanism. For more details, please refer `.Values.server.extensions` in values.yaml.
|
||||
|
||||
### 5.35.0
|
||||
This version supports Kubernetes version `>=1.23.0-0`. The current supported version of Kubernetes is v1.24 or later and we align with the Amazon EKS calendar, because many AWS users follow a conservative approach.
|
||||
|
||||
Please see more information about EoL: [Amazon EKS EoL][EKS EoL].
|
||||
|
||||
### 5.31.0
|
||||
The manifests are now using [`tini` as entrypoint][tini], instead of `entrypoint.sh`. Until Argo CD v2.8, `entrypoint.sh` is retained for upgrade compatibility.
|
||||
This means that the deployment manifests have to be updated after upgrading to Argo CD v2.7, and before upgrading to Argo CD v2.8 later.
|
||||
In case the manifests are updated before moving to Argo CD v2.8, the containers will not be able to start.
|
||||
|
||||
### 5.26.0
|
||||
|
||||
This version adds support for Config Management Plugins using the sidecar model and configured in a ConfigMap named `argocd-cmp-cm`.
|
||||
Users will need to migrate from the previous `argocd-cm` ConfigMap method to using the sidecar method before Argo CD v2.8. See the [Argo CD CMP migration guide](https://argo-cd.readthedocs.io/en/stable/operator-manual/config-management-plugins/#migrating-from-argocd-cm-plugins) for more specifics.
|
||||
|
||||
To migrate your plugins, you can now set the `configs.cmp.create` to `true` and move your plugins from `configs.cm` to `configs.cmp.plugins`.
|
||||
You will also need to configure the sidecar containers under `repoServer.extraContainers` and ensure you are mounting any custom volumes you need from `repoServer.volumes` into here also.
|
||||
|
||||
### 5.24.0
|
||||
|
||||
This version adds additional global parameters for scheduling (`nodeSelector`, `tolerations`, `topologySpreadConstraints`).
|
||||
Default `global.affinity` rules can be disabled when `none` value is used for the preset.
|
||||
|
||||
### 5.22.0
|
||||
|
||||
This version adds `global.affinity` options that are used as a presets. Override on component level works as before and replaces the default preset completely.
|
||||
|
||||
### 5.19.0
|
||||
|
||||
This version consolidates config for custom repository TLS certificates and SSH known hosts. If you provide this values please move them into new `configs.ssh` and `configs.tls` sections.
|
||||
This version consolidates config for custom repository TLS certificates and SSH known hosts. If you provided these values (`configs.knownHosts.*`, `configs.knownHostsAnnotations`, `configs.tlsCerts`, `configs.tlsCertsAnnotations`) please move them into new `configs.ssh` and `configs.tls` sections.
|
||||
You can also use new option `configs.ssh.extraHosts` to configure your SSH keys without maintaing / overwritting keys for public Git repositories.
|
||||
|
||||
### 5.13.0
|
||||
|
@ -342,7 +377,9 @@ server:
|
|||
|
||||
## Prerequisites
|
||||
|
||||
- Kubernetes: `>=1.22.0-0`
|
||||
- Kubernetes: `>=1.23.0-0`
|
||||
- We align with [Amazon EKS calendar][EKS EoL] because there are many AWS users and it's a conservative approach.
|
||||
- Please check [Support Matrix of Argo CD][Kubernetes Compatibility Matrix] for official info.
|
||||
- Helm v3.0.0+
|
||||
|
||||
## Installing the Chart
|
||||
|
@ -362,9 +399,8 @@ NAME: my-release
|
|||
|
||||
| Key | Type | Default | Description |
|
||||
|-----|------|---------|-------------|
|
||||
| apiVersionOverrides.autoscaling | string | `""` | String to override apiVersion of autoscaling rendered by this helm chart |
|
||||
| apiVersionOverrides.certmanager | string | `""` | String to override apiVersion of cert-manager resources rendered by this helm chart |
|
||||
| apiVersionOverrides.cloudgoogle | string | `""` | String to override apiVersion of GKE resources rendered by this helm chart |
|
||||
| crds.additionalLabels | object | `{}` | Addtional labels to be added to all CRDs |
|
||||
| crds.annotations | object | `{}` | Annotations to be added to all CRDs |
|
||||
| crds.install | bool | `true` | Install and upgrade CRDs |
|
||||
| crds.keep | bool | `true` | Keep CRDs on chart uninstall |
|
||||
|
@ -380,8 +416,15 @@ NAME: my-release
|
|||
|
||||
| Key | Type | Default | Description |
|
||||
|-----|------|---------|-------------|
|
||||
| global.addPrometheusAnnotations | bool | `false` | Add Prometheus scrape annotations to all metrics services. This can be used as an alternative to the ServiceMonitors. |
|
||||
| global.additionalLabels | object | `{}` | Common labels for the all resources |
|
||||
| global.affinity.nodeAffinity.matchExpressions | list | `[]` | Default match expressions for node affinity |
|
||||
| global.affinity.nodeAffinity.type | string | `"hard"` | Default node affinity rules. Either: `none`, `soft` or `hard` |
|
||||
| global.affinity.podAntiAffinity | string | `"soft"` | Default pod anti-affinity rules. Either: `none`, `soft` or `hard` |
|
||||
| global.certificateAnnotations | object | `{}` | Annotations for the all deployed Certificates |
|
||||
| global.deploymentAnnotations | object | `{}` | Annotations for the all deployed Deployments |
|
||||
| global.deploymentStrategy | object | `{}` | Deployment strategy for the all deployed Deployments |
|
||||
| global.env | list | `[]` | Environment variables to pass to all deployed Deployments |
|
||||
| global.hostAliases | list | `[]` | Mapping between IP and hostnames that will be injected as entries in the pod's hosts files |
|
||||
| global.image.imagePullPolicy | string | `"IfNotPresent"` | If defined, a imagePullPolicy applied to all Argo CD deployments |
|
||||
| global.image.repository | string | `"quay.io/argoproj/argocd"` | If defined, a repository applied to all Argo CD deployments |
|
||||
|
@ -391,11 +434,15 @@ NAME: my-release
|
|||
| global.logging.level | string | `"info"` | Set the global logging level. One of: `debug`, `info`, `warn` or `error` |
|
||||
| global.networkPolicy.create | bool | `false` | Create NetworkPolicy objects for all components |
|
||||
| global.networkPolicy.defaultDenyIngress | bool | `false` | Default deny all ingress traffic |
|
||||
| global.nodeSelector | object | `{}` | Default node selector for all components |
|
||||
| global.podAnnotations | object | `{}` | Annotations for the all deployed pods |
|
||||
| global.podLabels | object | `{}` | Labels for the all deployed pods |
|
||||
| global.priorityClassName | string | `""` | Default priority class for all components |
|
||||
| global.revisionHistoryLimit | int | `3` | Number of old deployment ReplicaSets to retain. The rest will be garbage collected. |
|
||||
| global.securityContext | object | `{}` (See [values.yaml]) | Toggle and define pod-level security context. |
|
||||
| global.statefulsetAnnotations | object | `{}` | Annotations for the all deployed Statefulsets |
|
||||
| global.tolerations | list | `[]` | Default tolerations for all components |
|
||||
| global.topologySpreadConstraints | list | `[]` | Default [TopologySpreadConstraints] rules for all components |
|
||||
|
||||
## Argo CD Configs
|
||||
|
||||
|
@ -403,7 +450,7 @@ NAME: my-release
|
|||
|-----|------|---------|-------------|
|
||||
| configs.clusterCredentials | list | `[]` (See [values.yaml]) | Provide one or multiple [external cluster credentials] |
|
||||
| configs.cm."admin.enabled" | bool | `true` | Enable local admin user |
|
||||
| configs.cm."application.instanceLabelKey" | string | Defaults to app.kubernetes.io/instance | The name of tracking label used by Argo CD for resource pruning |
|
||||
| configs.cm."application.instanceLabelKey" | string | `"argocd.argoproj.io/instance"` | The name of tracking label used by Argo CD for resource pruning |
|
||||
| configs.cm."exec.enabled" | bool | `false` | Enable exec feature in Argo UI |
|
||||
| configs.cm."server.rbac.log.enforce.enable" | bool | `false` | Enable logs RBAC enforcement |
|
||||
| configs.cm."timeout.hard.reconciliation" | string | `"0s"` | Timeout to refresh application data as well as target manifests cache |
|
||||
|
@ -411,10 +458,16 @@ NAME: my-release
|
|||
| configs.cm.annotations | object | `{}` | Annotations to be added to argocd-cm configmap |
|
||||
| configs.cm.create | bool | `true` | Create the argocd-cm configmap for [declarative setup] |
|
||||
| configs.cm.url | string | `""` | Argo CD's externally facing base URL (optional). Required when configuring SSO |
|
||||
| configs.cmp.annotations | object | `{}` | Annotations to be added to argocd-cmp-cm configmap |
|
||||
| configs.cmp.create | bool | `false` | Create the argocd-cmp-cm configmap |
|
||||
| configs.cmp.plugins | object | `{}` | Plugin yaml files to be added to argocd-cmp-cm |
|
||||
| configs.credentialTemplates | object | `{}` | Repository credentials to be used as Templates for other repos |
|
||||
| configs.credentialTemplatesAnnotations | object | `{}` | Annotations to be added to `configs.credentialTemplates` Secret |
|
||||
| configs.gpg.annotations | object | `{}` | Annotations to be added to argocd-gpg-keys-cm configmap |
|
||||
| configs.gpg.keys | object | `{}` (See [values.yaml]) | [GnuPG] public keys to add to the keyring |
|
||||
| configs.params."application.namespaces" | string | `""` | Enables [Applications in any namespace] |
|
||||
| configs.params."applicationsetcontroller.enable.progressive.syncs" | bool | `false` | Enables use of the Progressive Syncs capability |
|
||||
| configs.params."applicationsetcontroller.policy" | string | `"sync"` | Modify how application is synced between the generator and the cluster. One of: `sync`, `create-only`, `create-update`, `create-delete` |
|
||||
| configs.params."controller.operation.processors" | int | `10` | Number of application operation processors |
|
||||
| configs.params."controller.repo.server.timeout.seconds" | int | `60` | Repo server RPC call timeout seconds. |
|
||||
| configs.params."controller.self.heal.timeout.seconds" | int | `5` | Specifies timeout between application self heal attempts |
|
||||
|
@ -423,14 +476,16 @@ NAME: my-release
|
|||
| configs.params."reposerver.parallelism.limit" | int | `0` | Limit on number of concurrent manifests generate requests. Any value less the 1 means no limit. |
|
||||
| configs.params."server.basehref" | string | `"/"` | Value for base href in index.html. Used if Argo CD is running behind reverse proxy under subpath different from / |
|
||||
| configs.params."server.disable.auth" | bool | `false` | Disable Argo CD RBAC for user authentication |
|
||||
| configs.params."server.enable.gzip" | bool | `false` | Enable GZIP compression |
|
||||
| configs.params."server.enable.gzip" | bool | `true` | Enable GZIP compression |
|
||||
| configs.params."server.insecure" | bool | `false` | Run server without TLS |
|
||||
| configs.params."server.rootpath" | string | `""` | Used if Argo CD is running behind reverse proxy under subpath different from / |
|
||||
| configs.params."server.staticassets" | string | `"/shared/app"` | Directory path that contains additional static assets |
|
||||
| configs.params."server.x.frame.options" | string | `"sameorigin"` | Set X-Frame-Options header in HTTP responses to value. To disable, set to "". |
|
||||
| configs.params.annotations | object | `{}` | Annotations to be added to the argocd-cmd-params-cm ConfigMap |
|
||||
| configs.params.create | bool | `true` | Create the argocd-cmd-params-cm configmap If false, it is expected the configmap will be created by something else. |
|
||||
| configs.rbac."policy.csv" | string | `''` (See [values.yaml]) | File containing user-defined policies and role definitions. |
|
||||
| configs.rbac."policy.default" | string | `""` | The name of the default role which Argo CD will falls back to, when authorizing API requests (optional). If omitted or empty, users may be still be able to login, but will see no apps, projects, etc... |
|
||||
| configs.rbac."policy.matchMode" | string | `"glob"` | Matcher function for Casbin, `glob` for glob matcher and `regex` for regex matcher. |
|
||||
| configs.rbac.annotations | object | `{}` | Annotations to be added to argocd-rbac-cm configmap |
|
||||
| configs.rbac.create | bool | `true` | Create the argocd-rbac-cm configmap with ([Argo CD RBAC policy]) definitions. If false, it is expected the configmap will be created by something else. Argo CD will not work if there is no configmap created with the name above. |
|
||||
| configs.rbac.scopes | string | `"[groups]"` | OIDC scopes to examine during rbac enforcement (in addition to `sub` scope). The scope value can be a string, or a list of strings. |
|
||||
|
@ -439,6 +494,8 @@ NAME: my-release
|
|||
| configs.secret.annotations | object | `{}` | Annotations to be added to argocd-secret |
|
||||
| configs.secret.argocdServerAdminPassword | string | `""` | Bcrypt hashed admin password |
|
||||
| configs.secret.argocdServerAdminPasswordMtime | string | `""` (defaults to current time) | Admin password modification time. Eg. `"2006-01-02T15:04:05Z"` |
|
||||
| configs.secret.azureDevops.password | string | `""` | Shared secret password for authenticating Azure DevOps webhook events |
|
||||
| configs.secret.azureDevops.username | string | `""` | Shared secret username for authenticating Azure DevOps webhook events |
|
||||
| configs.secret.bitbucketServerSecret | string | `""` | Shared secret for authenticating BitbucketServer webhook events |
|
||||
| configs.secret.bitbucketUUID | string | `""` | UUID for authenticating Bitbucket webhook events |
|
||||
| configs.secret.createSecret | bool | `true` | Create the argocd-secret |
|
||||
|
@ -458,16 +515,19 @@ NAME: my-release
|
|||
|
||||
| Key | Type | Default | Description |
|
||||
|-----|------|---------|-------------|
|
||||
| controller.affinity | object | `{}` | Assign custom [affinity] rules to the deployment |
|
||||
| controller.affinity | object | `{}` (defaults to global.affinity preset) | Assign custom [affinity] rules to the deployment |
|
||||
| controller.args | object | `{}` | DEPRECATED - Application controller commandline flags |
|
||||
| controller.clusterRoleRules.enabled | bool | `false` | Enable custom rules for the application controller's ClusterRole resource |
|
||||
| controller.clusterRoleRules.rules | list | `[]` | List of custom rules for the application controller's ClusterRole resource |
|
||||
| controller.containerPorts.metrics | int | `8082` | Metrics container port |
|
||||
| controller.containerSecurityContext | object | See [values.yaml] | Application controller container-level security context |
|
||||
| controller.dnsConfig | object | `{}` | [DNS configuration] |
|
||||
| controller.dnsPolicy | string | `"ClusterFirst"` | Alternative DNS policy for application controller pods |
|
||||
| controller.env | list | `[]` | Environment variables to pass to application controller |
|
||||
| controller.envFrom | list | `[]` (See [values.yaml]) | envFrom to pass to application controller |
|
||||
| controller.extraArgs | list | `[]` | Additional command line arguments to pass to application controller |
|
||||
| controller.extraContainers | list | `[]` | Additional containers to be added to the application controller pod |
|
||||
| controller.hostNetwork | bool | `false` | Host Network for application controller pods |
|
||||
| controller.image.imagePullPolicy | string | `""` (defaults to global.image.imagePullPolicy) | Image pull policy for the application controller |
|
||||
| controller.image.repository | string | `""` (defaults to global.image.repository) | Repository to use for the application controller |
|
||||
| controller.image.tag | string | `""` (defaults to global.image.tag) | Tag to use for the application controller |
|
||||
|
@ -476,12 +536,18 @@ NAME: my-release
|
|||
| controller.metrics.applicationLabels.enabled | bool | `false` | Enables additional labels in argocd_app_labels metric |
|
||||
| controller.metrics.applicationLabels.labels | list | `[]` | Additional labels |
|
||||
| controller.metrics.enabled | bool | `false` | Deploy metrics service |
|
||||
| controller.metrics.rules.additionalLabels | object | `{}` | PrometheusRule labels |
|
||||
| controller.metrics.rules.annotations | object | `{}` | PrometheusRule annotations |
|
||||
| controller.metrics.rules.enabled | bool | `false` | Deploy a PrometheusRule for the application controller |
|
||||
| controller.metrics.rules.namespace | string | `""` | PrometheusRule namespace |
|
||||
| controller.metrics.rules.selector | object | `{}` | PrometheusRule selector |
|
||||
| controller.metrics.rules.spec | list | `[]` | PrometheusRule.Spec for the application controller |
|
||||
| controller.metrics.service.annotations | object | `{}` | Metrics service annotations |
|
||||
| controller.metrics.service.clusterIP | string | `""` | Metrics service clusterIP. `None` makes a "headless service" (no virtual IP) |
|
||||
| controller.metrics.service.labels | object | `{}` | Metrics service labels |
|
||||
| controller.metrics.service.portName | string | `"http-metrics"` | Metrics service port name |
|
||||
| controller.metrics.service.servicePort | int | `8082` | Metrics service port |
|
||||
| controller.metrics.service.type | string | `"ClusterIP"` | Metrics service type |
|
||||
| controller.metrics.serviceMonitor.additionalLabels | object | `{}` | Prometheus ServiceMonitor labels |
|
||||
| controller.metrics.serviceMonitor.annotations | object | `{}` | Prometheus ServiceMonitor annotations |
|
||||
| controller.metrics.serviceMonitor.enabled | bool | `false` | Enable a prometheus ServiceMonitor |
|
||||
|
@ -493,15 +559,15 @@ NAME: my-release
|
|||
| controller.metrics.serviceMonitor.selector | object | `{}` | Prometheus ServiceMonitor selector |
|
||||
| controller.metrics.serviceMonitor.tlsConfig | object | `{}` | Prometheus ServiceMonitor tlsConfig |
|
||||
| controller.name | string | `"application-controller"` | Application controller name string |
|
||||
| controller.nodeSelector | object | `{}` | [Node selector] |
|
||||
| controller.nodeSelector | object | `{}` (defaults to global.nodeSelector) | [Node selector] |
|
||||
| controller.pdb.annotations | object | `{}` | Annotations to be added to application controller pdb |
|
||||
| controller.pdb.enabled | bool | `false` | Deploy a [PodDisruptionBudget] for the application controller |
|
||||
| controller.pdb.labels | object | `{}` | Labels to be added to application controller pdb |
|
||||
| controller.pdb.maxUnavailable | string | `""` | Number of pods that are unavailble after eviction as number or percentage (eg.: 50%). |
|
||||
| controller.pdb.maxUnavailable | string | `""` | Number of pods that are unavailable after eviction as number or percentage (eg.: 50%). |
|
||||
| controller.pdb.minAvailable | string | `""` (defaults to 0 if not specified) | Number of pods that are available after eviction as number or percentage (eg.: 50%) |
|
||||
| controller.podAnnotations | object | `{}` | Annotations to be added to application controller pods |
|
||||
| controller.podLabels | object | `{}` | Labels to be added to application controller pods |
|
||||
| controller.priorityClassName | string | `""` | Priority class for the application controller pods |
|
||||
| controller.priorityClassName | string | `""` (defaults to global.priorityClassName) | Priority class for the application controller pods |
|
||||
| controller.readinessProbe.failureThreshold | int | `3` | Minimum consecutive failures for the [probe] to be considered failed after having succeeded |
|
||||
| controller.readinessProbe.initialDelaySeconds | int | `10` | Number of seconds after the container has started before [probe] is initiated |
|
||||
| controller.readinessProbe.periodSeconds | int | `10` | How often (in seconds) to perform the [probe] |
|
||||
|
@ -515,8 +581,9 @@ NAME: my-release
|
|||
| controller.serviceAccount.labels | object | `{}` | Labels applied to created service account |
|
||||
| controller.serviceAccount.name | string | `"argocd-application-controller"` | Service account name |
|
||||
| controller.statefulsetAnnotations | object | `{}` | Annotations for the application controller StatefulSet |
|
||||
| controller.tolerations | list | `[]` | [Tolerations] for use with node taints |
|
||||
| controller.topologySpreadConstraints | list | `[]` | Assign custom [TopologySpreadConstraints] rules to the application controller |
|
||||
| controller.terminationGracePeriodSeconds | int | `30` | terminationGracePeriodSeconds for container lifecycle hook |
|
||||
| controller.tolerations | list | `[]` (defaults to global.tolerations) | [Tolerations] for use with node taints |
|
||||
| controller.topologySpreadConstraints | list | `[]` (defaults to global.topologySpreadConstraints) | Assign custom [TopologySpreadConstraints] rules to the application controller |
|
||||
| controller.volumeMounts | list | `[]` | Additional volumeMounts to the application controller main container |
|
||||
| controller.volumes | list | `[]` | Additional volumes to the application controller pod |
|
||||
|
||||
|
@ -524,10 +591,11 @@ NAME: my-release
|
|||
|
||||
| Key | Type | Default | Description |
|
||||
|-----|------|---------|-------------|
|
||||
| repoServer.affinity | object | `{}` | Assign custom [affinity] rules to the deployment |
|
||||
| repoServer.autoscaling.behavior | object | `{}` | Configures the scaling behavior of the target in both Up and Down directions. This is only available on HPA apiVersion `autoscaling/v2beta2` and newer |
|
||||
| repoServer.affinity | object | `{}` (defaults to global.affinity preset) | Assign custom [affinity] rules to the deployment |
|
||||
| repoServer.autoscaling.behavior | object | `{}` | Configures the scaling behavior of the target in both Up and Down directions. |
|
||||
| repoServer.autoscaling.enabled | bool | `false` | Enable Horizontal Pod Autoscaler ([HPA]) for the repo server |
|
||||
| repoServer.autoscaling.maxReplicas | int | `5` | Maximum number of replicas for the repo server [HPA] |
|
||||
| repoServer.autoscaling.metrics | list | `[]` | Configures custom HPA metrics for the Argo CD repo server Ref: https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/ |
|
||||
| repoServer.autoscaling.minReplicas | int | `1` | Minimum number of replicas for the repo server [HPA] |
|
||||
| repoServer.autoscaling.targetCPUUtilizationPercentage | int | `50` | Average CPU utilization percentage for the repo server [HPA] |
|
||||
| repoServer.autoscaling.targetMemoryUtilizationPercentage | int | `50` | Average memory utilization percentage for the repo server [HPA] |
|
||||
|
@ -543,15 +611,21 @@ NAME: my-release
|
|||
| repoServer.containerPorts.server | int | `8081` | Repo server container port |
|
||||
| repoServer.containerSecurityContext | object | See [values.yaml] | Repo server container-level security context |
|
||||
| repoServer.deploymentAnnotations | object | `{}` | Annotations to be added to repo server Deployment |
|
||||
| repoServer.deploymentStrategy | object | `{}` | Deployment strategy to be added to the repo server Deployment |
|
||||
| repoServer.dnsConfig | object | `{}` | [DNS configuration] |
|
||||
| repoServer.dnsPolicy | string | `"ClusterFirst"` | Alternative DNS policy for Repo server pods |
|
||||
| repoServer.env | list | `[]` | Environment variables to pass to repo server |
|
||||
| repoServer.envFrom | list | `[]` (See [values.yaml]) | envFrom to pass to repo server |
|
||||
| repoServer.existingVolumes | object | `{}` | Volumes to be used in replacement of emptydir on default volumes |
|
||||
| repoServer.extraArgs | list | `[]` | Additional command line arguments to pass to repo server |
|
||||
| repoServer.extraContainers | list | `[]` | Additional containers to be added to the repo server pod |
|
||||
| repoServer.hostNetwork | bool | `false` | Host Network for Repo server pods |
|
||||
| repoServer.image.imagePullPolicy | string | `""` (defaults to global.image.imagePullPolicy) | Image pull policy for the repo server |
|
||||
| repoServer.image.repository | string | `""` (defaults to global.image.repository) | Repository to use for the repo server |
|
||||
| repoServer.image.tag | string | `""` (defaults to global.image.tag) | Tag to use for the repo server |
|
||||
| repoServer.imagePullSecrets | list | `[]` (defaults to global.imagePullSecrets) | Secrets with credentials to pull images from a private registry |
|
||||
| repoServer.initContainers | list | `[]` | Init containers to add to the repo server pods |
|
||||
| repoServer.lifecycle | object | `{}` | Specify postStart and preStop lifecycle hooks for your argo-repo-server container |
|
||||
| repoServer.livenessProbe.failureThreshold | int | `3` | Minimum consecutive failures for the [probe] to be considered failed after having succeeded |
|
||||
| repoServer.livenessProbe.initialDelaySeconds | int | `10` | Number of seconds after the container has started before [probe] is initiated |
|
||||
| repoServer.livenessProbe.periodSeconds | int | `10` | How often (in seconds) to perform the [probe] |
|
||||
|
@ -559,9 +633,11 @@ NAME: my-release
|
|||
| repoServer.livenessProbe.timeoutSeconds | int | `1` | Number of seconds after which the [probe] times out |
|
||||
| repoServer.metrics.enabled | bool | `false` | Deploy metrics service |
|
||||
| repoServer.metrics.service.annotations | object | `{}` | Metrics service annotations |
|
||||
| repoServer.metrics.service.clusterIP | string | `""` | Metrics service clusterIP. `None` makes a "headless service" (no virtual IP) |
|
||||
| repoServer.metrics.service.labels | object | `{}` | Metrics service labels |
|
||||
| repoServer.metrics.service.portName | string | `"http-metrics"` | Metrics service port name |
|
||||
| repoServer.metrics.service.servicePort | int | `8084` | Metrics service port |
|
||||
| repoServer.metrics.service.type | string | `"ClusterIP"` | Metrics service type |
|
||||
| repoServer.metrics.serviceMonitor.additionalLabels | object | `{}` | Prometheus ServiceMonitor labels |
|
||||
| repoServer.metrics.serviceMonitor.annotations | object | `{}` | Prometheus ServiceMonitor annotations |
|
||||
| repoServer.metrics.serviceMonitor.enabled | bool | `false` | Enable a prometheus ServiceMonitor |
|
||||
|
@ -573,15 +649,15 @@ NAME: my-release
|
|||
| repoServer.metrics.serviceMonitor.selector | object | `{}` | Prometheus ServiceMonitor selector |
|
||||
| repoServer.metrics.serviceMonitor.tlsConfig | object | `{}` | Prometheus ServiceMonitor tlsConfig |
|
||||
| repoServer.name | string | `"repo-server"` | Repo server name |
|
||||
| repoServer.nodeSelector | object | `{}` | [Node selector] |
|
||||
| repoServer.nodeSelector | object | `{}` (defaults to global.nodeSelector) | [Node selector] |
|
||||
| repoServer.pdb.annotations | object | `{}` | Annotations to be added to repo server pdb |
|
||||
| repoServer.pdb.enabled | bool | `false` | Deploy a [PodDisruptionBudget] for the repo server |
|
||||
| repoServer.pdb.labels | object | `{}` | Labels to be added to repo server pdb |
|
||||
| repoServer.pdb.maxUnavailable | string | `""` | Number of pods that are unavailble after eviction as number or percentage (eg.: 50%). |
|
||||
| repoServer.pdb.maxUnavailable | string | `""` | Number of pods that are unavailable after eviction as number or percentage (eg.: 50%). |
|
||||
| repoServer.pdb.minAvailable | string | `""` (defaults to 0 if not specified) | Number of pods that are available after eviction as number or percentage (eg.: 50%) |
|
||||
| repoServer.podAnnotations | object | `{}` | Annotations to be added to repo server pods |
|
||||
| repoServer.podLabels | object | `{}` | Labels to be added to repo server pods |
|
||||
| repoServer.priorityClassName | string | `""` | Priority class for the repo server |
|
||||
| repoServer.priorityClassName | string | `""` (defaults to global.priorityClassName) | Priority class for the repo server pods |
|
||||
| repoServer.rbac | list | `[]` | Repo server rbac rules |
|
||||
| repoServer.readinessProbe.failureThreshold | int | `3` | Minimum consecutive failures for the [probe] to be considered failed after having succeeded |
|
||||
| repoServer.readinessProbe.initialDelaySeconds | int | `10` | Number of seconds after the container has started before [probe] is initiated |
|
||||
|
@ -599,8 +675,10 @@ NAME: my-release
|
|||
| repoServer.serviceAccount.create | bool | `true` | Create repo server service account |
|
||||
| repoServer.serviceAccount.labels | object | `{}` | Labels applied to created service account |
|
||||
| repoServer.serviceAccount.name | string | `""` | Repo server service account name |
|
||||
| repoServer.tolerations | list | `[]` | [Tolerations] for use with node taints |
|
||||
| repoServer.topologySpreadConstraints | list | `[]` | Assign custom [TopologySpreadConstraints] rules to the repo server |
|
||||
| repoServer.terminationGracePeriodSeconds | int | `30` | terminationGracePeriodSeconds for container lifecycle hook |
|
||||
| repoServer.tolerations | list | `[]` (defaults to global.tolerations) | [Tolerations] for use with node taints |
|
||||
| repoServer.topologySpreadConstraints | list | `[]` (defaults to global.topologySpreadConstraints) | Assign custom [TopologySpreadConstraints] rules to the repo server |
|
||||
| repoServer.useEphemeralHelmWorkingDir | bool | `true` | Toggle the usage of a ephemeral Helm working directory |
|
||||
| repoServer.volumeMounts | list | `[]` | Additional volumeMounts to the repo server main container |
|
||||
| repoServer.volumes | list | `[]` | Additional volumes to the repo server pod |
|
||||
|
||||
|
@ -614,45 +692,53 @@ NAME: my-release
|
|||
| server.GKEfrontendConfig.spec | object | `{}` | [FrontendConfigSpec] |
|
||||
| server.GKEmanagedCertificate.domains | list | `["argocd.example.com"]` | Domains for the Google Managed Certificate |
|
||||
| server.GKEmanagedCertificate.enabled | bool | `false` | Enable ManagedCertificate custom resource for Google Kubernetes Engine. |
|
||||
| server.affinity | object | `{}` | Assign custom [affinity] rules to the deployment |
|
||||
| server.autoscaling.behavior | object | `{}` | Configures the scaling behavior of the target in both Up and Down directions. This is only available on HPA apiVersion `autoscaling/v2beta2` and newer |
|
||||
| server.affinity | object | `{}` (defaults to global.affinity preset) | Assign custom [affinity] rules to the deployment |
|
||||
| server.autoscaling.behavior | object | `{}` | Configures the scaling behavior of the target in both Up and Down directions. |
|
||||
| server.autoscaling.enabled | bool | `false` | Enable Horizontal Pod Autoscaler ([HPA]) for the Argo CD server |
|
||||
| server.autoscaling.maxReplicas | int | `5` | Maximum number of replicas for the Argo CD server [HPA] |
|
||||
| server.autoscaling.metrics | list | `[]` | Configures custom HPA metrics for the Argo CD server Ref: https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/ |
|
||||
| server.autoscaling.minReplicas | int | `1` | Minimum number of replicas for the Argo CD server [HPA] |
|
||||
| server.autoscaling.targetCPUUtilizationPercentage | int | `50` | Average CPU utilization percentage for the Argo CD server [HPA] |
|
||||
| server.autoscaling.targetMemoryUtilizationPercentage | int | `50` | Average memory utilization percentage for the Argo CD server [HPA] |
|
||||
| server.certificate.additionalHosts | list | `[]` | Certificate Subject Alternate Names (SANs) |
|
||||
| server.certificate.annotations | object | `{}` | Annotations to be applied to the Server Certificate |
|
||||
| server.certificate.domain | string | `"argocd.example.com"` | Certificate primary domain (commonName) |
|
||||
| server.certificate.duration | string | `""` (defaults to 2160h = 90d if not specified) | The requested 'duration' (i.e. lifetime) of the certificate. |
|
||||
| server.certificate.enabled | bool | `false` | Deploy a Certificate resource (requires cert-manager) |
|
||||
| server.certificate.issuer.group | string | `""` | Certificate issuer group. Set if using an external issuer. Eg. `cert-manager.io` |
|
||||
| server.certificate.issuer.kind | string | `""` | Certificate issuer kind. Either `Issuer` or `ClusterIssuer` |
|
||||
| server.certificate.issuer.name | string | `""` | Certificate isser name. Eg. `letsencrypt` |
|
||||
| server.certificate.issuer.name | string | `""` | Certificate issuer name. Eg. `letsencrypt` |
|
||||
| server.certificate.privateKey.algorithm | string | `"RSA"` | Algorithm used to generate certificate private key. One of: `RSA`, `Ed25519` or `ECDSA` |
|
||||
| server.certificate.privateKey.encoding | string | `"PKCS1"` | The private key cryptography standards (PKCS) encoding for private key. Either: `PCKS1` or `PKCS8` |
|
||||
| server.certificate.privateKey.rotationPolicy | string | `"Never"` | Rotation policy of private key when certificate is re-issued. Either: `Never` or `Always` |
|
||||
| server.certificate.privateKey.size | int | `2048` | Key bit size of the private key. If algorithm is set to `Ed25519`, size is ignored. |
|
||||
| server.certificate.renewBefore | string | `""` (defaults to 360h = 15d if not specified) | How long before the expiry a certificate should be renewed. |
|
||||
| server.certificate.secretName | string | `"argocd-server-tls"` | The name of the Secret that will be automatically created and managed by this Certificate resource |
|
||||
| server.certificate.usages | list | `[]` | Usages for the certificate |
|
||||
| server.certificateSecret.annotations | object | `{}` | Annotations to be added to argocd-server-tls secret |
|
||||
| server.certificateSecret.crt | string | `""` | Certificate data |
|
||||
| server.certificateSecret.enabled | bool | `false` | Create argocd-server-tls secret |
|
||||
| server.certificateSecret.key | string | `""` | Private Key of the certificate |
|
||||
| server.certificateSecret.labels | object | `{}` | Labels to be added to argocd-server-tls secret |
|
||||
| server.containerPorts.metrics | int | `8082` | Metrics container port |
|
||||
| server.containerPorts.metrics | int | `8083` | Metrics container port |
|
||||
| server.containerPorts.server | int | `8080` | Server container port |
|
||||
| server.containerSecurityContext | object | See [values.yaml] | Server container-level security context |
|
||||
| server.deploymentAnnotations | object | `{}` | Annotations to be added to server Deployment |
|
||||
| server.deploymentStrategy | object | `{}` | Deployment strategy to be added to the server Deployment |
|
||||
| server.dnsConfig | object | `{}` | [DNS configuration] |
|
||||
| server.dnsPolicy | string | `"ClusterFirst"` | Alternative DNS policy for Server pods |
|
||||
| server.env | list | `[]` | Environment variables to pass to Argo CD server |
|
||||
| server.envFrom | list | `[]` (See [values.yaml]) | envFrom to pass to Argo CD server |
|
||||
| server.extensions.containerSecurityContext | object | See [values.yaml] | Server UI extensions container-level security context |
|
||||
| server.extensions.enabled | bool | `false` | Enable support for Argo UI extensions |
|
||||
| server.extensions.enabled | bool | `false` | Enable support for Argo CD extensions |
|
||||
| server.extensions.extensionList | list | `[]` (See [values.yaml]) | Extensions for Argo CD |
|
||||
| server.extensions.image.imagePullPolicy | string | `""` (defaults to global.image.imagePullPolicy) | Image pull policy for extensions |
|
||||
| server.extensions.image.repository | string | `"ghcr.io/argoproj-labs/argocd-extensions"` | Repository to use for extensions image |
|
||||
| server.extensions.image.tag | string | `"v0.2.1"` | Tag to use for extensions image |
|
||||
| server.extensions.image.repository | string | `"quay.io/argoprojlabs/argocd-extension-installer"` | Repository to use for extension installer image |
|
||||
| server.extensions.image.tag | string | `"v0.0.1"` | Tag to use for extension installer image |
|
||||
| server.extensions.resources | object | `{}` | Resource limits and requests for the argocd-extensions container |
|
||||
| server.extraArgs | list | `[]` | Additional command line arguments to pass to Argo CD server |
|
||||
| server.extraContainers | list | `[]` | Additional containers to be added to the server pod |
|
||||
| server.hostNetwork | bool | `false` | Host Network for Server pods |
|
||||
| server.image.imagePullPolicy | string | `""` (defaults to global.image.imagePullPolicy) | Image pull policy for the Argo CD server |
|
||||
| server.image.repository | string | `""` (defaults to global.image.repository) | Repository to use for the Argo CD server |
|
||||
| server.image.tag | string | `""` (defaults to global.image.tag) | Tag to use for the Argo CD server |
|
||||
|
@ -689,9 +775,11 @@ NAME: my-release
|
|||
| server.livenessProbe.timeoutSeconds | int | `1` | Number of seconds after which the [probe] times out |
|
||||
| server.metrics.enabled | bool | `false` | Deploy metrics service |
|
||||
| server.metrics.service.annotations | object | `{}` | Metrics service annotations |
|
||||
| server.metrics.service.clusterIP | string | `""` | Metrics service clusterIP. `None` makes a "headless service" (no virtual IP) |
|
||||
| server.metrics.service.labels | object | `{}` | Metrics service labels |
|
||||
| server.metrics.service.portName | string | `"http-metrics"` | Metrics service port name |
|
||||
| server.metrics.service.servicePort | int | `8083` | Metrics service port |
|
||||
| server.metrics.service.type | string | `"ClusterIP"` | Metrics service type |
|
||||
| server.metrics.serviceMonitor.additionalLabels | object | `{}` | Prometheus ServiceMonitor labels |
|
||||
| server.metrics.serviceMonitor.annotations | object | `{}` | Prometheus ServiceMonitor annotations |
|
||||
| server.metrics.serviceMonitor.enabled | bool | `false` | Enable a prometheus ServiceMonitor |
|
||||
|
@ -703,15 +791,15 @@ NAME: my-release
|
|||
| server.metrics.serviceMonitor.selector | object | `{}` | Prometheus ServiceMonitor selector |
|
||||
| server.metrics.serviceMonitor.tlsConfig | object | `{}` | Prometheus ServiceMonitor tlsConfig |
|
||||
| server.name | string | `"server"` | Argo CD server name |
|
||||
| server.nodeSelector | object | `{}` | [Node selector] |
|
||||
| server.nodeSelector | object | `{}` (defaults to global.nodeSelector) | [Node selector] |
|
||||
| server.pdb.annotations | object | `{}` | Annotations to be added to Argo CD server pdb |
|
||||
| server.pdb.enabled | bool | `false` | Deploy a [PodDisruptionBudget] for the Argo CD server |
|
||||
| server.pdb.labels | object | `{}` | Labels to be added to Argo CD server pdb |
|
||||
| server.pdb.maxUnavailable | string | `""` | Number of pods that are unavailble after eviction as number or percentage (eg.: 50%). |
|
||||
| server.pdb.maxUnavailable | string | `""` | Number of pods that are unavailable after eviction as number or percentage (eg.: 50%). |
|
||||
| server.pdb.minAvailable | string | `""` (defaults to 0 if not specified) | Number of pods that are available after eviction as number or percentage (eg.: 50%) |
|
||||
| server.podAnnotations | object | `{}` | Annotations to be added to server pods |
|
||||
| server.podLabels | object | `{}` | Labels to be added to server pods |
|
||||
| server.priorityClassName | string | `""` | Priority class for the Argo CD server |
|
||||
| server.priorityClassName | string | `""` (defaults to global.priorityClassName) | Priority class for the Argo CD server pods |
|
||||
| server.readinessProbe.failureThreshold | int | `3` | Minimum consecutive failures for the [probe] to be considered failed after having succeeded |
|
||||
| server.readinessProbe.initialDelaySeconds | int | `10` | Number of seconds after the container has started before [probe] is initiated |
|
||||
| server.readinessProbe.periodSeconds | int | `10` | How often (in seconds) to perform the [probe] |
|
||||
|
@ -743,8 +831,9 @@ NAME: my-release
|
|||
| server.serviceAccount.create | bool | `true` | Create server service account |
|
||||
| server.serviceAccount.labels | object | `{}` | Labels applied to created service account |
|
||||
| server.serviceAccount.name | string | `"argocd-server"` | Server service account name |
|
||||
| server.tolerations | list | `[]` | [Tolerations] for use with node taints |
|
||||
| server.topologySpreadConstraints | list | `[]` | Assign custom [TopologySpreadConstraints] rules to the Argo CD server |
|
||||
| server.terminationGracePeriodSeconds | int | `30` | terminationGracePeriodSeconds for container lifecycle hook |
|
||||
| server.tolerations | list | `[]` (defaults to global.tolerations) | [Tolerations] for use with node taints |
|
||||
| server.topologySpreadConstraints | list | `[]` (defaults to global.topologySpreadConstraints) | Assign custom [TopologySpreadConstraints] rules to the Argo CD server |
|
||||
| server.volumeMounts | list | `[]` | Additional volumeMounts to the server main container |
|
||||
| server.volumes | list | `[]` | Additional volumes to the server pod |
|
||||
|
||||
|
@ -774,7 +863,7 @@ server:
|
|||
|
||||
| Key | Type | Default | Description |
|
||||
|-----|------|---------|-------------|
|
||||
| dex.affinity | object | `{}` | Assign custom [affinity] rules to the deployment |
|
||||
| dex.affinity | object | `{}` (defaults to global.affinity preset) | Assign custom [affinity] rules to the deployment |
|
||||
| dex.certificateSecret.annotations | object | `{}` | Annotations to be added to argocd-dex-server-tls secret |
|
||||
| dex.certificateSecret.ca | string | `""` | Certificate authority. Required for self-signed certificates. |
|
||||
| dex.certificateSecret.crt | string | `""` | Certificate data. Must contain SANs of Dex service (ie: argocd-dex-server, argocd-dex-server.argo-cd.svc) |
|
||||
|
@ -786,6 +875,9 @@ server:
|
|||
| dex.containerPorts.metrics | int | `5558` | Metrics container port |
|
||||
| dex.containerSecurityContext | object | See [values.yaml] | Dex container-level security context |
|
||||
| dex.deploymentAnnotations | object | `{}` | Annotations to be added to the Dex server Deployment |
|
||||
| dex.deploymentStrategy | object | `{}` | Deployment strategy to be added to the Dex server Deployment |
|
||||
| dex.dnsConfig | object | `{}` | [DNS configuration] |
|
||||
| dex.dnsPolicy | string | `"ClusterFirst"` | Alternative DNS policy for Dex server pods |
|
||||
| dex.enabled | bool | `true` | Enable dex |
|
||||
| dex.env | list | `[]` | Environment variables to pass to the Dex server |
|
||||
| dex.envFrom | list | `[]` (See [values.yaml]) | envFrom to pass to the Dex server |
|
||||
|
@ -793,11 +885,12 @@ server:
|
|||
| dex.extraContainers | list | `[]` | Additional containers to be added to the dex pod |
|
||||
| dex.image.imagePullPolicy | string | `""` (defaults to global.image.imagePullPolicy) | Dex imagePullPolicy |
|
||||
| dex.image.repository | string | `"ghcr.io/dexidp/dex"` | Dex image repository |
|
||||
| dex.image.tag | string | `"v2.35.3"` | Dex image tag |
|
||||
| dex.image.tag | string | `"v2.37.0"` | Dex image tag |
|
||||
| dex.imagePullSecrets | list | `[]` (defaults to global.imagePullSecrets) | Secrets with credentials to pull images from a private registry |
|
||||
| dex.initContainers | list | `[]` | Init containers to add to the dex pod |
|
||||
| dex.initImage.imagePullPolicy | string | `""` (defaults to global.image.imagePullPolicy) | Argo CD init image imagePullPolicy |
|
||||
| dex.initImage.repository | string | `""` (defaults to global.image.repository) | Argo CD init image repository |
|
||||
| dex.initImage.resources | object | `{}` (defaults to dex.resources) | Argo CD init image resources |
|
||||
| dex.initImage.tag | string | `""` (defaults to global.image.tag) | Argo CD init image tag |
|
||||
| dex.livenessProbe.enabled | bool | `false` | Enable Kubernetes liveness probe for Dex >= 2.28.0 |
|
||||
| dex.livenessProbe.failureThreshold | int | `3` | Minimum consecutive failures for the [probe] to be considered failed after having succeeded |
|
||||
|
@ -805,6 +898,8 @@ server:
|
|||
| dex.livenessProbe.periodSeconds | int | `10` | How often (in seconds) to perform the [probe] |
|
||||
| dex.livenessProbe.successThreshold | int | `1` | Minimum consecutive successes for the [probe] to be considered successful after having failed |
|
||||
| dex.livenessProbe.timeoutSeconds | int | `1` | Number of seconds after which the [probe] times out |
|
||||
| dex.logFormat | string | `""` (defaults to global.logging.format) | Dex log format. Either `text` or `json` |
|
||||
| dex.logLevel | string | `""` (defaults to global.logging.level) | Dex log level. One of: `debug`, `info`, `warn`, `error` |
|
||||
| dex.metrics.enabled | bool | `false` | Deploy metrics service |
|
||||
| dex.metrics.service.annotations | object | `{}` | Metrics service annotations |
|
||||
| dex.metrics.service.labels | object | `{}` | Metrics service labels |
|
||||
|
@ -820,7 +915,7 @@ server:
|
|||
| dex.metrics.serviceMonitor.selector | object | `{}` | Prometheus ServiceMonitor selector |
|
||||
| dex.metrics.serviceMonitor.tlsConfig | object | `{}` | Prometheus ServiceMonitor tlsConfig |
|
||||
| dex.name | string | `"dex-server"` | Dex name |
|
||||
| dex.nodeSelector | object | `{}` | [Node selector] |
|
||||
| dex.nodeSelector | object | `{}` (defaults to global.nodeSelector) | [Node selector] |
|
||||
| dex.pdb.annotations | object | `{}` | Annotations to be added to Dex server pdb |
|
||||
| dex.pdb.enabled | bool | `false` | Deploy a [PodDisruptionBudget] for the Dex server |
|
||||
| dex.pdb.labels | object | `{}` | Labels to be added to Dex server pdb |
|
||||
|
@ -828,7 +923,7 @@ server:
|
|||
| dex.pdb.minAvailable | string | `""` (defaults to 0 if not specified) | Number of pods that are available after eviction as number or percentage (eg.: 50%) |
|
||||
| dex.podAnnotations | object | `{}` | Annotations to be added to the Dex server pods |
|
||||
| dex.podLabels | object | `{}` | Labels to be added to the Dex server pods |
|
||||
| dex.priorityClassName | string | `""` | Priority class for dex |
|
||||
| dex.priorityClassName | string | `""` (defaults to global.priorityClassName) | Priority class for the dex pods |
|
||||
| dex.readinessProbe.enabled | bool | `false` | Enable Kubernetes readiness probe for Dex >= 2.28.0 |
|
||||
| dex.readinessProbe.failureThreshold | int | `3` | Minimum consecutive failures for the [probe] to be considered failed after having succeeded |
|
||||
| dex.readinessProbe.initialDelaySeconds | int | `10` | Number of seconds after the container has started before [probe] is initiated |
|
||||
|
@ -845,8 +940,9 @@ server:
|
|||
| dex.servicePortHttp | int | `5556` | Service port for HTTP access |
|
||||
| dex.servicePortHttpName | string | `"http"` | Service port name for HTTP access |
|
||||
| dex.servicePortMetrics | int | `5558` | Service port for metrics access |
|
||||
| dex.tolerations | list | `[]` | [Tolerations] for use with node taints |
|
||||
| dex.topologySpreadConstraints | list | `[]` | Assign custom [TopologySpreadConstraints] rules to dex |
|
||||
| dex.terminationGracePeriodSeconds | int | `30` | terminationGracePeriodSeconds for container lifecycle hook |
|
||||
| dex.tolerations | list | `[]` (defaults to global.tolerations) | [Tolerations] for use with node taints |
|
||||
| dex.topologySpreadConstraints | list | `[]` (defaults to global.topologySpreadConstraints) | Assign custom [TopologySpreadConstraints] rules to dex |
|
||||
| dex.volumeMounts | list | `[]` | Additional volumeMounts to the dex main container |
|
||||
| dex.volumes | list | `[]` | Additional volumes to the dex pod |
|
||||
|
||||
|
@ -856,25 +952,28 @@ server:
|
|||
|
||||
| Key | Type | Default | Description |
|
||||
|-----|------|---------|-------------|
|
||||
| redis.affinity | object | `{}` | Assign custom [affinity] rules to the deployment |
|
||||
| redis.affinity | object | `{}` (defaults to global.affinity preset) | Assign custom [affinity] rules to the deployment |
|
||||
| redis.containerPorts.metrics | int | `9121` | Metrics container port |
|
||||
| redis.containerPorts.redis | int | `6379` | Redis container port |
|
||||
| redis.containerSecurityContext | object | See [values.yaml] | Redis container-level security context |
|
||||
| redis.deploymentAnnotations | object | `{}` | Annotations to be added to the Redis server Deployment |
|
||||
| redis.dnsConfig | object | `{}` | [DNS configuration] |
|
||||
| redis.dnsPolicy | string | `"ClusterFirst"` | Alternative DNS policy for Redis server pods |
|
||||
| redis.enabled | bool | `true` | Enable redis |
|
||||
| redis.env | list | `[]` | Environment variables to pass to the Redis server |
|
||||
| redis.envFrom | list | `[]` (See [values.yaml]) | envFrom to pass to the Redis server |
|
||||
| redis.exporter.containerSecurityContext | object | See [values.yaml] | Redis exporter security context |
|
||||
| redis.exporter.enabled | bool | `false` | Enable Prometheus redis-exporter sidecar |
|
||||
| redis.exporter.env | list | `[]` | Environment variables to pass to the Redis exporter |
|
||||
| redis.exporter.image.imagePullPolicy | string | `""` (defaults to global.image.imagePullPolicy) | Image pull policy for the redis-exporter |
|
||||
| redis.exporter.image.repository | string | `"public.ecr.aws/bitnami/redis-exporter"` | Repository to use for the redis-exporter |
|
||||
| redis.exporter.image.tag | string | `"1.45.0"` | Tag to use for the redis-exporter |
|
||||
| redis.exporter.image.tag | string | `"1.53.0"` | Tag to use for the redis-exporter |
|
||||
| redis.exporter.resources | object | `{}` | Resource limits and requests for redis-exporter sidecar |
|
||||
| redis.extraArgs | list | `[]` | Additional command line arguments to pass to redis-server |
|
||||
| redis.extraContainers | list | `[]` | Additional containers to be added to the redis pod |
|
||||
| redis.image.imagePullPolicy | string | `""` (defaults to global.image.imagePullPolicy) | Redis image pull policy |
|
||||
| redis.image.repository | string | `"public.ecr.aws/docker/library/redis"` | Redis repository |
|
||||
| redis.image.tag | string | `"7.0.7-alpine"` | Redis tag |
|
||||
| redis.image.tag | string | `"7.0.13-alpine"` | Redis tag |
|
||||
| redis.imagePullSecrets | list | `[]` (defaults to global.imagePullSecrets) | Secrets with credentials to pull images from a private registry |
|
||||
| redis.initContainers | list | `[]` | Init containers to add to the redis pod |
|
||||
| redis.metrics.enabled | bool | `false` | Deploy metrics service |
|
||||
|
@ -895,7 +994,7 @@ server:
|
|||
| redis.metrics.serviceMonitor.selector | object | `{}` | Prometheus ServiceMonitor selector |
|
||||
| redis.metrics.serviceMonitor.tlsConfig | object | `{}` | Prometheus ServiceMonitor tlsConfig |
|
||||
| redis.name | string | `"redis"` | Redis name |
|
||||
| redis.nodeSelector | object | `{}` | [Node selector] |
|
||||
| redis.nodeSelector | object | `{}` (defaults to global.nodeSelector) | [Node selector] |
|
||||
| redis.pdb.annotations | object | `{}` | Annotations to be added to Redis pdb |
|
||||
| redis.pdb.enabled | bool | `false` | Deploy a [PodDisruptionBudget] for the Redis |
|
||||
| redis.pdb.labels | object | `{}` | Labels to be added to Redis pdb |
|
||||
|
@ -903,7 +1002,7 @@ server:
|
|||
| redis.pdb.minAvailable | string | `""` (defaults to 0 if not specified) | Number of pods that are available after eviction as number or percentage (eg.: 50%) |
|
||||
| redis.podAnnotations | object | `{}` | Annotations to be added to the Redis server pods |
|
||||
| redis.podLabels | object | `{}` | Labels to be added to the Redis server pods |
|
||||
| redis.priorityClassName | string | `""` | Priority class for redis |
|
||||
| redis.priorityClassName | string | `""` (defaults to global.priorityClassName) | Priority class for redis pods |
|
||||
| redis.resources | object | `{}` | Resource limits and requests for redis |
|
||||
| redis.securityContext | object | See [values.yaml] | Redis pod-level security context |
|
||||
| redis.service.annotations | object | `{}` | Redis service annotations |
|
||||
|
@ -913,8 +1012,9 @@ server:
|
|||
| redis.serviceAccount.create | bool | `false` | Create a service account for the redis pod |
|
||||
| redis.serviceAccount.name | string | `""` | Service account name for redis pod |
|
||||
| redis.servicePort | int | `6379` | Redis service port |
|
||||
| redis.tolerations | list | `[]` | [Tolerations] for use with node taints |
|
||||
| redis.topologySpreadConstraints | list | `[]` | Assign custom [TopologySpreadConstraints] rules to redis |
|
||||
| redis.terminationGracePeriodSeconds | int | `30` | terminationGracePeriodSeconds for container lifecycle hook |
|
||||
| redis.tolerations | list | `[]` (defaults to global.tolerations) | [Tolerations] for use with node taints |
|
||||
| redis.topologySpreadConstraints | list | `[]` (defaults to global.topologySpreadConstraints) | Assign custom [TopologySpreadConstraints] rules to redis |
|
||||
| redis.volumeMounts | list | `[]` | Additional volumeMounts to the redis container |
|
||||
| redis.volumes | list | `[]` | Additional volumes to the redis pod |
|
||||
|
||||
|
@ -926,17 +1026,29 @@ The main options are listed here:
|
|||
|
||||
| Key | Type | Default | Description |
|
||||
|-----|------|---------|-------------|
|
||||
| redis-ha.additionalAffinities | object | `{}` | Additional affinities to add to the Redis server pods. |
|
||||
| redis-ha.affinity | string | `""` | Assign custom [affinity] rules to the Redis pods. |
|
||||
| redis-ha.containerSecurityContext | object | See [values.yaml] | Redis HA statefulset container-level security context |
|
||||
| redis-ha.enabled | bool | `false` | Enables the Redis HA subchart and disables the custom Redis single node deployment |
|
||||
| redis-ha.exporter.enabled | bool | `false` | Enable Prometheus redis-exporter sidecar |
|
||||
| redis-ha.exporter.image | string | `"public.ecr.aws/bitnami/redis-exporter"` | Repository to use for the redis-exporter |
|
||||
| redis-ha.exporter.tag | string | `"1.45.0"` | Tag to use for the redis-exporter |
|
||||
| redis-ha.exporter.tag | string | `"1.53.0"` | Tag to use for the redis-exporter |
|
||||
| redis-ha.haproxy.additionalAffinities | object | `{}` | Additional affinities to add to the haproxy pods. |
|
||||
| redis-ha.haproxy.affinity | string | `""` | Assign custom [affinity] rules to the haproxy pods. |
|
||||
| redis-ha.haproxy.containerSecurityContext | object | See [values.yaml] | HAProxy container-level security context |
|
||||
| redis-ha.haproxy.enabled | bool | `true` | Enabled HAProxy LoadBalancing/Proxy |
|
||||
| redis-ha.haproxy.hardAntiAffinity | bool | `true` | Whether the haproxy pods should be forced to run on separate nodes. |
|
||||
| redis-ha.haproxy.metrics.enabled | bool | `true` | HAProxy enable prometheus metric scraping |
|
||||
| redis-ha.image.tag | string | `"7.0.7-alpine"` | Redis tag |
|
||||
| redis-ha.persistentVolume.enabled | bool | `false` | Configures persistency on Redis nodes |
|
||||
| redis-ha.haproxy.tolerations | list | `[]` | [Tolerations] for use with node taints for haproxy pods. |
|
||||
| redis-ha.hardAntiAffinity | bool | `true` | Whether the Redis server pods should be forced to run on separate nodes. |
|
||||
| redis-ha.image.repository | string | `"public.ecr.aws/docker/library/redis"` | Redis repository |
|
||||
| redis-ha.image.tag | string | `"7.0.13-alpine"` | Redis tag |
|
||||
| redis-ha.persistentVolume.enabled | bool | `false` | Configures persistence on Redis nodes |
|
||||
| redis-ha.redis.config | object | See [values.yaml] | Any valid redis config options in this section will be applied to each server (see `redis-ha` chart) |
|
||||
| redis-ha.redis.config.save | string | `'""'` | 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.masterGroupName | string | `"argocd"` | Redis convention for naming the cluster group: must match `^[\\w-\\.]+$` and can be templated |
|
||||
| redis-ha.tolerations | list | `[]` | [Tolerations] for use with node taints for Redis pods. |
|
||||
| redis-ha.topologySpreadConstraints | object | `{"enabled":false,"maxSkew":"","topologyKey":"","whenUnsatisfiable":""}` | Assign custom [TopologySpreadConstraints] rules to the Redis pods. |
|
||||
| redis-ha.topologySpreadConstraints.enabled | bool | `false` | Enable Redis HA topology spread constraints |
|
||||
| redis-ha.topologySpreadConstraints.maxSkew | string | `""` (defaults to `1`) | Max skew of pods tolerated |
|
||||
| redis-ha.topologySpreadConstraints.topologyKey | string | `""` (defaults to `topology.kubernetes.io/zone`) | Topology key for spread |
|
||||
|
@ -964,14 +1076,30 @@ If you want to use an existing Redis (eg. a managed service from a cloud provide
|
|||
|
||||
| Key | Type | Default | Description |
|
||||
|-----|------|---------|-------------|
|
||||
| applicationSet.affinity | object | `{}` | Assign custom [affinity] rules |
|
||||
| applicationSet.args.dryRun | bool | `false` | Enable dry run mode |
|
||||
| applicationSet.args.policy | string | `"sync"` | How application is synced between the generator and the cluster |
|
||||
| applicationSet.affinity | object | `{}` (defaults to global.affinity preset) | Assign custom [affinity] rules |
|
||||
| applicationSet.args | object | `{}` | DEPRECATED - ApplicationSet controller command line flags |
|
||||
| applicationSet.certificate.additionalHosts | list | `[]` | Certificate Subject Alternate Names (SANs) |
|
||||
| applicationSet.certificate.annotations | object | `{}` | Annotations to be applied to the ApplicationSet Certificate |
|
||||
| applicationSet.certificate.domain | string | `"argocd.example.com"` | Certificate primary domain (commonName) |
|
||||
| applicationSet.certificate.duration | string | `""` (defaults to 2160h = 90d if not specified) | The requested 'duration' (i.e. lifetime) of the certificate. |
|
||||
| applicationSet.certificate.enabled | bool | `false` | Deploy a Certificate resource (requires cert-manager) |
|
||||
| applicationSet.certificate.issuer.group | string | `""` | Certificate issuer group. Set if using an external issuer. Eg. `cert-manager.io` |
|
||||
| applicationSet.certificate.issuer.kind | string | `""` | Certificate issuer kind. Either `Issuer` or `ClusterIssuer` |
|
||||
| applicationSet.certificate.issuer.name | string | `""` | Certificate issuer name. Eg. `letsencrypt` |
|
||||
| applicationSet.certificate.privateKey.algorithm | string | `"RSA"` | Algorithm used to generate certificate private key. One of: `RSA`, `Ed25519` or `ECDSA` |
|
||||
| applicationSet.certificate.privateKey.encoding | string | `"PKCS1"` | The private key cryptography standards (PKCS) encoding for private key. Either: `PCKS1` or `PKCS8` |
|
||||
| applicationSet.certificate.privateKey.rotationPolicy | string | `"Never"` | Rotation policy of private key when certificate is re-issued. Either: `Never` or `Always` |
|
||||
| applicationSet.certificate.privateKey.size | int | `2048` | Key bit size of the private key. If algorithm is set to `Ed25519`, size is ignored. |
|
||||
| applicationSet.certificate.renewBefore | string | `""` (defaults to 360h = 15d if not specified) | How long before the expiry a certificate should be renewed. |
|
||||
| applicationSet.certificate.secretName | string | `"argocd-application-controller-tls"` | The name of the Secret that will be automatically created and managed by this Certificate resource |
|
||||
| applicationSet.containerPorts.metrics | int | `8080` | Metrics container port |
|
||||
| applicationSet.containerPorts.probe | int | `8081` | Probe container port |
|
||||
| applicationSet.containerPorts.webhook | int | `7000` | Webhook container port |
|
||||
| applicationSet.containerSecurityContext | object | See [values.yaml] | ApplicationSet controller container-level security context |
|
||||
| applicationSet.deploymentAnnotations | object | `{}` | Annotations to be added to ApplicationSet controller Deployment |
|
||||
| applicationSet.deploymentStrategy | object | `{}` | Deployment strategy to be added to the ApplicationSet controller Deployment |
|
||||
| applicationSet.dnsConfig | object | `{}` | [DNS configuration] |
|
||||
| applicationSet.dnsPolicy | string | `"ClusterFirst"` | Alternative DNS policy for ApplicationSet controller pods |
|
||||
| applicationSet.enabled | bool | `true` | Enable ApplicationSet controller |
|
||||
| applicationSet.extraArgs | list | `[]` | List of extra cli args to add |
|
||||
| applicationSet.extraContainers | list | `[]` | Additional containers to be added to the ApplicationSet controller pod |
|
||||
|
@ -990,13 +1118,13 @@ If you want to use an existing Redis (eg. a managed service from a cloud provide
|
|||
| applicationSet.livenessProbe.periodSeconds | int | `10` | How often (in seconds) to perform the [probe] |
|
||||
| applicationSet.livenessProbe.successThreshold | int | `1` | Minimum consecutive successes for the [probe] to be considered successful after having failed |
|
||||
| applicationSet.livenessProbe.timeoutSeconds | int | `1` | Number of seconds after which the [probe] times out |
|
||||
| applicationSet.logFormat | string | `""` (defaults to global.logging.format) | ApplicationSet controller log format. Either `text` or `json` |
|
||||
| applicationSet.logLevel | string | `""` (defaults to global.logging.level) | ApplicationSet controller log level. One of: `debug`, `info`, `warn`, `error` |
|
||||
| applicationSet.metrics.enabled | bool | `false` | Deploy metrics service |
|
||||
| applicationSet.metrics.service.annotations | object | `{}` | Metrics service annotations |
|
||||
| applicationSet.metrics.service.clusterIP | string | `""` | Metrics service clusterIP. `None` makes a "headless service" (no virtual IP) |
|
||||
| applicationSet.metrics.service.labels | object | `{}` | Metrics service labels |
|
||||
| applicationSet.metrics.service.portName | string | `"http-metrics"` | Metrics service port name |
|
||||
| applicationSet.metrics.service.servicePort | int | `8085` | Metrics service port |
|
||||
| applicationSet.metrics.service.servicePort | int | `8080` | Metrics service port |
|
||||
| applicationSet.metrics.service.type | string | `"ClusterIP"` | Metrics service type |
|
||||
| applicationSet.metrics.serviceMonitor.additionalLabels | object | `{}` | Prometheus ServiceMonitor labels |
|
||||
| applicationSet.metrics.serviceMonitor.annotations | object | `{}` | Prometheus ServiceMonitor annotations |
|
||||
| applicationSet.metrics.serviceMonitor.enabled | bool | `false` | Enable a prometheus ServiceMonitor |
|
||||
|
@ -1008,33 +1136,36 @@ If you want to use an existing Redis (eg. a managed service from a cloud provide
|
|||
| applicationSet.metrics.serviceMonitor.selector | object | `{}` | Prometheus ServiceMonitor selector |
|
||||
| applicationSet.metrics.serviceMonitor.tlsConfig | object | `{}` | Prometheus ServiceMonitor tlsConfig |
|
||||
| applicationSet.name | string | `"applicationset-controller"` | ApplicationSet controller name string |
|
||||
| applicationSet.nodeSelector | object | `{}` | [Node selector] |
|
||||
| applicationSet.nodeSelector | object | `{}` (defaults to global.nodeSelector) | [Node selector] |
|
||||
| applicationSet.pdb.annotations | object | `{}` | Annotations to be added to ApplicationSet controller pdb |
|
||||
| applicationSet.pdb.enabled | bool | `false` | Deploy a [PodDisruptionBudget] for the ApplicationSet controller |
|
||||
| applicationSet.pdb.labels | object | `{}` | Labels to be added to ApplicationSet controller pdb |
|
||||
| applicationSet.pdb.maxUnavailable | string | `""` | Number of pods that are unavailble after eviction as number or percentage (eg.: 50%). |
|
||||
| applicationSet.pdb.maxUnavailable | string | `""` | Number of pods that are unavailable after eviction as number or percentage (eg.: 50%). |
|
||||
| applicationSet.pdb.minAvailable | string | `""` (defaults to 0 if not specified) | Number of pods that are available after eviction as number or percentage (eg.: 50%) |
|
||||
| applicationSet.podAnnotations | object | `{}` | Annotations for the ApplicationSet controller pods |
|
||||
| applicationSet.podLabels | object | `{}` | Labels for the ApplicationSet controller pods |
|
||||
| applicationSet.priorityClassName | string | `""` | If specified, indicates the pod's priority. If not specified, the pod priority will be default or zero if there is no default. |
|
||||
| applicationSet.priorityClassName | string | `""` (defaults to global.priorityClassName) | Priority class for the ApplicationSet controller pods |
|
||||
| applicationSet.readinessProbe.enabled | bool | `false` | Enable Kubernetes liveness probe for ApplicationSet controller |
|
||||
| applicationSet.readinessProbe.failureThreshold | int | `3` | Minimum consecutive failures for the [probe] to be considered failed after having succeeded |
|
||||
| applicationSet.readinessProbe.initialDelaySeconds | int | `10` | Number of seconds after the container has started before [probe] is initiated |
|
||||
| applicationSet.readinessProbe.periodSeconds | int | `10` | How often (in seconds) to perform the [probe] |
|
||||
| applicationSet.readinessProbe.successThreshold | int | `1` | Minimum consecutive successes for the [probe] to be considered successful after having failed |
|
||||
| applicationSet.readinessProbe.timeoutSeconds | int | `1` | Number of seconds after which the [probe] times out |
|
||||
| applicationSet.replicaCount | int | `1` | The number of ApplicationSet controller pods to run |
|
||||
| applicationSet.replicas | int | `1` | The number of ApplicationSet controller pods to run |
|
||||
| applicationSet.resources | object | `{}` | Resource limits and requests for the ApplicationSet controller pods. |
|
||||
| applicationSet.service.annotations | object | `{}` | ApplicationSet service annotations |
|
||||
| applicationSet.service.labels | object | `{}` | ApplicationSet service labels |
|
||||
| applicationSet.service.port | int | `7000` | ApplicationSet service port |
|
||||
| applicationSet.service.portName | string | `"webhook"` | ApplicationSet service port name |
|
||||
| applicationSet.service.type | string | `"ClusterIP"` | ApplicationSet service type |
|
||||
| applicationSet.serviceAccount.annotations | object | `{}` | Annotations applied to created service account |
|
||||
| applicationSet.serviceAccount.automountServiceAccountToken | bool | `true` | Automount API credentials for the Service Account |
|
||||
| applicationSet.serviceAccount.create | bool | `true` | Create ApplicationSet controller service account |
|
||||
| applicationSet.serviceAccount.labels | object | `{}` | Labels applied to created service account |
|
||||
| applicationSet.serviceAccount.name | string | `"argocd-applicationset-controller"` | ApplicationSet controller service account name |
|
||||
| applicationSet.tolerations | list | `[]` | [Tolerations] for use with node taints |
|
||||
| applicationSet.terminationGracePeriodSeconds | int | `30` | terminationGracePeriodSeconds for container lifecycle hook |
|
||||
| applicationSet.tolerations | list | `[]` (defaults to global.tolerations) | [Tolerations] for use with node taints |
|
||||
| applicationSet.topologySpreadConstraints | list | `[]` (defaults to global.topologySpreadConstraints) | Assign custom [TopologySpreadConstraints] rules to the ApplicationSet controller |
|
||||
| applicationSet.webhook.ingress.annotations | object | `{}` | Additional ingress annotations |
|
||||
| applicationSet.webhook.ingress.enabled | bool | `false` | Enable an ingress resource for Webhooks |
|
||||
| applicationSet.webhook.ingress.extraPaths | list | `[]` | Additional ingress paths |
|
||||
|
@ -1049,37 +1180,17 @@ If you want to use an existing Redis (eg. a managed service from a cloud provide
|
|||
|
||||
| Key | Type | Default | Description |
|
||||
|-----|------|---------|-------------|
|
||||
| notifications.affinity | object | `{}` | Assign custom [affinity] rules |
|
||||
| notifications.affinity | object | `{}` (defaults to global.affinity preset) | Assign custom [affinity] rules |
|
||||
| notifications.argocdUrl | string | `nil` | Argo CD dashboard url; used in place of {{.context.argocdUrl}} in templates |
|
||||
| notifications.bots.slack.affinity | object | `{}` | Assign custom [affinity] rules |
|
||||
| notifications.bots.slack.containerSecurityContext | object | See [values.yaml] | Slack bot container-level security Context |
|
||||
| notifications.bots.slack.enabled | bool | `false` | Enable slack bot |
|
||||
| notifications.bots.slack.extraArgs | list | `[]` | List of extra cli args to add for Slack bot |
|
||||
| notifications.bots.slack.image.imagePullPolicy | string | `""` (defaults to global.image.imagePullPolicy) | Image pull policy for the Slack bot |
|
||||
| notifications.bots.slack.image.repository | string | `""` (defaults to global.image.repository) | Repository to use for the Slack bot |
|
||||
| notifications.bots.slack.image.tag | string | `""` (defaults to global.image.tag) | Tag to use for the Slack bot |
|
||||
| notifications.bots.slack.imagePullSecrets | list | `[]` (defaults to global.imagePullSecrets) | Secrets with credentials to pull images from a private registry |
|
||||
| notifications.bots.slack.logFormat | string | `""` (defaults to global.logging.format) | Slack bot log format. Either `text` or `json` |
|
||||
| notifications.bots.slack.logLevel | string | `""` (defaults to global.logging.level) | Slack bot log level. One of: `debug`, `info`, `warn`, `error` |
|
||||
| notifications.bots.slack.nodeSelector | object | `{}` | [Node selector] |
|
||||
| notifications.bots.slack.pdb.annotations | object | `{}` | Annotations to be added to Slack bot pdb |
|
||||
| notifications.bots.slack.pdb.enabled | bool | `false` | Deploy a [PodDisruptionBudget] for the Slack bot |
|
||||
| notifications.bots.slack.pdb.labels | object | `{}` | Labels to be added to Slack bot pdb |
|
||||
| notifications.bots.slack.pdb.maxUnavailable | string | `""` | Number of pods that are unavailble after eviction as number or percentage (eg.: 50%). |
|
||||
| notifications.bots.slack.pdb.minAvailable | string | `""` (defaults to 0 if not specified) | Number of pods that are available after eviction as number or percentage (eg.: 50%) |
|
||||
| notifications.bots.slack.resources | object | `{}` | Resource limits and requests for the Slack bot |
|
||||
| notifications.bots.slack.service.annotations | object | `{}` | Service annotations for Slack bot |
|
||||
| notifications.bots.slack.service.port | int | `80` | Service port for Slack bot |
|
||||
| notifications.bots.slack.service.type | string | `"LoadBalancer"` | Service type for Slack bot |
|
||||
| notifications.bots.slack.serviceAccount.annotations | object | `{}` | Annotations applied to created service account |
|
||||
| notifications.bots.slack.serviceAccount.create | bool | `true` | Specifies whether a service account should be created |
|
||||
| notifications.bots.slack.serviceAccount.name | string | `"argocd-notifications-bot"` | The name of the service account to use. |
|
||||
| notifications.bots.slack.tolerations | list | `[]` | [Tolerations] for use with node taints |
|
||||
| notifications.clusterRoleRules.rules | list | `[]` | List of custom rules for the notifications controller's ClusterRole resource |
|
||||
| notifications.cm.create | bool | `true` | Whether helm chart creates notifications controller config map |
|
||||
| notifications.containerPorts.metrics | int | `9001` | Metrics container port |
|
||||
| notifications.containerSecurityContext | object | See [values.yaml] | Notification controller container-level security Context |
|
||||
| notifications.context | object | `{}` | Define user-defined context |
|
||||
| notifications.deploymentAnnotations | object | `{}` | Annotations to be applied to the notifications controller Deployment |
|
||||
| notifications.deploymentStrategy | object | `{"type":"Recreate"}` | Deployment strategy to be added to the notifications controller Deployment |
|
||||
| notifications.dnsConfig | object | `{}` | [DNS configuration] |
|
||||
| notifications.dnsPolicy | string | `"ClusterFirst"` | Alternative DNS policy for notifications controller Pods |
|
||||
| notifications.enabled | bool | `true` | Enable notifications controller |
|
||||
| notifications.extraArgs | list | `[]` | Extra arguments to provide to the notifications controller |
|
||||
| notifications.extraContainers | list | `[]` | Additional containers to be added to the notifications controller pod |
|
||||
|
@ -1097,8 +1208,10 @@ If you want to use an existing Redis (eg. a managed service from a cloud provide
|
|||
| notifications.metrics.enabled | bool | `false` | Enables prometheus metrics server |
|
||||
| notifications.metrics.port | int | `9001` | Metrics port |
|
||||
| notifications.metrics.service.annotations | object | `{}` | Metrics service annotations |
|
||||
| notifications.metrics.service.clusterIP | string | `""` | Metrics service clusterIP. `None` makes a "headless service" (no virtual IP) |
|
||||
| notifications.metrics.service.labels | object | `{}` | Metrics service labels |
|
||||
| notifications.metrics.service.portName | string | `"http-metrics"` | Metrics service port name |
|
||||
| notifications.metrics.service.type | string | `"ClusterIP"` | Metrics service type |
|
||||
| notifications.metrics.serviceMonitor.additionalLabels | object | `{}` | Prometheus ServiceMonitor labels |
|
||||
| notifications.metrics.serviceMonitor.annotations | object | `{}` | Prometheus ServiceMonitor annotations |
|
||||
| notifications.metrics.serviceMonitor.enabled | bool | `false` | Enable a prometheus ServiceMonitor |
|
||||
|
@ -1108,20 +1221,21 @@ If you want to use an existing Redis (eg. a managed service from a cloud provide
|
|||
| notifications.metrics.serviceMonitor.selector | object | `{}` | Prometheus ServiceMonitor selector |
|
||||
| notifications.metrics.serviceMonitor.tlsConfig | object | `{}` | Prometheus ServiceMonitor tlsConfig |
|
||||
| notifications.name | string | `"notifications-controller"` | Notifications controller name string |
|
||||
| notifications.nodeSelector | object | `{}` | [Node selector] |
|
||||
| notifications.nodeSelector | object | `{}` (defaults to global.nodeSelector) | [Node selector] |
|
||||
| notifications.notifiers | object | See [values.yaml] | Configures notification services such as slack, email or custom webhook |
|
||||
| notifications.pdb.annotations | object | `{}` | Annotations to be added to notifications controller pdb |
|
||||
| notifications.pdb.enabled | bool | `false` | Deploy a [PodDisruptionBudget] for the notifications controller |
|
||||
| notifications.pdb.labels | object | `{}` | Labels to be added to notifications controller pdb |
|
||||
| notifications.pdb.maxUnavailable | string | `""` | Number of pods that are unavailble after eviction as number or percentage (eg.: 50%). |
|
||||
| notifications.pdb.maxUnavailable | string | `""` | Number of pods that are unavailable after eviction as number or percentage (eg.: 50%). |
|
||||
| notifications.pdb.minAvailable | string | `""` (defaults to 0 if not specified) | Number of pods that are available after eviction as number or percentage (eg.: 50%) |
|
||||
| notifications.podAnnotations | object | `{}` | Annotations to be applied to the notifications controller Pods |
|
||||
| notifications.podLabels | object | `{}` | Labels to be applied to the notifications controller Pods |
|
||||
| notifications.priorityClassName | string | `""` | Priority class for the notifications controller pods |
|
||||
| notifications.priorityClassName | string | `""` (defaults to global.priorityClassName) | Priority class for the notifications controller pods |
|
||||
| notifications.resources | object | `{}` | Resource limits and requests for the notifications controller |
|
||||
| notifications.secret.annotations | object | `{}` | key:value pairs of annotations to be added to the secret |
|
||||
| notifications.secret.create | bool | `true` | Whether helm chart creates notifications controller secret |
|
||||
| notifications.secret.items | object | `{}` | Generic key:value pairs to be inserted into the secret |
|
||||
| notifications.secret.labels | object | `{}` | key:value pairs of labels to be added to the secret |
|
||||
| notifications.serviceAccount.annotations | object | `{}` | Annotations applied to created service account |
|
||||
| notifications.serviceAccount.automountServiceAccountToken | bool | `true` | Automount API credentials for the Service Account |
|
||||
| notifications.serviceAccount.create | bool | `true` | Create notifications controller service account |
|
||||
|
@ -1129,7 +1243,9 @@ If you want to use an existing Redis (eg. a managed service from a cloud provide
|
|||
| notifications.serviceAccount.name | string | `"argocd-notifications-controller"` | Notification controller service account name |
|
||||
| notifications.subscriptions | list | `[]` | Contains centrally managed global application subscriptions |
|
||||
| notifications.templates | object | `{}` | The notification template is used to generate the notification content |
|
||||
| notifications.tolerations | list | `[]` | [Tolerations] for use with node taints |
|
||||
| notifications.terminationGracePeriodSeconds | int | `30` | terminationGracePeriodSeconds for container lifecycle hook |
|
||||
| notifications.tolerations | list | `[]` (defaults to global.tolerations) | [Tolerations] for use with node taints |
|
||||
| notifications.topologySpreadConstraints | list | `[]` (defaults to global.topologySpreadConstraints) | Assign custom [TopologySpreadConstraints] rules to the application controller |
|
||||
| notifications.triggers | object | `{}` | The trigger defines the condition when the notification should be sent |
|
||||
|
||||
----------------------------------------------
|
||||
|
@ -1140,6 +1256,7 @@ Autogenerated from chart metadata using [helm-docs](https://github.com/norwoodj/
|
|||
[BackendConfigSpec]: https://cloud.google.com/kubernetes-engine/docs/concepts/backendconfig#backendconfigspec_v1beta1_cloudgooglecom
|
||||
[CSS styles]: https://argo-cd.readthedocs.io/en/stable/operator-manual/custom-styles/
|
||||
[changelog]: https://artifacthub.io/packages/helm/argo/argo-cd?modal=changelog
|
||||
[DNS configuration]: https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/
|
||||
[external cluster credentials]: https://argo-cd.readthedocs.io/en/stable/operator-manual/declarative-setup/#clusters
|
||||
[FrontendConfigSpec]: https://cloud.google.com/kubernetes-engine/docs/how-to/ingress-features#configuring_ingress_features_through_frontendconfig_parameters
|
||||
[declarative setup]: https://argo-cd.readthedocs.io/en/stable/operator-manual/declarative-setup
|
||||
|
@ -1155,3 +1272,9 @@ Autogenerated from chart metadata using [helm-docs](https://github.com/norwoodj/
|
|||
[TopologySpreadConstraints]: https://kubernetes.io/docs/concepts/workloads/pods/pod-topology-spread-constraints/
|
||||
[values.yaml]: values.yaml
|
||||
[v2.2 to 2.3 upgrade instructions]: https://github.com/argoproj/argo-cd/blob/v2.3.0/docs/operator-manual/upgrading/2.2-2.3.md
|
||||
[tini]: https://github.com/argoproj/argo-cd/pull/12707
|
||||
[EKS EoL]: https://endoflife.date/amazon-eks
|
||||
[Kubernetes Compatibility Matrix]: https://argo-cd.readthedocs.io/en/stable/operator-manual/installation/#supported-versions
|
||||
[Applications in any namespace]: https://argo-cd.readthedocs.io/en/stable/operator-manual/app-any-namespace/#applications-in-any-namespace
|
||||
[Argo CD Extensions]: https://github.com/argoproj-labs/argocd-extensions?tab=readme-ov-file#deprecation-notice
|
||||
[Argo CD Extension Installer]: https://github.com/argoproj-labs/argocd-extension-installer
|
||||
|
|
|
@ -41,7 +41,7 @@ repoServer:
|
|||
minReplicas: 2
|
||||
|
||||
applicationSet:
|
||||
replicaCount: 2
|
||||
replicas: 2
|
||||
```
|
||||
|
||||
### HA mode without autoscaling
|
||||
|
@ -60,7 +60,7 @@ repoServer:
|
|||
replicas: 2
|
||||
|
||||
applicationSet:
|
||||
replicaCount: 2
|
||||
replicas: 2
|
||||
```
|
||||
|
||||
### Synchronizing Changes from Original Repository
|
||||
|
@ -104,9 +104,45 @@ For full list of changes please check ArtifactHub [changelog].
|
|||
|
||||
Highlighted versions provide information about additional steps that should be performed by user when upgrading to newer version.
|
||||
|
||||
### 5.53.0
|
||||
|
||||
Argocd-repo-server can now optionally use Persistent Volumes for its mountpoints instead of only emptydir()
|
||||
|
||||
### 5.52.0
|
||||
Because [Argo CD Extensions] is now deprecated and no further changes will be made, we switched to [Argo CD Extension Installer], adding an Argo CD Extension Installer to init-container in the Argo CD API server.
|
||||
If you used old mechanism, please move to new mechanism. For more details, please refer `.Values.server.extensions` in values.yaml.
|
||||
|
||||
### 5.35.0
|
||||
This version supports Kubernetes version `>=1.23.0-0`. The current supported version of Kubernetes is v1.24 or later and we align with the Amazon EKS calendar, because many AWS users follow a conservative approach.
|
||||
|
||||
Please see more information about EoL: [Amazon EKS EoL][EKS EoL].
|
||||
|
||||
|
||||
### 5.31.0
|
||||
The manifests are now using [`tini` as entrypoint][tini], instead of `entrypoint.sh`. Until Argo CD v2.8, `entrypoint.sh` is retained for upgrade compatibility.
|
||||
This means that the deployment manifests have to be updated after upgrading to Argo CD v2.7, and before upgrading to Argo CD v2.8 later.
|
||||
In case the manifests are updated before moving to Argo CD v2.8, the containers will not be able to start.
|
||||
|
||||
### 5.26.0
|
||||
|
||||
This version adds support for Config Management Plugins using the sidecar model and configured in a ConfigMap named `argocd-cmp-cm`.
|
||||
Users will need to migrate from the previous `argocd-cm` ConfigMap method to using the sidecar method before Argo CD v2.8. See the [Argo CD CMP migration guide](https://argo-cd.readthedocs.io/en/stable/operator-manual/config-management-plugins/#migrating-from-argocd-cm-plugins) for more specifics.
|
||||
|
||||
To migrate your plugins, you can now set the `configs.cmp.create` to `true` and move your plugins from `configs.cm` to `configs.cmp.plugins`.
|
||||
You will also need to configure the sidecar containers under `repoServer.extraContainers` and ensure you are mounting any custom volumes you need from `repoServer.volumes` into here also.
|
||||
|
||||
### 5.24.0
|
||||
|
||||
This version adds additional global parameters for scheduling (`nodeSelector`, `tolerations`, `topologySpreadConstraints`).
|
||||
Default `global.affinity` rules can be disabled when `none` value is used for the preset.
|
||||
|
||||
### 5.22.0
|
||||
|
||||
This version adds `global.affinity` options that are used as a presets. Override on component level works as before and replaces the default preset completely.
|
||||
|
||||
### 5.19.0
|
||||
|
||||
This version consolidates config for custom repository TLS certificates and SSH known hosts. If you provide this values please move them into new `configs.ssh` and `configs.tls` sections.
|
||||
This version consolidates config for custom repository TLS certificates and SSH known hosts. If you provided these values (`configs.knownHosts.*`, `configs.knownHostsAnnotations`, `configs.tlsCerts`, `configs.tlsCertsAnnotations`) please move them into new `configs.ssh` and `configs.tls` sections.
|
||||
You can also use new option `configs.ssh.extraHosts` to configure your SSH keys without maintaing / overwritting keys for public Git repositories.
|
||||
|
||||
### 5.13.0
|
||||
|
@ -343,6 +379,8 @@ server:
|
|||
## Prerequisites
|
||||
|
||||
- {{ template "chart.kubeVersionLine" . }}
|
||||
- We align with [Amazon EKS calendar][EKS EoL] because there are many AWS users and it's a conservative approach.
|
||||
- Please check [Support Matrix of Argo CD][Kubernetes Compatibility Matrix] for official info.
|
||||
- Helm v3.0.0+
|
||||
|
||||
## Installing the Chart
|
||||
|
@ -521,6 +559,7 @@ Autogenerated from chart metadata using [helm-docs](https://github.com/norwoodj/
|
|||
[BackendConfigSpec]: https://cloud.google.com/kubernetes-engine/docs/concepts/backendconfig#backendconfigspec_v1beta1_cloudgooglecom
|
||||
[CSS styles]: https://argo-cd.readthedocs.io/en/stable/operator-manual/custom-styles/
|
||||
[changelog]: https://artifacthub.io/packages/helm/argo/argo-cd?modal=changelog
|
||||
[DNS configuration]: https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/
|
||||
[external cluster credentials]: https://argo-cd.readthedocs.io/en/stable/operator-manual/declarative-setup/#clusters
|
||||
[FrontendConfigSpec]: https://cloud.google.com/kubernetes-engine/docs/how-to/ingress-features#configuring_ingress_features_through_frontendconfig_parameters
|
||||
[declarative setup]: https://argo-cd.readthedocs.io/en/stable/operator-manual/declarative-setup
|
||||
|
@ -536,3 +575,9 @@ Autogenerated from chart metadata using [helm-docs](https://github.com/norwoodj/
|
|||
[TopologySpreadConstraints]: https://kubernetes.io/docs/concepts/workloads/pods/pod-topology-spread-constraints/
|
||||
[values.yaml]: values.yaml
|
||||
[v2.2 to 2.3 upgrade instructions]: https://github.com/argoproj/argo-cd/blob/v2.3.0/docs/operator-manual/upgrading/2.2-2.3.md
|
||||
[tini]: https://github.com/argoproj/argo-cd/pull/12707
|
||||
[EKS EoL]: https://endoflife.date/amazon-eks
|
||||
[Kubernetes Compatibility Matrix]: https://argo-cd.readthedocs.io/en/stable/operator-manual/installation/#supported-versions
|
||||
[Applications in any namespace]: https://argo-cd.readthedocs.io/en/stable/operator-manual/app-any-namespace/#applications-in-any-namespace
|
||||
[Argo CD Extensions]: https://github.com/argoproj-labs/argocd-extensions?tab=readme-ov-file#deprecation-notice
|
||||
[Argo CD Extension Installer]: https://github.com/argoproj-labs/argocd-extension-installer
|
||||
|
|
14
charts/argo-cd/ci/extension-values.yaml
Normal file
14
charts/argo-cd/ci/extension-values.yaml
Normal file
|
@ -0,0 +1,14 @@
|
|||
# Test Argo CD extension
|
||||
crds:
|
||||
keep: false
|
||||
# Ref: https://github.com/argoproj-labs/argocd-extension-metrics?tab=readme-ov-file#install-ui-extension
|
||||
server:
|
||||
extensions:
|
||||
enabled: true
|
||||
extensionList:
|
||||
- name: extension-metrics
|
||||
env:
|
||||
- name: EXTENSION_URL
|
||||
value: https://github.com/argoproj-labs/argocd-extension-metrics/releases/download/v1.0.0/extension.tar.gz
|
||||
- name: EXTENSION_CHECKSUM_URL
|
||||
value: https://github.com/argoproj-labs/argocd-extension-metrics/releases/download/v1.0.0/extension_checksums.txt
|
|
@ -52,9 +52,6 @@ DEPRECATED option configs.gpgKeys - Use config.gpg.keys
|
|||
{{- if .Values.configs.gpgKeysAnnotations }}
|
||||
DEPRECATED option configs.gpgKeysAnnotations - Use config.gpg.annotations
|
||||
{{- end }}
|
||||
{{- if hasKey .Values "createAggregateRoles" }}
|
||||
DEPRECATED option createAggregateRoles - Use global.rbac.aggregatedRoles
|
||||
{{- end }}
|
||||
{{- if hasKey (.Values.controller.clusterAdminAccess | default dict) "enabled" }}
|
||||
DEPRECATED option .controller.clusterAdminAccess.enabled - Use createClusterRoles
|
||||
{{- end }}
|
||||
|
@ -76,6 +73,21 @@ DEPRECATED option configs.tlsCertsAnnotations - Use configs.tls.annotations
|
|||
{{- if hasKey .Values.configs "tlsCerts" }}
|
||||
DEPRECATED option configs.tlsCerts.data - Use configs.tls.certificates
|
||||
{{- end }}
|
||||
{{- if .Values.applicationSet.replicaCount }}
|
||||
DEPRECATED option applicationSet.replicaCount - Use applicationSet.replicas
|
||||
{{- end }}
|
||||
{{- if .Values.applicationSet.logFormat }}
|
||||
DEPRECATED option applicationSet.logFormat - Use configs.params.applicationsetcontroller.log.format
|
||||
{{- end }}
|
||||
{{- if .Values.applicationSet.logLevel }}
|
||||
DEPRECATED option applicationSet.logLevel - Use configs.params.applicationsetcontroller.log.level
|
||||
{{- end }}
|
||||
{{- if .Values.applicationSet.args.policy }}
|
||||
DEPRECATED option applicationSet.args.policy - Use configs.params.applicationsetcontroller.policy
|
||||
{{- end }}
|
||||
{{- if .Values.applicationSet.args.dryRun }}
|
||||
DEPRECATED option applicationSet.args.dryRun - Use configs.params.applicationsetcontroller.dryRun
|
||||
{{- end }}
|
||||
{{- if .Values.controller.service }}
|
||||
REMOVED option controller.service - Use controller.metrics
|
||||
{{- end }}
|
||||
|
@ -109,6 +121,12 @@ REMOVED option redis.containerPort - Use redis.containerPorts
|
|||
{{- if .Values.redis.metrics.containerPort }}
|
||||
REMOVED option redis.metrics.containerPort - Use redis.containerPorts
|
||||
{{- end }}
|
||||
{{- if .Values.apiVersionOverrides.autoscaling }}
|
||||
REMOVED option apiVersionOverrides.autoscaling - API autoscaling/v2 is GA from 1.23
|
||||
{{- end }}
|
||||
{{- if .Values.apiVersionOverrides.certmanager }}
|
||||
REMOVED option apiVersionOverrides.certmanager - API v1 is only possible option after K8s 1.22
|
||||
{{- end }}
|
||||
|
||||
In order to access the server UI you have the following options:
|
||||
|
||||
|
|
|
@ -38,6 +38,13 @@ Create Argo CD app version
|
|||
{{- default .Chart.AppVersion .Values.global.image.tag }}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Return valid version label
|
||||
*/}}
|
||||
{{- define "argo-cd.versionLabelValue" -}}
|
||||
{{ regexReplaceAll "[^-A-Za-z0-9_.]" (include "argo-cd.defaultTag" .) "-" | trunc 63 | trimAll "-" | trimAll "_" | trimAll "." | quote }}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Common labels
|
||||
*/}}
|
||||
|
@ -46,6 +53,7 @@ helm.sh/chart: {{ include "argo-cd.chart" .context }}
|
|||
{{ include "argo-cd.selectorLabels" (dict "context" .context "component" .component "name" .name) }}
|
||||
app.kubernetes.io/managed-by: {{ .context.Release.Service }}
|
||||
app.kubernetes.io/part-of: argocd
|
||||
app.kubernetes.io/version: {{ include "argo-cd.versionLabelValue" .context }}
|
||||
{{- with .context.Values.global.additionalLabels }}
|
||||
{{ toYaml . }}
|
||||
{{- end }}
|
||||
|
@ -63,3 +71,77 @@ app.kubernetes.io/instance: {{ .context.Release.Name }}
|
|||
app.kubernetes.io/component: {{ .component }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Common affinity definition
|
||||
Pod affinity
|
||||
- Soft prefers different nodes
|
||||
- Hard requires different nodes and prefers different availibility zones
|
||||
Node affinity
|
||||
- Soft prefers given user expressions
|
||||
- Hard requires given user expressions
|
||||
*/}}
|
||||
{{- define "argo-cd.affinity" -}}
|
||||
{{- with .component.affinity -}}
|
||||
{{- toYaml . -}}
|
||||
{{- else -}}
|
||||
{{- $preset := .context.Values.global.affinity -}}
|
||||
{{- if (eq $preset.podAntiAffinity "soft") }}
|
||||
podAntiAffinity:
|
||||
preferredDuringSchedulingIgnoredDuringExecution:
|
||||
- weight: 100
|
||||
podAffinityTerm:
|
||||
labelSelector:
|
||||
matchLabels:
|
||||
app.kubernetes.io/name: {{ include "argo-cd.name" .context }}-{{ .component.name }}
|
||||
topologyKey: kubernetes.io/hostname
|
||||
{{- else if (eq $preset.podAntiAffinity "hard") }}
|
||||
podAntiAffinity:
|
||||
preferredDuringSchedulingIgnoredDuringExecution:
|
||||
- weight: 100
|
||||
podAffinityTerm:
|
||||
labelSelector:
|
||||
matchLabels:
|
||||
app.kubernetes.io/name: {{ include "argo-cd.name" .context }}-{{ .component.name }}
|
||||
topologyKey: topology.kubernetes.io/zone
|
||||
requiredDuringSchedulingIgnoredDuringExecution:
|
||||
- labelSelector:
|
||||
matchLabels:
|
||||
app.kubernetes.io/name: {{ include "argo-cd.name" .context }}-{{ .component.name }}
|
||||
topologyKey: kubernetes.io/hostname
|
||||
{{- end }}
|
||||
{{- with $preset.nodeAffinity.matchExpressions }}
|
||||
{{- if (eq $preset.nodeAffinity.type "soft") }}
|
||||
nodeAffinity:
|
||||
preferredDuringSchedulingIgnoredDuringExecution:
|
||||
- weight: 1
|
||||
preference:
|
||||
matchExpressions:
|
||||
{{- toYaml . | nindent 6 }}
|
||||
{{- else if (eq $preset.nodeAffinity.type "hard") }}
|
||||
nodeAffinity:
|
||||
requiredDuringSchedulingIgnoredDuringExecution:
|
||||
nodeSelectorTerms:
|
||||
- matchExpressions:
|
||||
{{- toYaml . | nindent 6 }}
|
||||
{{- end }}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Common deployment strategy definition
|
||||
- Recreate don't have additional fields, we need to remove them if added by the mergeOverwrite
|
||||
*/}}
|
||||
{{- define "argo-cd.strategy" -}}
|
||||
{{- $preset := . -}}
|
||||
{{- if (eq (toString $preset.type) "Recreate") }}
|
||||
type: Recreate
|
||||
{{- else if (eq (toString $preset.type) "RollingUpdate") }}
|
||||
type: RollingUpdate
|
||||
{{- with $preset.rollingUpdate }}
|
||||
rollingUpdate:
|
||||
{{- toYaml . | nindent 2 }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end -}}
|
||||
|
|
|
@ -8,6 +8,17 @@ to 63 chars and it includes 10 chars of hash and a separating '-'.
|
|||
{{- printf "%s-%s" (include "argo-cd.fullname" .) .Values.controller.name | trunc 52 | trimSuffix "-" -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Create the name of the controller service account to use
|
||||
*/}}
|
||||
{{- define "argo-cd.controller.serviceAccountName" -}}
|
||||
{{- if .Values.controller.serviceAccount.create -}}
|
||||
{{ default (include "argo-cd.controller.fullname" .) .Values.controller.serviceAccount.name }}
|
||||
{{- else -}}
|
||||
{{ default "default" .Values.controller.serviceAccount.name }}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Create dex name and version as used by the chart label.
|
||||
*/}}
|
||||
|
@ -26,6 +37,17 @@ Create Dex server endpoint
|
|||
{{- printf "%s://%s:%d" $scheme $host $port }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Create the name of the dex service account to use
|
||||
*/}}
|
||||
{{- define "argo-cd.dex.serviceAccountName" -}}
|
||||
{{- if .Values.dex.serviceAccount.create -}}
|
||||
{{ default (include "argo-cd.dex.fullname" .) .Values.dex.serviceAccount.name }}
|
||||
{{- else -}}
|
||||
{{ default "default" .Values.dex.serviceAccount.name }}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Create redis name and version as used by the chart label.
|
||||
*/}}
|
||||
|
@ -53,6 +75,17 @@ Return Redis server endpoint
|
|||
{{- end }}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Create the name of the redis service account to use
|
||||
*/}}
|
||||
{{- define "argo-cd.redis.serviceAccountName" -}}
|
||||
{{- if .Values.redis.serviceAccount.create -}}
|
||||
{{ default (include "argo-cd.redis.fullname" .) .Values.redis.serviceAccount.name }}
|
||||
{{- else -}}
|
||||
{{ default "default" .Values.redis.serviceAccount.name }}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Create argocd server name and version as used by the chart label.
|
||||
*/}}
|
||||
|
@ -60,6 +93,17 @@ Create argocd server name and version as used by the chart label.
|
|||
{{- printf "%s-%s" (include "argo-cd.fullname" .) .Values.server.name | trunc 63 | trimSuffix "-" -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Create the name of the Argo CD server service account to use
|
||||
*/}}
|
||||
{{- define "argo-cd.server.serviceAccountName" -}}
|
||||
{{- if .Values.server.serviceAccount.create -}}
|
||||
{{ default (include "argo-cd.server.fullname" .) .Values.server.serviceAccount.name }}
|
||||
{{- else -}}
|
||||
{{ default "default" .Values.server.serviceAccount.name }}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Create argocd repo-server name and version as used by the chart label.
|
||||
*/}}
|
||||
|
@ -67,6 +111,17 @@ Create argocd repo-server name and version as used by the chart label.
|
|||
{{- printf "%s-%s" (include "argo-cd.fullname" .) .Values.repoServer.name | trunc 63 | trimSuffix "-" -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Create the name of the repo-server service account to use
|
||||
*/}}
|
||||
{{- define "argo-cd.repoServer.serviceAccountName" -}}
|
||||
{{- if .Values.repoServer.serviceAccount.create -}}
|
||||
{{ default (include "argo-cd.repoServer.fullname" .) .Values.repoServer.serviceAccount.name }}
|
||||
{{- else -}}
|
||||
{{ default "default" .Values.repoServer.serviceAccount.name }}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Create argocd application set name and version as used by the chart label.
|
||||
*/}}
|
||||
|
@ -74,6 +129,17 @@ Create argocd application set name and version as used by the chart label.
|
|||
{{- printf "%s-%s" (include "argo-cd.fullname" .) .Values.applicationSet.name | trunc 63 | trimSuffix "-" -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Create the name of the application set service account to use
|
||||
*/}}
|
||||
{{- define "argo-cd.applicationSet.serviceAccountName" -}}
|
||||
{{- if .Values.applicationSet.serviceAccount.create -}}
|
||||
{{ default (include "argo-cd.applicationSet.fullname" .) .Values.applicationSet.serviceAccount.name }}
|
||||
{{- else -}}
|
||||
{{ default "default" .Values.applicationSet.serviceAccount.name }}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Create argocd notifications name and version as used by the chart label.
|
||||
*/}}
|
||||
|
@ -81,76 +147,10 @@ Create argocd notifications name and version as used by the chart label.
|
|||
{{- printf "%s-%s" (include "argo-cd.fullname" .) .Values.notifications.name | trunc 63 | trimSuffix "-" -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Create the name of the controller service account to use
|
||||
*/}}
|
||||
{{- define "argo-cd.controllerServiceAccountName" -}}
|
||||
{{- if .Values.controller.serviceAccount.create -}}
|
||||
{{ default (include "argo-cd.controller.fullname" .) .Values.controller.serviceAccount.name }}
|
||||
{{- else -}}
|
||||
{{ default "default" .Values.controller.serviceAccount.name }}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Create the name of the dex service account to use
|
||||
*/}}
|
||||
{{- define "argo-cd.dexServiceAccountName" -}}
|
||||
{{- if .Values.dex.serviceAccount.create -}}
|
||||
{{ default (include "argo-cd.dex.fullname" .) .Values.dex.serviceAccount.name }}
|
||||
{{- else -}}
|
||||
{{ default "default" .Values.dex.serviceAccount.name }}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Create the name of the redis service account to use
|
||||
*/}}
|
||||
{{- define "argo-cd.redisServiceAccountName" -}}
|
||||
{{- if .Values.redis.serviceAccount.create -}}
|
||||
{{ default (include "argo-cd.redis.fullname" .) .Values.redis.serviceAccount.name }}
|
||||
{{- else -}}
|
||||
{{ default "default" .Values.redis.serviceAccount.name }}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Create the name of the Argo CD server service account to use
|
||||
*/}}
|
||||
{{- define "argo-cd.serverServiceAccountName" -}}
|
||||
{{- if .Values.server.serviceAccount.create -}}
|
||||
{{ default (include "argo-cd.server.fullname" .) .Values.server.serviceAccount.name }}
|
||||
{{- else -}}
|
||||
{{ default "default" .Values.server.serviceAccount.name }}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Create the name of the repo-server service account to use
|
||||
*/}}
|
||||
{{- define "argo-cd.repoServerServiceAccountName" -}}
|
||||
{{- if .Values.repoServer.serviceAccount.create -}}
|
||||
{{ default (include "argo-cd.repoServer.fullname" .) .Values.repoServer.serviceAccount.name }}
|
||||
{{- else -}}
|
||||
{{ default "default" .Values.repoServer.serviceAccount.name }}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Create the name of the application set service account to use
|
||||
*/}}
|
||||
{{- define "argo-cd.applicationSetServiceAccountName" -}}
|
||||
{{- if .Values.applicationSet.serviceAccount.create -}}
|
||||
{{ default (include "argo-cd.applicationSet.fullname" .) .Values.applicationSet.serviceAccount.name }}
|
||||
{{- else -}}
|
||||
{{ default "default" .Values.applicationSet.serviceAccount.name }}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Create the name of the notifications service account to use
|
||||
*/}}
|
||||
{{- define "argo-cd.notificationsServiceAccountName" -}}
|
||||
{{- define "argo-cd.notifications.serviceAccountName" -}}
|
||||
{{- if .Values.notifications.serviceAccount.create -}}
|
||||
{{ default (include "argo-cd.notifications.fullname" .) .Values.notifications.serviceAccount.name }}
|
||||
{{- else -}}
|
||||
|
@ -158,24 +158,15 @@ Create the name of the notifications service account to use
|
|||
{{- end -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Create the name of the notifications bots slack service account to use
|
||||
*/}}
|
||||
{{- define "argo-cd.notificationsBotsSlackServiceAccountName" -}}
|
||||
{{- if .Values.notifications.bots.slack.serviceAccount.create -}}
|
||||
{{ default (include "argo-cd.notifications.fullname" .) .Values.notifications.bots.slack.serviceAccount.name }}
|
||||
{{- else -}}
|
||||
{{ default "default" .Values.notifications.bots.slack.serviceAccount.name }}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Argo Configuration Preset Values (Incluenced by Values configuration)
|
||||
*/}}
|
||||
{{- define "argo-cd.config.cm.presets" -}}
|
||||
{{- $presets := dict -}}
|
||||
{{- if .Values.configs.styles -}}
|
||||
ui.cssurl: "./custom/custom.styles.css"
|
||||
{{- $_ := set $presets "ui.cssurl" "./custom/custom.styles.css" -}}
|
||||
{{- end -}}
|
||||
{{- toYaml $presets }}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
|
@ -185,34 +176,41 @@ Merge Argo Configuration with Preset Configuration
|
|||
{{- $config := (mergeOverwrite (deepCopy (omit .Values.configs.cm "create" "annotations")) (.Values.server.config | default dict)) -}}
|
||||
{{- $preset := include "argo-cd.config.cm.presets" . | fromYaml | default dict -}}
|
||||
{{- range $key, $value := mergeOverwrite $preset $config }}
|
||||
{{ $key }}: {{ toString $value | toYaml }}
|
||||
{{- $fmted := $value | toString }}
|
||||
{{- if not (eq $fmted "") }}
|
||||
{{ $key }}: {{ $fmted | toYaml }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Argo Params Default Configuration Presets
|
||||
NOTE: Configuration keys must be stored as dict because YAML treats dot as separator
|
||||
*/}}
|
||||
{{- define "argo-cd.config.params.presets" -}}
|
||||
repo.server: "{{ include "argo-cd.repoServer.fullname" . }}:{{ .Values.repoServer.service.port }}"
|
||||
server.repo.server.strict.tls: {{ .Values.repoServer.certificateSecret.enabled | toString }}
|
||||
{{- with include "argo-cd.redis.server" . }}
|
||||
redis.server: {{ . | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.dex.enabled }}
|
||||
server.dex.server: {{ include "argo-cd.dex.server" . | quote }}
|
||||
server.dex.server.strict.tls: {{ .Values.dex.certificateSecret.enabled | toString }}
|
||||
{{- end }}
|
||||
{{- range $component := tuple "controller" "server" "reposerver" }}
|
||||
{{ $component }}.log.format: {{ $.Values.global.logging.format | quote }}
|
||||
{{ $component }}.log.level: {{ $.Values.global.logging.level | quote }}
|
||||
{{- end }}
|
||||
{{- $presets := dict -}}
|
||||
{{- $_ := set $presets "repo.server" (printf "%s:%s" (include "argo-cd.repoServer.fullname" .) (.Values.repoServer.service.port | toString)) -}}
|
||||
{{- $_ := set $presets "server.repo.server.strict.tls" (.Values.repoServer.certificateSecret.enabled | toString ) -}}
|
||||
{{- $_ := set $presets "redis.server" (include "argo-cd.redis.server" .) -}}
|
||||
{{- if .Values.dex.enabled -}}
|
||||
{{- $_ := set $presets "server.dex.server" (include "argo-cd.dex.server" .) -}}
|
||||
{{- $_ := set $presets "server.dex.server.strict.tls" .Values.dex.certificateSecret.enabled -}}
|
||||
{{- end -}}
|
||||
{{- range $component := tuple "applicationsetcontroller" "controller" "server" "reposerver" -}}
|
||||
{{- $_ := set $presets (printf "%s.log.format" $component) $.Values.global.logging.format -}}
|
||||
{{- $_ := set $presets (printf "%s.log.level" $component) $.Values.global.logging.level -}}
|
||||
{{- end -}}
|
||||
{{- if .Values.applicationSet.enabled -}}
|
||||
{{- $_ := set $presets "applicationsetcontroller.enable.leader.election" (gt ((.Values.applicationSet.replicas | default .Values.applicationSet.replicaCount) | int64) 1) -}}
|
||||
{{- end -}}
|
||||
{{- toYaml $presets }}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Merge Argo Params Configuration with Preset Configuration
|
||||
*/}}
|
||||
{{- define "argo-cd.config.params" -}}
|
||||
{{- $config := omit .Values.configs.params "annotations" }}
|
||||
{{- $config := omit .Values.configs.params "create" "annotations" }}
|
||||
{{- $preset := include "argo-cd.config.params.presets" . | fromYaml | default dict -}}
|
||||
{{- range $key, $value := mergeOverwrite $preset $config }}
|
||||
{{ $key }}: {{ toString $value | toYaml }}
|
||||
|
|
|
@ -6,38 +6,6 @@ Return the target Kubernetes version
|
|||
{{- default .Capabilities.KubeVersion.Version .Values.kubeVersionOverride }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Return the appropriate apiVersion for autoscaling
|
||||
*/}}
|
||||
{{- define "argo-cd.apiVersion.autoscaling" -}}
|
||||
{{- if .Values.apiVersionOverrides.autoscaling -}}
|
||||
{{- print .Values.apiVersionOverrides.autoscaling -}}
|
||||
{{- else if semverCompare "<1.23-0" (include "argo-cd.kubeVersion" .) -}}
|
||||
{{- print "autoscaling/v2beta1" -}}
|
||||
{{- else -}}
|
||||
{{- print "autoscaling/v2" -}}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Return the appropriate apiVersion for cert-manager
|
||||
*/}}
|
||||
{{- define "argo-cd.apiVersion.cert-manager" -}}
|
||||
{{- if .Values.apiVersionOverrides.certmanager -}}
|
||||
{{- print .Values.apiVersionOverrides.certmanager -}}
|
||||
{{- else if .Capabilities.APIVersions.Has "cert-manager.io/v1" -}}
|
||||
{{- print "cert-manager.io/v1" -}}
|
||||
{{- else if .Capabilities.APIVersions.Has "cert-manager.io/v1beta1" -}}
|
||||
{{- print "cert-manager.io/v1beta1" -}}
|
||||
{{- else if .Capabilities.APIVersions.Has "cert-manager.io/v1alpha3" -}}
|
||||
{{- print "cert-manager.io/v1alpha3" -}}
|
||||
{{- else if .Capabilities.APIVersions.Has "cert-manager.io/v1alpha2" -}}
|
||||
{{- print "cert-manager.io/v1alpha2" -}}
|
||||
{{- else -}}
|
||||
{{- print "certmanager.k8s.io/v1alpha1" -}}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Return the appropriate apiVersion for GKE resources
|
||||
*/}}
|
||||
|
|
|
@ -14,9 +14,6 @@ rules:
|
|||
{{- if .Values.applicationSet.enabled }}
|
||||
- applicationsets
|
||||
{{- end }}
|
||||
{{- if .Values.server.extensions.enabled }}
|
||||
- argocdextensions
|
||||
{{- end }}
|
||||
- appprojects
|
||||
verbs:
|
||||
- get
|
||||
|
@ -39,9 +36,6 @@ rules:
|
|||
{{- if .Values.applicationSet.enabled }}
|
||||
- applicationsets
|
||||
{{- end }}
|
||||
{{- if .Values.server.extensions.enabled }}
|
||||
- argocdextensions
|
||||
{{- end }}
|
||||
- appprojects
|
||||
verbs:
|
||||
- create
|
||||
|
@ -69,9 +63,6 @@ rules:
|
|||
{{- if .Values.applicationSet.enabled }}
|
||||
- applicationsets
|
||||
{{- end }}
|
||||
{{- if .Values.server.extensions.enabled }}
|
||||
- argocdextensions
|
||||
{{- end }}
|
||||
- appprojects
|
||||
verbs:
|
||||
- create
|
||||
|
|
|
@ -12,6 +12,6 @@ roleRef:
|
|||
name: {{ include "argo-cd.controller.fullname" . }}
|
||||
subjects:
|
||||
- kind: ServiceAccount
|
||||
name: {{ include "argo-cd.controllerServiceAccountName" . }}
|
||||
name: {{ include "argo-cd.controller.serviceAccountName" . }}
|
||||
namespace: {{ .Release.Namespace }}
|
||||
{{- end }}
|
||||
|
|
|
@ -3,18 +3,27 @@ apiVersion: v1
|
|||
kind: Service
|
||||
metadata:
|
||||
name: {{ include "argo-cd.controller.fullname" . }}-metrics
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
labels:
|
||||
{{- include "argo-cd.labels" (dict "context" . "component" .Values.controller.name "name" "metrics") | nindent 4 }}
|
||||
{{- with .Values.controller.metrics.service.labels }}
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- with .Values.controller.metrics.service.annotations }}
|
||||
{{- if or .Values.controller.metrics.service.annotations .Values.global.addPrometheusAnnotations }}
|
||||
annotations:
|
||||
{{- range $key, $value := . }}
|
||||
{{- if .Values.global.addPrometheusAnnotations }}
|
||||
prometheus.io/port: {{ .Values.controller.metrics.service.servicePort | quote }}
|
||||
prometheus.io/scrape: "true"
|
||||
{{- end }}
|
||||
{{- range $key, $value := .Values.controller.metrics.service.annotations }}
|
||||
{{ $key }}: {{ $value | quote }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
spec:
|
||||
type: {{ .Values.controller.metrics.service.type }}
|
||||
{{- if and .Values.controller.metrics.service.clusterIP (eq .Values.controller.metrics.service.type "ClusterIP") }}
|
||||
clusterIP: {{ .Values.controller.metrics.service.clusterIP }}
|
||||
{{- end }}
|
||||
ports:
|
||||
- name: {{ .Values.controller.metrics.service.portName }}
|
||||
protocol: TCP
|
||||
|
|
|
@ -5,6 +5,7 @@ metadata:
|
|||
labels:
|
||||
{{- include "argo-cd.labels" (dict "context" . "component" .Values.controller.name "name" .Values.controller.name) | nindent 4 }}
|
||||
name: {{ template "argo-cd.controller.fullname" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
spec:
|
||||
ingress:
|
||||
- from:
|
||||
|
|
|
@ -3,6 +3,7 @@ apiVersion: policy/v1
|
|||
kind: PodDisruptionBudget
|
||||
metadata:
|
||||
name: {{ include "argo-cd.controller.fullname" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
labels:
|
||||
{{- include "argo-cd.labels" (dict "context" . "component" .Values.controller.name "name" .Values.controller.name) | nindent 4 }}
|
||||
{{- with .Values.controller.pdb.labels }}
|
||||
|
|
|
@ -3,9 +3,7 @@ apiVersion: monitoring.coreos.com/v1
|
|||
kind: PrometheusRule
|
||||
metadata:
|
||||
name: {{ template "argo-cd.controller.fullname" . }}
|
||||
{{- if .Values.controller.metrics.rules.namespace }}
|
||||
namespace: {{ .Values.controller.metrics.rules.namespace }}
|
||||
{{- end }}
|
||||
namespace: {{ default .Release.Namespace .Values.controller.metrics.rules.namespace | quote }}
|
||||
labels:
|
||||
{{- include "argo-cd.labels" (dict "context" . "component" .Values.controller.name "name" .Values.controller.name) | nindent 4 }}
|
||||
{{- if .Values.controller.metrics.rules.selector }}
|
||||
|
|
|
@ -2,6 +2,7 @@ apiVersion: rbac.authorization.k8s.io/v1
|
|||
kind: Role
|
||||
metadata:
|
||||
name: {{ template "argo-cd.controller.fullname" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
labels:
|
||||
{{- include "argo-cd.labels" (dict "context" . "component" .Values.controller.name "name" .Values.controller.name) | nindent 4 }}
|
||||
rules:
|
||||
|
@ -34,3 +35,11 @@ rules:
|
|||
verbs:
|
||||
- create
|
||||
- list
|
||||
- apiGroups:
|
||||
- apps
|
||||
resources:
|
||||
- deployments
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- watch
|
||||
|
|
|
@ -1,14 +1,15 @@
|
|||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: RoleBinding
|
||||
metadata:
|
||||
name: {{ template "argo-cd.controller.fullname" . }}
|
||||
name: {{ include "argo-cd.controller.fullname" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
labels:
|
||||
{{- include "argo-cd.labels" (dict "context" . "component" .Values.controller.name "name" .Values.controller.name) | nindent 4 }}
|
||||
roleRef:
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
kind: Role
|
||||
name: {{ template "argo-cd.controller.fullname" . }}
|
||||
name: {{ include "argo-cd.controller.fullname" . }}
|
||||
subjects:
|
||||
- kind: ServiceAccount
|
||||
name: {{ template "argo-cd.controllerServiceAccountName" . }}
|
||||
name: {{ include "argo-cd.controller.serviceAccountName" . }}
|
||||
namespace: {{ .Release.Namespace }}
|
|
@ -3,16 +3,17 @@ apiVersion: v1
|
|||
kind: ServiceAccount
|
||||
automountServiceAccountToken: {{ .Values.controller.serviceAccount.automountServiceAccountToken }}
|
||||
metadata:
|
||||
name: {{ template "argo-cd.controllerServiceAccountName" . }}
|
||||
{{- if .Values.controller.serviceAccount.annotations }}
|
||||
name: {{ include "argo-cd.controller.serviceAccountName" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
{{- with .Values.controller.serviceAccount.annotations }}
|
||||
annotations:
|
||||
{{- range $key, $value := .Values.controller.serviceAccount.annotations }}
|
||||
{{- range $key, $value := . }}
|
||||
{{ $key }}: {{ $value | quote }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
labels:
|
||||
{{- include "argo-cd.labels" (dict "context" . "component" .Values.controller.name "name" .Values.controller.name) | nindent 4 }}
|
||||
{{- range $key, $value := .Values.controller.serviceAccount.labels }}
|
||||
{{ $key }}: {{ $value | quote }}
|
||||
{{- with .Values.controller.serviceAccount.labels }}
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
|
|
@ -1,11 +1,9 @@
|
|||
{{- if and .Values.controller.metrics.enabled .Values.controller.metrics.serviceMonitor.enabled }}
|
||||
{{- if and (.Capabilities.APIVersions.Has "monitoring.coreos.com/v1") .Values.controller.metrics.enabled .Values.controller.metrics.serviceMonitor.enabled }}
|
||||
apiVersion: monitoring.coreos.com/v1
|
||||
kind: ServiceMonitor
|
||||
metadata:
|
||||
name: {{ template "argo-cd.controller.fullname" . }}
|
||||
{{- with .Values.controller.metrics.serviceMonitor.namespace }}
|
||||
namespace: {{ . }}
|
||||
{{- end }}
|
||||
namespace: {{ default .Release.Namespace .Values.controller.metrics.serviceMonitor.namespace | quote }}
|
||||
labels:
|
||||
{{- include "argo-cd.labels" (dict "context" . "component" .Values.controller.name "name" .Values.controller.name) | nindent 4 }}
|
||||
{{- with .Values.controller.metrics.serviceMonitor.selector }}
|
||||
|
|
|
@ -8,6 +8,7 @@ metadata:
|
|||
{{- end }}
|
||||
{{- end }}
|
||||
name: {{ template "argo-cd.controller.fullname" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
labels:
|
||||
{{- include "argo-cd.labels" (dict "context" . "component" .Values.controller.name "name" .Values.controller.name) | nindent 4 }}
|
||||
spec:
|
||||
|
@ -22,6 +23,9 @@ spec:
|
|||
metadata:
|
||||
annotations:
|
||||
checksum/cmd-params: {{ include (print $.Template.BasePath "/argocd-configs/argocd-cmd-params-cm.yaml") . | sha256sum }}
|
||||
{{- if (hasKey .Values.server "configEnabled") | ternary .Values.server.configEnabled .Values.configs.cm.create }}
|
||||
checksum/cm: {{ include (print $.Template.BasePath "/argocd-configs/argocd-cm.yaml") . | sha256sum }}
|
||||
{{- end }}
|
||||
{{- with (mergeOverwrite (deepCopy .Values.global.podAnnotations) .Values.controller.podAnnotations) }}
|
||||
{{- range $key, $value := . }}
|
||||
{{ $key }}: {{ $value | quote }}
|
||||
|
@ -37,13 +41,24 @@ spec:
|
|||
imagePullSecrets:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.global.hostAliases }}
|
||||
hostAliases:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.global.securityContext }}
|
||||
securityContext:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.controller.priorityClassName | default .Values.global.priorityClassName }}
|
||||
priorityClassName: {{ . }}
|
||||
{{- end }}
|
||||
{{- if .Values.controller.terminationGracePeriodSeconds }}
|
||||
terminationGracePeriodSeconds: {{ .Values.controller.terminationGracePeriodSeconds }}
|
||||
{{- end }}
|
||||
serviceAccountName: {{ include "argo-cd.controller.serviceAccountName" . }}
|
||||
containers:
|
||||
- command:
|
||||
- argocd-application-controller
|
||||
- args:
|
||||
- /usr/local/bin/argocd-application-controller
|
||||
- --metrics-port={{ .Values.controller.containerPorts.metrics }}
|
||||
{{- if .Values.controller.metrics.applicationLabels.enabled }}
|
||||
{{- range .Values.controller.metrics.applicationLabels.labels }}
|
||||
|
@ -90,7 +105,7 @@ spec:
|
|||
imagePullPolicy: {{ default .Values.global.image.imagePullPolicy .Values.controller.image.imagePullPolicy }}
|
||||
name: {{ .Values.controller.name }}
|
||||
env:
|
||||
{{- with .Values.controller.env }}
|
||||
{{- with (concat .Values.global.env .Values.controller.env) }}
|
||||
{{- toYaml . | nindent 10 }}
|
||||
{{- end }}
|
||||
- name: ARGOCD_CONTROLLER_REPLICAS
|
||||
|
@ -227,6 +242,18 @@ spec:
|
|||
name: argocd-cmd-params-cm
|
||||
key: application.namespaces
|
||||
optional: true
|
||||
- name: ARGOCD_CONTROLLER_SHARDING_ALGORITHM
|
||||
valueFrom:
|
||||
configMapKeyRef:
|
||||
name: argocd-cmd-params-cm
|
||||
key: controller.sharding.algorithm
|
||||
optional: true
|
||||
- name: ARGOCD_APPLICATION_CONTROLLER_KUBECTL_PARALLELISM_LIMIT
|
||||
valueFrom:
|
||||
configMapKeyRef:
|
||||
name: argocd-cmd-params-cm
|
||||
key: controller.kubectl.parallelism.limit
|
||||
optional: true
|
||||
{{- with .Values.controller.envFrom }}
|
||||
envFrom:
|
||||
{{- toYaml . | nindent 10 }}
|
||||
|
@ -246,8 +273,10 @@ spec:
|
|||
failureThreshold: {{ .Values.controller.readinessProbe.failureThreshold }}
|
||||
resources:
|
||||
{{- toYaml .Values.controller.resources | nindent 10 }}
|
||||
{{- with .Values.controller.containerSecurityContext }}
|
||||
securityContext:
|
||||
{{- toYaml .Values.controller.containerSecurityContext | nindent 10 }}
|
||||
{{- toYaml . | nindent 10 }}
|
||||
{{- end }}
|
||||
workingDir: /home/argocd
|
||||
volumeMounts:
|
||||
{{- with .Values.controller.volumeMounts }}
|
||||
|
@ -264,19 +293,19 @@ spec:
|
|||
initContainers:
|
||||
{{- tpl (toYaml .) $ | nindent 6 }}
|
||||
{{- end }}
|
||||
{{- with .Values.controller.nodeSelector }}
|
||||
{{- with include "argo-cd.affinity" (dict "context" . "component" .Values.controller) }}
|
||||
affinity:
|
||||
{{- trim . | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.controller.nodeSelector | default .Values.global.nodeSelector }}
|
||||
nodeSelector:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.controller.tolerations }}
|
||||
{{- with .Values.controller.tolerations | default .Values.global.tolerations }}
|
||||
tolerations:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.controller.affinity }}
|
||||
affinity:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.controller.topologySpreadConstraints }}
|
||||
{{- with .Values.controller.topologySpreadConstraints | default .Values.global.topologySpreadConstraints }}
|
||||
topologySpreadConstraints:
|
||||
{{- range $constraint := . }}
|
||||
- {{ toYaml $constraint | nindent 8 | trim }}
|
||||
|
@ -287,11 +316,6 @@ spec:
|
|||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
serviceAccountName: {{ template "argo-cd.controllerServiceAccountName" . }}
|
||||
{{- with .Values.global.hostAliases }}
|
||||
hostAliases:
|
||||
{{- toYaml . | nindent 6 }}
|
||||
{{- end }}
|
||||
volumes:
|
||||
{{- with .Values.controller.volumes }}
|
||||
{{- toYaml . | nindent 6 }}
|
||||
|
@ -309,6 +333,11 @@ spec:
|
|||
path: tls.key
|
||||
- key: ca.crt
|
||||
path: ca.crt
|
||||
{{- with .Values.controller.priorityClassName }}
|
||||
priorityClassName: {{ . }}
|
||||
{{- if .Values.controller.hostNetwork }}
|
||||
hostNetwork: {{ .Values.controller.hostNetwork }}
|
||||
{{- end }}
|
||||
{{- with .Values.controller.dnsConfig }}
|
||||
dnsConfig:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
dnsPolicy: {{ .Values.controller.dnsPolicy }}
|
||||
|
|
|
@ -0,0 +1,39 @@
|
|||
{{- if .Values.applicationSet.certificate.enabled -}}
|
||||
apiVersion: cert-manager.io/v1
|
||||
kind: Certificate
|
||||
metadata:
|
||||
{{- with (mergeOverwrite (deepCopy .Values.global.certificateAnnotations) .Values.applicationSet.certificate.annotations) }}
|
||||
annotations:
|
||||
{{- range $key, $value := . }}
|
||||
{{ $key }}: {{ $value | quote }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
name: {{ template "argo-cd.applicationSet.fullname" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
labels:
|
||||
{{- include "argo-cd.labels" (dict "context" . "component" .Values.applicationSet.name "name" .Values.applicationSet.name) | nindent 4 }}
|
||||
spec:
|
||||
secretName: {{ .Values.applicationSet.certificate.secretName }}
|
||||
commonName: {{ .Values.applicationSet.certificate.domain | quote }}
|
||||
dnsNames:
|
||||
- {{ .Values.applicationSet.certificate.domain | quote }}
|
||||
{{- range .Values.applicationSet.certificate.additionalHosts }}
|
||||
- {{ . | quote }}
|
||||
{{- end }}
|
||||
{{- with .Values.applicationSet.certificate.duration }}
|
||||
duration: {{ . | quote }}
|
||||
{{- end }}
|
||||
{{- with .Values.applicationSet.certificate.renewBefore }}
|
||||
renewBefore: {{ . | quote }}
|
||||
{{- end }}
|
||||
issuerRef:
|
||||
{{- with .Values.applicationSet.certificate.issuer.group }}
|
||||
group: {{ . | quote }}
|
||||
{{- end }}
|
||||
kind: {{ .Values.applicationSet.certificate.issuer.kind | quote }}
|
||||
name: {{ .Values.applicationSet.certificate.issuer.name | quote }}
|
||||
{{- with .Values.applicationSet.certificate.privateKey }}
|
||||
privateKey:
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- end }}
|
|
@ -9,18 +9,24 @@ metadata:
|
|||
{{- end }}
|
||||
{{- end }}
|
||||
name: {{ include "argo-cd.applicationSet.fullname" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
labels:
|
||||
{{- include "argo-cd.labels" (dict "context" . "component" .Values.applicationSet.name "name" .Values.applicationSet.name) | nindent 4 }}
|
||||
spec:
|
||||
replicas: {{ .Values.applicationSet.replicaCount }}
|
||||
{{- with include "argo-cd.strategy" (mergeOverwrite (deepCopy .Values.global.deploymentStrategy) .Values.applicationSet.deploymentStrategy) }}
|
||||
strategy:
|
||||
{{- trim . | nindent 4 }}
|
||||
{{- end }}
|
||||
replicas: {{ .Values.applicationSet.replicas | default .Values.applicationSet.replicaCount }}
|
||||
revisionHistoryLimit: {{ .Values.global.revisionHistoryLimit }}
|
||||
selector:
|
||||
matchLabels:
|
||||
{{- include "argo-cd.selectorLabels" (dict "context" . "name" .Values.applicationSet.name) | nindent 6 }}
|
||||
template:
|
||||
metadata:
|
||||
{{- with (mergeOverwrite (deepCopy .Values.global.podAnnotations) .Values.applicationSet.podAnnotations) }}
|
||||
annotations:
|
||||
checksum/cmd-params: {{ include (print $.Template.BasePath "/argocd-configs/argocd-cmd-params-cm.yaml") . | sha256sum }}
|
||||
{{- with (mergeOverwrite (deepCopy .Values.global.podAnnotations) .Values.applicationSet.podAnnotations) }}
|
||||
{{- range $key, $value := . }}
|
||||
{{ $key }}: {{ $value | quote }}
|
||||
{{- end }}
|
||||
|
@ -35,44 +41,175 @@ spec:
|
|||
imagePullSecrets:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.global.hostAliases }}
|
||||
hostAliases:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.global.securityContext }}
|
||||
securityContext:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
serviceAccountName: {{ include "argo-cd.applicationSetServiceAccountName" . }}
|
||||
{{- with .Values.global.hostAliases }}
|
||||
hostAliases:
|
||||
{{- toYaml . | nindent 6 }}
|
||||
{{- with .Values.applicationSet.priorityClassName | default .Values.global.priorityClassName }}
|
||||
priorityClassName: {{ . }}
|
||||
{{- end }}
|
||||
{{- if .Values.applicationSet.terminationGracePeriodSeconds }}
|
||||
terminationGracePeriodSeconds: {{ .Values.applicationSet.terminationGracePeriodSeconds }}
|
||||
{{- end }}
|
||||
serviceAccountName: {{ include "argo-cd.applicationSet.serviceAccountName" . }}
|
||||
containers:
|
||||
- name: {{ .Values.applicationSet.name }}
|
||||
image: {{ default .Values.global.image.repository .Values.applicationSet.image.repository }}:{{ default (include "argo-cd.defaultTag" .) .Values.applicationSet.image.tag }}
|
||||
imagePullPolicy: {{ default .Values.global.image.imagePullPolicy .Values.applicationSet.image.imagePullPolicy }}
|
||||
command:
|
||||
- entrypoint.sh
|
||||
- argocd-applicationset-controller
|
||||
args:
|
||||
- /usr/local/bin/argocd-applicationset-controller
|
||||
- --metrics-addr=:{{ .Values.applicationSet.containerPorts.metrics }}
|
||||
- --probe-addr=:{{ .Values.applicationSet.containerPorts.probe }}
|
||||
- --webhook-addr=:{{ .Values.applicationSet.containerPorts.webhook }}
|
||||
- --argocd-repo-server={{ template "argo-cd.repoServer.fullname" . }}:{{ .Values.repoServer.service.port }}
|
||||
- --enable-leader-election={{ gt ( .Values.applicationSet.replicaCount | int64) 1 }}
|
||||
- --policy={{ .Values.applicationSet.args.policy }}
|
||||
- --dry-run={{ .Values.applicationSet.args.dryRun }}
|
||||
{{- with .Values.applicationSet.args.policy }}
|
||||
- --policy={{ . }}
|
||||
{{- end }}
|
||||
{{- with .Values.applicationSet.args.dryRun }}
|
||||
- --dry-run={{ . }}
|
||||
{{- end }}
|
||||
{{- with .Values.applicationSet.logFormat }}
|
||||
- --logformat
|
||||
- {{ default .Values.global.logging.format .Values.applicationSet.logFormat }}
|
||||
- {{ . }}
|
||||
{{- end }}
|
||||
{{- with .Values.applicationSet.logLevel }}
|
||||
- --loglevel
|
||||
- {{ default .Values.global.logging.level .Values.applicationSet.logLevel }}
|
||||
- {{ . }}
|
||||
{{- end }}
|
||||
{{- with .Values.applicationSet.extraArgs }}
|
||||
{{- toYaml . | nindent 12 }}
|
||||
{{- end }}
|
||||
env:
|
||||
{{- with .Values.applicationSet.extraEnv }}
|
||||
{{- with (concat .Values.global.env .Values.applicationSet.extraEnv) }}
|
||||
{{- toYaml . | nindent 12 }}
|
||||
{{- end }}
|
||||
- name: NAMESPACE
|
||||
valueFrom:
|
||||
fieldRef:
|
||||
fieldPath: metadata.namespace
|
||||
- name: ARGOCD_APPLICATIONSET_CONTROLLER_GLOBAL_PRESERVED_ANNOTATIONS
|
||||
valueFrom:
|
||||
configMapKeyRef:
|
||||
key: applicationsetcontroller.global.preserved.annotations
|
||||
name: argocd-cmd-params-cm
|
||||
optional: true
|
||||
- name: ARGOCD_APPLICATIONSET_CONTROLLER_GLOBAL_PRESERVED_LABELS
|
||||
valueFrom:
|
||||
configMapKeyRef:
|
||||
key: applicationsetcontroller.global.preserved.labels
|
||||
name: argocd-cmd-params-cm
|
||||
optional: true
|
||||
- name: ARGOCD_APPLICATIONSET_CONTROLLER_ENABLE_LEADER_ELECTION
|
||||
valueFrom:
|
||||
configMapKeyRef:
|
||||
key: applicationsetcontroller.enable.leader.election
|
||||
name: argocd-cmd-params-cm
|
||||
optional: true
|
||||
- name: ARGOCD_APPLICATIONSET_CONTROLLER_REPO_SERVER
|
||||
valueFrom:
|
||||
configMapKeyRef:
|
||||
key: repo.server
|
||||
name: argocd-cmd-params-cm
|
||||
optional: true
|
||||
- name: ARGOCD_APPLICATIONSET_CONTROLLER_POLICY
|
||||
valueFrom:
|
||||
configMapKeyRef:
|
||||
key: applicationsetcontroller.policy
|
||||
name: argocd-cmd-params-cm
|
||||
optional: true
|
||||
- name: ARGOCD_APPLICATIONSET_CONTROLLER_ENABLE_POLICY_OVERRIDE
|
||||
valueFrom:
|
||||
configMapKeyRef:
|
||||
key: applicationsetcontroller.enable.policy.override
|
||||
name: argocd-cmd-params-cm
|
||||
optional: true
|
||||
- name: ARGOCD_APPLICATIONSET_CONTROLLER_DEBUG
|
||||
valueFrom:
|
||||
configMapKeyRef:
|
||||
key: applicationsetcontroller.debug
|
||||
name: argocd-cmd-params-cm
|
||||
optional: true
|
||||
- name: ARGOCD_APPLICATIONSET_CONTROLLER_LOGFORMAT
|
||||
valueFrom:
|
||||
configMapKeyRef:
|
||||
key: applicationsetcontroller.log.format
|
||||
name: argocd-cmd-params-cm
|
||||
optional: true
|
||||
- name: ARGOCD_APPLICATIONSET_CONTROLLER_LOGLEVEL
|
||||
valueFrom:
|
||||
configMapKeyRef:
|
||||
key: applicationsetcontroller.log.level
|
||||
name: argocd-cmd-params-cm
|
||||
optional: true
|
||||
- name: ARGOCD_APPLICATIONSET_CONTROLLER_DRY_RUN
|
||||
valueFrom:
|
||||
configMapKeyRef:
|
||||
key: applicationsetcontroller.dryrun
|
||||
name: argocd-cmd-params-cm
|
||||
optional: true
|
||||
- name: ARGOCD_GIT_MODULES_ENABLED
|
||||
valueFrom:
|
||||
configMapKeyRef:
|
||||
key: applicationsetcontroller.enable.git.submodule
|
||||
name: argocd-cmd-params-cm
|
||||
optional: true
|
||||
- name: ARGOCD_APPLICATIONSET_CONTROLLER_ENABLE_PROGRESSIVE_SYNCS
|
||||
valueFrom:
|
||||
configMapKeyRef:
|
||||
key: applicationsetcontroller.enable.progressive.syncs
|
||||
name: argocd-cmd-params-cm
|
||||
optional: true
|
||||
- name: ARGOCD_APPLICATIONSET_CONTROLLER_ENABLE_NEW_GIT_FILE_GLOBBING
|
||||
valueFrom:
|
||||
configMapKeyRef:
|
||||
key: applicationsetcontroller.enable.new.git.file.globbing
|
||||
name: argocd-cmd-params-cm
|
||||
optional: true
|
||||
- name: ARGOCD_APPLICATIONSET_CONTROLLER_REPO_SERVER_PLAINTEXT
|
||||
valueFrom:
|
||||
configMapKeyRef:
|
||||
name: argocd-cmd-params-cm
|
||||
key: applicationsetcontroller.repo.server.plaintext
|
||||
optional: true
|
||||
- name: ARGOCD_APPLICATIONSET_CONTROLLER_REPO_SERVER_STRICT_TLS
|
||||
valueFrom:
|
||||
configMapKeyRef:
|
||||
name: argocd-cmd-params-cm
|
||||
key: applicationsetcontroller.repo.server.strict.tls
|
||||
optional: true
|
||||
- name: ARGOCD_APPLICATIONSET_CONTROLLER_REPO_SERVER_TIMEOUT_SECONDS
|
||||
valueFrom:
|
||||
configMapKeyRef:
|
||||
name: argocd-cmd-params-cm
|
||||
key: applicationsetcontroller.repo.server.timeout.seconds
|
||||
optional: true
|
||||
- name: ARGOCD_APPLICATIONSET_CONTROLLER_CONCURRENT_RECONCILIATIONS
|
||||
valueFrom:
|
||||
configMapKeyRef:
|
||||
name: argocd-cmd-params-cm
|
||||
key: applicationsetcontroller.concurrent.reconciliations.max
|
||||
optional: true
|
||||
- name: ARGOCD_APPLICATIONSET_CONTROLLER_NAMESPACES
|
||||
valueFrom:
|
||||
configMapKeyRef:
|
||||
key: applicationsetcontroller.namespaces
|
||||
name: argocd-cmd-params-cm
|
||||
optional: true
|
||||
- name: ARGOCD_APPLICATIONSET_CONTROLLER_SCM_ROOT_CA_PATH
|
||||
valueFrom:
|
||||
configMapKeyRef:
|
||||
key: applicationsetcontroller.scm.root.ca.path
|
||||
name: argocd-cmd-params-cm
|
||||
optional: true
|
||||
- name: ARGOCD_APPLICATIONSET_CONTROLLER_ALLOWED_SCM_PROVIDERS
|
||||
valueFrom:
|
||||
configMapKeyRef:
|
||||
name: argocd-cmd-params-cm
|
||||
key: applicationsetcontroller.allowed.scm.providers
|
||||
optional: true
|
||||
{{- with .Values.applicationSet.extraEnvFrom }}
|
||||
envFrom:
|
||||
{{- toYaml . | nindent 12 }}
|
||||
|
@ -109,8 +246,10 @@ spec:
|
|||
{{- end }}
|
||||
resources:
|
||||
{{- toYaml .Values.applicationSet.resources | nindent 12 }}
|
||||
{{- with .Values.applicationSet.containerSecurityContext }}
|
||||
securityContext:
|
||||
{{- toYaml .Values.applicationSet.containerSecurityContext | nindent 12 }}
|
||||
{{- toYaml . | nindent 12 }}
|
||||
{{- end }}
|
||||
volumeMounts:
|
||||
{{- with .Values.applicationSet.extraVolumeMounts }}
|
||||
{{- toYaml . | nindent 12 }}
|
||||
|
@ -123,6 +262,8 @@ spec:
|
|||
name: gpg-keys
|
||||
- mountPath: /app/config/gpg/keys
|
||||
name: gpg-keyring
|
||||
- mountPath: /app/config/reposerver/tls
|
||||
name: argocd-repo-server-tls
|
||||
- mountPath: /tmp
|
||||
name: tmp
|
||||
{{- with .Values.applicationSet.extraContainers }}
|
||||
|
@ -132,20 +273,28 @@ spec:
|
|||
initContainers:
|
||||
{{- tpl (toYaml .) $ | nindent 6 }}
|
||||
{{- end }}
|
||||
{{- with .Values.applicationSet.nodeSelector }}
|
||||
{{- with include "argo-cd.affinity" (dict "context" . "component" .Values.applicationSet) }}
|
||||
affinity:
|
||||
{{- trim . | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.applicationSet.nodeSelector | default .Values.global.nodeSelector }}
|
||||
nodeSelector:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.applicationSet.affinity }}
|
||||
affinity:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.applicationSet.tolerations }}
|
||||
{{- with .Values.applicationSet.tolerations | default .Values.global.tolerations }}
|
||||
tolerations:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.applicationSet.priorityClassName }}
|
||||
priorityClassName: {{ . }}
|
||||
{{- with .Values.applicationSet.topologySpreadConstraints | default .Values.global.topologySpreadConstraints }}
|
||||
topologySpreadConstraints:
|
||||
{{- range $constraint := . }}
|
||||
- {{ toYaml $constraint | nindent 8 | trim }}
|
||||
{{- if not $constraint.labelSelector }}
|
||||
labelSelector:
|
||||
matchLabels:
|
||||
{{- include "argo-cd.selectorLabels" (dict "context" $ "name" $.Values.applicationSet.name) | nindent 12 }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
volumes:
|
||||
{{- with .Values.applicationSet.extraVolumes }}
|
||||
|
@ -164,4 +313,20 @@ spec:
|
|||
emptyDir: {}
|
||||
- name: tmp
|
||||
emptyDir: {}
|
||||
- name: argocd-repo-server-tls
|
||||
secret:
|
||||
secretName: argocd-repo-server-tls
|
||||
optional: true
|
||||
items:
|
||||
- key: tls.crt
|
||||
path: tls.crt
|
||||
- key: tls.key
|
||||
path: tls.key
|
||||
- key: ca.crt
|
||||
path: ca.crt
|
||||
{{- with .Values.applicationSet.dnsConfig }}
|
||||
dnsConfig:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
dnsPolicy: {{ .Values.applicationSet.dnsPolicy }}
|
||||
{{- end }}
|
||||
|
|
|
@ -3,18 +3,27 @@ apiVersion: v1
|
|||
kind: Service
|
||||
metadata:
|
||||
name: {{ include "argo-cd.applicationSet.fullname" . }}-metrics
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
labels:
|
||||
{{- include "argo-cd.labels" (dict "context" . "component" .Values.applicationSet.name "name" "metrics") | nindent 4 }}
|
||||
{{- with .Values.applicationSet.metrics.service.labels }}
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- with .Values.applicationSet.metrics.service.annotations }}
|
||||
{{- if or .Values.applicationSet.metrics.service.annotations .Values.global.addPrometheusAnnotations }}
|
||||
annotations:
|
||||
{{- range $key, $value := . }}
|
||||
{{- if .Values.global.addPrometheusAnnotations }}
|
||||
prometheus.io/port: {{ .Values.applicationSet.metrics.service.servicePort | quote }}
|
||||
prometheus.io/scrape: "true"
|
||||
{{- end }}
|
||||
{{- range $key, $value := .Values.applicationSet.metrics.service.annotations }}
|
||||
{{ $key }}: {{ $value | quote }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
spec:
|
||||
type: {{ .Values.applicationSet.metrics.service.type }}
|
||||
{{- if and .Values.applicationSet.metrics.service.clusterIP (eq .Values.applicationSet.metrics.service.type "ClusterIP") }}
|
||||
clusterIP: {{ .Values.applicationSet.metrics.service.clusterIP }}
|
||||
{{- end }}
|
||||
ports:
|
||||
- name: {{ .Values.applicationSet.metrics.service.portName }}
|
||||
protocol: TCP
|
||||
|
|
|
@ -3,6 +3,7 @@ apiVersion: networking.k8s.io/v1
|
|||
kind: NetworkPolicy
|
||||
metadata:
|
||||
name: {{ template "argo-cd.applicationSet.fullname" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
labels:
|
||||
{{- include "argo-cd.labels" (dict "context" . "component" .Values.applicationSet.name "name" .Values.applicationSet.name) | nindent 4 }}
|
||||
spec:
|
||||
|
|
|
@ -3,6 +3,7 @@ apiVersion: policy/v1
|
|||
kind: PodDisruptionBudget
|
||||
metadata:
|
||||
name: {{ include "argo-cd.applicationSet.fullname" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
labels:
|
||||
{{- include "argo-cd.labels" (dict "context" . "component" .Values.applicationSet.name "name" .Values.applicationSet.name) | nindent 4 }}
|
||||
{{- with .Values.applicationSet.pdb.labels }}
|
||||
|
|
|
@ -3,6 +3,7 @@ apiVersion: rbac.authorization.k8s.io/v1
|
|||
kind: Role
|
||||
metadata:
|
||||
name: {{ include "argo-cd.applicationSet.fullname" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
labels:
|
||||
{{- include "argo-cd.labels" (dict "context" . "component" .Values.applicationSet.name "name" .Values.applicationSet.name) | nindent 4 }}
|
||||
rules:
|
||||
|
|
|
@ -2,15 +2,16 @@
|
|||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: RoleBinding
|
||||
metadata:
|
||||
name: {{ template "argo-cd.applicationSet.fullname" . }}
|
||||
name: {{ include "argo-cd.applicationSet.fullname" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
labels:
|
||||
{{- include "argo-cd.labels" (dict "context" . "component" .Values.applicationSet.name "name" .Values.applicationSet.name) | nindent 4 }}
|
||||
roleRef:
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
kind: Role
|
||||
name: {{ template "argo-cd.applicationSet.fullname" . }}
|
||||
name: {{ include "argo-cd.applicationSet.fullname" . }}
|
||||
subjects:
|
||||
- kind: ServiceAccount
|
||||
name: {{ template "argo-cd.applicationSetServiceAccountName" . }}
|
||||
name: {{ include "argo-cd.applicationSet.serviceAccountName" . }}
|
||||
namespace: {{ .Release.Namespace }}
|
||||
{{- end }}
|
||||
|
|
|
@ -9,12 +9,14 @@ metadata:
|
|||
{{- end }}
|
||||
{{- end }}
|
||||
name: {{ template "argo-cd.applicationSet.fullname" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
labels:
|
||||
{{- include "argo-cd.labels" (dict "context" . "component" .Values.applicationSet.name "name" .Values.applicationSet.name) | nindent 4 }}
|
||||
{{- with .Values.applicationSet.service.labels }}
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
type: {{ .Values.applicationSet.service.type }}
|
||||
ports:
|
||||
- name: {{ .Values.applicationSet.service.portName }}
|
||||
port: {{ .Values.applicationSet.service.port }}
|
||||
|
|
|
@ -3,16 +3,17 @@ apiVersion: v1
|
|||
kind: ServiceAccount
|
||||
automountServiceAccountToken: {{ .Values.applicationSet.serviceAccount.automountServiceAccountToken }}
|
||||
metadata:
|
||||
name: {{ template "argo-cd.applicationSetServiceAccountName" . }}
|
||||
{{- if .Values.applicationSet.serviceAccount.annotations }}
|
||||
name: {{ include "argo-cd.applicationSet.serviceAccountName" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
{{- with .Values.applicationSet.serviceAccount.annotations }}
|
||||
annotations:
|
||||
{{- range $key, $value := .Values.applicationSet.serviceAccount.annotations }}
|
||||
{{- range $key, $value := . }}
|
||||
{{ $key }}: {{ $value | quote }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
labels:
|
||||
{{- include "argo-cd.labels" (dict "context" . "component" .Values.applicationSet.name "name" .Values.applicationSet.name) | nindent 4 }}
|
||||
{{- range $key, $value := .Values.applicationSet.serviceAccount.labels }}
|
||||
{{ $key }}: {{ $value | quote }}
|
||||
{{- with .Values.applicationSet.serviceAccount.labels }}
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
|
|
@ -1,12 +1,10 @@
|
|||
{{- if .Values.applicationSet.enabled }}
|
||||
{{- if and .Values.applicationSet.metrics.enabled .Values.applicationSet.metrics.serviceMonitor.enabled }}
|
||||
{{- if and (.Capabilities.APIVersions.Has "monitoring.coreos.com/v1") .Values.applicationSet.metrics.enabled .Values.applicationSet.metrics.serviceMonitor.enabled }}
|
||||
apiVersion: monitoring.coreos.com/v1
|
||||
kind: ServiceMonitor
|
||||
metadata:
|
||||
name: {{ template "argo-cd.applicationSet.fullname" . }}
|
||||
{{- with .Values.applicationSet.metrics.serviceMonitor.namespace }}
|
||||
namespace: {{ . }}
|
||||
{{- end }}
|
||||
namespace: {{ default .Release.Namespace .Values.applicationSet.metrics.serviceMonitor.namespace | quote }}
|
||||
labels:
|
||||
{{- include "argo-cd.labels" (dict "context" . "component" .Values.applicationSet.name "name" .Values.applicationSet.name) | nindent 4 }}
|
||||
{{- with .Values.applicationSet.metrics.serviceMonitor.selector }}
|
||||
|
|
|
@ -7,6 +7,7 @@ apiVersion: networking.k8s.io/v1
|
|||
kind: Ingress
|
||||
metadata:
|
||||
name: {{ include "argo-cd.applicationSet.fullname" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
labels:
|
||||
{{- include "argo-cd.labels" (dict "context" . "component" .Values.applicationSet.name "name" .Values.applicationSet.name) | nindent 4 }}
|
||||
{{- with .Values.applicationSet.webhook.ingress.labels }}
|
||||
|
|
|
@ -3,6 +3,7 @@ apiVersion: v1
|
|||
kind: ConfigMap
|
||||
metadata:
|
||||
name: argocd-cm
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
labels:
|
||||
{{- include "argo-cd.labels" (dict "context" . "component" .Values.server.name "name" "cm") | nindent 4 }}
|
||||
{{- with (mergeOverwrite (deepCopy .Values.configs.cm.annotations) (.Values.server.configAnnotations | default dict)) }}
|
||||
|
|
|
@ -1,7 +1,9 @@
|
|||
{{- if .Values.configs.params.create }}
|
||||
apiVersion: v1
|
||||
kind: ConfigMap
|
||||
metadata:
|
||||
name: argocd-cmd-params-cm
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
labels:
|
||||
{{- include "argo-cd.labels" (dict "context" . "component" .Values.server.name "name" "cmd-params-cm") | nindent 4 }}
|
||||
{{- if .Values.configs.params.annotations }}
|
||||
|
@ -12,3 +14,4 @@ metadata:
|
|||
{{- end }}
|
||||
data:
|
||||
{{- include "argo-cd.config.params" . | trim | nindent 2 }}
|
||||
{{- end }}
|
||||
|
|
25
charts/argo-cd/templates/argocd-configs/argocd-cmp-cm.yaml
Normal file
25
charts/argo-cd/templates/argocd-configs/argocd-cmp-cm.yaml
Normal file
|
@ -0,0 +1,25 @@
|
|||
{{- if .Values.configs.cmp.create }}
|
||||
apiVersion: v1
|
||||
kind: ConfigMap
|
||||
metadata:
|
||||
name: argocd-cmp-cm
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
labels:
|
||||
{{- include "argo-cd.labels" (dict "context" . "component" .Values.repoServer.name "name" "cmp-cm") | nindent 4 }}
|
||||
{{- with .Values.configs.cmp.annotations }}
|
||||
annotations:
|
||||
{{- range $key, $value := . }}
|
||||
{{ $key }}: {{ $value | quote }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
data:
|
||||
{{- range $cmp_plugin, $cmp_plugin_config := .Values.configs.cmp.plugins }}
|
||||
{{ $cmp_plugin }}.yaml: |
|
||||
apiVersion: argoproj.io/v1alpha1
|
||||
kind: ConfigManagementPlugin
|
||||
metadata:
|
||||
name: {{ $cmp_plugin }}
|
||||
spec:
|
||||
{{- toYaml $cmp_plugin_config | nindent 6 }}
|
||||
{{- end }}
|
||||
{{- end }}
|
|
@ -3,6 +3,7 @@ apiVersion: v1
|
|||
kind: Secret
|
||||
metadata:
|
||||
name: argocd-dex-server-tls
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
labels:
|
||||
{{- include "argo-cd.labels" (dict "context" . "component" .Values.dex.name "name" "dex-server-tls") | nindent 4 }}
|
||||
{{- with .Values.dex.certificateSecret.labels }}
|
||||
|
|
|
@ -2,6 +2,7 @@ apiVersion: v1
|
|||
kind: ConfigMap
|
||||
metadata:
|
||||
name: argocd-gpg-keys-cm
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
labels:
|
||||
{{- include "argo-cd.labels" (dict "context" . "name" "gpg-keys-cm") | nindent 4 }}
|
||||
{{ with (mergeOverwrite (deepCopy .Values.configs.gpg.annotations) (.Values.configs.gpgKeysAnnotations | default dict)) -}}
|
||||
|
|
|
@ -3,6 +3,7 @@ apiVersion: v1
|
|||
kind: ConfigMap
|
||||
metadata:
|
||||
name: argocd-notifications-cm
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
labels:
|
||||
{{- include "argo-cd.labels" (dict "context" . "component" .Values.notifications.name "name" .Values.notifications.name) | nindent 4 }}
|
||||
data:
|
||||
|
|
|
@ -3,8 +3,12 @@ apiVersion: v1
|
|||
kind: Secret
|
||||
metadata:
|
||||
name: argocd-notifications-secret
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
labels:
|
||||
{{- include "argo-cd.labels" (dict "context" . "component" .Values.notifications.name "name" .Values.notifications.name) | nindent 4 }}
|
||||
{{- with .Values.notifications.secret.labels }}
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- with .Values.notifications.secret.annotations }}
|
||||
annotations:
|
||||
{{- range $key, $value := . }}
|
||||
|
|
|
@ -3,6 +3,7 @@ apiVersion: v1
|
|||
kind: ConfigMap
|
||||
metadata:
|
||||
name: argocd-rbac-cm
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
labels:
|
||||
{{- include "argo-cd.labels" (dict "context" . "component" .Values.server.name "name" "rbac-cm") | nindent 4 }}
|
||||
{{- with (mergeOverwrite (deepCopy .Values.configs.rbac.annotations) (.Values.server.rbacConfigAnnotations | default dict)) }}
|
||||
|
|
|
@ -3,6 +3,7 @@ apiVersion: v1
|
|||
kind: Secret
|
||||
metadata:
|
||||
name: argocd-repo-server-tls
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
labels:
|
||||
{{- include "argo-cd.labels" (dict "context" . "component" .Values.repoServer.name "name" "repo-server-tls") | nindent 4 }}
|
||||
{{- with .Values.repoServer.certificateSecret.labels }}
|
||||
|
|
|
@ -3,6 +3,7 @@ apiVersion: v1
|
|||
kind: Secret
|
||||
metadata:
|
||||
name: argocd-secret
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
labels:
|
||||
{{- include "argo-cd.labels" (dict "context" . "component" .Values.server.name "name" "secret") | nindent 4 }}
|
||||
{{- with .Values.configs.secret.labels }}
|
||||
|
@ -15,7 +16,7 @@ metadata:
|
|||
{{- end }}
|
||||
{{- end }}
|
||||
type: Opaque
|
||||
{{- if or .Values.configs.secret.githubSecret (or .Values.configs.secret.gitlabSecret .Values.configs.secret.bitbucketUUID .Values.configs.secret.bitbucketServerSecret .Values.configs.secret.gogsSecret .Values.configs.secret.argocdServerAdminPassword .Values.configs.secret.argocdServerTlsConfig .Values.configs.secret.extra) }}
|
||||
{{- if or .Values.configs.secret.githubSecret (or .Values.configs.secret.gitlabSecret .Values.configs.secret.bitbucketUUID .Values.configs.secret.bitbucketServerSecret .Values.configs.secret.gogsSecret (and .Values.configs.secret.azureDevops.username .Values.configs.secret.azureDevops.password) .Values.configs.secret.argocdServerAdminPassword .Values.configs.secret.argocdServerTlsConfig .Values.configs.secret.extra) }}
|
||||
# Setting a blank data again will wipe admin password/key/cert
|
||||
data:
|
||||
{{- with .Values.configs.secret.githubSecret }}
|
||||
|
@ -33,6 +34,10 @@ data:
|
|||
{{- with .Values.configs.secret.gogsSecret }}
|
||||
webhook.gogs.secret: {{ . | b64enc }}
|
||||
{{- end }}
|
||||
{{- if and .Values.configs.secret.azureDevops.username .Values.configs.secret.azureDevops.password }}
|
||||
webhook.azuredevops.username: {{ .Values.configs.secret.azureDevops.username | b64enc }}
|
||||
webhook.azuredevops.password: {{ .Values.configs.secret.azureDevops.password | b64enc }}
|
||||
{{- end }}
|
||||
{{- with .Values.configs.secret.argocdServerTlsConfig }}
|
||||
tls.key: {{ .key | b64enc }}
|
||||
tls.crt: {{ .crt | b64enc }}
|
||||
|
|
|
@ -3,6 +3,7 @@ apiVersion: v1
|
|||
kind: Secret
|
||||
metadata:
|
||||
name: argocd-server-tls
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
labels:
|
||||
{{- include "argo-cd.labels" (dict "context" . "component" .Values.server.name "name" "server-tls") | nindent 4 }}
|
||||
{{- with .Values.server.certificateSecret.labels }}
|
||||
|
|
|
@ -2,6 +2,7 @@ apiVersion: v1
|
|||
kind: ConfigMap
|
||||
metadata:
|
||||
name: argocd-ssh-known-hosts-cm
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
labels:
|
||||
{{- include "argo-cd.labels" (dict "context" . "name" "ssh-known-hosts-cm") | nindent 4 }}
|
||||
{{- with (mergeOverwrite (deepCopy .Values.configs.ssh.annotations) (.Values.configs.knownHostsAnnotations | default dict)) }}
|
||||
|
|
|
@ -3,6 +3,7 @@ apiVersion: v1
|
|||
kind: ConfigMap
|
||||
metadata:
|
||||
name: argocd-styles-cm
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
labels:
|
||||
{{- include "argo-cd.labels" (dict "context" . "component" .Values.repoServer.name "name" .Values.repoServer.name) | nindent 4 }}
|
||||
data:
|
||||
|
|
|
@ -2,6 +2,7 @@ apiVersion: v1
|
|||
kind: ConfigMap
|
||||
metadata:
|
||||
name: argocd-tls-certs-cm
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
labels:
|
||||
{{- include "argo-cd.labels" (dict "context" . "name" "tls-certs-cm") | nindent 4 }}
|
||||
{{- with (mergeOverwrite (deepCopy .Values.configs.tls.annotations) (.Values.configs.tlsCertsAnnotations | default dict)) }}
|
||||
|
|
|
@ -4,6 +4,7 @@ apiVersion: v1
|
|||
kind: Secret
|
||||
metadata:
|
||||
name: {{ include "argo-cd.name" $ }}-cluster-{{ .name }}
|
||||
namespace: {{ $.Release.Namespace | quote }}
|
||||
labels:
|
||||
{{- include "argo-cd.labels" (dict "context" $) | nindent 4 }}
|
||||
{{- with .labels }}
|
||||
|
@ -26,6 +27,9 @@ stringData:
|
|||
clusterResources: {{ .clusterResources | quote }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- if .project }}
|
||||
project: {{ .project | quote }}
|
||||
{{- end }}
|
||||
config: |
|
||||
{{- required "A valid .Values.configs.clusterCredentials[].config entry is required!" .config | toRawJson | nindent 4 }}
|
||||
{{- end }}
|
||||
|
|
|
@ -3,6 +3,7 @@ apiVersion: v1
|
|||
kind: Secret
|
||||
metadata:
|
||||
name: {{ include "argo-cd.redis.fullname" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
labels:
|
||||
{{- include "argo-cd.labels" (dict "context" $) | nindent 4 }}
|
||||
{{- with .Values.externalRedis.secretAnnotations }}
|
||||
|
|
|
@ -4,6 +4,7 @@ apiVersion: v1
|
|||
kind: Secret
|
||||
metadata:
|
||||
name: argocd-repo-creds-{{ $repo_cred_key }}
|
||||
namespace: {{ $.Release.Namespace | quote }}
|
||||
labels:
|
||||
argocd.argoproj.io/secret-type: repo-creds
|
||||
{{- include "argo-cd.labels" (dict "context" $) | nindent 4 }}
|
||||
|
|
|
@ -4,6 +4,7 @@ apiVersion: v1
|
|||
kind: Secret
|
||||
metadata:
|
||||
name: argocd-repo-{{ $repo_key }}
|
||||
namespace: {{ $.Release.Namespace | quote }}
|
||||
labels:
|
||||
argocd.argoproj.io/secret-type: repository
|
||||
{{- include "argo-cd.labels" (dict "context" $) | nindent 4 }}
|
||||
|
|
|
@ -1,68 +0,0 @@
|
|||
{{ if and .Values.notifications.enabled .Values.notifications.bots.slack.enabled }}
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
{{- with (mergeOverwrite (deepCopy .Values.global.deploymentAnnotations) .Values.notifications.deploymentAnnotations) }}
|
||||
annotations:
|
||||
{{- range $key, $value := . }}
|
||||
{{ $key }}: {{ $value | quote }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
name: {{ template "argo-cd.notifications.fullname" . }}-bot
|
||||
labels:
|
||||
{{- include "argo-cd.labels" (dict "context" . "component" .Values.notifications.bots.slack.name "name" .Values.notifications.bots.slack.name) | nindent 4 }}
|
||||
spec:
|
||||
replicas: 1
|
||||
revisionHistoryLimit: {{ .Values.global.revisionHistoryLimit }}
|
||||
strategy:
|
||||
type: Recreate
|
||||
selector:
|
||||
matchLabels:
|
||||
{{- include "argo-cd.selectorLabels" (dict "context" . "component" .Values.notifications.bots.slack.name "name" "metrics") | nindent 6 }}
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
{{- include "argo-cd.selectorLabels" (dict "context" . "component" .Values.notifications.bots.slack.name "name" "metrics") | nindent 8 }}
|
||||
spec:
|
||||
{{- with .Values.notifications.bots.slack.imagePullSecrets | default .Values.global.imagePullSecrets }}
|
||||
imagePullSecrets:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.global.securityContext }}
|
||||
securityContext:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
serviceAccountName: {{ include "argo-cd.notificationsBotsSlackServiceAccountName" . }}
|
||||
containers:
|
||||
- name: {{ include "argo-cd.notifications.fullname" . }}-bot
|
||||
image: {{ default .Values.global.image.repository .Values.notifications.bots.slack.image.repository }}:{{ default (include "argo-cd.defaultTag" .) .Values.notifications.bots.slack.image.tag }}
|
||||
imagePullPolicy: {{ default .Values.global.image.imagePullPolicy .Values.notifications.bots.slack.image.pullPolicy }}
|
||||
command:
|
||||
- argocd-notifications
|
||||
- bot
|
||||
- --loglevel={{ default .Values.global.logging.level .Values.notifications.bots.slack.logLevel }}
|
||||
- --logformat={{ default .Values.global.logging.format .Values.notifications.bots.slack.logFormat }}
|
||||
{{- range .Values.notifications.bots.slack.extraArgs }}
|
||||
- {{ . | squote }}
|
||||
{{- end }}
|
||||
workingDir: /app
|
||||
ports:
|
||||
- containerPort: 8080
|
||||
name: http
|
||||
resources:
|
||||
{{- toYaml .Values.notifications.bots.slack.resources | nindent 12 }}
|
||||
securityContext:
|
||||
{{- toYaml .Values.notifications.bots.slack.containerSecurityContext | nindent 12 }}
|
||||
{{- with .Values.notifications.bots.slack.nodeSelector }}
|
||||
nodeSelector:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.notifications.bots.slack.affinity }}
|
||||
affinity:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.notifications.bots.slack.tolerations }}
|
||||
tolerations:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
{{ end }}
|
|
@ -1,26 +0,0 @@
|
|||
{{- if and .Values.notifications.enabled .Values.notifications.bots.slack.enabled .Values.notifications.bots.slack.pdb.enabled }}
|
||||
apiVersion: policy/v1
|
||||
kind: PodDisruptionBudget
|
||||
metadata:
|
||||
name: {{ include "argo-cd.notifications.fullname" . }}-bot
|
||||
labels:
|
||||
{{- include "argo-cd.labels" (dict "context" . "component" .Values.notifications.bots.slack.name "name" .Values.notifications.bots.slack.name) | nindent 4 }}
|
||||
{{- with .Values.notifications.bots.slack.pdb.labels }}
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- with .Values.notifications.bots.slack.pdb.annotations }}
|
||||
annotations:
|
||||
{{- range $key, $value := . }}
|
||||
{{ $key }}: {{ $value | quote }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
spec:
|
||||
{{- with .Values.notifications.bots.slack.pdb.maxUnavailable }}
|
||||
maxUnavailable: {{ . }}
|
||||
{{- else }}
|
||||
minAvailable: {{ .Values.notifications.bots.slack.pdb.minAvailable | default 0 }}
|
||||
{{- end }}
|
||||
selector:
|
||||
matchLabels:
|
||||
{{- include "argo-cd.selectorLabels" (dict "context" . "component" .Values.notifications.bots.slack.name "name" "metrics") | nindent 6 }}
|
||||
{{- end }}
|
|
@ -1,27 +0,0 @@
|
|||
{{ if and .Values.notifications.enabled .Values.notifications.bots.slack.enabled }}
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: Role
|
||||
metadata:
|
||||
name: {{ template "argo-cd.notifications.fullname" . }}-bot
|
||||
rules:
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- secrets
|
||||
- configmaps
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- watch
|
||||
- apiGroups:
|
||||
- argoproj.io
|
||||
resources:
|
||||
- applications
|
||||
- appprojects
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- watch
|
||||
- update
|
||||
- patch
|
||||
{{ end }}
|
|
@ -1,13 +0,0 @@
|
|||
{{ if and .Values.notifications.enabled .Values.notifications.bots.slack.enabled }}
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: RoleBinding
|
||||
metadata:
|
||||
name: {{ template "argo-cd.notifications.fullname" . }}-bot
|
||||
roleRef:
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
kind: Role
|
||||
name: {{ template "argo-cd.notifications.fullname" . }}-bot
|
||||
subjects:
|
||||
- kind: ServiceAccount
|
||||
name: {{ template "argo-cd.notificationsBotsSlackServiceAccountName" . }}
|
||||
{{ end }}
|
|
@ -1,19 +0,0 @@
|
|||
{{ if and .Values.notifications.enabled .Values.notifications.bots.slack.enabled }}
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: {{ template "argo-cd.notifications.fullname" . }}-bot
|
||||
{{- if .Values.notifications.bots.slack.service.annotations }}
|
||||
annotations:
|
||||
{{- toYaml .Values.notifications.bots.slack.service.annotations | nindent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
ports:
|
||||
- name: http
|
||||
port: {{ .Values.notifications.bots.slack.service.port }}
|
||||
protocol: TCP
|
||||
targetPort: http
|
||||
selector:
|
||||
{{- include "argo-cd.selectorLabels" (dict "context" . "component" .Values.notifications.bots.slack.name "name" "metrics") | nindent 6 }}
|
||||
type: {{ .Values.notifications.bots.slack.service.type }}
|
||||
{{ end }}
|
|
@ -1,15 +0,0 @@
|
|||
{{- if and .Values.notifications.enabled .Values.notifications.bots.slack.enabled .Values.notifications.bots.slack.serviceAccount.create }}
|
||||
apiVersion: v1
|
||||
kind: ServiceAccount
|
||||
automountServiceAccountToken: {{ .Values.notifications.bots.slack.serviceAccount.automountServiceAccountToken }}
|
||||
metadata:
|
||||
name: {{ template "argo-cd.notificationsBotsSlackServiceAccountName" . }}
|
||||
{{- if .Values.notifications.bots.slack.serviceAccount.annotations }}
|
||||
annotations:
|
||||
{{- range $key, $value := .Values.notifications.bots.slack.serviceAccount.annotations }}
|
||||
{{ $key }}: {{ $value | quote }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
labels:
|
||||
{{- include "argo-cd.labels" (dict "context" . "component" .Values.notifications.bots.slack.name "name" .Values.notifications.bots.slack.name) | nindent 4 }}
|
||||
{{- end }}
|
|
@ -0,0 +1,22 @@
|
|||
{{- if and .Values.notifications.enabled .Values.createClusterRoles }}
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: ClusterRole
|
||||
metadata:
|
||||
name: {{ include "argo-cd.notifications.fullname" . }}
|
||||
labels:
|
||||
{{- include "argo-cd.labels" (dict "context" . "component" .Values.notifications.name "name" .Values.notifications.name) | nindent 4 }}
|
||||
rules:
|
||||
{{- with .Values.notifications.clusterRoleRules.rules }}
|
||||
{{- toYaml . | nindent 2 }}
|
||||
{{- end }}
|
||||
- apiGroups:
|
||||
- "argoproj.io"
|
||||
resources:
|
||||
- "applications"
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- watch
|
||||
- update
|
||||
- patch
|
||||
{{- end }}
|
|
@ -0,0 +1,16 @@
|
|||
{{- if and .Values.notifications.enabled .Values.createClusterRoles }}
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: ClusterRoleBinding
|
||||
metadata:
|
||||
name: {{ include "argo-cd.notifications.fullname" . }}
|
||||
labels:
|
||||
{{- include "argo-cd.labels" (dict "context" . "component" .Values.notifications.name "name" .Values.notifications.name) | nindent 4 }}
|
||||
roleRef:
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
kind: ClusterRole
|
||||
name: {{ include "argo-cd.notifications.fullname" . }}
|
||||
subjects:
|
||||
- kind: ServiceAccount
|
||||
name: {{ include "argo-cd.notifications.serviceAccountName" . }}
|
||||
namespace: {{ .Release.Namespace }}
|
||||
{{- end }}
|
|
@ -9,13 +9,16 @@ metadata:
|
|||
{{- end }}
|
||||
{{- end }}
|
||||
name: {{ include "argo-cd.notifications.fullname" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
labels:
|
||||
{{- include "argo-cd.labels" (dict "context" . "component" .Values.notifications.name "name" .Values.notifications.name) | nindent 4 }}
|
||||
spec:
|
||||
replicas: 1
|
||||
revisionHistoryLimit: {{ .Values.global.revisionHistoryLimit }}
|
||||
{{- with include "argo-cd.strategy" (mergeOverwrite (deepCopy .Values.global.deploymentStrategy) .Values.notifications.deploymentStrategy) }}
|
||||
strategy:
|
||||
type: Recreate
|
||||
{{- trim . | nindent 4 }}
|
||||
{{- end }}
|
||||
selector:
|
||||
matchLabels:
|
||||
{{- include "argo-cd.selectorLabels" (dict "context" . "name" .Values.notifications.name) | nindent 6 }}
|
||||
|
@ -37,17 +40,27 @@ spec:
|
|||
imagePullSecrets:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.global.hostAliases }}
|
||||
hostAliases:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.global.securityContext }}
|
||||
securityContext:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
serviceAccountName: {{ include "argo-cd.notificationsServiceAccountName" . }}
|
||||
{{- with .Values.notifications.priorityClassName | default .Values.global.priorityClassName }}
|
||||
priorityClassName: {{ . }}
|
||||
{{- end }}
|
||||
{{- if .Values.notifications.terminationGracePeriodSeconds }}
|
||||
terminationGracePeriodSeconds: {{ .Values.notifications.terminationGracePeriodSeconds }}
|
||||
{{- end }}
|
||||
serviceAccountName: {{ include "argo-cd.notifications.serviceAccountName" . }}
|
||||
containers:
|
||||
- name: {{ .Values.notifications.name }}
|
||||
image: {{ default .Values.global.image.repository .Values.notifications.image.repository }}:{{ default (include "argo-cd.defaultTag" .) .Values.notifications.image.tag }}
|
||||
imagePullPolicy: {{ default .Values.global.image.imagePullPolicy .Values.notifications.image.imagePullPolicy }}
|
||||
command:
|
||||
- argocd-notifications
|
||||
args:
|
||||
- /usr/local/bin/argocd-notifications
|
||||
- --metrics-port={{ .Values.notifications.containerPorts.metrics }}
|
||||
- --loglevel={{ default .Values.global.logging.level .Values.notifications.logLevel }}
|
||||
- --logformat={{ default .Values.global.logging.format .Values.notifications.logFormat }}
|
||||
|
@ -56,10 +69,28 @@ spec:
|
|||
{{- range .Values.notifications.extraArgs }}
|
||||
- {{ . | squote }}
|
||||
{{- end }}
|
||||
{{- with .Values.notifications.extraEnv }}
|
||||
env:
|
||||
{{- with (concat .Values.global.env .Values.notifications.extraEnv) }}
|
||||
{{- toYaml . | nindent 12 }}
|
||||
{{- end }}
|
||||
- name: ARGOCD_NOTIFICATIONS_CONTROLLER_LOGLEVEL
|
||||
valueFrom:
|
||||
configMapKeyRef:
|
||||
key: notificationscontroller.log.level
|
||||
name: argocd-cmd-params-cm
|
||||
optional: true
|
||||
- name: ARGOCD_NOTIFICATIONS_CONTROLLER_LOGFORMAT
|
||||
valueFrom:
|
||||
configMapKeyRef:
|
||||
key: notificationscontroller.log.format
|
||||
name: argocd-cmd-params-cm
|
||||
optional: true
|
||||
- name: ARGOCD_APPLICATION_NAMESPACES
|
||||
valueFrom:
|
||||
configMapKeyRef:
|
||||
key: application.namespaces
|
||||
name: argocd-cmd-params-cm
|
||||
optional: true
|
||||
{{- with .Values.notifications.extraEnvFrom }}
|
||||
envFrom:
|
||||
{{- toYaml . | nindent 12 }}
|
||||
|
@ -70,8 +101,10 @@ spec:
|
|||
protocol: TCP
|
||||
resources:
|
||||
{{- toYaml .Values.notifications.resources | nindent 12 }}
|
||||
{{- with .Values.notifications.containerSecurityContext }}
|
||||
securityContext:
|
||||
{{- toYaml .Values.notifications.containerSecurityContext | nindent 12 }}
|
||||
{{- toYaml . | nindent 12 }}
|
||||
{{- end }}
|
||||
workingDir: /app
|
||||
volumeMounts:
|
||||
- name: tls-certs
|
||||
|
@ -88,20 +121,28 @@ spec:
|
|||
initContainers:
|
||||
{{- tpl (toYaml . ) $ | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.notifications.nodeSelector }}
|
||||
{{- with include "argo-cd.affinity" (dict "context" . "component" .Values.notifications) }}
|
||||
affinity:
|
||||
{{- trim . | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.notifications.nodeSelector | default .Values.global.nodeSelector }}
|
||||
nodeSelector:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.notifications.affinity }}
|
||||
affinity:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.notifications.tolerations }}
|
||||
{{- with .Values.notifications.tolerations | default .Values.global.tolerations }}
|
||||
tolerations:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.notifications.priorityClassName }}
|
||||
priorityClassName: {{ . }}
|
||||
{{- with .Values.notifications.topologySpreadConstraints | default .Values.global.topologySpreadConstraints }}
|
||||
topologySpreadConstraints:
|
||||
{{- range $constraint := . }}
|
||||
- {{ toYaml $constraint | nindent 8 | trim }}
|
||||
{{- if not $constraint.labelSelector }}
|
||||
labelSelector:
|
||||
matchLabels:
|
||||
{{- include "argo-cd.selectorLabels" (dict "context" $ "name" $.Values.notifications.name) | nindent 12 }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
volumes:
|
||||
{{- with .Values.notifications.extraVolumes }}
|
||||
|
@ -121,4 +162,9 @@ spec:
|
|||
path: tls.key
|
||||
- key: ca.crt
|
||||
path: ca.crt
|
||||
{{- with .Values.notifications.dnsConfig }}
|
||||
dnsConfig:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
dnsPolicy: {{ .Values.notifications.dnsPolicy }}
|
||||
{{- end }}
|
||||
|
|
|
@ -3,18 +3,27 @@ apiVersion: v1
|
|||
kind: Service
|
||||
metadata:
|
||||
name: {{ include "argo-cd.notifications.fullname" . }}-metrics
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
labels:
|
||||
{{- include "argo-cd.labels" (dict "context" . "component" .Values.notifications.name "name" "metrics") | nindent 4 }}
|
||||
{{- with .Values.notifications.metrics.service.labels }}
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- with .Values.notifications.metrics.service.annotations }}
|
||||
{{- if or .Values.notifications.metrics.service.annotations .Values.global.addPrometheusAnnotations }}
|
||||
annotations:
|
||||
{{- range $key, $value := . }}
|
||||
{{- if .Values.global.addPrometheusAnnotations }}
|
||||
prometheus.io/port: {{ .Values.notifications.metrics.port | quote }}
|
||||
prometheus.io/scrape: "true"
|
||||
{{- end }}
|
||||
{{- range $key, $value := .Values.notifications.metrics.service.annotations }}
|
||||
{{ $key }}: {{ $value | quote }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
spec:
|
||||
type: {{ .Values.notifications.metrics.service.type }}
|
||||
{{- if and .Values.notifications.metrics.service.clusterIP (eq .Values.notifications.metrics.service.type "ClusterIP") }}
|
||||
clusterIP: {{ .Values.notifications.metrics.service.clusterIP }}
|
||||
{{- end }}
|
||||
selector:
|
||||
{{- include "argo-cd.selectorLabels" (dict "context" . "name" .Values.notifications.name) | nindent 6 }}
|
||||
ports:
|
||||
|
|
|
@ -3,6 +3,7 @@ apiVersion: networking.k8s.io/v1
|
|||
kind: NetworkPolicy
|
||||
metadata:
|
||||
name: {{ template "argo-cd.notifications.fullname" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
labels:
|
||||
{{- include "argo-cd.labels" (dict "context" . "component" .Values.notifications.name "name" .Values.notifications.name) | nindent 4 }}
|
||||
spec:
|
||||
|
|
|
@ -3,6 +3,7 @@ apiVersion: policy/v1
|
|||
kind: PodDisruptionBudget
|
||||
metadata:
|
||||
name: {{ include "argo-cd.notifications.fullname" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
labels:
|
||||
{{- include "argo-cd.labels" (dict "context" . "component" .Values.notifications.name "name" .Values.notifications.name) | nindent 4 }}
|
||||
{{- with .Values.notifications.pdb.labels }}
|
||||
|
|
|
@ -3,6 +3,7 @@ apiVersion: rbac.authorization.k8s.io/v1
|
|||
kind: Role
|
||||
metadata:
|
||||
name: {{ template "argo-cd.notifications.fullname" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
labels:
|
||||
{{- include "argo-cd.labels" (dict "context" . "component" .Values.notifications.name "name" .Values.notifications.name) | nindent 4 }}
|
||||
rules:
|
||||
|
|
|
@ -2,15 +2,16 @@
|
|||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: RoleBinding
|
||||
metadata:
|
||||
name: {{ template "argo-cd.notifications.fullname" . }}
|
||||
name: {{ include "argo-cd.notifications.fullname" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
labels:
|
||||
{{- include "argo-cd.labels" (dict "context" . "component" .Values.notifications.name "name" .Values.notifications.name) | nindent 4 }}
|
||||
roleRef:
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
kind: Role
|
||||
name: {{ template "argo-cd.notifications.fullname" . }}
|
||||
name: {{ include "argo-cd.notifications.fullname" . }}
|
||||
subjects:
|
||||
- kind: ServiceAccount
|
||||
name: {{ template "argo-cd.notificationsServiceAccountName" . }}
|
||||
name: {{ include "argo-cd.notifications.serviceAccountName" . }}
|
||||
namespace: {{ .Release.Namespace }}
|
||||
{{- end }}
|
||||
|
|
|
@ -3,16 +3,17 @@ apiVersion: v1
|
|||
kind: ServiceAccount
|
||||
automountServiceAccountToken: {{ .Values.notifications.serviceAccount.automountServiceAccountToken }}
|
||||
metadata:
|
||||
name: {{ template "argo-cd.notificationsServiceAccountName" . }}
|
||||
{{- if .Values.notifications.serviceAccount.annotations }}
|
||||
name: {{ include "argo-cd.notifications.serviceAccountName" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
{{- with .Values.notifications.serviceAccount.annotations }}
|
||||
annotations:
|
||||
{{- range $key, $value := .Values.notifications.serviceAccount.annotations }}
|
||||
{{- range $key, $value := . }}
|
||||
{{ $key }}: {{ $value | quote }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
labels:
|
||||
{{- include "argo-cd.labels" (dict "context" . "component" .Values.notifications.name "name" .Values.notifications.name) | nindent 4 }}
|
||||
{{- range $key, $value := .Values.notifications.serviceAccount.labels }}
|
||||
{{ $key }}: {{ $value | quote }}
|
||||
{{- with .Values.notifications.serviceAccount.labels }}
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
|
|
@ -1,11 +1,9 @@
|
|||
{{- if and .Values.notifications.enabled .Values.notifications.metrics.enabled .Values.notifications.metrics.serviceMonitor.enabled }}
|
||||
{{- if and (.Capabilities.APIVersions.Has "monitoring.coreos.com/v1") .Values.notifications.enabled .Values.notifications.metrics.enabled .Values.notifications.metrics.serviceMonitor.enabled }}
|
||||
apiVersion: monitoring.coreos.com/v1
|
||||
kind: ServiceMonitor
|
||||
metadata:
|
||||
name: {{ template "argo-cd.notifications.fullname" . }}
|
||||
{{- if .Values.notifications.metrics.serviceMonitor.namespace }}
|
||||
namespace: {{ .Values.notifications.metrics.serviceMonitor.namespace }}
|
||||
{{- end }}
|
||||
namespace: {{ default .Release.Namespace .Values.notifications.metrics.serviceMonitor.namespace | quote }}
|
||||
labels:
|
||||
{{- include "argo-cd.labels" (dict "context" . "component" .Values.notifications.name "name" .Values.notifications.name) | nindent 4 }}
|
||||
{{- with .Values.notifications.metrics.serviceMonitor.selector }}
|
||||
|
|
|
@ -12,6 +12,6 @@ roleRef:
|
|||
name: {{ include "argo-cd.repoServer.fullname" . }}
|
||||
subjects:
|
||||
- kind: ServiceAccount
|
||||
name: {{ include "argo-cd.repoServerServiceAccountName" . }}
|
||||
name: {{ include "argo-cd.repoServer.serviceAccountName" . }}
|
||||
namespace: {{ .Release.Namespace }}
|
||||
{{- end }}
|
||||
|
|
|
@ -8,9 +8,14 @@ metadata:
|
|||
{{- end }}
|
||||
{{- end }}
|
||||
name: {{ template "argo-cd.repoServer.fullname" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
labels:
|
||||
{{- include "argo-cd.labels" (dict "context" . "component" .Values.repoServer.name "name" .Values.repoServer.name) | nindent 4 }}
|
||||
spec:
|
||||
{{- with include "argo-cd.strategy" (mergeOverwrite (deepCopy .Values.global.deploymentStrategy) .Values.repoServer.deploymentStrategy) }}
|
||||
strategy:
|
||||
{{- trim . | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- if not .Values.repoServer.autoscaling.enabled }}
|
||||
replicas: {{ .Values.repoServer.replicas }}
|
||||
{{- end }}
|
||||
|
@ -25,6 +30,12 @@ spec:
|
|||
{{- if .Values.repoServer.certificateSecret.enabled }}
|
||||
checksum/repo-server-tls: {{ include (print $.Template.BasePath "/argocd-configs/argocd-repo-server-tls-secret.yaml") . | sha256sum }}
|
||||
{{- end }}
|
||||
{{- if (hasKey .Values.server "configEnabled") | ternary .Values.server.configEnabled .Values.configs.cm.create }}
|
||||
checksum/cm: {{ include (print $.Template.BasePath "/argocd-configs/argocd-cm.yaml") . | sha256sum }}
|
||||
{{- end }}
|
||||
{{- if .Values.configs.cmp.create }}
|
||||
checksum/cmp-cm: {{ include (print $.Template.BasePath "/argocd-configs/argocd-cmp-cm.yaml") . | sha256sum }}
|
||||
{{- end }}
|
||||
{{- with (mergeOverwrite (deepCopy .Values.global.podAnnotations) .Values.repoServer.podAnnotations) }}
|
||||
{{- range $key, $value := . }}
|
||||
{{ $key }}: {{ $value | quote }}
|
||||
|
@ -40,19 +51,27 @@ spec:
|
|||
imagePullSecrets:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
automountServiceAccountToken: {{ .Values.repoServer.serviceAccount.automountServiceAccountToken }}
|
||||
{{- with .Values.global.hostAliases }}
|
||||
hostAliases:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.global.securityContext }}
|
||||
securityContext:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.repoServer.priorityClassName | default .Values.global.priorityClassName }}
|
||||
priorityClassName: {{ . }}
|
||||
{{- end }}
|
||||
{{- if .Values.repoServer.terminationGracePeriodSeconds }}
|
||||
terminationGracePeriodSeconds: {{ .Values.repoServer.terminationGracePeriodSeconds }}
|
||||
{{- end }}
|
||||
serviceAccountName: {{ include "argo-cd.repoServer.serviceAccountName" . }}
|
||||
containers:
|
||||
- name: {{ .Values.repoServer.name }}
|
||||
image: {{ default .Values.global.image.repository .Values.repoServer.image.repository }}:{{ default (include "argo-cd.defaultTag" .) .Values.repoServer.image.tag }}
|
||||
imagePullPolicy: {{ default .Values.global.image.imagePullPolicy .Values.repoServer.image.imagePullPolicy }}
|
||||
command:
|
||||
- entrypoint.sh
|
||||
args:
|
||||
- argocd-repo-server
|
||||
- /usr/local/bin/argocd-repo-server
|
||||
- --port={{ .Values.repoServer.containerPorts.server }}
|
||||
- --metrics-port={{ .Values.repoServer.containerPorts.metrics }}
|
||||
{{- with .Values.repoServer.logFormat }}
|
||||
|
@ -67,7 +86,7 @@ spec:
|
|||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
env:
|
||||
{{- with .Values.repoServer.env }}
|
||||
{{- with (concat .Values.global.env .Values.repoServer.env) }}
|
||||
{{- toYaml . | nindent 10 }}
|
||||
{{- end }}
|
||||
{{- if .Values.openshift.enabled }}
|
||||
|
@ -98,6 +117,18 @@ spec:
|
|||
name: argocd-cmd-params-cm
|
||||
key: reposerver.parallelism.limit
|
||||
optional: true
|
||||
- name: ARGOCD_REPO_SERVER_LISTEN_ADDRESS
|
||||
valueFrom:
|
||||
configMapKeyRef:
|
||||
name: argocd-cmd-params-cm
|
||||
key: reposerver.listen.address
|
||||
optional: true
|
||||
- name: ARGOCD_REPO_SERVER_LISTEN_METRICS_ADDRESS
|
||||
valueFrom:
|
||||
configMapKeyRef:
|
||||
name: argocd-cmd-params-cm
|
||||
key: reposerver.metrics.listen.address
|
||||
optional: true
|
||||
- name: ARGOCD_REPO_SERVER_DISABLE_TLS
|
||||
valueFrom:
|
||||
configMapKeyRef:
|
||||
|
@ -200,18 +231,32 @@ spec:
|
|||
key: reposerver.streamed.manifest.max.extracted.size
|
||||
name: argocd-cmd-params-cm
|
||||
optional: true
|
||||
- name: ARGOCD_REPO_SERVER_HELM_MANIFEST_MAX_EXTRACTED_SIZE
|
||||
valueFrom:
|
||||
configMapKeyRef:
|
||||
key: reposerver.helm.manifest.max.extracted.size
|
||||
name: argocd-cmd-params-cm
|
||||
optional: true
|
||||
- name: ARGOCD_REPO_SERVER_DISABLE_HELM_MANIFEST_MAX_EXTRACTED_SIZE
|
||||
valueFrom:
|
||||
configMapKeyRef:
|
||||
name: argocd-cmd-params-cm
|
||||
key: reposerver.disable.helm.manifest.max.extracted.size
|
||||
optional: true
|
||||
- name: ARGOCD_GIT_MODULES_ENABLED
|
||||
valueFrom:
|
||||
configMapKeyRef:
|
||||
key: reposerver.enable.git.submodule
|
||||
name: argocd-cmd-params-cm
|
||||
optional: true
|
||||
{{- if .Values.repoServer.useEphemeralHelmWorkingDir }}
|
||||
- name: HELM_CACHE_HOME
|
||||
value: /helm-working-dir
|
||||
- name: HELM_CONFIG_HOME
|
||||
value: /helm-working-dir
|
||||
- name: HELM_DATA_HOME
|
||||
value: /helm-working-dir
|
||||
{{- end }}
|
||||
{{- with .Values.repoServer.envFrom }}
|
||||
envFrom:
|
||||
{{- toYaml . | nindent 10 }}
|
||||
|
@ -230,8 +275,10 @@ spec:
|
|||
name: gpg-keyring
|
||||
- mountPath: /app/config/reposerver/tls
|
||||
name: argocd-repo-server-tls
|
||||
{{- if .Values.repoServer.useEphemeralHelmWorkingDir }}
|
||||
- mountPath: /helm-working-dir
|
||||
name: helm-working-dir
|
||||
{{- end }}
|
||||
- mountPath: /home/argocd/cmp-server/plugins
|
||||
name: plugins
|
||||
- mountPath: /tmp
|
||||
|
@ -263,14 +310,20 @@ spec:
|
|||
failureThreshold: {{ .Values.repoServer.readinessProbe.failureThreshold }}
|
||||
resources:
|
||||
{{- toYaml .Values.repoServer.resources | nindent 10 }}
|
||||
{{- with .Values.repoServer.containerSecurityContext }}
|
||||
securityContext:
|
||||
{{- toYaml .Values.repoServer.containerSecurityContext | nindent 10 }}
|
||||
{{- toYaml . | nindent 10 }}
|
||||
{{- end }}
|
||||
{{- with .Values.repoServer.lifecycle }}
|
||||
lifecycle:
|
||||
{{- toYaml . | nindent 10 }}
|
||||
{{- end }}
|
||||
{{- with .Values.repoServer.extraContainers }}
|
||||
{{- tpl (toYaml .) $ | nindent 6 }}
|
||||
{{- end }}
|
||||
initContainers:
|
||||
- command:
|
||||
- cp
|
||||
- /bin/cp
|
||||
- -n
|
||||
- /usr/local/bin/argocd
|
||||
- /var/run/argocd/argocd-cmp-server
|
||||
|
@ -291,19 +344,19 @@ spec:
|
|||
{{- with .Values.repoServer.initContainers }}
|
||||
{{- tpl (toYaml .) $ | nindent 6 }}
|
||||
{{- end }}
|
||||
{{- with .Values.repoServer.nodeSelector }}
|
||||
{{- with include "argo-cd.affinity" (dict "context" . "component" .Values.repoServer) }}
|
||||
affinity:
|
||||
{{- trim . | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.repoServer.nodeSelector | default .Values.global.nodeSelector }}
|
||||
nodeSelector:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.repoServer.tolerations }}
|
||||
{{- with .Values.repoServer.tolerations | default .Values.global.tolerations }}
|
||||
tolerations:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.repoServer.affinity }}
|
||||
affinity:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.repoServer.topologySpreadConstraints }}
|
||||
{{- with .Values.repoServer.topologySpreadConstraints | default .Values.global.topologySpreadConstraints }}
|
||||
topologySpreadConstraints:
|
||||
{{- range $constraint := . }}
|
||||
- {{ toYaml $constraint | nindent 8 | trim }}
|
||||
|
@ -314,23 +367,36 @@ spec:
|
|||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
serviceAccountName: {{ template "argo-cd.repoServerServiceAccountName" . }}
|
||||
{{- with .Values.global.hostAliases }}
|
||||
hostAliases:
|
||||
{{- toYaml . | nindent 6 }}
|
||||
{{- end }}
|
||||
volumes:
|
||||
{{- with .Values.repoServer.volumes }}
|
||||
{{- toYaml . | nindent 6 }}
|
||||
{{- end }}
|
||||
{{- if .Values.repoServer.useEphemeralHelmWorkingDir }}
|
||||
- name: helm-working-dir
|
||||
{{- if .Values.repoServer.existingVolumes.helmWorkingDir -}}
|
||||
{{ toYaml .Values.repoServer.existingVolumes.helmWorkingDir | nindent 8 }}
|
||||
{{- else }}
|
||||
emptyDir: {}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
- name: plugins
|
||||
{{- if .Values.repoServer.existingVolumes.plugins -}}
|
||||
{{ toYaml .Values.repoServer.existingVolumes.plugins | nindent 8 }}
|
||||
{{- else }}
|
||||
emptyDir: {}
|
||||
{{- end }}
|
||||
- name: var-files
|
||||
{{- if .Values.repoServer.existingVolumes.varFiles -}}
|
||||
{{ toYaml .Values.repoServer.existingVolumes.varFiles | nindent 8 }}
|
||||
{{- else }}
|
||||
emptyDir: {}
|
||||
{{- end }}
|
||||
- name: tmp
|
||||
{{- if .Values.repoServer.existingVolumes.tmp -}}
|
||||
{{ toYaml .Values.repoServer.existingVolumes.tmp | nindent 8 }}
|
||||
{{- else }}
|
||||
emptyDir: {}
|
||||
{{- end }}
|
||||
- name: ssh-known-hosts
|
||||
configMap:
|
||||
name: argocd-ssh-known-hosts-cm
|
||||
|
@ -341,7 +407,11 @@ spec:
|
|||
configMap:
|
||||
name: argocd-gpg-keys-cm
|
||||
- name: gpg-keyring
|
||||
{{- if .Values.repoServer.existingVolumes.gpgKeyring -}}
|
||||
{{ toYaml .Values.repoServer.existingVolumes.gpgKeyring | nindent 8 }}
|
||||
{{- else }}
|
||||
emptyDir: {}
|
||||
{{- end }}
|
||||
- name: argocd-repo-server-tls
|
||||
secret:
|
||||
secretName: argocd-repo-server-tls
|
||||
|
@ -353,6 +423,11 @@ spec:
|
|||
path: tls.key
|
||||
- key: ca.crt
|
||||
path: ca.crt
|
||||
{{- with .Values.repoServer.priorityClassName }}
|
||||
priorityClassName: {{ . }}
|
||||
{{- if .Values.repoServer.hostNetwork }}
|
||||
hostNetwork: {{ .Values.repoServer.hostNetwork }}
|
||||
{{- end }}
|
||||
{{- with .Values.repoServer.dnsConfig }}
|
||||
dnsConfig:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
dnsPolicy: {{ .Values.repoServer.dnsPolicy }}
|
||||
|
|
|
@ -1,40 +1,37 @@
|
|||
{{- if .Values.repoServer.autoscaling.enabled }}
|
||||
apiVersion: {{ include "argo-cd.apiVersion.autoscaling" . }}
|
||||
apiVersion: autoscaling/v2
|
||||
kind: HorizontalPodAutoscaler
|
||||
metadata:
|
||||
name: {{ include "argo-cd.repoServer.fullname" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
labels:
|
||||
{{- include "argo-cd.labels" (dict "context" . "component" .Values.repoServer.name "name" (printf "%s-hpa" .Values.repoServer.name)) | nindent 4 }}
|
||||
name: {{ template "argo-cd.repoServer.fullname" . }}-hpa
|
||||
{{- include "argo-cd.labels" (dict "context" . "component" .Values.repoServer.name "name" .Values.repoServer.name) | nindent 4 }}
|
||||
spec:
|
||||
scaleTargetRef:
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
name: {{ template "argo-cd.repoServer.fullname" . }}
|
||||
name: {{ include "argo-cd.repoServer.fullname" . }}
|
||||
minReplicas: {{ .Values.repoServer.autoscaling.minReplicas }}
|
||||
maxReplicas: {{ .Values.repoServer.autoscaling.maxReplicas }}
|
||||
metrics:
|
||||
{{- with .Values.repoServer.autoscaling.metrics }}
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- else }}
|
||||
{{- with .Values.repoServer.autoscaling.targetMemoryUtilizationPercentage }}
|
||||
- type: Resource
|
||||
resource:
|
||||
name: memory
|
||||
{{- if eq (include "argo-cd.apiVersion.autoscaling" $) "autoscaling/v2beta1" }}
|
||||
targetAverageUtilization: {{ . }}
|
||||
{{- else }}
|
||||
target:
|
||||
averageUtilization: {{ . }}
|
||||
type: Utilization
|
||||
{{- end }}
|
||||
averageUtilization: {{ . }}
|
||||
{{- end }}
|
||||
{{- with .Values.repoServer.autoscaling.targetCPUUtilizationPercentage }}
|
||||
- type: Resource
|
||||
resource:
|
||||
name: cpu
|
||||
{{- if eq (include "argo-cd.apiVersion.autoscaling" $) "autoscaling/v2beta1" }}
|
||||
targetAverageUtilization: {{ . }}
|
||||
{{- else }}
|
||||
target:
|
||||
averageUtilization: {{ . }}
|
||||
type: Utilization
|
||||
averageUtilization: {{ . }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- with .Values.repoServer.autoscaling.behavior }}
|
||||
|
|
|
@ -3,18 +3,27 @@ apiVersion: v1
|
|||
kind: Service
|
||||
metadata:
|
||||
name: {{ include "argo-cd.repoServer.fullname" . }}-metrics
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
labels:
|
||||
{{- include "argo-cd.labels" (dict "context" . "component" .Values.repoServer.name "name" (printf "%s-metrics" .Values.repoServer.name)) | nindent 4 }}
|
||||
{{- with .Values.repoServer.metrics.service.labels }}
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- with .Values.repoServer.metrics.service.annotations }}
|
||||
{{- if or .Values.repoServer.metrics.service.annotations .Values.global.addPrometheusAnnotations }}
|
||||
annotations:
|
||||
{{- range $key, $value := . }}
|
||||
{{- if .Values.global.addPrometheusAnnotations }}
|
||||
prometheus.io/port: {{ .Values.repoServer.metrics.service.servicePort | quote }}
|
||||
prometheus.io/scrape: "true"
|
||||
{{- end }}
|
||||
{{- range $key, $value := .Values.repoServer.metrics.service.annotations }}
|
||||
{{ $key }}: {{ $value | quote }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
spec:
|
||||
type: {{ .Values.repoServer.metrics.service.type }}
|
||||
{{- if and .Values.repoServer.metrics.service.clusterIP (eq .Values.repoServer.metrics.service.type "ClusterIP") }}
|
||||
clusterIP: {{ .Values.repoServer.metrics.service.clusterIP }}
|
||||
{{- end }}
|
||||
ports:
|
||||
- name: {{ .Values.repoServer.metrics.service.portName }}
|
||||
protocol: TCP
|
||||
|
|
|
@ -5,6 +5,7 @@ metadata:
|
|||
labels:
|
||||
{{- include "argo-cd.labels" (dict "context" . "component" .Values.repoServer.name "name" .Values.repoServer.name) | nindent 4 }}
|
||||
name: {{ template "argo-cd.repoServer.fullname" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
spec:
|
||||
ingress:
|
||||
- from:
|
||||
|
|
|
@ -3,6 +3,7 @@ apiVersion: policy/v1
|
|||
kind: PodDisruptionBudget
|
||||
metadata:
|
||||
name: {{ include "argo-cd.repoServer.fullname" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
labels:
|
||||
{{- include "argo-cd.labels" (dict "context" . "component" .Values.repoServer.name "name" .Values.repoServer.name) | nindent 4 }}
|
||||
{{- with .Values.repoServer.pdb.labels }}
|
||||
|
|
|
@ -3,6 +3,7 @@ apiVersion: rbac.authorization.k8s.io/v1
|
|||
kind: Role
|
||||
metadata:
|
||||
name: {{ template "argo-cd.repoServer.fullname" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
labels:
|
||||
{{- include "argo-cd.labels" (dict "context" . "component" .Values.repoServer.name "name" .Values.repoServer.name) | nindent 4 }}
|
||||
rules:
|
||||
|
|
|
@ -2,15 +2,16 @@
|
|||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: RoleBinding
|
||||
metadata:
|
||||
name: {{ template "argo-cd.repoServer.fullname" . }}
|
||||
name: {{ include "argo-cd.repoServer.fullname" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
labels:
|
||||
{{- include "argo-cd.labels" (dict "context" . "component" .Values.repoServer.name "name" .Values.repoServer.name) | nindent 4 }}
|
||||
roleRef:
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
kind: Role
|
||||
name: {{ template "argo-cd.repoServer.fullname" . }}
|
||||
name: {{ include "argo-cd.repoServer.fullname" . }}
|
||||
subjects:
|
||||
- kind: ServiceAccount
|
||||
name: {{ template "argo-cd.repoServerServiceAccountName" . }}
|
||||
name: {{ include "argo-cd.repoServer.serviceAccountName" . }}
|
||||
namespace: {{ .Release.Namespace }}
|
||||
{{- end }}
|
|
@ -13,6 +13,7 @@ metadata:
|
|||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
name: {{ template "argo-cd.repoServer.fullname" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
spec:
|
||||
ports:
|
||||
- name: {{ .Values.repoServer.service.portName }}
|
||||
|
|
|
@ -3,16 +3,17 @@ apiVersion: v1
|
|||
kind: ServiceAccount
|
||||
automountServiceAccountToken: {{ .Values.repoServer.serviceAccount.automountServiceAccountToken }}
|
||||
metadata:
|
||||
name: {{ template "argo-cd.repoServerServiceAccountName" . }}
|
||||
{{- if .Values.repoServer.serviceAccount.annotations }}
|
||||
name: {{ include "argo-cd.repoServer.serviceAccountName" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
{{- with .Values.repoServer.serviceAccount.annotations }}
|
||||
annotations:
|
||||
{{- range $key, $value := .Values.repoServer.serviceAccount.annotations }}
|
||||
{{- range $key, $value := . }}
|
||||
{{ $key }}: {{ $value | quote }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
labels:
|
||||
{{- include "argo-cd.labels" (dict "context" . "component" .Values.repoServer.name "name" .Values.repoServer.name) | nindent 4 }}
|
||||
{{- range $key, $value := .Values.repoServer.serviceAccount.labels }}
|
||||
{{ $key }}: {{ $value | quote }}
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
|
|
@ -1,11 +1,9 @@
|
|||
{{- if and .Values.repoServer.metrics.enabled .Values.repoServer.metrics.serviceMonitor.enabled }}
|
||||
{{- if and (.Capabilities.APIVersions.Has "monitoring.coreos.com/v1") .Values.repoServer.metrics.enabled .Values.repoServer.metrics.serviceMonitor.enabled }}
|
||||
apiVersion: monitoring.coreos.com/v1
|
||||
kind: ServiceMonitor
|
||||
metadata:
|
||||
name: {{ template "argo-cd.repoServer.fullname" . }}
|
||||
{{- with .Values.repoServer.metrics.serviceMonitor.namespace }}
|
||||
namespace: {{ . }}
|
||||
{{- end }}
|
||||
namespace: {{ default .Release.Namespace .Values.repoServer.metrics.serviceMonitor.namespace | default }}
|
||||
labels:
|
||||
{{- include "argo-cd.labels" (dict "context" . "component" .Values.repoServer.name "name" .Values.repoServer.name) | nindent 4 }}
|
||||
{{- with .Values.repoServer.metrics.serviceMonitor.selector }}
|
||||
|
|
|
@ -7,16 +7,17 @@ metadata:
|
|||
labels:
|
||||
{{- include "argo-cd.labels" (dict "context" . "component" (print .Values.server.name "-gprc") "name" (print .Values.server.name "-grpc")) | nindent 4 }}
|
||||
name: {{ template "argo-cd.server.fullname" . }}-grpc
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
spec:
|
||||
ports:
|
||||
- name: {{ .Values.server.service.servicePortHttpName }}
|
||||
protocol: TCP
|
||||
port: {{ .Values.server.service.servicePortHttp }}
|
||||
targetPort: server
|
||||
targetPort: {{ .Values.server.containerPorts.server }}
|
||||
- name: {{ .Values.server.service.servicePortHttpsName }}
|
||||
protocol: TCP
|
||||
port: {{ .Values.server.service.servicePortHttps }}
|
||||
targetPort: server
|
||||
targetPort: {{ .Values.server.containerPorts.server }}
|
||||
selector:
|
||||
{{- include "argo-cd.selectorLabels" (dict "context" . "name" .Values.server.name) | nindent 4 }}
|
||||
sessionAffinity: None
|
||||
|
|
|
@ -1,8 +1,15 @@
|
|||
{{- if .Values.server.certificate.enabled -}}
|
||||
apiVersion: {{ include "argo-cd.apiVersion.cert-manager" . }}
|
||||
apiVersion: cert-manager.io/v1
|
||||
kind: Certificate
|
||||
metadata:
|
||||
{{- with (mergeOverwrite (deepCopy .Values.global.certificateAnnotations) .Values.server.certificate.annotations) }}
|
||||
annotations:
|
||||
{{- range $key, $value := . }}
|
||||
{{ $key }}: {{ $value | quote }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
name: {{ include "argo-cd.server.fullname" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
labels:
|
||||
{{- include "argo-cd.labels" (dict "context" . "component" .Values.server.name "name" .Values.server.name) | nindent 4 }}
|
||||
spec:
|
||||
|
@ -29,4 +36,8 @@ spec:
|
|||
privateKey:
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- with .Values.server.certificate.usages }}
|
||||
usages:
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
|
|
@ -21,6 +21,9 @@ rules:
|
|||
- events
|
||||
verbs:
|
||||
- list
|
||||
{{- if (index .Values.configs.params "application.namespaces") }}
|
||||
- create
|
||||
{{- end }}
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
|
@ -40,9 +43,24 @@ rules:
|
|||
- argoproj.io
|
||||
resources:
|
||||
- applications
|
||||
- applicationsets
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- update
|
||||
- watch
|
||||
- apiGroups:
|
||||
- batch
|
||||
resources:
|
||||
{{/* supports triggering jobs from UI */}}
|
||||
- jobs
|
||||
verbs:
|
||||
- create
|
||||
- apiGroups:
|
||||
- argoproj.io
|
||||
resources:
|
||||
- workflows
|
||||
verbs:
|
||||
{{/* supports triggering workflows from UI */}}
|
||||
- create
|
||||
{{- end }}
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue