Skip to content

Commit

Permalink
chore: enable rust codepath on CI (#6449)
Browse files Browse the repository at this point in the history
### Description

This PR switches to use the Rust codepath for turborepo CI.

Part of this PR switches our Windows usage to use GitBash instead of
Powershell for invoking `turbo`. This isn't ideal, but it allows us to
start dogfooding.

### Testing Instructions

Our existing CI should pass. We should eagerly revert if an issue is
discovered.

Closes TURBO-1665

---------

Co-authored-by: Chris Olszewski <Chris Olszewski>
  • Loading branch information
chris-olszewski authored Nov 15, 2023
1 parent ff1cfad commit 0d72ef5
Showing 1 changed file with 19 additions and 2 deletions.
21 changes: 19 additions & 2 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -241,6 +241,8 @@ jobs:
CARGO_INCREMENTAL: 0
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
EXPERIMENTAL_RUST_CODEPATH: true
shell: bash

- name: Run sccache stat for check
shell: bash
Expand Down Expand Up @@ -302,6 +304,9 @@ jobs:
github-token: "${{ secrets.GITHUB_TOKEN }}"

- run: turbo run test --filter=cli --color
env:
EXPERIMENTAL_RUST_CODEPATH: true
shell: bash

turborepo_integration:
name: Turborepo Integration Tests
Expand Down Expand Up @@ -333,6 +338,8 @@ jobs:

- name: Integration Tests
run: turbo run test --filter=turborepo-tests-integration --color --env-mode=strict --token=${{ secrets.TURBO_TOKEN }} --team=${{ vars.TURBO_TEAM }}
env:
EXPERIMENTAL_RUST_CODEPATH: true

turborepo_integration_rust:
name: Turborepo Integration Tests (Rust Codepath)
Expand Down Expand Up @@ -365,6 +372,8 @@ jobs:

- name: Integration Tests
run: turbo run test:rust-codepath --filter=turborepo-tests-integration --color --env-mode=strict --token=${{ secrets.TURBO_TOKEN }} --team=${{ vars.TURBO_TEAM }}
env:
EXPERIMENTAL_RUST_CODEPATH: true

turborepo_e2e:
name: Turborepo E2E Tests
Expand All @@ -391,6 +400,8 @@ jobs:

- name: E2E Tests
run: turbo run test --filter=turborepo-tests-e2e --remote-only --token=${{ secrets.TURBO_TOKEN }} --team=${{ vars.TURBO_TEAM }} --color --env-mode=strict
env:
EXPERIMENTAL_RUST_CODEPATH: true

turborepo_examples:
name: Turborepo Examples
Expand Down Expand Up @@ -448,6 +459,8 @@ jobs:
# envs var would apply to the actual tests that exercise turbo also,
# making test output non-deterministic.
run: turbo run example-test --color --remote-only --token=${{ secrets.TURBO_TOKEN }} --team=${{ vars.TURBO_TEAM }} --env-mode=strict
env:
EXPERIMENTAL_RUST_CODEPATH: true

# Re-enable corepack, actions/setup-node invokes other package managers and
# that causes corepack to throw an error, so we disable it here. The "Post" step
Expand Down Expand Up @@ -497,7 +510,9 @@ jobs:

- name: Run tests
run: |
turbo run check-types test --filter={./packages/*}...[${{ github.event.pull_request.base.sha || 'HEAD^1' }}] --color
turbo run check-types test --filter={./packages/*}...[${{ github.event.pull_request.base.sha || 'HEAD^1' }}] --color --env-mode=strict
env:
EXPERIMENTAL_RUST_CODEPATH: true

turbopack_typescript:
name: Turbopack TypeScript files
Expand Down Expand Up @@ -935,7 +950,9 @@ jobs:
# Filters some workspaces out:
# - `cli` because it runs golangci-lint and this Job doesn't have all the dependencies for that.
# - Other `@vercel/*` packages because ??
run: turbo run lint --filter=!cli --filter=!@vercel/devlow-bench --filter=!@vercel/experimental-nft-next-plugin --filter=!@vercel/experimental-nft-next-plugin --filter=!turbopack-bump-action --filter=!next-integration-stat
run: turbo run lint --filter=!cli --filter=!@vercel/devlow-bench --filter=!@vercel/experimental-nft-next-plugin --filter=!@vercel/experimental-nft-next-plugin --filter=!turbopack-bump-action --filter=!next-integration-stat --env-mode=strict
env:
EXPERIMENTAL_RUST_CODEPATH: true

final:
name: Ok
Expand Down

0 comments on commit 0d72ef5

Please sign in to comment.