diff --git a/.github/workflows/chart.yml b/.github/workflows/chart.yml index b2ca8e60..cbdb9796 100644 --- a/.github/workflows/chart.yml +++ b/.github/workflows/chart.yml @@ -12,6 +12,7 @@ jobs: runs-on: ubuntu-latest permissions: contents: write + packages: write steps: - name: Checkout uses: actions/checkout@v4 @@ -26,11 +27,31 @@ jobs: - name: Install Helm uses: azure/setup-helm@v4 with: - version: v3.10.0 + version: v3.18.2 - name: Run chart-releaser uses: helm/chart-releaser-action@v1.7.0 + id: cr with: charts_dir: charts env: CR_TOKEN: "${{ secrets.GITHUB_TOKEN }}" + CR_SKIP_EXISTING: "true" + + - if: ${{ steps.cr.outputs.changed_charts }} + name: Login to GitHub Container Registry + uses: docker/login-action@v3 + with: + registry: ghcr.io + username: ${{ github.actor }} + password: ${{ secrets.GITHUB_TOKEN }} + + - if: ${{ steps.cr.outputs.changed_charts }} + name: Push Charts to GHCR + run: | + for pkg in .cr-release-packages/*; do + if [ -z "${pkg:-}" ]; then + break + fi + helm push "${pkg}" oci://ghcr.io/${{ github.repository }}/charts + done