Closed syphernl closed 1 year ago
Hi @syphernl, Thank you for reporting!
IMO, I think we can introduce GitHub's official feature in order to reduce tool dependencies. 🤔 *But I'm not familiar with this feature nor semantic-release..
WDYT? @mkilchhofer @jmeridth
I've already looked into this @yu-croco and I'm not sure this would help as the release notes are part of Chart.yaml in specific format for ArtifactHub. For this reason I've already added link in a README to changelog
Thank you for checking @pdrastil, that was helpful!
Hi @syphernl, please let me know if @pdrastil's comment helped. 🙋
IMO, I think we can introduce GitHub's official feature in order to reduce tool dependencies. thinking *But I'm not familiar with this feature nor semantic-release..
Ah, that seems to be easier/more practical to implement when there is native support for that. As we're using GitLab ourselves we need to resort to using tools like semantic-release to generate the changelogs.
It appears somebody figured out how to add release notes to helm/chart-releaser-action
, which is also being used in this repo.
I've already looked into this @yu-croco and I'm not sure this would help as the release notes are part of Chart.yaml in specific format for ArtifactHub. For this reason I've already added link in a README to changelog
Unfortunately Renovate doesn't seem to support ArtifactHub changelogs. There is an open feature request for that so perhaps it could be possible somewhere in the future.
If it is not feasible / desirable to implement release notes on the argo-helm GitHub releases as well, would it be possible to include a link to the changelog instead?
Something like:
A Helm chart for Argo CD, a declarative, GitOps continuous delivery tool for Kubernetes.
[View changelog of argo-cd 5.16.9](https://artifacthub.io/packages/helm/argo/argo-cd?modal=changelog&version=5.16.9)
While not as practical as having a list of changes visible directly, this should make it a little easier.
I've implemented something like this for my own chart repository: https://github.com/chgl/charts. The initial PR is https://github.com/chgl/charts/pull/149/files. This takes the artifacthub annotations and turns them into a markdown changelog using gotemplate + yq. I've since moved the scripts and templates to https://github.com/chgl/kube-powertools/blob/master/scripts/generate-chart-changelog.sh and https://github.com/chgl/kube-powertools/blob/master/opt/CHART-CHANGELOG.md.gotmpl respecitvely. Here's an exmaple
It uses chart-releaser's release-notes-file
option to set the GitHub release notes and works with renovate's changelog detection.
Here's a sample release: https://github.com/chgl/charts/releases/tag/ohdsi-0.20.1 with the corresponding chart annotations here: https://github.com/chgl/charts/blob/ohdsi-0.20.1/charts/ohdsi/Chart.yaml#L40
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.
Not stale. This is still relevant.
@chgl feature works fine! I use it on my charts repository. The use of Artifact Hub annotations is also a very good idea
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.
Still relevant.
It would be very helpful if this gets implemented because the changelogs provided by tools like Renovate are empty.
Is your feature request related to a problem?
We use Renovate to update dependencies. Every time the argo-cd helm chart gets an update (which is pretty frequently) all the changelog shows is:
This information is obtained from the releases, such as this one for argo-cd-5.16.9.
This requires us to manually check all changes between the releases, which is time-consuming and one of the reasons we use Renovate to consolidate this information into one place.
Related helm chart
argo-cd, argo-events, argo-rollouts, argo-workflows, argocd-image-updater, argocd-apps
Describe the solution you'd like
Perhaps something like semantic-release can be used to parse the commits and let it generate a changelog to associate with the release.
Describe alternatives you've considered
No response
Additional context
No response