make build && make install
Environment setup and test configuration live under integration-tests/devenv. Configs are composed from:
integration-tests/devenv/env.tomlfor base environment settingsintegration-tests/devenv/products/solana/basic.tomlfor the embedded OCR2 setupintegration-tests/devenv/products/solana/plugins.tomlto run with plugin binariesintegration-tests/devenv/products/solana/soak.tomlto extend the smoke config for soak
Important: environment startup is decoupled from test logic. Tests no longer start the environment. You must run the environment setup (go run ./cmd u ...) before running any tests. This generates integration-tests/devenv/env-out.toml, which the tests read.
cd integration-tests/devenv
go run ./cmd u env.toml,products/solana/basic.toml
cd ../tests
go test -v -timeout 30m -run TestSolanaOCRV2Smoke
cd integration-tests/devenv
go run ./cmd u env.toml,products/solana/basic.toml,products/solana/plugins.toml
cd ../tests
go test -v -timeout 30m -run TestSolanaOCRV2Smoke
cd integration-tests/devenv
go run ./cmd u env.toml,products/solana/basic.toml,products/solana/soak.toml
go run ./cmd obs up -f
cd ../tests
go test -v -timeout 4h -run TestSolanaOCRV2Soak
cd integration-tests/devenv
go run ./cmd u env.toml,products/solana/basic.toml,products/solana/soak.toml,products/solana/plugins.toml
go run ./cmd obs up -f
cd ../tests
go test -v -timeout 4h -run TestSolanaOCRV2Soak
Workflow runs on PRs and workflow_dispatch with input cl_branch_ref (Chainlink repo branch to integrate).
What it does:
- Builds current contract artifacts.
- Builds a custom Chainlink image (or reuses an existing one if available).
- Runs smoke tests as a matrix:
embedded:env.toml,products/solana/basic.tomlplugins:env.toml,products/solana/basic.toml,products/solana/plugins.toml
- Runs program upgrade tests only when:
- Contracts have changed, and
- Current artifacts differ from the pinned previous release artifacts
Navigate to the workflow. Inputs are:
cl_image_tag(required): Chainlink image tagcl_image_ecr(optional): ECR repo name (defaultchainlink)
The workflow builds contract artifacts, starts the environment via integration-tests/devenv, then runs soak tests with the same embedded/plugins matrix.