Sha256: 025e1ec0aa1fa293b1aad3a5b53239b47540d5443ae00d243831709649156daa

Contents?: true

Size: 1.19 KB

Versions: 3

Compression:

Stored size: 1.19 KB

Contents

module PoolParty
  module CloudDsl
    
    # TODO: Add to ec2 remoter_base
    # def mount_ebs_volume_at(id="", loc="/data")
    #   ebs_volume_id id
    #   ebs_volume_mount_point loc
    #   ebs_volume_device "/dev/#{id.sanitize}"
    #         
    #   has_mount(:name => loc, :device => ebs_volume_device)
    #   has_directory(:name => loc)
    # end
    
    def dependency_resolver(name='puppet')
      klass = name.preserved_class_constant("Resolver")
      raise DependencyResolverException.new("Unknown resolver") unless klass
      dsl_options[:dependency_resolver] = klass unless dsl_options[:dependency_resolver]
    end
    
    # Enable a service package
    def enable(service);dsl_options[service] = :enabled;end
    # Disable a service package
    def disable(service);dsl_options[service] = :disabled;end
    
    # Check to see if the package has been enabled
    def enabled?(srv);dsl_options.has_key?(srv) && dsl_options[srv] == :enabled;end
    
    # All services that are :enabled and have a plugin that corresponds, call on the cloud
    def add_optional_enabled_services
      dsl_options.each do |k,v|
        self.send k if enabled?(k) && respond_to?(k)
      end
    end
    
  end
end

Version data entries

3 entries across 3 versions & 2 rubygems

Version Path
auser-poolparty-1.1.6 lib/poolparty/modules/cloud_dsl.rb
auser-poolparty-1.1.7 lib/poolparty/modules/cloud_dsl.rb
fairchild-poolparty-1.1.5 lib/poolparty/modules/cloud_dsl.rb