chore(tests): convert remote datastore remote tests to testcontainers…#543
Conversation
|
895dba6 to
a0ab63c
Compare
… approach using real service; add ci tests with real catalog service
a0ab63c to
bf9a262
Compare
There was a problem hiding this comment.
Pull Request Overview
This PR converts the remote datastore tests from being skipped in CI to using testcontainers for automated testing. The changes enable both local and CI execution by containerizing PostgreSQL and the catalog service, including automated database migrations.
Key Changes:
- Implemented testcontainer-based test infrastructure for catalog remote tests
- Added CI workflow jobs to run catalog remote tests with ECR image
- Updated documentation with comprehensive testing instructions
Reviewed Changes
Copilot reviewed 6 out of 7 changed files in this pull request and generated 4 comments.
Show a summary per file
| File | Description |
|---|---|
| go.mod | Added testcontainers postgres module dependency |
| datastore/catalog/remote/testcontainer_setup.go | New test infrastructure for managing PostgreSQL and catalog service containers |
| datastore/catalog/remote/main_test.go | Test entry point with container lifecycle management |
| datastore/catalog/remote/README.md | Updated documentation with testcontainer usage and configuration |
| .github/workflows/schedule-main.yml | Split test jobs and added catalog remote test job with ECR integration |
| .github/workflows/pull-request-main.yml | Split test jobs and added catalog remote test job with ECR integration |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|


We have totally skipped remote datastore tests in CI.
This PR rewrites Datastore Remote tests to use testcontainers that can use running service or create the service out of docker image locally and in CI. Updating workflows to actually get the service docker image and run tests on it.
https://smartcontract-it.atlassian.net/browse/CLD-760
CI run https://github.com/smartcontractkit/chainlink-deployments-framework/actions/runs/18840463376/job/53751297255?pr=543 ~1 minute