Sha256: ae60b5d1cf6defd9dc1c57bd636a02b86638a8bcb346a1a7e873812648202ed6

Contents?: true

Size: 987 Bytes

Versions: 1

Compression:

Stored size: 987 Bytes

Contents

# frozen_string_literal: true

require 'avm/instances/entry_keys'
require 'eac_cli/core_ext'
require 'eac_ruby_utils/console/docopt_runner'
require 'shellwords'

module Avm
  module Tools
    class Runner < ::EacRubyUtils::Console::DocoptRunner
      class EacRailsBase0 < ::Avm::EacRailsBase1::Runner
        class RailsServer
          DEFAULT_RAILS_ENVIRONMENT = 'development'
          runner_with ::Avm::EacRailsBase1::RunnerWith::Bundle
          runner_definition do
            desc 'Run the embbeded Rails web server.'
          end

          def run
            infov 'Environment', rails_environment
            infov 'Bundle args', ::Shellwords.join(bundle_args)
            infov 'Result', bundle_command.system
          end

          protected

          def bundle_args
            ['exec', 'rails', 'server', '--port',
             runner_context.call(:instance).read_entry(::Avm::Instances::EntryKeys::WEB_PORT)]
          end
        end
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
avm-tools-0.74.1 lib/avm/tools/runner/eac_rails_base0/rails_server.rb