Write a Helm chart for an application#
Argo CD manages applications in the Rubin Science Platform through a set of Helm charts.
Which Helm charts to deploy in a given environment is controlled by the values.yaml
and values-environment.yaml
files in /environments.
The applications directory defines templates in its templates
directory and values to resolve those templates in values.yaml
and values-environment.yaml
files to customize the application for each environment.
For first-party charts, the templates
directory is generally richly populated.
Phalanx extends Helm charts with additional files, annotations, and injected values. Even if you are already familiar with writing Helm charts, there are some Phalanx-specific details.
See also
These pages focus on writing your own Helm chart. If you are deploying a third-party application that already has a Helm chart, see Adding an external Helm chart.
In some cases where there is a lot of internal duplication between multiple Phalanx applications, those applications should share a subchart that encapsulates that duplication. See Sharing subcharts between applications if you think that may be the case for your application.
Examples#
Existing Helm charts that are good examples to read or copy are:
mobu (fairly simple)
hips (simple but with workload identity)
gafaelfawr (complex, including CRDs, multiple pods, and Cloud SQL)