-
Notifications
You must be signed in to change notification settings - Fork 45
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
DV Setup: Charon Integration with Sedge #368
Conversation
Co-authored-by: Oisín Kyne <[email protected]>
Update types, fix bugs, reviews
add Distributed Client Test
Co-authored-by: Oisín Kyne <[email protected]>
Fix review
charon poc
I was having a problem importing keys. |
Hi @sugh01. The issue is related to the use of
To import the keys correctly, provide the keystore password in the Example of successfully importThis is a keystore directory keystore.zip, generated with
And the
|
It appears that the import process is working fine, but the provided keystore directory structure is not correct |
Hi @adriantpaez Steps:
sedge-data
├── docker-compose.yml
├── jwtsecret
└── keystore
├── deposit_data.json
├── keystore_password.txt
└── validator_keys
└── keystore-m_12381_3600_0_0_0.json
This step does not complete. 2024-06-19 13:38:45 -- [INFO] [Logger Init] Log level: info
2024-06-19 13:38:45 -- [INFO] You are running the latest version of sedge. Version: v1.3.2
2024-06-19 13:38:45 -- [INFO] Setting up containers
2024-06-19 13:38:45 -- [INFO] Running command: docker compose -f /Users/sg/sedge/sedge/sedge-data/docker-compose.yml build validator
2024-06-19 13:38:45 -- [INFO] Running command: docker compose -f /Users/sg/sedge/sedge/sedge-data/docker-compose.yml pull validator
[+] Pulling 1/1
✔ validator Pulled 1.3s
2024-06-19 13:38:55 -- [INFO] Running command: docker compose -f /Users/sg/sedge/sedge/sedge-data/docker-compose.yml create validator
[+] Creating 3/0
✔ Network sedge-network Created 0.0s
✔ Container sedge-validator-blocker Created 0.0s
✔ Container sedge-validator-client Created 0.0s
2024-06-19 13:38:55 -- [INFO] Running command: docker build -t sedge/validator-import-lighthouse --build-arg LH_VERSION=sigp/lighthouse:v5.0.0 --build-arg NETWORK=holesky /var/folders/ng/dv8zg6ld6nvdrbqmysj1klxh0000gn/T/sedge-validator-import-context-3819293176
[+] Building 1.0s (11/11) FINISHED docker:desktop-linux
=> [internal] load build definition from Dockerfile 0.0s
=> => transferring dockerfile: 529B 0.0s
=> [internal] load metadata for docker.io/library/debian:stable-20221004-slim 0.9s
=> [internal] load .dockerignore 0.0s
=> => transferring context: 2B 0.0s
=> [1/7] FROM docker.io/library/debian:stable-20221004-slim@sha256:92ed72016796475ea1f18f84cd8e2f8519ece3a9ea27fdde1157464078ea5371 0.0s
=> [internal] load build context 0.0s
=> => transferring context: 677B 0.0s
=> CACHED [2/7] RUN apt-get update && apt-get install -y curl 0.0s
=> CACHED [3/7] RUN version=$(echo sigp/lighthouse:v5.0.0 | cut -d':' -f 2) && curl -L https://github.com/sigp/lighthouse/releases/download/$version 0.0s
=> CACHED [4/7] RUN tar -xvf lh.gz 0.0s
=> CACHED [5/7] COPY validator-init.sh . 0.0s
=> CACHED [6/7] RUN chmod +x validator-init.sh 0.0s
=> exporting to image 0.0s
=> => exporting layers 0.0s
=> => writing image sha256:68726c147b82af43d6a88a143b1d5560d3f67fee8e14f14950824c8a965c22c8 0.0s
=> => naming to docker.io/sedge/validator-import-lighthouse 0.0s
View build details: docker-desktop://dashboard/build/desktop-linux/desktop-linux/yknf6rtsfipgqfwzfzjngzr8d
What's next:
View a summary of image vulnerabilities and recommendations → docker scout quickview
2024-06-19 13:38:56 -- [INFO] Importing validator keys
2024-06-19 13:38:56 -- [INFO] The keys import container is starting
2024-06-19 13:38:57 -- [FATA] validator import container exited with non-zero exit code: validator-import service container with id 67c460dfabc79a3402901c19e6dbfb08572829c58bf3156ad84e20744699df8a ends with status code 255. Here are the logs for more details:
Found validator key in /keystore/validator_keys/keystore-m_12381_3600_0_0_0.json
Importing validator...
qemu-x86_64: Could not open '/lib64/ld-linux-x86-64.so.2': No such file or directory The same steps run successful for Teku, Lodestar and Prysm. |
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.
Thank you so much for this feature, @sugh01, and for your patience throughout the entire process. We are very close to merging this PR. Please address the few open comments, and we will be good to go.
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.
Created Issue #475 to add E2E tests for this integration later on.
We found one error while running:
and this is the error message
on WSL:
|
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!
Co-authored-by: Miguel Tenorio <[email protected]>
Changes:
Charon is used by stakers to distribute the responsibility of running Ethereum Validators across a number of different instances and client implementations. Setting up and running a full ethereum node with charon, needs some learning curve and compatibility knowledge, in order for the setup to be fully compliant with the charon configuration requirements for different BN-VC combinations. We want to provide a better and guided user experience for setting up a DV with Charon.
Sedge, is a one-click ethereum node setup tool which focuses on ease of use and, as such, lowers the entry barrier for non-technical users. With Sedge, one can run a node or a validator on Ethereum with little to no technical background.
Integrating Charon with Sedge would make it easy for stakers to setup and run a DV with Charon without having to go through each individual client setup docs and their compatibility with DVT.
Please refer Design Doc here - https://docs.google.com/document/d/1nQsOmkd-od3-lej3OcdUgVZ0GYXAHK9GZqlwEoyIzSY/edit
Types of changes
What types of changes does your code introduce?
Put an
x
in the boxes that applyTesting
Requires testing
In case you checked yes, did you write tests?
Comments about testing , should you have some (optional)
Further comments (optional)
How to test
Checkout branch
Perform Charon DKG process, a .charon folder is created