extension_release.yml

 1# Generated from xtask::workflows::extension_release
 2# Rebuild with `cargo xtask workflows`.
 3name: extension_release
 4on:
 5  workflow_call:
 6    secrets:
 7      app-id:
 8        description: The app ID used to create the PR
 9        required: true
10      app-secret:
11        description: The app secret for the corresponding app ID
12        required: true
13jobs:
14  create_release:
15    if: (github.repository_owner == 'zed-industries' || github.repository_owner == 'zed-extensions')
16    runs-on: namespace-profile-8x16-ubuntu-2204
17    steps:
18    - id: generate-token
19      name: extension_bump::generate_token
20      uses: actions/create-github-app-token@v2
21      with:
22        app-id: ${{ secrets.app-id }}
23        private-key: ${{ secrets.app-secret }}
24    - name: steps::checkout_repo
25      uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
26      with:
27        clean: false
28    - id: get-extension-id
29      name: extension_release::get_extension_id
30      run: |
31        EXTENSION_ID="$(sed -n 's/id = \"\(.*\)\"/\1/p' < extension.toml)"
32
33        echo "extension_id=${EXTENSION_ID}" >> "$GITHUB_OUTPUT"
34      shell: bash -euxo pipefail {0}
35    - name: extension_release::release_action
36      uses: huacnlee/zed-extension-action@v2
37      with:
38        extension-name: ${{ steps.get-extension-id.outputs.extension_id }}
39        push-to: zed-industries/extensions
40      env:
41        COMMITTER_TOKEN: ${{ steps.generate-token.outputs.token }}