[metadata]
  name = "lotus-soup"
  author = ""

[global]
  plan = "lotus-soup"
  case = "drand-halting"
  total_instances = 6
  builder = "docker:go"
  runner = "local:docker"

[global.build]
  selectors = ["testground"]

[global.run_config]
  exposed_ports = { pprof = "6060", node_rpc = "1234", miner_rpc = "2345" }

[global.build_config]
  enable_go_build_cache = true

[global.run.test_params]
  clients = "1"
  miners = "1"
  balance = "20000000" # These balances will work for maximum 100 nodes, as TotalFilecoin is 2B
  sectors = "10"
  random_beacon_type = "local-drand"
  genesis_timestamp_offset = "0"
#  mining_mode = "natural"

[[groups]]
  id = "bootstrapper"
  [groups.resources]
    memory = "120Mi"
    cpu = "10m"
  [groups.instances]
    count = 1
    percentage = 0.0
  [groups.run]
    [groups.run.test_params]
      role = "bootstrapper"


[[groups]]
  id = "miners"
  [groups.resources]
    memory = "120Mi"
    cpu = "10m"
  [groups.instances]
    count = 1
    percentage = 0.0
  [groups.run]
    [groups.run.test_params]
      role = "miner"


[[groups]]
  id = "clients"
  [groups.resources]
    memory = "120Mi"
    cpu = "10m"
  [groups.instances]
    count = 1
    percentage = 0.0
  [groups.run]
    [groups.run.test_params]
      role = "client"


[[groups]]
  id = "drand"
  [groups.instances]
    count = 3
    percentage = 0.0
  [groups.run]
    [groups.run.test_params]
      role = "drand"
      drand_period = "1s"
      drand_log_level = "none"
      suspend_events = "wait 20s -> halt -> wait 1m -> resume -> wait 2s -> halt -> wait 1m -> resume"