Sha256: 7ce73d805f3ed7f10f2220e8621b297f04d543edb1b2bb245a7037fc4163ef82

Contents?: true

Size: 1015 Bytes

Versions: 11

Compression:

Stored size: 1015 Bytes

Contents

# encoding: utf-8
module LocalPac
  module ServerCommands
    class Puma

      private

      attr_reader :environment, :pid_file, :config_file, :listen, :worker_count

      public

      def initialize(options = {})
        @environment  = options.fetch(:environment, :development)
        @pid_file     = options.fetch(:pid_file, LocalPac.config.pid_file)
        @config_file  = options.fetch(:config_file, ::File.expand_path('../../../../config.ru', __FILE__))
        @listen       = options.fetch(:listen, 'tcp://127.0.0.1:8080')
        @worker_count = options.fetch(:worker_count, nil)

      rescue KeyError => e
        raise ArgumentError, e.message
      end

      def to_s
        cmd = []

        cmd << 'puma'
        cmd << "-e #{environment}" if environment
        cmd << "--pidfile #{pid_file}" if pid_file
        cmd << "-b #{listen}" if listen
        cmd << "-w #{worker_count}" if worker_count
        cmd << config_file if config_file

        cmd.join(" ")
      end
    end
  end
end

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
local_pac-0.10.2 lib/local_pac/server_commands/puma.rb
local_pac-0.10.1 lib/local_pac/server_commands/puma.rb
local_pac-0.10.0 lib/local_pac/server_commands/puma.rb
local_pac-0.9.0 lib/local_pac/server_commands/puma.rb
local_pac-0.7.0 lib/local_pac/server_commands/puma.rb
local_pac-0.6.3 lib/local_pac/server_commands/puma.rb
local_pac-0.6.2 lib/local_pac/server_commands/puma.rb
local_pac-0.6.1 lib/local_pac/server_commands/puma.rb
local_pac-0.5.0 lib/local_pac/server_commands/puma.rb
local_pac-0.4.0 lib/local_pac/server_commands/puma.rb
local_pac-0.3.0 lib/local_pac/server_commands/puma.rb