Sha256: 3ac58cebe83fa311535c05ea26622b8b01e150a04f1dc7f60a87775bd83a15a8

Contents?: true

Size: 791 Bytes

Versions: 20

Compression:

Stored size: 791 Bytes

Contents

module Foreplay
  class Engine
    class Role
      attr_reader :environment, :mode, :instructions, :servers
      def initialize(e, m, i)
        @environment  = e
        @mode         = m
        @instructions = i
        @servers      = @instructions['servers']

        preposition = mode == :deploy ? 'to' : 'for'

        return if @servers.length == 1

        puts "#{mode.capitalize}ing #{instructions['name'].yellow} #{preposition} #{@servers.join(', ').yellow} "\
             "for the #{instructions['role'].dup.yellow} role in the #{environment.dup.yellow} environment..."
      end

      def threads
        servers.map do |server|
          Thread.new { Foreplay::Engine::Server.new(environment, mode, instructions, server).execute }
        end
      end
    end
  end
end

Version data entries

20 entries across 20 versions & 1 rubygems

Version Path
foreplay-0.17.2 lib/foreplay/engine/role.rb
foreplay-0.17.1 lib/foreplay/engine/role.rb
foreplay-0.17.0 lib/foreplay/engine/role.rb
foreplay-0.16.0 lib/foreplay/engine/role.rb
foreplay-0.15.4 lib/foreplay/engine/role.rb
foreplay-0.15.2 lib/foreplay/engine/role.rb
foreplay-0.15.1 lib/foreplay/engine/role.rb
foreplay-0.15.0 lib/foreplay/engine/role.rb
foreplay-0.13.5 lib/foreplay/engine/role.rb
foreplay-0.13.4 lib/foreplay/engine/role.rb
foreplay-0.13.3 lib/foreplay/engine/role.rb
foreplay-0.13.2 lib/foreplay/engine/role.rb
foreplay-0.13.1 lib/foreplay/engine/role.rb
foreplay-0.13.0 lib/foreplay/engine/role.rb
foreplay-0.11.2 lib/foreplay/engine/role.rb
foreplay-0.11.1 lib/foreplay/engine/role.rb
foreplay-0.11.0 lib/foreplay/engine/role.rb
foreplay-0.10.3 lib/foreplay/engine/role.rb
foreplay-0.10.2 lib/foreplay/engine/role.rb
foreplay-0.10.1 lib/foreplay/engine/role.rb