Add Docker-based CI testing#5016
Conversation
977f1d5 to
179f39f
Compare
Test Results for Commit da51912Pull Request 5016: Results Test Case Results
Last updated: 2026-01-27 21:31:25 UTC |
179f39f to
0dd1d80
Compare
There was a problem hiding this comment.
Pull request overview
This pull request adds Docker-based CI testing to validate that the codebase builds and tests pass inside Docker containers. This addresses a gap where code may compile on bare metal Ubuntu 24.04 CI runners but fail in Docker due to environment differences (Ubuntu 22.04 in Docker).
Changes:
- Added Docker test infrastructure with a Dockerfile that mirrors the Ubuntu 22.04 environment
- Added shell scripts to build and run tests inside Docker containers
- Integrated Docker-based testing into the GitHub Actions workflow with matrix testing for both LMDB and RocksDB backends
Reviewed changes
Copilot reviewed 5 out of 5 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| docker/tests/docker-test-entrypoint.sh | Entrypoint script for running all test suites locally in Docker |
| docker/tests/Dockerfile-tests | Dockerfile for building the test environment with Ubuntu 22.04 |
| ci/tests/run-docker-tests.sh | Script to execute specific test types inside pre-built Docker containers |
| ci/build-docker-tests.sh | Script to build the Docker test image with configurable compiler |
| .github/workflows/unit_tests.yml | Added new docker_test job with backend matrix for LMDB and RocksDB |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| CMD ["docker/tests/docker-test-entrypoint.sh"] | ||
|
|
||
| ARG REPOSITORY=nanocurrency/nano-node | ||
| LABEL org.opencontainers.image.source=https://github.com/$REPOSITORY |
There was a problem hiding this comment.
The LABEL syntax is inconsistent with the existing Dockerfile in docker/node/Dockerfile line 51, which uses a space separator instead of an equals sign. For consistency across the codebase, consider using the same format.
0dd1d80 to
da51912
Compare
Code may compile on bare metal but fail in Docker due to environment differences (Ubuntu 22.04 in Docker vs Ubuntu 24.04 in CI). Currently no CI job validates that the codebase builds and tests pass inside Docker containers.