Class: Kettle::Family::ExecutionProfile
- Inherits:
-
Object
- Object
- Kettle::Family::ExecutionProfile
- Defined in:
- lib/kettle/family/execution_profile.rb
Overview
The execution context is a compatibility boundary, not a collection of incidental ENV assignments. Each workflow command selects one profile so path-gem, lockfile, install, and mutation rules remain reviewable.
Defined Under Namespace
Classes: Definition
Constant Summary collapse
- DEFINITIONS =
{ development_local: Definition.new( name: :development_local, path_gem_policy: :configured_siblings, lockfile_role: :canonical, install_location: :member, host_platform_policy: :active_platform_must_resolve, allowed_mutations: i[development_lockfiles source test] ), template_local: Definition.new( name: :template_local, path_gem_policy: :configured_siblings, lockfile_role: :canonical, install_location: :member, host_platform_policy: :active_platform_must_resolve, allowed_mutations: i[template development_lockfiles generated] ), release_registry: Definition.new( name: :release_registry, path_gem_policy: :registry_only, lockfile_role: :canonical, install_location: :disposable, host_platform_policy: :active_platform_must_resolve, allowed_mutations: i[canonical_release_lockfiles] ), release_monorepo: Definition.new( name: :release_monorepo, path_gem_policy: :configured_release_wave, lockfile_role: :canonical, install_location: :disposable, host_platform_policy: :active_platform_must_resolve, allowed_mutations: i[canonical_release_lockfiles configured_wave_paths] ), release_recovery: Definition.new( name: :release_recovery, path_gem_policy: :configured_release_wave, lockfile_role: :canonical, install_location: :disposable, host_platform_policy: :active_platform_must_resolve, allowed_mutations: i[canonical_release_lockfiles configured_wave_paths] ) }.each_value(&:freeze).freeze
Class Method Summary collapse
Class Method Details
.fetch(name) ⇒ Object
69 70 71 72 73 |
# File 'lib/kettle/family/execution_profile.rb', line 69 def self.fetch(name) DEFINITIONS.fetch(name.to_sym) rescue KeyError raise ArgumentError, "unknown execution profile: #{name.inspect}" end |