Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 10 additions & 2 deletions .github/actions/setup-rust/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,16 @@ inputs:
runs:
using: composite
steps:
- name: Setup Rust nightly
uses: dtolnay/rust-toolchain@nightly
- name: Install Rust toolchain
uses: jdx/mise-action@v5
env:
MISE_DATA_DIR: ${{ runner.temp }}/mise-rust
with:
version: 2026.10.1
add_shims_to_path: false
install_args: rust
working_directory: ${{ github.action_path }}/../../..
cache: false

- name: Setup Depot
uses: depot/setup-action@v1
Expand Down
74 changes: 54 additions & 20 deletions .github/workflows/ci-fast.yml
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,8 @@ jobs:
rust:
- 'Cargo.toml'
- 'Cargo.lock'
- 'mise*.toml'
- 'rust-toolchain.toml'
- '.cargo/**'
- 'crates/**'
- 'packages/**'
Expand All @@ -84,6 +86,10 @@ jobs:
- 'crates/alien-terraform/**'
- '.github/workflows/ci-fast.yml'
typescript:
- 'mise*.toml'
- 'rust-toolchain.toml'
- '.github/workflows/ci-fast.yml'
- '.github/workflows/ci-fork.yml'
# `pnpm format-and-lint` runs Biome from the repository root.
# Match its source formats repository-wide instead of trying to
# enumerate every directory that may contain linted files.
Expand Down Expand Up @@ -134,19 +140,35 @@ jobs:
steps:
- uses: actions/checkout@v7

- uses: pnpm/action-setup@v6
- name: Install development tools
id: mise
uses: jdx/mise-action@v5
env:
MISE_DATA_DIR: ${{ runner.temp }}/mise-tools
MISE_DISABLE_TOOLS: rust
with:
version: 2026.10.1
add_shims_to_path: false
install_args: node pnpm bun
cache_key: "{{default}}-${{ hashFiles('package.json') }}"

- uses: actions/setup-node@v7
- name: Cache pnpm dependencies
uses: actions/setup-node@v7
with:
node-version: 24
cache: pnpm
cache-dependency-path: |
pnpm-lock.yaml
examples/pnpm-lock.yaml

- uses: dtolnay/rust-toolchain@nightly
- name: Install Rust toolchain
uses: jdx/mise-action@v5
env:
MISE_DATA_DIR: ${{ runner.temp }}/mise-rust
with:
components: rustfmt, clippy
version: 2026.10.1
add_shims_to_path: false
install_args: rust
cache: false

- uses: mozilla-actions/sccache-action@v0.0.11
continue-on-error: true
Expand All @@ -155,10 +177,6 @@ jobs:

- uses: taiki-e/install-action@nextest

- uses: oven-sh/setup-bun@v2
with:
bun-version: "1.4.2"

- name: Install protoc
uses: arduino/setup-protoc@v3
with:
Expand Down Expand Up @@ -336,6 +354,10 @@ jobs:
with:
filters: |
examples:
- 'mise*.toml'
- 'rust-toolchain.toml'
- '.github/workflows/ci-fast.yml'
- '.github/workflows/ci-fork.yml'
- 'examples/**'
- 'packages/**'
# Changes to the generated Platform client can break the ordinary
Expand All @@ -349,29 +371,41 @@ jobs:
- 'crates/alien-bindings/**'
- 'crates/alien-build/**'

- uses: pnpm/action-setup@v6
- name: Install development tools
id: mise
uses: jdx/mise-action@v5
env:
MISE_DATA_DIR: ${{ runner.temp }}/mise-tools
MISE_DISABLE_TOOLS: rust
with:
version: 2026.10.1
add_shims_to_path: false
install_args: node pnpm bun
cache_key: "{{default}}-${{ hashFiles('package.json') }}"

- uses: actions/setup-node@v7
- name: Cache pnpm dependencies
uses: actions/setup-node@v7
with:
node-version: 24
cache: pnpm
cache-dependency-path: |
pnpm-lock.yaml
examples/pnpm-lock.yaml

- uses: dtolnay/rust-toolchain@nightly
- name: Install Rust toolchain
uses: jdx/mise-action@v5
env:
MISE_DATA_DIR: ${{ runner.temp }}/mise-rust
with:
components: rustfmt, clippy
version: 2026.10.1
add_shims_to_path: false
install_args: rust
cache: false

- uses: mozilla-actions/sccache-action@v0.0.11
continue-on-error: true
with:
version: v0.16.0

- uses: oven-sh/setup-bun@v2
with:
bun-version: "1.4.2"

- name: Install protoc
uses: arduino/setup-protoc@v3
with:
Expand Down Expand Up @@ -454,9 +488,9 @@ jobs:

- name: Install operation compiler generation tools
run: |
rustup toolchain install 1.97.1 --profile minimal --target wasm32-unknown-unknown
MISE_DATA_DIR="$RUNNER_TEMP/mise-rust" mise -E release-prepare install rust
VERSION=$(node -e 'const fs = require("node:fs"); console.log(fs.readFileSync("Cargo.lock", "utf8").match(/name = "wasm-bindgen"\nversion = "([^"]+)"/)[1])')
cargo +1.97.1 install --locked --version "$VERSION" wasm-bindgen-cli
MISE_DATA_DIR="$RUNNER_TEMP/mise-rust" mise -E release-prepare exec -- cargo install --locked --version "$VERSION" wasm-bindgen-cli

- name: Regenerate local TypeScript APIs
run: pnpm generate
Expand Down
30 changes: 23 additions & 7 deletions .github/workflows/ci-fork.yml
Original file line number Diff line number Diff line change
Expand Up @@ -37,17 +37,33 @@ jobs:

- uses: actions/checkout@v7

- uses: pnpm/action-setup@v6
- name: Install development tools
id: mise
uses: jdx/mise-action@v5
env:
MISE_DATA_DIR: ${{ runner.temp }}/mise-tools
MISE_DISABLE_TOOLS: rust
with:
version: 2026.10.1
add_shims_to_path: false
install_args: node pnpm
cache_key: "{{default}}-${{ hashFiles('package.json') }}"

- uses: actions/setup-node@v7
- name: Cache pnpm dependencies
uses: actions/setup-node@v7
with:
node-version: 24
cache: pnpm
cache-dependency-path: pnpm-lock.yaml

- uses: dtolnay/rust-toolchain@nightly
- name: Install Rust toolchain
uses: jdx/mise-action@v5
env:
MISE_DATA_DIR: ${{ runner.temp }}/mise-rust
with:
components: rustfmt, clippy
version: 2026.10.1
add_shims_to_path: false
install_args: rust
cache: false

- uses: Swatinem/rust-cache@v2

Expand Down Expand Up @@ -99,9 +115,9 @@ jobs:

- name: Install operation compiler generation tools
run: |
rustup toolchain install 1.97.1 --profile minimal --target wasm32-unknown-unknown
MISE_DATA_DIR="$RUNNER_TEMP/mise-rust" mise -E release-prepare install rust
VERSION=$(node -e 'const fs = require("node:fs"); console.log(fs.readFileSync("Cargo.lock", "utf8").match(/name = "wasm-bindgen"\nversion = "([^"]+)"/)[1])')
cargo +1.97.1 install --locked --version "$VERSION" wasm-bindgen-cli
MISE_DATA_DIR="$RUNNER_TEMP/mise-rust" mise -E release-prepare exec -- cargo install --locked --version "$VERSION" wasm-bindgen-cli

- name: Regenerate local TypeScript APIs
run: pnpm generate
Expand Down
10 changes: 9 additions & 1 deletion .github/workflows/cloud-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -292,7 +292,15 @@ jobs:
--gcp "${{ inputs.gcp_target || 'gcp-target-3' }}" \
--azure "${{ inputs.azure_target || 'azure-target-1' }}"

- uses: dtolnay/rust-toolchain@nightly
- name: Install Rust toolchain
uses: jdx/mise-action@v5
env:
MISE_DATA_DIR: ${{ runner.temp }}/mise-rust
with:
version: 2026.10.1
add_shims_to_path: false
install_args: rust
cache: false

- uses: depot/setup-action@v1

Expand Down
Loading
Loading