bump_version.yml

 1# Generated from xtask::workflows::extensions::bump_version within the Zed repository.
 2# Rebuild with `cargo xtask workflows`.
 3name: extensions::bump_version
 4on:
 5  pull_request:
 6    types:
 7    - labeled
 8  push:
 9    branches:
10    - main
11    paths-ignore:
12    - .github/**
13  workflow_dispatch: {}
14jobs:
15  determine_bump_type:
16    runs-on: namespace-profile-16x32-ubuntu-2204
17    steps:
18    - id: get-bump-type
19      name: extensions::bump_version::get_bump_type
20      run: |
21        if [ "$HAS_MAJOR_LABEL" = "true" ]; then
22            bump_type="major"
23        elif [ "$HAS_MINOR_LABEL" = "true" ]; then
24            bump_type="minor"
25        else
26            bump_type="patch"
27        fi
28        echo "bump_type=$bump_type" >> $GITHUB_OUTPUT
29      shell: bash -euxo pipefail {0}
30      env:
31        HAS_MAJOR_LABEL: |-
32          ${{ (github.event.action == 'labeled' && github.event.label.name == 'major') ||
33          (github.event.action == 'synchronize' && contains(github.event.pull_request.labels.*.name, 'major')) }}
34        HAS_MINOR_LABEL: |-
35          ${{ (github.event.action == 'labeled' && github.event.label.name == 'minor') ||
36          (github.event.action == 'synchronize' && contains(github.event.pull_request.labels.*.name, 'minor')) }}
37    outputs:
38      bump_type: ${{ steps.get-bump-type.outputs.bump_type }}
39  call_bump_version:
40    needs:
41    - determine_bump_type
42    if: github.event.action != 'labeled' || needs.determine_bump_type.outputs.bump_type != 'patch'
43    uses: zed-industries/zed/.github/workflows/extension_bump.yml@main
44    secrets:
45      app-id: ${{ secrets.ZED_ZIPPY_APP_ID }}
46      app-secret: ${{ secrets.ZED_ZIPPY_APP_PRIVATE_KEY }}
47    with:
48      bump-type: ${{ needs.determine_bump_type.outputs.bump_type }}
49      force-bump: true
50concurrency:
51  group: ${{ github.workflow }}-${{ github.ref_name }}-${{ github.ref_name == 'main' && github.sha || 'anysha' }}labels
52  cancel-in-progress: true