diff --git a/.github/workflows/lint-test.yaml b/.github/workflows/lint-test.yaml index 7695c190..81244816 100644 --- a/.github/workflows/lint-test.yaml +++ b/.github/workflows/lint-test.yaml @@ -35,6 +35,8 @@ jobs: - name: Set up chart-testing uses: helm/chart-testing-action@0d28d3144d3a25ea2cc349d6e59901c4ff469b3b # v2.7.0 + with: + yamale_version: "6.0.0" - name: Run chart-testing (list-changed) id: list-changed diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index c23692de..f299ecd1 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -13,7 +13,9 @@ jobs: release: runs-on: ubuntu-latest permissions: - contents: write + contents: write # to push chart release and create a release (helm/chart-releaser-action) + packages: write # needed for ghcr access + id-token: write # needed for keyless signing steps: - name: Checkout uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5 @@ -37,3 +39,16 @@ jobs: CR_TOKEN: "${{ secrets.GITHUB_TOKEN }}" CR_SKIP_EXISTING: true CR_GENERATE_RELEASE_NOTES: true + + # see https://github.com/helm/chart-releaser/issues/183 + - name: Login to GitHub Container Registry + uses: docker/login-action@5e57cd118135c172c3672efd75eb46360885c0ef # v3.6.0 + with: + registry: ghcr.io + username: ${{ github.actor }} + password: ${{ secrets.GITHUB_TOKEN }} + + - name: Push chart to GHCR + run: | + helm package charts/atlantis + helm push atlantis-*.tgz oci://ghcr.io/${GITHUB_REPOSITORY_OWNER}/charts diff --git a/README.md b/README.md index 3aea62b7..1dc3c204 100644 --- a/README.md +++ b/README.md @@ -21,6 +21,8 @@ helm repo add runatlantis https://runatlantis.github.io/helm-charts You can then run `helm search repo runatlantis` to see the charts. +OCI artifacts of all Atlantis Helm charts are available in [ghcr.io](https://github.com/orgs/runatlantis/packages?repo_name=charts). + ## Commands Run `make help` to check available commands. diff --git a/charts/atlantis/Chart.yaml b/charts/atlantis/Chart.yaml index d23b862b..0c2e0065 100644 --- a/charts/atlantis/Chart.yaml +++ b/charts/atlantis/Chart.yaml @@ -3,7 +3,7 @@ apiVersion: v1 appVersion: v0.36.0 description: A Helm chart for Atlantis https://www.runatlantis.io name: atlantis -version: 5.20.1 +version: 5.20.2 keywords: - terraform home: https://www.runatlantis.io diff --git a/charts/atlantis/README.md b/charts/atlantis/README.md index 675664b7..cfd9954e 100644 --- a/charts/atlantis/README.md +++ b/charts/atlantis/README.md @@ -17,6 +17,8 @@ - [Introduction](#introduction) - [Prerequisites](#prerequisites) +- [Usage](#usage) + - [Install Helm Chart](#install-helm-chart) - [Required Configuration](#required-configuration) - [Additional manifests](#additional-manifests) - [Values](#values) @@ -37,6 +39,21 @@ This chart creates a single pod in a StatefulSet running Atlantis. Atlantis pers - Kubernetes 1.9+ - PersistentVolume support +## Usage + +The chart is distributed as an [OCI Artifact](https://helm.sh/docs/topics/registries/) as well as via a traditional [Helm Repository](https://helm.sh/docs/topics/chart_repository/). + +- OCI Artifact: `oci://ghcr.io/runatlantis/charts/atlantis` +- Helm Repository: `https://runatlantis.github.io/helm-charts` with chart `atlantis` + +The installation instructions use the OCI registry. Refer to the [`helm repo`](https://helm.sh/docs/helm/helm_repo/) command documentation for information on installing charts via the traditional repository. + +### Install Helm Chart + +```console +helm install [RELEASE_NAME] oci://ghcr.io/runatlantis/charts/atlantis +``` + ## Required Configuration In order for Atlantis to start and run successfully: @@ -386,8 +403,7 @@ To perform a smoke test of the deployment (i.e. ensure that the Atlantis UI is u 1. Install the chart. Supply your own values file or use `test-values.yaml`, which has a minimal set of values required in order for Atlantis to start. ```bash - helm repo add runatlantis https://runatlantis.github.io/helm-charts - helm install -f test-values.yaml my-atlantis runatlantis/atlantis --debug + helm install -f test-values.yaml my-atlantis oci://ghcr.io/runatlantis/charts/atlantis --debug ``` 1. Run the tests: diff --git a/charts/atlantis/README.md.gotmpl b/charts/atlantis/README.md.gotmpl index 9ee5cc4f..664a22c7 100644 --- a/charts/atlantis/README.md.gotmpl +++ b/charts/atlantis/README.md.gotmpl @@ -10,6 +10,8 @@ - [Introduction](#introduction) - [Prerequisites](#prerequisites) +- [Usage](#usage) + - [Install Helm Chart](#install-helm-chart) - [Required Configuration](#required-configuration) - [Additional manifests](#additional-manifests) - [Values](#values) @@ -30,6 +32,21 @@ This chart creates a single pod in a StatefulSet running Atlantis. Atlantis pers - Kubernetes 1.9+ - PersistentVolume support +## Usage + +The chart is distributed as an [OCI Artifact](https://helm.sh/docs/topics/registries/) as well as via a traditional [Helm Repository](https://helm.sh/docs/topics/chart_repository/). + +- OCI Artifact: `oci://ghcr.io/runatlantis/charts/atlantis` +- Helm Repository: `https://runatlantis.github.io/helm-charts` with chart `atlantis` + +The installation instructions use the OCI registry. Refer to the [`helm repo`](https://helm.sh/docs/helm/helm_repo/) command documentation for information on installing charts via the traditional repository. + +### Install Helm Chart + +```console +helm install [RELEASE_NAME] oci://ghcr.io/runatlantis/charts/atlantis +``` + ## Required Configuration In order for Atlantis to start and run successfully: @@ -208,8 +225,7 @@ To perform a smoke test of the deployment (i.e. ensure that the Atlantis UI is u 1. Install the chart. Supply your own values file or use `test-values.yaml`, which has a minimal set of values required in order for Atlantis to start. ```bash - helm repo add runatlantis https://runatlantis.github.io/helm-charts - helm install -f test-values.yaml my-atlantis runatlantis/atlantis --debug + helm install -f test-values.yaml my-atlantis oci://ghcr.io/runatlantis/charts/atlantis --debug ``` 1. Run the tests: