This repository holds Helm charts designed to install open-source GATE applications in a Kubernetes cluster. The charts in this repository are deployed to the GATE Helm repository and can be installed using standard Helm commands. To register the GATE repository with your Helm client run:
helm repo add gate https://repo.gate.ac.uk/repository/charts
helm repo update
With the repository registered, you can then install any chart using the normal
helm upgrade --install {release-name} gate/{chart-name} --values {override-values.yaml} --namespace {namespace}
The basic command above will install the latest available version of the selected chart, or you can specify a specific version or series using the --version option. Helm chart version numbers are required to follow semantic versioning rules so the version number of the chart will generally be different from the version number of the application that the chart installs. See the README file in the relevant chart directory in this repository for details of exactly which app version is installed by which chart version. Semver rules require that the major version number of the chart must change with any backwards-incompatible change to the chart templates, even if the new templates are still installing the same version of the underlying software.
The charts in this repository are licensed under the Apache Licence version 2.0, however the software that they install may be under one or more different and more restrictive licences. For example the gate-teamware chart installs GATE Teamware, which is released under the AGPL, and PostgreSQL, which is released under its own BSD-like licence. It is your responsibility to ensure that your use of any of these charts complies with all applicable licences.
All updates to charts in this repository must be done via pull requests. To modify a chart make a new branch off the current main, push your changes to that branch, and start a pull request. The following automatic checks are performed on each pull request, and must all pass before the PR is merged:
- if the PR makes any changes within a given chart directory, then the PR must update the
versionnumber of that chart in the relevantChart.yaml. PRs that change a chart but do not bump its version number will be rejected. - if the chart declares any
dependenciesin itsChart.yamlthen the correspondingChart.lockmust exist - you can create this usinghelm dependency update - all dependencies in the
Chart.lockmust resolve - if a dependency has been removed from its remote repository you will have to editChart.yamlif necessary and runhelm dependency updateto re-generate the lock file
When the PR is merged to main all modified charts will be automatically deployed to https://repo.gate.ac.uk/repository/charts