pub async fn deploy_light_client_proxy(
provider: impl Provider,
contracts: &mut Contracts,
mock: bool,
genesis_state: LightClientStateSol,
genesis_stake: StakeTableStateSol,
admin: Address,
prover: Option<Address>,
) -> Result<Address>Expand description
The primary logic for deploying and initializing an upgradable light client contract.
Deploy the upgradable proxy contract, point to an already deployed light client contract as its implementation, and invoke initialize() on it.
This is run after deploy_light_client_contract(), returns the proxy address.
This works for both mock and production light client proxy.