feat: truly lazy variables #1350
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: main | |
on: | |
push: | |
branches: [main] | |
pull_request: | |
branches: [main] | |
jobs: | |
test-rust: | |
name: Rust tests (marzano) | |
timeout-minutes: 20 | |
runs-on: namespace-profile-standard-ubuntu22-amd64 | |
permissions: | |
contents: "read" | |
id-token: "write" | |
env: | |
ROOT_ANALYSIS_DIR: "${{ github.workspace }}/data" | |
BUILD_OS: ${{ matrix.os }} | |
os: ${{ matrix.os }} | |
BUILD_PLATFORM: amd64 | |
steps: | |
- name: clone code | |
uses: namespacelabs/nscloud-checkout-action@v4 | |
with: | |
submodules: recursive | |
- name: Install Protoc | |
run: sudo apt-get install -y protobuf-compiler | |
- name: install Rust | |
uses: actions-rs/toolchain@v1 | |
with: | |
# If you update this, also update build.mjs | |
toolchain: nightly-2023-11-16 | |
override: true | |
- name: install Terraform | |
run: | | |
wget https://releases.hashicorp.com/terraform/1.6.0/terraform_1.6.0_linux_amd64.zip | |
unzip terraform_1.6.0_linux_amd64.zip | |
chmod +x terraform | |
sudo mv terraform /usr/local/bin/ | |
- name: install dependencies | |
run: | | |
cargo install buildkite-test-collector | |
- name: setup node.js environment | |
uses: actions/setup-node@v3 | |
- name: Install prettier | |
run: | | |
npm install -g prettier | |
prettier --version | |
- name: test | |
run: | | |
cargo test --workspace \ | |
--features test_ci \ | |
--exclude grit-wasm-bindings \ | |
--exclude rustfsm \ | |
--exclude temporal-sdk-core-test-utils \ | |
--exclude temporal-client \ | |
--exclude temporal-sdk-core-protos \ | |
--exclude temporal-sdk \ | |
--exclude temporal-sdk-core \ | |
--exclude rustfsm_procmacro \ | |
--exclude rustfsm_codegen \ | |
--exclude google-cloud-metadata \ | |
--exclude google-cloud-auth \ | |
--exclude google-cloud-googleapis \ | |
--exclude google-cloud-gax \ | |
--exclude google-cloud-pubsub \ | |
-- -Z unstable-options | |
test-rust-wasm: | |
name: Rust wasm | |
timeout-minutes: 15 | |
runs-on: namespace-profile-standard-ubuntu22-amd64 | |
permissions: | |
contents: "read" | |
id-token: "write" | |
steps: | |
- name: clone code | |
uses: namespacelabs/nscloud-checkout-action@v4 | |
with: | |
submodules: recursive | |
- name: install Rust | |
uses: actions-rs/toolchain@v1 | |
with: | |
toolchain: nightly | |
override: true | |
- name: install wasm-pack | |
run: | | |
curl https://rustwasm.github.io/wasm-pack/installer/init.sh -sSf | sh | |
- name: build wasm | |
working-directory: ./crates/wasm-bindings | |
run: | | |
wasm-pack build --target web | |
test-stdlib: | |
name: Test the standard library | |
timeout-minutes: 30 | |
permissions: | |
contents: "read" | |
id-token: "write" | |
runs-on: namespace-profile-standard-ubuntu22-amd64 | |
steps: | |
- name: clone code | |
uses: namespacelabs/nscloud-checkout-action@v4 | |
with: | |
submodules: recursive | |
- name: install Rust | |
uses: actions-rs/toolchain@v1 | |
with: | |
toolchain: nightly-2023-11-16 | |
override: true | |
- name: build | |
run: | | |
cargo build --release | |
- name: Checkout js repo | |
uses: actions/checkout@v4 | |
with: | |
repository: getgrit/stdlib | |
path: stdlib | |
- name: install-ruff | |
run: | | |
pip install ruff | |
- name: Setup Go environment | |
uses: actions/[email protected] | |
with: | |
go-version: "^1.22.0" | |
- name: test stdlib | |
working-directory: ./stdlib | |
run: | | |
../target/release/marzano patterns test --exclude ai |