Refactor: Replace Docker-based integration tests with yaci-devkit (npm)
Summary
Currently the integration tests in cardano-rosetta-java rely on a Docker-based setup to run a local Cardano devnet.
This setup should be refactored to use the npm distribution of yaci-cli / yaci-devkit instead.
Example reference implementation:
https://github.com/bloxbean/devkit-npm-ci-test
Motivation
The current Docker-based approach introduces unnecessary complexity and overhead for running integration tests.
Using the npm-based yaci-devkit provides several advantages:
- Simpler setup — no Docker dependency required
- Faster startup time
- More lightweight CI execution
- Easier local developer experience
- Better alignment with other projects already using npm-based devnet tooling
Proposed Changes
- Remove Docker-based devnet setup used in integration tests
- Use
yaci-cli / yaci-devkit via npm to start and manage the devnet
- Update CI workflow to install and run
yaci-devkit
- Update documentation for running integration tests locally
Reference
Example project demonstrating npm-based CI setup:
https://github.com/bloxbean/devkit-npm-ci-test
Expected Outcome
Integration tests should:
- Start a local Cardano devnet using
yaci-devkit
- Run Rosetta integration tests against the devnet
- Shut down the devnet automatically after tests complete
The new setup should be simpler, faster, and easier to maintain than the current Docker-based approach.
Refactor: Replace Docker-based integration tests with
yaci-devkit(npm)Summary
Currently the integration tests in cardano-rosetta-java rely on a Docker-based setup to run a local Cardano devnet.
This setup should be refactored to use the npm distribution of
yaci-cli/yaci-devkitinstead.Example reference implementation:
https://github.com/bloxbean/devkit-npm-ci-test
Motivation
The current Docker-based approach introduces unnecessary complexity and overhead for running integration tests.
Using the npm-based
yaci-devkitprovides several advantages:Proposed Changes
yaci-cli/yaci-devkitvia npm to start and manage the devnetyaci-devkitReference
Example project demonstrating npm-based CI setup:
https://github.com/bloxbean/devkit-npm-ci-test
Expected Outcome
Integration tests should:
yaci-devkitThe new setup should be simpler, faster, and easier to maintain than the current Docker-based approach.