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    if: github.repository_owner == 'zed-industries'
16    runs-on:
17      - ubuntu-latest
18    steps:
19      - name: Checkout repo
20        uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4
21        with:
22          clean: false
23
24      - name: Cache dependencies
25        uses: swatinem/rust-cache@9d47c6ad4b02e050fd481d890b2ea34778fd09d6 # v2
26        with:
27          save-if: ${{ github.ref == 'refs/heads/main' }}
28          cache-provider: "github"
29
30      - name: Configure linux
31        shell: bash -euxo pipefail {0}
32        run: script/linux
33
34      - name: Build extension CLI
35        run: cargo build --release --package extension_cli
36
37      - name: Upload binary
38        env:
39          DIGITALOCEAN_SPACES_ACCESS_KEY: ${{ secrets.DIGITALOCEAN_SPACES_ACCESS_KEY }}
40          DIGITALOCEAN_SPACES_SECRET_KEY: ${{ secrets.DIGITALOCEAN_SPACES_SECRET_KEY }}
41        run: script/upload-extension-cli ${{ github.sha }}