diff --git a/charts/argocd-applicationset/Chart.yaml b/charts/argocd-applicationset/Chart.yaml index 0796bbef..ebe52679 100644 --- a/charts/argocd-applicationset/Chart.yaml +++ b/charts/argocd-applicationset/Chart.yaml @@ -2,7 +2,7 @@ apiVersion: v2 name: argocd-applicationset description: A Helm chart for installing ArgoCD ApplicationSet type: application -version: 1.3.0 +version: 1.3.1 appVersion: "v0.2.0" home: https://github.com/argoproj/argo-helm icon: https://argocd-applicationset.readthedocs.io/en/stable/assets/logo.png @@ -14,5 +14,4 @@ maintainers: - name: maruina annotations: artifacthub.io/changes: | - - "[Fixed]: Use new image repository" - - "[Changed]: Updated ApplicationSet CRD" + - "[Changed]: Update README and convert it to helm-docs" diff --git a/charts/argocd-applicationset/README.md b/charts/argocd-applicationset/README.md index 0996b234..35c57240 100644 --- a/charts/argocd-applicationset/README.md +++ b/charts/argocd-applicationset/README.md @@ -57,34 +57,38 @@ kubectl apply -k https://github.com/argoproj-labs/applicationset.git/manifests/c | Key | Type | Default | Description | |-----|------|---------|-------------| | affinity | object | `{}` | [Assign custom affinity rules to the deployment](https://kubernetes.io/docs/concepts/configuration/assign-pod-node/) | -| args.metricsAddr | int | `8080` | The default metric address | -| args.probeBindAddr | int | `8081` | The default health check port | -| args.enableLeaderElection | bool | `false` | The default leader election setting | -| args.namespace | string | `argocd` | The default Argo CD repo namespace | -| args.argocdRepoServer | string | `argocd-repo-server:8081` | The default Argo CD repo server address | -| args.policy | string | `sync` | How application is synced between the generator and the cluster | +| args.argocdRepoServer | string | `"argocd-repo-server:8081"` | The default Argo CD repo server address | | args.debug | bool | `false` | Print debug logs | | args.dryRun | bool | `false` | Enable dry run mode | +| args.enableLeaderElection | bool | `false` | The default leader election setting | +| args.metricsAddr | string | `":8080"` | The default metric address | +| args.namespace | string | `"argocd"` | The default Argo CD repo namespace | +| args.policy | string | `"sync"` | How application is synced between the generator and the cluster | +| args.probeBindAddr | string | `":8081"` | The default health check port | | extraVolumeMounts | list | `[]` | List of extra mounts to add (normally used with extraVolumes) | | extraVolumes | list | `[]` | List of extra volumes to add | | fullnameOverride | string | `""` | Override the default fully qualified app name | | image.pullPolicy | string | `"IfNotPresent"` | Image pull policy | -| image.repository | string | `"quay.io/argocdapplicationset/argocd-applicationset"` | If defined, a repository applied to the ApplicationSet deployment. | +| image.repository | string | `"quay.io/argoproj/argocd-applicationset"` | The image repository | | image.tag | string | `""` | Overrides the image tag whose default is the chart appVersion. | | imagePullSecrets | list | `[]` | If defined, uses a Secret to pull an image from a private Docker registry or repository. | +| mountGPGKeyringVolume | bool | `true` | Mount an emptyDir volume for `gpg-keyring` | +| mountGPGKeysVolume | bool | `false` | Mount the `argocd-gpg-keys-cm` volume | | mountSSHKnownHostsVolume | bool | `true` | Mount the `argocd-ssh-known-hosts-cm` volume | | mountTLSCertsVolume | bool | `true` | Mount the `argocd-tls-certs-cm` volume | -| mountGPGKeysVolume | bool | `false` | Mount the `argocd-gpg-keys-cm` volume | -| mountGPGKeyringVolume | bool | `true` | Mount an emptyDir volume for `gpg-keyring` | | nameOverride | string | `""` | Provide a name in place of `argocd-applicationset` | | nodeSelector | object | `{}` | [Node selector](https://kubernetes.io/docs/user-guide/node-selection/) | | podAnnotations | object | `{}` | Annotations for the controller pods | | podSecurityContext | object | `{}` | Pod Security Context | +| 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. | | rbac.pspEnabled | bool | `true` | Enable Pod Security Policy | | replicaCount | int | `1` | The number of controller pods to run | | resources | object | `{}` | Resource limits and requests for the controller pods. | | securityContext | object | `{}` | Security Context | | serviceAccount.annotations | object | `{}` | Annotations to add to the service account | | serviceAccount.create | bool | `true` | Specifies whether a service account should be created | -| serviceAccount.name | string | `""` | The name of the service account to use. If not set and create is true, a name is generated using the fullname template | +| serviceAccount.name | string | `""` | The name of the service account to use. If not set and create is true, a name is generated using the fullname template | | tolerations | list | `[]` | [Tolerations for use with node taints](https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/) | + +---------------------------------------------- +Autogenerated from chart metadata using [helm-docs v1.5.0](https://github.com/norwoodj/helm-docs/releases/v1.5.0) diff --git a/charts/argocd-applicationset/README.md.gotmpl b/charts/argocd-applicationset/README.md.gotmpl new file mode 100644 index 00000000..62f1145e --- /dev/null +++ b/charts/argocd-applicationset/README.md.gotmpl @@ -0,0 +1,57 @@ +# Argo CD ApplicationSet Chart + +A Helm chart for Argo CD ApplicationSet, a controller to programmatically generate Argo CD Application. + +Source code can be found [here](https://github.com/argoproj-labs/applicationset/) + +## Additional Information + +This is a **community maintained** chart. This chart installs the [applicationset](https://github.com/argoproj-labs/applicationset) controller. + +This chart currently installs the non-HA version of Argo CD ApplicationSet. + +## Prerequisites + +- Helm v3.0.0+ +- The ApplicationSet controller **must** be installed into the same namespace as the Argo CD it is targetting. + +## Installing the Chart + +To install the chart with the release name `my-release`: + +```console +$ helm repo add argo https://argoproj.github.io/argo-helm +"argo" has been added to your repositories + +$ helm install --name my-release argo/argocd-applicationset +NAME: my-release +... +``` + +### Testing + +Users can test the chart with [kind](https://kind.sigs.k8s.io/) and [ct](https://github.com/helm/chart-testing). + +```console +kind create cluster +kubectl create namespace argocd +kubectl apply -n argocd -f https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml +ct install --namespace argocd +``` + +## Notes on CRD Installation + +Some users would prefer to install the CRDs _outside_ of the chart. You can disable the CRD installation of this chart by using `--skip-crds` when installing the chart. + +You then can install the CRDs manually from `crds` folder or via the manifests from the upstream project repo: + +```console +kubectl apply -k https://github.com/argoproj-labs/applicationset.git/manifests/crds?ref= + +# Eg. version v0.1.0 +kubectl apply -k https://github.com/argoproj-labs/applicationset.git/manifests/crds?ref=v0.1.0 +``` + +{{ template "chart.valuesSection" . }} + +{{ template "helm-docs.versionFooter" . }} diff --git a/charts/argocd-applicationset/values.yaml b/charts/argocd-applicationset/values.yaml index ac9ba29c..b0820368 100644 --- a/charts/argocd-applicationset/values.yaml +++ b/charts/argocd-applicationset/values.yaml @@ -2,47 +2,63 @@ # This is a YAML-formatted file. # Declare variables to be passed into your templates. +# -- The number of controller pods to run replicaCount: 1 image: - # The image repository + # -- The image repository repository: quay.io/argoproj/argocd-applicationset - # Image pull policy + # -- Image pull policy pullPolicy: IfNotPresent - # Overrides the image tag whose default is the chart appVersion. + # -- Overrides the image tag whose default is the chart appVersion. tag: "" args: + # -- The default metric address metricsAddr: :8080 + # -- The default health check port probeBindAddr: :8081 + # -- The default leader election setting enableLeaderElection: false + # -- The default Argo CD repo namespace namespace: argocd + # -- The default Argo CD repo server address argocdRepoServer: argocd-repo-server:8081 + # -- How application is synced between the generator and the cluster policy: sync + # -- Print debug logs debug: false + # -- Enable dry run mode dryRun: false +# -- If defined, uses a Secret to pull an image from a private Docker registry or repository. imagePullSecrets: [] +# -- Provide a name in place of `argocd-applicationset` nameOverride: "" +# -- Override the default fully qualified app name fullnameOverride: "" serviceAccount: - # Specifies whether a service account should be created + # -- Specifies whether a service account should be created create: true - # Annotations to add to the service account + # -- Annotations to add to the service account annotations: {} - # The name of the service account to use. + # -- The name of the service account to use. # If not set and create is true, a name is generated using the fullname template name: "" +# -- Annotations for the controller pods podAnnotations: {} rbac: + # -- Enable Pod Security Policy pspEnabled: true +# -- Pod Security Context podSecurityContext: {} # fsGroup: 2000 +# -- Security Context securityContext: {} # capabilities: # drop: @@ -51,6 +67,7 @@ securityContext: {} # runAsNonRoot: true # runAsUser: 1000 +# -- Resource limits and requests for the controller pods. resources: {} # We usually recommend not to specify default resources and to leave this as a conscious # choice for the user. This also increases chances charts run on environments with little @@ -63,23 +80,32 @@ resources: {} # cpu: 100m # memory: 128Mi +# -- [Node selector](https://kubernetes.io/docs/user-guide/node-selection/) nodeSelector: {} +# -- [Tolerations for use with node taints](https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/) tolerations: [] +# -- [Assign custom affinity rules to the deployment](https://kubernetes.io/docs/concepts/configuration/assign-pod-node/) affinity: {} +# -- If specified, indicates the pod's priority. If not specified, the pod priority will be default or zero if there is no default. priorityClassName: "" +# -- Mount the `argocd-ssh-known-hosts-cm` volume mountSSHKnownHostsVolume: true +# -- Mount the `argocd-tls-certs-cm` volume mountTLSCertsVolume: true +# -- Mount the `argocd-gpg-keys-cm` volume mountGPGKeysVolume: false +# -- Mount an emptyDir volume for `gpg-keyring` mountGPGKeyringVolume: true # -- List of extra mounts to add (normally used with extraVolumes) extraVolumeMounts: [] # - mountPath: /tmp/foobar # name: foobar + # -- List of extra volumes to add extraVolumes: [] # - name: foobar