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        owner: zed-industries
25        repositories: extensions
26    - name: steps::checkout_repo
27      uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
28      with:
29        clean: false
30    - id: get-extension-id
31      name: extension_release::get_extension_id
32      run: |
33        EXTENSION_ID="$(sed -n 's/id = \"\(.*\)\"/\1/p' < extension.toml)"
34
35        echo "extension_id=${EXTENSION_ID}" >> "$GITHUB_OUTPUT"
36      shell: bash -euxo pipefail {0}
37    - name: extension_release::release_action
38      uses: huacnlee/zed-extension-action@v2
39      with:
40        extension-name: ${{ steps.get-extension-id.outputs.extension_id }}
41        push-to: zed-industries/extensions
42      env:
43        COMMITTER_TOKEN: ${{ steps.generate-token.outputs.token }}