ObolNetwork / charon-distributed-validator-cluster

Run a Distributed Validator Cluster locally using docker-compose

Home Page:https://docs.obol.tech/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Lighthouse: remove the run.sh entrypoint script

aly-obol opened this issue · comments

commented

Problem

We need to run lighthouse VCs in charonxk8s and to achieve that we need to remove the run.sh script or move it inside the custom image.

Proposed Solution

As proposed by Oisin in the below comment, we have to remove the run.sh entirely from docker-compose, and go back to a stock docker image.

I think we could potentially replace the behaviour of this script with kubernetes native features like initcontainers to import the keystore rather than a wait loop shell script.

However slightly more tricky is the custom testnet config, which is coming from using the compose file for simnets originally. My removal of it may have been buggy for dhruv and he had to rollback, but I think for this repo, we can stick to named test networks in lighthouse VC, until we get around to making an e2e test net.

Worst case I agree with Aly that we should put it in a docker image rather than injecting it in as a configmap if we can't remove it entirely.

Proposal. This run.sh command came in when we used this repo as a simnet. Now, if we are not doing anything but running on hardcoded public testnets for the forseeable future, can we probably remove the run.sh entirely, and go back to a stock docker image? Would be cleaner for the k8s repos too.

@OisinKyne @eth2devops
To run a lighthouse VC, there are two commands that need to run sequentially:

lighthouse --network goerli account validator import --directory <PATH-TO-LAUNCHPAD-KEYS-DIRECTORY>
lighthouse --network goerli vc

Therefore, we need run.sh for above 2 steps. @xenowits looked into this recently and he was unable to find a clean way to do it.