Module: Minestrone::Configuration::Servers
- Included in:
- Minestrone::Configuration
- Defined in:
- lib/minestrone/configuration/servers.rb
Instance Method Summary collapse
-
#initialize_servers ⇒ Object
:nodoc:.
-
#resolved_server ⇒ Object
Returns the configured server.
-
#server(host, options = {}) ⇒ Object
Define the server.
Instance Method Details
#initialize_servers ⇒ Object
:nodoc:
9 10 11 |
# File 'lib/minestrone/configuration/servers.rb', line 9 def initialize_servers #:nodoc: @server = nil end |
#resolved_server ⇒ Object
Returns the configured server. If the SERVER environment variable is set, it replaces the configured host name while preserving configured connection options such as user, port, and SSH options.
30 31 32 33 34 35 36 37 38 39 40 |
# File 'lib/minestrone/configuration/servers.rb', line 30 def resolved_server if env_key = server_override_env host = ENV[env_key].strip raise ArgumentError, "#{env_key} must name a single server" if host.empty? || host.include?(',') = @server ? (@server) : {} server_definition_from(host, ) else @server or raise Minestrone::NoMatchingServersError, "no server configured" end end |
#server(host, options = {}) ⇒ Object
Define the server. The host may include user and port information, or those may be supplied as options:
server "www@example.com"
server "app.example.com", :user => "deploy"
19 20 21 22 23 24 |
# File 'lib/minestrone/configuration/servers.rb', line 19 def server(host, = {}) raise ArgumentError, "server accepts one host and an optional options hash" unless .is_a?(Hash) raise ArgumentError, "you may only define one server" if @server @server = server_definition_from(host, ) end |