Skip to content
This repository has been archived by the owner on Jul 15, 2024. It is now read-only.

v0.4.0

Compare
Choose a tag to compare
@jgwest jgwest released this 08 Mar 03:27
· 23 commits to master since this release

I am happy to announce the latest release of the Argo CD ApplicationSet controller, v0.4.0. With this release, and alongside Argo CD v2.3.0, we now fully integrate with the default Argo CD install, which means you now only need to install Argo CD to get the full benefits of ApplicationSets.

Contributors

Thanks to all the folks who have contributed to the ApplicationSet controller since our last release.

Want to join us for our next release? Check out the project repository (https://github.com/argoproj/applicationset) or visit us on #argo-cd-appset on Slack (https://argoproj.github.io/community/join-slack/).

New in this release

ApplicationSet controller is now integrated with Argo CD install

The ApplicationSet controller is now installed by default with the latest release of Argo CD. This means that users of Argo CD now get all the benefits of ApplicationSets, without the requirement of a standalone install.

Contributed by @ishitasequeira and @jgwest.

Git generator: Add support for extraction of components of paths

The Git generator now supports the extraction of individual components of the path, with the new path[n] parameter:

  • {{path[n]}}: The path to the matching configuration file within the Git repository, split into array elements (n - array index).
  • For example, for a path of /clusters/clusterA, the individual components can be extracted like so: path[0]: clusters, path[1]: clusterA

Contributed by @stempher.

Git generator: Sanitize basename param by replacing unsupported characters

When using the Git generator, with a basename name param that contains an unsupported character, you may now use the {{path.basenameNormalized}} parameter to normalize these resources. This prevents rendering invalid Kubernetes resources with names like my_cluster-app1, and instead would convert them to my-cluster-app1.

Contributed by @missingcharacter.

Make webhook address configurable

When using a webhook, the address of the webhook can now be configured using the --webhook-addr parameter on the argocd-applicationset controller.

Example:

./dist/argocd-applicationset --webhook-addr=":9999" --logformat=json

Contributed by @chetan-rns.

Fixes / Chores

  • ApplicationSet CRD size reduction, by removing validation (CRD defn) of nested merge/matrix generator (#463, contributed by @jgwest)
  • Reap zombie processes in argocd-applicationset-controller pod using tini (#453, contributed by @hcelaloner)
  • Log all validation errors (#439, contributed by @crenshaw-dev)
  • Set applicationset-controller containerPort name (#444, contributed by @aabouzaid)
  • Append missing s to matchExpression (#449, contributed by @ml-)
  • Set controller logger if we don't use JSON format (#451, contributed by @mkilchhofer)
  • Remove hardcoded namespace from manifests (#474, contributed by @ishitasequeira)
  • Fix docs typo (#493 and #481, contributed by @crenshaw-dev)

Test/infrastructure improvements:

  • E2E tests should use application-controller serviceaccount, rather than applicationset-controller serviceaccount (#434, contributed by @jgwest)
  • Add GitHub action to run E2E tests against nightly Argo CD, w/ ApplicationSet master branch (#470, contributed by @jgwest)