helm / helm/chart-releaser-action

Cannot recover from failure scenario where the release was published in GH but index.yaml isn't updated

Open
#92 3 comments 1 reaction 0 assignees View on GitHub
Dominant language
Shell
Stars
668
Forks
222
PR merge metrics
No merged PRs in 30d

Description

If for some reason the process of releasing a chart ends up in failure, changes might not be detected when rerunning the release action.

**Scenario used to reproduce the problem**: protected `gh-pages` branch

1. Protect your `gh-pages` branch to only allow code to be merged from PRs with reviews.
2. Push a chart update.
3. The Github Release with the archive files will be published.
4. The release action will fail on the push to `gh-pages` due to the protection configuration.
5. Remove branch protection from `gh-pages`.
6. Rerun the release action.

**Outcome**: it won't detect changes due to the presence of the the release and tag for the chart.

**Workaround**: manually delete the Github release and tag, then rerun the release action.

**Expected outcome**: the action detects that even though the Github release and tags are present, but my `index.yaml` file still needs to be updated. So it proceeds to update it and push the commit to `gh-pages`.

This currently happens with the latest release of this chart and chart-releaser (both on 1.2.1).

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by tracing the release action and its interaction with chart-releaser when a GitHub Release and tag already exist but index.yaml was not updated. Reproduce the protected gh-pages scenario, then rerun after removing protection. Done means the rerun detects the missing index.yaml update and pushes the required commit without deleting the release or tag.

Written by the indexing model from the issue text.

Assessment

Tech stack
github-actions, helm, shell
Domain
ci-cd, devops, release
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.