Sha256: 5fba469dfb7dd1591bd42a06cdf6d0e2b9e0a66ec1867160f658f35693f85897

Contents?: true

Size: 850 Bytes

Versions: 68

Compression:

Stored size: 850 Bytes

Contents

# frozen_string_literal: true

require 'avm/runners/base'
require 'eac_cli/core_ext'

module Avm
  module Instances
    class Runner < ::Avm::Runners::Base
      class << self
        def instance_class
          ::Avm.const_get(stereotype_name).const_get('Instance')
        end

        def stereotype_module
          ::Avm.const_get(stereotype_name)
        end

        def stereotype_name
          name.demodulize
        end
      end

      description = "Utilities for #{stereotype_name} instances."
      runner_with :help, :subcommands do
        desc description
        pos_arg 'instance-id'
        subcommands
      end

      delegate :instance_class, :stereotype_module, :stereotype_name, to: :class

      private

      def instance_uncached
        self.class.instance_class.by_id(parsed.instance_id)
      end
    end
  end
end

Version data entries

68 entries across 68 versions & 3 rubygems

Version Path
avm-0.28.0 lib/avm/instances/runner.rb
eac_tools-0.10.0 sub/avm/lib/avm/instances/runner.rb
avm-0.27.0 lib/avm/instances/runner.rb
eac_tools-0.9.0 sub/avm/lib/avm/instances/runner.rb
avm-0.26.0 lib/avm/instances/runner.rb
eac_tools-0.8.0 sub/avm/lib/avm/instances/runner.rb
eac_tools-0.7.0 sub/avm/lib/avm/instances/runner.rb
avm-0.25.0 lib/avm/instances/runner.rb
eac_tools-0.6.0 sub/avm/lib/avm/instances/runner.rb
eac_tools-0.5.0 sub/avm/lib/avm/instances/runner.rb
avm-0.24.0 lib/avm/instances/runner.rb
eac_tools-0.4.0 sub/avm/lib/avm/instances/runner.rb
eac_tools-0.3.0 sub/avm/lib/avm/instances/runner.rb
eac_tools-0.2.2 sub/avm/lib/avm/instances/runner.rb
avm-0.23.0 lib/avm/instances/runner.rb
avm-0.22.0 lib/avm/instances/runner.rb
avm-tools-0.120.0 sub/avm/lib/avm/instances/runner.rb
avm-0.21.0 lib/avm/instances/runner.rb
avm-tools-0.119.0 sub/avm/lib/avm/instances/runner.rb
avm-0.20.0 lib/avm/instances/runner.rb