Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
a021418
feat(devenv): enable connection to prod
rodrigombsoares Jun 18, 2026
996010c
feat(tests): remove aggregator requirement
rodrigombsoares Jun 18, 2026
aa0239e
feat(e2e): bootstrap tests from different envs
rodrigombsoares Jun 18, 2026
816925e
feat(e2e): e2e tests connected to real env
rodrigombsoares Jun 18, 2026
2734f5a
feat(e2e): enable ftf config
rodrigombsoares Jun 19, 2026
5de0420
fix(e2e): evm2canton e2e prod-testnet working
rodrigombsoares Jun 19, 2026
8cb8084
feat(load): evm2canton prod-testnet arb message
rodrigombsoares Jun 19, 2026
b615faa
feat(load): canton2evm prod-testnet arb message
rodrigombsoares Jun 19, 2026
51acbc3
feat(load): log messageIDs | fix concurrency issues
rodrigombsoares Jun 19, 2026
0397b0a
feat(load): set up CI to trigger load tests from PR comments
rodrigombsoares Jun 19, 2026
2354314
Merge branch 'main' into e2e-load-prod-enablement
rodrigombsoares Jun 20, 2026
fc75966
feat(load): Metrics of tests results
rodrigombsoares Jun 22, 2026
af613ee
feat(e2e): evm2canton token tests prod
rodrigombsoares Jun 22, 2026
12ee655
feat(e2e): token transfers canton2evm prod
rodrigombsoares Jun 22, 2026
0ff2337
feat(load): Token transfers on load tests prod
rodrigombsoares Jun 22, 2026
fb3d1eb
delete unused test
rodrigombsoares Jul 1, 2026
7248c49
Merge branch 'main' into e2e-load-prod
rodrigombsoares Jul 1, 2026
45ed946
fixes after merge main
rodrigombsoares Jul 1, 2026
d08c8d8
fix lint
rodrigombsoares Jul 1, 2026
1595e87
fix devenv tests
rodrigombsoares Jul 1, 2026
bcd7e3d
fix(devenv): harden tests by checking how many sends are left before …
rodrigombsoares Jul 1, 2026
bcbf8f2
add buffer
rodrigombsoares Jul 1, 2026
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
10 changes: 8 additions & 2 deletions .github/workflows/ccip-load-command.yml
Original file line number Diff line number Diff line change
Expand Up @@ -65,15 +65,21 @@ jobs:
echo "message_rate=${NAMED_MESSAGE_RATE:-1/45s}" >> "$GITHUB_OUTPUT"
echo "load_duration=${NAMED_LOAD_DURATION:-2m}" >> "$GITHUB_OUTPUT"
echo "config_file=${NAMED_CONFIG_FILE:-env-prod-testnet.ci.toml}" >> "$GITHUB_OUTPUT"
echo "skip_exec_confirm=${NAMED_SKIP_EXEC_CONFIRM:-true}" >> "$GITHUB_OUTPUT"
echo "confirm_exec_timeout=${NAMED_CONFIRM_EXEC_TIMEOUT:-10m}" >> "$GITHUB_OUTPUT"
echo "party_id=${NAMED_PARTY_ID:-u_d53a15c42af6::1220c250c23c55120f7c758bccc5cbc739629015ab921594e1c29656981f985bffa7}" >> "$GITHUB_OUTPUT"
echo "grpc_url=${NAMED_GRPC_URL:-testnet.cv1.bcy-v.metalhosts.com:443}" >> "$GITHUB_OUTPUT"

direction="${NAMED_DIRECTION:-canton2evm}"
if [ -n "${NAMED_SKIP_EXEC_CONFIRM}" ]; then
echo "skip_exec_confirm=${NAMED_SKIP_EXEC_CONFIRM}" >> "$GITHUB_OUTPUT"
elif [ "$direction" = "canton2evm" ]; then
echo "skip_exec_confirm=true" >> "$GITHUB_OUTPUT"
else
echo "skip_exec_confirm=false" >> "$GITHUB_OUTPUT"
fi
if [ -n "${NAMED_TEST_TIMEOUT}" ]; then
echo "test_timeout=${NAMED_TEST_TIMEOUT}" >> "$GITHUB_OUTPUT"
elif [ "$direction" = "evm2canton" ]; then
elif [ "$direction" = "evm2canton" ] || [ "$direction" = "evm2canton-token" ]; then
echo "test_timeout=45m" >> "$GITHUB_OUTPUT"
else
echo "test_timeout=30m" >> "$GITHUB_OUTPUT"
Expand Down
10 changes: 8 additions & 2 deletions .github/workflows/ccip-load-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -89,14 +89,20 @@ jobs:
echo "load_duration=${{ inputs.load_duration }}" >> "$GITHUB_OUTPUT"
fi
if [ "${{ inputs.test_timeout }}" = "40m" ]; then
if [ "${{ inputs.direction }}" = "evm2canton" ]; then
if [ "${{ inputs.direction }}" = "evm2canton" ] || [ "${{ inputs.direction }}" = "evm2canton-token" ]; then
echo "test_timeout=45m" >> "$GITHUB_OUTPUT"
else
echo "test_timeout=30m" >> "$GITHUB_OUTPUT"
fi
else
echo "test_timeout=${{ inputs.test_timeout }}" >> "$GITHUB_OUTPUT"
fi
direction="${{ inputs.direction }}"
if [ "$direction" = "canton2evm" ]; then
echo "skip_exec_confirm=true" >> "$GITHUB_OUTPUT"
else
echo "skip_exec_confirm=false" >> "$GITHUB_OUTPUT"
fi
else
echo "canton_path=chainlink-canton" >> "$GITHUB_OUTPUT"
echo "message_rate=${{ inputs.message_rate }}" >> "$GITHUB_OUTPUT"
Expand All @@ -115,7 +121,7 @@ jobs:
config_file: ${{ inputs.config_file }}
canton_path: ${{ steps.prod_defaults.outputs.canton_path }}
canton_ref: ${{ inputs.canton_ref }}
skip_exec_confirm: ${{ inputs.skip_exec_confirm }}
skip_exec_confirm: ${{ inputs.ccip_env == 'prod-testnet' && steps.prod_defaults.outputs.skip_exec_confirm || inputs.skip_exec_confirm }}
confirm_exec_timeout: ${{ inputs.confirm_exec_timeout }}
CANTON_OKTA_AUTHORIZER_TESTNET: ${{ secrets.CANTON_OKTA_AUTHORIZER_TESTNET }}
CANTON_OKTA_CLIENT_ID_TESTNET: ${{ secrets.CANTON_OKTA_CLIENT_ID_TESTNET }}
Expand Down
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,8 @@ scripts/prod_testnet/.env
eds/staging_testnet_canton.local.toml
eds/prod_testnet_canton.local.toml
eds/prod_testnet_canton.local.secrets.toml
ccip/devenv/.env.staging.local
ccip/devenv/.env.prod-testnet.local
scripts/prod_mainnet/.env
scripts/prod_mainnet/.env.example
.env.prod-testnet.local
31 changes: 31 additions & 0 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -108,6 +108,15 @@ run-canton2evm-load: ## Canton→EVM WASP load (requires running devenv + env-ca
run-evm2canton-load: ## EVM→Canton WASP load (requires running devenv + env-canton-evm-out.toml).
cd ccip/devenv/tests/load && go test -timeout 15m -v -count 1 -run '^TestEVM2Canton_Load$$'

.PHONY: run-evm2canton-load-prod
run-evm2canton-load-prod: ## EVM→Canton WASP load on prod-testnet (Canton TestNet + Sepolia; set CANTON_* and PRIVATE_KEY).
cd ccip/devenv/tests/load && go test -timeout 45m -v -count 1 -ccip-env=prod-testnet -run '^TestEVM2Canton_Load$$'

.PHONY: run-canton2evm-load-prod
run-canton2evm-load-prod: ## Canton→EVM WASP load on prod-testnet (send-only; set CANTON_* and PRIVATE_KEY).
cd ccip/devenv/tests/load && CANTON_LOAD_SKIP_EXEC_CONFIRM=true go test -timeout 30m -v -count=1 \
-ccip-env=prod-testnet -run '^TestCanton2EVM_Load$$'

.PHONY: run-canton2evm-token-load
run-canton2evm-token-load: ## Canton→EVM token WASP load (requires running devenv + env-canton-evm-out.toml).
cd ccip/devenv/tests/load && go test -timeout 20m -v -count 1 -run '^TestCanton2EVM_TokenLoad$$'
Expand All @@ -116,6 +125,28 @@ run-canton2evm-token-load: ## Canton→EVM token WASP load (requires running dev
run-evm2canton-token-load: ## EVM→Canton token WASP load (requires running devenv + env-canton-evm-out.toml).
cd ccip/devenv/tests/load && go test -timeout 20m -v -count 1 -run '^TestEVM2Canton_TokenLoad$$'

.PHONY: run-canton2evm-token-load-prod
run-canton2evm-token-load-prod: ## Canton→EVM token WASP load on prod-testnet (set CANTON_* and PRIVATE_KEY).
cd ccip/devenv/tests/load && go test -timeout 30m -v -count=1 \
-ccip-env=prod-testnet -run '^TestCanton2EVM_TokenLoad$$'

.PHONY: run-evm2canton-token-load-prod
run-evm2canton-token-load-prod: ## EVM→Canton token WASP load on prod-testnet (set CANTON_* and PRIVATE_KEY).
cd ccip/devenv/tests/load && go test -timeout 45m -v -count=1 \
-ccip-env=prod-testnet -run '^TestEVM2Canton_TokenLoad$$'

.PHONY: run-evm2canton-token-e2e-prod
run-evm2canton-token-e2e-prod: ## EVM→Canton token e2e on prod-testnet.
cd ccip/devenv/tests/e2e && go test -timeout 15m -v -count=1 \
-ccip-env=prod-testnet \
-run '^TestEVM2Canton_Basic$/^token_transfer$$'

.PHONY: run-canton2evm-token-e2e-prod
run-canton2evm-token-e2e-prod: ## Canton→EVM token e2e on prod-testnet.
cd ccip/devenv/tests/e2e && go test -timeout 15m -v -count=1 \
-ccip-env=prod-testnet \
-run '^TestCanton2EVM_Basic$/^EOA receiver and default committee verifier token transfer$$'

.PHONY: build-run-e2e-tests
build-run-e2e-tests: start-devenv run-e2e-tests

Expand Down
Loading
Loading