Skip to content

Commit 1d22b8f

Browse files
committed
fix: use Rust toolchain + cached tree-sitter in publish workflow
Replace Nix with direct Rust toolchain setup and cached tree-sitter CLI to avoid the ~5min Nix overhead. Uses Swatinem/rust-cache for fast subsequent runs.
1 parent 9dab4aa commit 1d22b8f

1 file changed

Lines changed: 16 additions & 5 deletions

File tree

.github/workflows/publish.yml

Lines changed: 16 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -103,11 +103,21 @@ jobs:
103103
- name: Install dependencies
104104
run: bun install
105105

106-
- name: Install Nix
107-
uses: DeterminateSystems/nix-installer-action@main
106+
- name: Install Rust toolchain
107+
uses: actions-rust-lang/setup-rust-toolchain@v1
108108

109-
- name: Setup Magic Nix Cache
110-
uses: DeterminateSystems/magic-nix-cache-action@main
109+
- uses: Swatinem/rust-cache@v2
110+
111+
- uses: actions/cache@v5
112+
with:
113+
path: |
114+
~/.cargo/bin/tree-sitter
115+
target/**/build/pgls_treesitter_grammar-*/out/generated
116+
key: ${{ runner.os }}-tree-sitter-${{ hashFiles('.tree-sitter-cli-version', 'crates/pgls_treesitter_grammar/grammar.js', 'crates/pgls_treesitter_grammar/tree-sitter.json', 'rust-toolchain.toml', 'Cargo.lock') }}
117+
118+
- name: Setup tree-sitter
119+
run: command -v tree-sitter || cargo install tree-sitter-cli --version "$(cat .tree-sitter-cli-version)" --locked
120+
shell: bash
111121

112122
- name: Generate Packages (deprecated)
113123
id: generate-packages-deprecated
@@ -126,7 +136,8 @@ jobs:
126136
PRERELEASE: ${{ github.event_name == 'workflow_dispatch' && needs.validate_tag.outputs.is-prerelease || github.event.release.prerelease }}
127137

128138
- name: Build WASM TS
129-
run: nix develop --command bash -c "cd packages/@postgres-language-server/wasm && bun run build:ts"
139+
run: bun run build:ts
140+
working-directory: packages/@postgres-language-server/wasm
130141

131142
- name: Publish npm packages as nightly (deprecated)
132143
if: (github.event_name == 'workflow_dispatch' && needs.validate_tag.outputs.is-prerelease == 'true') || (github.event_name == 'release' && github.event.release.prerelease)

0 commit comments

Comments
 (0)