From 83e3cc5b07bde68474e801ff3a98ccba55cd7e18 Mon Sep 17 00:00:00 2001 From: Hayden Spitzley Date: Wed, 5 Mar 2025 09:47:45 -0700 Subject: [PATCH] document how to test unpublished charts --- README.md | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index d5b0873..2aa7888 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,27 @@ -### Run tests locally +# Argo Helm Charts + +This repository contains Helm charts that we use in ArgoCD / Argus. + +The `stack` chart is the standard chart for used when deploying an Argus application. + +### Running tests locally + 1. `helm plugin install https://github.com/helm-unittest/helm-unittest.git` 2. from the root: run `helm unittest stack` 3. run `helm unittest -u stack --debugPlugin` to see the templates generated by the unit tests + +### Testing an un-published chart in Argus + +You can test a chart that has not been published. + +Suppose you want to test some local changes of the stack helm chart in the `argus-example-app`. To do so you would: + +1. Clone the `argus-example-app` repository +1. Change the `.infra/rdev/Chart.yaml` in the `argus-example-app` to point to the local directory + - set the `repository` of the `stack` chart dependency to `file://` +1. Run `helm dependency update` from a terminal in the `argus-example-app` repository +1. Create a new branch then commit and push the changes to the `argus-example-app` repository + - This should include your changes to `.infra/rdev/Chart.yaml`, the newly created `.infra/rdev/Chart.lock`, and the `.infra/rdev/charts/stack-.tgz` file +1. Create a PR in the `argus-example-app` repository and create a stack in Argus using the `stack` label on the PR + +NOTE: Do not merge `.infra/rdev/Chart.lock` or `.infra/rdev/charts/stack-.tgz` into the main branch. These files should only be used for testing purposes.