Description
After each merge to main, a lightweight smoke test should verify that the testnet deployment is still functional. This catches breakages caused by testnet network upgrades or contract expiry without waiting for the nightly E2E run.
Requirements and context
.github/workflows/testnet-smoke.yml triggered on push to main
- Smoke test: call
get_version() and get_contract_stats() on all three deployed contracts, assert non-error responses
- Call the indexer's
/health endpoint and assert status: 'ok'
- On failure: create a GitHub issue automatically with the error details using
actions/github-script
- Timeout: fail if any check exceeds 30 seconds
Suggested execution
git checkout -b ci/testnet-smoke-test
- Create
scripts/smoke-test.ts (or reuse from existing)
- Create
testnet-smoke.yml workflow
- Test the auto-issue-creation on a deliberate failure
Example commit message
ci: add testnet smoke test on main push with auto-issue on failure
Description
After each merge to main, a lightweight smoke test should verify that the testnet deployment is still functional. This catches breakages caused by testnet network upgrades or contract expiry without waiting for the nightly E2E run.
Requirements and context
.github/workflows/testnet-smoke.ymltriggered on push to mainget_version()andget_contract_stats()on all three deployed contracts, assert non-error responses/healthendpoint and assertstatus: 'ok'actions/github-scriptSuggested execution
scripts/smoke-test.ts(or reuse from existing)testnet-smoke.ymlworkflowExample commit message
ci: add testnet smoke test on main push with auto-issue on failure