Skip to content

Commit 2a0ad72

Browse files
authored
fix: config name isn't always a base config (#1047)
1 parent b7b0e3d commit 2a0ad72

File tree

3 files changed

+13
-4
lines changed

3 files changed

+13
-4
lines changed

config/runtime.exs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,7 @@ config :lambda_ethereum_consensus, LambdaEthereumConsensus.Store.Db, dir: datadi
8484
{chain_config, bootnodes} =
8585
case testnet_dir do
8686
nil ->
87-
config = ConfigUtils.parse_config(network)
87+
config = ConfigUtils.parse_config!(network)
8888
bootnodes = YamlElixir.read_from_file!("config/networks/#{network}/boot_enr.yaml")
8989
{config, bootnodes}
9090

lib/chain_spec/configs/custom.ex

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,11 +8,11 @@ defmodule CustomConfig do
88
def load_from_file!(path) do
99
config = ConfigUtils.load_config_from_file!(path)
1010
preset = Map.fetch!(config, "PRESET_BASE") |> ConfigUtils.parse_preset()
11-
base_config = Map.fetch!(config, "CONFIG_NAME") |> ConfigUtils.parse_config()
11+
config_name = Map.get(config, "CONFIG_NAME") |> ConfigUtils.parse_config()
1212

1313
merged_config =
1414
preset.get_preset()
15-
|> Map.merge(base_config.get_all())
15+
|> Map.merge(get_base_config(config_name))
1616
|> Map.merge(config)
1717

1818
Application.put_env(:lambda_ethereum_consensus, __MODULE__, merged: merged_config)
@@ -37,4 +37,7 @@ defmodule CustomConfig do
3737
end
3838

3939
defp parse_int(v), do: v
40+
41+
defp get_base_config(:unknown), do: %{}
42+
defp get_base_config(config_name), do: config_name.get_all()
4043
end

lib/chain_spec/utils.ex

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,13 @@ defmodule ConfigUtils do
3030
def parse_config("holesky"), do: HoleskyConfig
3131
def parse_config("minimal"), do: MinimalConfig
3232
def parse_config("gnosis"), do: GnosisConfig
33-
def parse_config(other), do: raise("Unknown config: #{other}")
33+
def parse_config(_), do: :unknown
34+
35+
def parse_config!(config) do
36+
with :unknown <- parse_config(config) do
37+
raise("Unknown config: #{config}")
38+
end
39+
end
3440

3541
def parse_preset("mainnet"), do: MainnetPreset
3642
def parse_preset("minimal"), do: MinimalPreset

0 commit comments

Comments
 (0)