diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index 9ec61ee..4dd3af6 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -15,6 +15,10 @@ permissions: pages: write id-token: write +concurrency: + group: chart-release + cancel-in-progress: false + jobs: lint: runs-on: ubuntu-latest @@ -111,6 +115,7 @@ jobs: uses: helm/chart-releaser-action@v1.6.0 with: charts_dir: charts + skip_existing: true env: CR_TOKEN: "${{ secrets.GITHUB_TOKEN }}" diff --git a/.github/workflows/update-appversion.yaml b/.github/workflows/update-appversion.yaml index 001fa8f..08f4cd5 100644 --- a/.github/workflows/update-appversion.yaml +++ b/.github/workflows/update-appversion.yaml @@ -8,6 +8,10 @@ permissions: contents: write actions: write +concurrency: + group: chart-version-bump + cancel-in-progress: false + jobs: update: runs-on: ubuntu-latest @@ -52,10 +56,12 @@ jobs: run: | git add charts/logtide/Chart.yaml git commit -m "bump to logtide v${{ github.event.client_payload.version }}" - git push origin main - - - name: Trigger release workflow - if: steps.bump.outputs.changed == 'true' - run: gh workflow run release.yaml --ref main - env: - GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + for attempt in 1 2 3; do + if git push origin main; then + exit 0 + fi + echo "push rejected, rebasing on origin/main (attempt $attempt)" + git pull --rebase origin main + done + echo "failed to push after retries" + exit 1