chart-releaser icon indicating copy to clipboard operation
chart-releaser copied to clipboard

Use CHANGELOG to populate release notes

Open stevehipwell opened this issue 2 years ago • 5 comments

Support setting the release notes from a CHANGELOG.md file following the Keep a Changelog format. My suggestion would be to add a --release-notes-source flag to allow the current behaviour to be modified.

stevehipwell avatar Jan 06 '23 10:01 stevehipwell

It would be nice also if the changelog could be read from 'artifacthub.io/changes' annotations, such that to use a single place to release notes for GitHub and Artifact hub

tuxerrante avatar Jan 13 '23 10:01 tuxerrante

@tuxerrante I'd suggest it'd be better if the annotations could be populated either from the commits (current functionality) or CHANGELOG.md (requested functionality). I currently do this manually as I need to strip out the markdown formatting.

stevehipwell avatar Jan 13 '23 10:01 stevehipwell

For me generate-release-notes: true and make-release-latest: false didn't work. I still get 'latest production-ready' releases and no extra info. I'm using a ct.yaml like this

remote: origin
target-branch: main
chart-dirs:
  - charts
chart-repos:
  - kapparmor=https://tuxerrante.github.io/kapparmor/
helm-extra-args: --timeout 600s
generate-release-notes: true
make-release-latest: false

And a job like this (still work in progress)

  release-chart:
    needs: ['build-app']
    if: github.ref_name == 'main' || github.event_name == 'pull_request' || startsWith(github.event.ref, 'refs/tags/v')
    permissions:
      contents: write
    runs-on: ubuntu-latest
    steps:
      - name: Checkout
        uses: actions/checkout@v3
        with:
          fetch-depth: 0

      - name: Configure Git
        run: |
          git config user.name "$GITHUB_ACTOR"
          git config user.email "[email protected]"

      - name: Install Helm
        uses: azure/setup-helm@v3

      - uses: actions/setup-python@v4
        with:
          python-version: '3.9'
          check-latest: true

      - name: Set up chart-testing
        uses: helm/[email protected]

      - name: Run chart-testing (list-changed)
        id: list-changed
        run: |
          changed=$(ct list-changed --target-branch ${{ github.event.repository.default_branch }})
          if [[ -n "$changed" ]]; then
            echo "::set-output name=changed::true"
          fi

      - name: Run chart-testing (lint)
        run: ct lint --target-branch ${{ github.event.repository.default_branch }}

      - name: Create kind cluster
        uses: helm/[email protected]
        if: steps.list-changed.outputs.changed == 'true'

      - name: Run chart-testing (install)
        run: ct install --print-config --target-branch ${{ github.event.repository.default_branch }}

      - name: Run chart-releaser
        uses: helm/[email protected]
        env:
          CR_TOKEN: "${{ env.GITHUB_TOKEN }}"

tuxerrante avatar Jan 13 '23 13:01 tuxerrante

any news on this feature ?

nlamirault avatar Apr 05 '23 13:04 nlamirault

Hello, also interested in.

Pyrrha avatar Jan 03 '24 12:01 Pyrrha