diff --git a/.github/workflows/release-start.yml b/.github/workflows/release-start.yml index f8b20f46bed..1fca6cd5e8b 100644 --- a/.github/workflows/release-start.yml +++ b/.github/workflows/release-start.yml @@ -37,6 +37,9 @@ jobs: - name: Install packages run: npm ci + # ############################################################ + # SETUP RELEASE_VERSION and RELEASE_BRANCH + - name: App version (stable, patch latest stable) if: github.event.inputs.channel == 'stable' && !github.event.inputs.version run: npm --workspaces version patch @@ -59,6 +62,8 @@ jobs: if: github.event.inputs.channel != 'stable' && !github.event.inputs.version run: npm --workspaces version --preid "${{ github.event.inputs.channel }}" prerelease + # ############################################################ + - name: Get version shell: bash run: | @@ -87,22 +92,31 @@ jobs: with: username: ${{ (github.event_name == 'workflow_dispatch' && github.actor) || 'insomnia-infra' }} - - name: (Re-run) App version (stable, no version doing patch) + # ############################################################ + # re-run the versioning steps to apply to the new branch + + - name: (Re-run) App version (stable, patch latest stable) if: github.event.inputs.channel == 'stable' && !github.event.inputs.version run: npm --workspaces version patch - - name: (Re-run) App version (stable) + - name: (Re-run) App version (stable, with a specific version) if: github.event.inputs.channel == 'stable' && github.event.inputs.version run: npm --workspaces version "${{ github.event.inputs.version }}" - # required for 8.0.0 beta - - name: (Re-run) App version (initial alpha/beta where we specify a new general version) - if: github.event.inputs.channel != 'stable' && github.event.inputs.version + # handle new "major" beta releases, e.g. 10.0, 11.0, 12.0 ... + - name: (Re-run) App version (alpha/beta, with new general version) + if: github.event.inputs.channel != 'stable' && github.event.inputs.version && !contains(github.event.inputs.version, "-${{ github.event.inputs.channel }}") run: npm --workspaces version "${{ github.event.inputs.version }}-${{ github.event.inputs.channel }}.0" - - name: (Re-run) App version (alpha/beta) + # handle botched alpha/beta releases, e.g. for iterations that were merged before running release-publish + - name: (Re-run) App version (alpha/beta, with a specific version) + if: github.event.inputs.channel != 'stable' && github.event.inputs.version && contains(github.event.inputs.version, "-${{ github.event.inputs.channel }}") + run: npm --workspaces version "${{ github.event.inputs.version }}" + + - name: (Re-run) App version (alpha/beta, patch latest) if: github.event.inputs.channel != 'stable' && !github.event.inputs.version run: npm --workspaces version --preid "${{ github.event.inputs.channel }}" prerelease + # ############################################################ - name: Git Commit run: git commit -am "Bump app version to ${{ env.RELEASE_VERSION }}"