-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add cctl module and extend e2e test to use it #46
Conversation
marijanp
commented
Mar 20, 2024
•
edited
Loading
edited
- added a binary which uses the kairos-test-utils to launch a cctl network
- added a nixos module definition for cctl
- added the module to the e2e-tests server configuration, and created an assertion that queries one of the casper-nodes using casper-client-rs
f11d2cd
to
a8bfb72
Compare
a8bfb72
to
fe5b3a4
Compare
fe5b3a4
to
8a8f99f
Compare
8a8f99f
to
ae1e56f
Compare
example = 60000; | ||
description = mdDoc '' | ||
Port to listen on. | ||
TODO make port configurable in cctl |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why not just do it now?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Because CCTL does not offer a way to do that yet. Mark is aware of it and working on it.
Small question, looks all good to me and I think I'm good to approve. How flexible are such nix modules? During the testing that @jonas089 did, he often had to modify the chainspec files in casper-node to allow them to accept the large proofs generated by the zk-rollup. Hopefully this won't be an issue with the trie, and if it is then wrapper proofs might be a solution anyway, but during this phase of prototyping such changes to the casper-node are practical. Also, shouldn't we be waiting at least for the genesis block before we start testing? |
For different chainspec configurations you would extend the module with an according option.
The cctl rust-wrapper waits for that. So here we just wait for the service to start as expected |
Minimum allowed coverage is Generated by 🐒 cobertura-action against a0d71e8 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Approved, but I don't think changing chainspec or other files will be easy using nix, since (as I understood from your last message) it seems mostly capable of flexibility in CLI arguments, but not in changing files (CCTL has no CLI argument for chainspec)
@Rom3dius the option I meant in my explanation is a module option. How you implement a module option can differ. It can be whatever you want. So I could modify a file, set an env-var, pass an argument, run a binary, etc. it doesn't matter. Files are the smallest deployment units as far as nix is concerned |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
@Rom3dius Agree, this might be blocker for us when we start integrating Risc0. However, we should think about workarounds to avoid chainspec customization, as this prevents us from using official L1 infrastructure. |