Skip to content

Conversation

@bussyjd
Copy link
Collaborator

@bussyjd bussyjd commented Sep 10, 2025

Summary

Fixes the obolup script to only install the light client for the selected network instead of installing all three networks (mainnet, hoodi, sepolia) every time.

Problem Solved

Previously, when running ./obolup --network hoodi, the script would install light clients for ALL networks:

  • l1-light-client-mainnet
  • l1-light-client-hoodi
  • l1-light-client-sepolia

This caused:

  • 🔴 Unnecessary resource usage in the Kubernetes cluster
  • 🔴 Longer deployment times
  • 🔴 Confusion about which network is actually being used
  • 🔴 The --network flag didn't fully control what was deployed

Solution

Changed the script to only install the light client for the selected network using the $__network variable.

Before:

log_info "Installing the Obol Stack Ethereum light clients..."
ensure helm upgrade ... --install l1-light-client-mainnet obol/helios -f ../values/mainnet/helios.yaml
ensure helm upgrade ... --install l1-light-client-hoodi obol/helios -f ../values/hoodi/helios.yaml
ensure helm upgrade ... --install l1-light-client-sepolia obol/helios -f ../values/sepolia/helios.yaml

After:

log_info "Installing the Obol Stack Ethereum light client for $__network..."
ensure helm upgrade ... --install l1-light-client obol/helios -f ../values/$__network/helios.yaml

Impact

  • ✅ Only deploys the light client for the selected network
  • ✅ Reduces resource usage by ~66% (1 client instead of 3)
  • ✅ Faster deployment times
  • ✅ Clear 1:1 mapping between --network flag and what gets deployed
  • ✅ Cleaner kubectl get pods -n l1 output

Testing

# Test with different networks
./obolup --network mainnet   # Should only install l1-light-client for mainnet
./obolup --network hoodi     # Should only install l1-light-client for hoodi
./obolup --network sepolia   # Should only install l1-light-client for sepolia

# Verify only one light client is installed
kubectl get pods -n l1

Breaking Changes

None - this makes the behavior match what users expect from the --network flag.

- Changed from installing all three light clients to only installing the one for the selected network
- Reduces resource usage and deployment time
- Prevents confusion about which network is actually being used

Previously, the script would install light clients for mainnet, hoodi, and sepolia regardless of the --network flag. Now it only installs the light client for the specified network.
Copy link
Contributor

@OisinKyne OisinKyne left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm okay with this, but it may impact the designs (@agaskrobot) where we assume we'll always have a mainnet network to look at

@OisinKyne OisinKyne merged commit 7349a8f into main Sep 17, 2025
1 check passed
@OisinKyne OisinKyne deleted the fix/selective-light-client-install branch September 17, 2025 16:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants