Sha256: 04af2b0c4630f7de39440369b5f21ba03d014a97fb2b8b7c10e5d3a1a8cd0638

Contents?: true

Size: 493 Bytes

Versions: 3

Compression:

Stored size: 493 Bytes

Contents

module Bard
  class Provision < Struct.new(:config, :ssh_url)
    def self.call(...) = new(...).call

    def call
      %w[SSH User AuthorizedKeys Apt MySQL Repo MasterKey RVM App Passenger Data HTTP LogRotation Deploy].each do |step|
        require "bard/provision/#{step.downcase}"
        self.class.const_get(step).call(*values)
      end
    end

    private

    def server
      config[:production]
    end

    def provision_server
      server.with(ssh: ssh_url)
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
bard-1.3.7 lib/bard/provision.rb
bard-1.3.6 lib/bard/provision.rb
bard-1.3.5 lib/bard/provision.rb