Sha256: 924eaa6d5b5f00decbf26a8a7373f67065a73f9757330ddeba8408e4d6a5f876

Contents?: true

Size: 950 Bytes

Versions: 8

Compression:

Stored size: 950 Bytes

Contents

module Nucleon
module Action
module Node
class Build < Nucleon.plugin_class(:nucleon, :cloud_action)

  #-----------------------------------------------------------------------------
  # Info

  def self.describe
    super(:node, :build, 620)
  end

  #-----------------------------------------------------------------------------
  # Settings

  def configure
    super do
      register_str :environment
      register_array :providers
    end
  end

  #---

  def arguments
    [ :environment ]
  end

  #-----------------------------------------------------------------------------
  # Operations

  def execute
    super do |node|
      info('start')

      ensure_node(node) do
        settings.delete(:environment) if settings[:environment] == ''

        if settings.has_key?(:environment)
          CORL.create_fact(:corl_environment, settings[:environment])
        end
        node.build(settings)
      end
    end
  end
end
end
end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
corl-0.5.12 lib/nucleon/action/node/build.rb
corl-0.5.11 lib/nucleon/action/node/build.rb
corl-0.5.10 lib/nucleon/action/node/build.rb
corl-0.5.9 lib/nucleon/action/node/build.rb
corl-0.5.8 lib/nucleon/action/node/build.rb
corl-0.5.7 lib/nucleon/action/node/build.rb
corl-0.5.6 lib/nucleon/action/node/build.rb
corl-0.5.5 lib/nucleon/action/node/build.rb