Overview of Zebra Continuous Integration
mainZebra utilizes extensive continuous integration (CI) testing to ensure the reliability of node syncing and lightwalletd integration.
Key testing components include:
- Integration Tests: Triggered on every Pull Request (PR), these run Docker-based tests on Google Cloud, covering Zebra updates,
lightwalletdfull/update syncs, andlightwalletdintegration with Zebra JSON-RPC and Light Wallet gRPC calls. - Full Sync Tests: Triggered when a PR is merged into the
mainbranch, running a Zebra full sync from genesis. - Unit Tests: A smaller set of tests running on tier 2 platforms via GitHub Actions runners.
Tests utilize cached state images from Google Cloud to optimize speed. Tests prefer the latest image generated from the same commit, but will fall back to the latest image from any branch/commit if the state version matches.