applicationset icon indicating copy to clipboard operation
applicationset copied to clipboard

Merge ApplicationSet into Argo CD

Open alexmt opened this issue 3 years ago • 2 comments

Summary

Currently, Argo CD and ApplicationSet have implicit dependencies on each other. The ApplicationSet imports Argo CD code and Argo CD Application CRD validation schema. Argo CD bundles ApplicationSet installation manifests.

Argo CD and ApplicationSet are tightly coupled together but developed in different repositories. This coupling creates some issues for maintainers during release and for end-users as well:

  • The Argo CD and ApplicationSet are released at the same time but due to circular dependency we need to release Argo CD release candidate first, then point ApplicationSet to release candidate and release it and then finally update Argo CD manifests with released ApplicationSet manifests
  • Users have to deal with two images (and CRDs) that have different version numbers but are tightly coupled with each other. If versions are not matching that behavior is unpredictable.

Going forward we are planning to introduce first-class ApplicationSet support in Argo CD. That will require to introduce ApplicationSet dependency in Argo CD.

Proposal

Given that projects are so coupled already and we plan to have even more tighter integration it is proposed to merge ApplicationSet and Argo CD code.

alexmt avatar Mar 03 '22 16:03 alexmt

@crenshaw-dev , @jgwest WDYT?

alexmt avatar Mar 03 '22 16:03 alexmt

Based on discussion in contributors meetings, changed the proposal to merge Argo CD and ApplicaitonSet code.

alexmt avatar Mar 03 '22 19:03 alexmt