Bug description

Helm chart app version regularly lags release version and need a bug report every time to manually update, please automate and fix.

helm/superset/Chart.yaml line 18: appVersion: "4.0.1"

How to reproduce the bug

look in the source for the helm chart

Screenshots/recordings

No response

Superset version

master / latest-dev

Python version

3.9

Node version

16

Browser

Chrome

Additional context

No response

Checklist

  • [X] I have searched Superset docs and Slack and didn't find a solution to my problem.
  • [X] I have searched the GitHub issue tracker and didn't find a similar bug report.
  • [X] I have checked Superset's logs for errors and if I found a relevant Python stacktrace, I included it here as text in the "additional context" section.

Comment From: dosubot[bot]

Hello @obsidian-automation! I'm here to assist you with any bugs, questions, or contributions. Let me know how I can help you today!

To automate the process of updating the Helm chart app version to match the release version, you can add a step in your GitHub Actions workflow to update the Chart.yaml file with the new version before running the chart-releaser action. Here is how you can modify your existing workflow:

name: Release Charts

on:
  push:
    branches:
      - "master"
      - "[0-9].[0-9]*"
    paths:
      - "helm/**"

jobs:
  release:
    runs-on: ubuntu-latest
    permissions:
      contents: write

    steps:
      - name: "Checkout ${{ github.ref }} ( ${{ github.sha }} )"
        uses: actions/checkout@v4
        with:
          persist-credentials: false
          submodules: recursive
          fetch-depth: 0

      - name: Configure Git
        run: |
          git config user.name "$GITHUB_ACTOR"
          git config user.email "$GITHUB_ACTOR@users.noreply.github.com"

      - name: Install Helm
        uses: azure/setup-helm@v4
        with:
          version: v3.5.4

      - name: Add bitnami repo dependency
        run: helm repo add bitnami https://charts.bitnami.com/bitnami

      - name: Update Chart Version
        run: |
          VERSION=$(git describe --tags --abbrev=0)
          sed -i "s/^version:.*/version: ${VERSION}/" helm/Chart.yaml
          sed -i "s/^appVersion:.*/appVersion: ${VERSION}/" helm/Chart.yaml
          git add helm/Chart.yaml
          git commit -m "Update Helm chart version to ${VERSION}"
          git push origin ${{ github.ref }}

      - name: Run chart-releaser
        uses: helm/chart-releaser-action@v1.6.0
        with:
          charts_dir: helm
          mark_as_latest: false
        env:
          CR_TOKEN: "${{ github.token }}"
          CR_RELEASE_NAME_TEMPLATE: "superset-helm-chart-{{ .Version }}"

This added step (Update Chart Version) will:

  1. Get the latest tag version from the Git repository.
  2. Update both the version and appVersion fields in the helm/Chart.yaml file to match the latest tag version.
  3. Commit and push the changes back to the repository.

This ensures that the Helm chart version and app version are always in sync with the release version, thus avoiding manual updates and potential bug reports [1][2].

To continue talking to Dosu, mention @dosu.

Comment From: rusackas

I'm not sure if this is still the case. Can anyone verify?

Comment From: rusackas

Closing as inactive, but also not a "bug" per se. The Helm releases are a volunteer/courtesy release, and are not yet official. I know @villebro was working on a Kubernetes Operator, but I'm not sure the state of that work. If you want to get involved in releasing charts, I would connect with him on Superset Slack