* feat: add first class support to access repositories using proxy
Currently, users need to set the proxy URLs as env variables in the repo server. This is not user-friendly and also error-prone. This PR adds support to maintain proxy URLs along with repository configs in the argocd-cm. Argo CD uses this proxy to access your repository. In case the custom proxy is absent, it defaults to reading the proxy from the env variables.
Signed-off-by: Chetan Banavikalmutt <chetanrns1997@gmail.com>
* set both http & https proxy variables
Signed-off-by: Chetan Banavikalmutt <chetanrns1997@gmail.com>
Currently, the usage of standard lua library is always disabled, making it difficult to implement complex health check scripts.
This feat allow admins to control the usage of standard library by setting "health.lua.useOpenLibs" (merged-keys convention)/"resource.customizations.useOpenLibs.<group_kind>"
(split-keys convention) field in argocd-cm ConfigMap.
Signed-off-by: Chetan Banavikalmutt <chetanrns1997@gmail.com>
* fix: add helm dependecies with custom CA
Signed-off-by: Shubham Agarwal <shubhamagarawal19@gmail.com>
* fixed go lint error
Signed-off-by: Shubham Agarwal <shubhamagarawal19@gmail.com>
* ignore existing repos
Signed-off-by: Shubham Agarwal <shubhamagarawal19@gmail.com>
* fix: Enable helm OCI to work for lots of different URLs without having to create a repo for each one
Signed-off-by: May Zhang <may_zhang@intuit.com>
* fix: Enable helm OCI to work for lots of different URLs without having to create a repo for each one
Signed-off-by: May Zhang <may_zhang@intuit.com>
* fix: lint
Signed-off-by: May Zhang <may_zhang@intuit.com>
* fix: lint
Signed-off-by: May Zhang <may_zhang@intuit.com>
* fix: fix test code
Signed-off-by: May Zhang <may_zhang@intuit.com>
* fix: dependency add for https and oci
Signed-off-by: May Zhang <may_zhang@intuit.com>
* fix: go.sum and install.yaml
Signed-off-by: May Zhang <may_zhang@intuit.com>
* fix: fix checking if repo exits
Signed-off-by: May Zhang <may_zhang@intuit.com>
* fix: fix generated files
Signed-off-by: May Zhang <may_zhang@intuit.com>
* fix: fix go.mod and go.sum
Signed-off-by: May Zhang <may_zhang@intuit.com>
* fix: clean up code
Signed-off-by: May Zhang <may_zhang@intuit.com>
* fix: rename RepoCreds to HelmRepoCreds
Signed-off-by: May Zhang <may_zhang@intuit.com>
* fix: Added type for repoCreds.
Signed-off-by: May Zhang <may_zhang@intuit.com>
* fix: checking in install.yaml
Signed-off-by: May Zhang <may_zhang@intuit.com>
* fix: checking in install.yaml
Signed-off-by: May Zhang <may_zhang@intuit.com>
* fix: checking in install.yaml
Signed-off-by: May Zhang <may_zhang@intuit.com>
* fix: Makefile
Signed-off-by: May Zhang <may_zhang@intuit.com>
Co-authored-by: Shubham Agarwal <shubhamagarawal19@gmail.com>
This commit adds a flag --plugin-env to the app unset command, using which the plugin env varibles can be removed if present.
Example
argocd app unset example --plugin-env key1 --plugin-env key2
Fixes: #5681
Signed-off-by: Chetan Banavikalmutt <chetanrns1997@gmail.com>
* feat: support background propagation policy
Currently, Argo CD only supports foreground propagation policy ie. delete all the resources in the foreground and then delete the application in the end. This PR introduces a new flag `propagation-policy` to decide the type of policy when cascading is enabled. It also adds an annotation `propagation-policy.argocd.argoproj.io`, which is used by the application controller to decide the order of deletion.
Fixes: #5216
Signed-off-by: Chetan Banavikalmutt <chetanrns1997@gmail.com>
* fix lint and doc errors
Signed-off-by: Chetan Banavikalmutt <chetanrns1997@gmail.com>
* update logs to display the application name
Signed-off-by: Chetan Banavikalmutt <chetanrns1997@gmail.com>
* address review comments
* remove application name from logs since it's already present
* update the propagation policy annotation key
Signed-off-by: Chetan Banavikalmutt <chetanrns1997@gmail.com>
* Add radio buttons in the UI to select propagation policy
Signed-off-by: Chetan Banavikalmutt <chetanrns1997@gmail.com>
* inject finalizers instead of annotations for specifying propagation policy
Signed-off-by: Chetan Banavikalmutt <chetanrns1997@gmail.com>
* rebase branch on master
Signed-off-by: Chetan Banavikalmutt <chetanrns1997@gmail.com>
* update the controller to set the policy only for application's resources
Signed-off-by: Chetan Banavikalmutt <chetanrns1997@gmail.com>
* fix the label of policy radio button
Signed-off-by: Chetan Banavikalmutt <chetanrns1997@gmail.com>
* fix: Empty resource whitelist allowed all resources
This requires setting the default in quite a few
places around the code base as well as adapting
a couple of tests
Signed-off-by: Jan Graefen <223234+jangraefen@users.noreply.github.com>
* Improve default behavior and not require explicitly set whitelist
Signed-off-by: Jan Graefen <223234+jangraefen@users.noreply.github.com>
* fix: controller should load application related nodes from target cluster
Signed-off-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>
* fix: make sure node capasity and pod requests are in same unit, improve unit formatting
Signed-off-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>
* fix: application hosts should include info about resources requested by app neighbors
Signed-off-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>
* apply reviewer notes
Signed-off-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>
This commit adds support for configurable Helm version either via
declarative syntax or via argocd cli.
New helm option 'Version' added to the ApplicationSourceHelm
struct which can be either 'v2' or 'v3'.
Argocd app create accepts '--helm-version' that also looks for the
same Helm versions as above.
* chore: add more tests to permitted sources (#3759)
* fix: support ** wildcard in repo sources
* keep backward compitability
* fix: typo
* use separator only in source