Module: Lemans::Environments

Defined in:
lib/lemans/environments.rb,
lib/lemans/environments/base.rb,
lib/lemans/environments/daytona.rb,
lib/lemans/environments/daytona/shell.rb,
lib/lemans/environments/daytona/retries.rb,
lib/lemans/environments/daytona/sdk_tweaks.rb,
lib/lemans/environments/daytona/snapshot_store.rb

Overview

The backends lemans run --backend can name, and the one place a name becomes a class. An unknown backend fails as a config mistake.

Defined Under Namespace

Classes: Base, Daytona

Constant Summary collapse

BACKENDS =
{ "daytona" => "Daytona" }.freeze

Class Method Summary collapse

Class Method Details

.build(backend) ⇒ Object



9
10
11
12
13
14
# File 'lib/lemans/environments.rb', line 9

def self.build(backend, **)
  constant = BACKENDS[backend.to_s] or
    raise ConfigError, "unknown backend #{backend.inspect} (known: #{BACKENDS.keys.join(", ")})"

  const_get(constant).new(**)
end