publish_extension_cli.yml

 1name: Publish zed-extension CLI
 2
 3on:
 4  push:
 5    tags:
 6      - extension-cli
 7
 8env:
 9  CARGO_TERM_COLOR: always
10  CARGO_INCREMENTAL: 0
11
12jobs:
13  publish:
14    name: Publish zed-extension CLI
15    runs-on:
16      - ubuntu-latest
17    steps:
18      - name: Checkout repo
19        uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4
20        with:
21          clean: false
22
23      - name: Cache dependencies
24        uses: swatinem/rust-cache@f0deed1e0edfc6a9be95417288c0e1099b1eeec3 # v2
25        with:
26          save-if: ${{ github.ref == 'refs/heads/main' }}
27          cache-provider: "github"
28
29      - name: Configure linux
30        shell: bash -euxo pipefail {0}
31        run: script/linux
32
33      - name: Build extension CLI
34        run: cargo build --release --package extension_cli
35
36      - name: Upload binary
37        env:
38          DIGITALOCEAN_SPACES_ACCESS_KEY: ${{ secrets.DIGITALOCEAN_SPACES_ACCESS_KEY }}
39          DIGITALOCEAN_SPACES_SECRET_KEY: ${{ secrets.DIGITALOCEAN_SPACES_SECRET_KEY }}
40        run: script/upload-extension-cli ${{ github.sha }}