Class: PoolParty::Resources::Remotefile

Inherits:
Resource show all
Defined in:
lib/poolparty/resources/remote_file.rb

Overview

Remote File

The remotefile resource is used to describe a file that is hosted on the master instance and propagated to the other instances

Usage

has_remotefile(:name => '...') do
  # More options. 
  # This block is optional
end

Options

  • name Describe the location of the file with the name

  • mode Describe the mode of the file (default: 644)

  • owner The owner of the file (default: poolparty user)

  • content The contents of the file

  • source Used to describe a file that is hosted on the master instance.

  • template The file contents are described with the template. The location given must be readable

To write a file to the template directory, use:

copy_template_to_storage_directory(filepath)

Example

has_remotefile(:name => "/etc/haproxy.cfg") do
  mode 644
  template File.join(File.dirname(__FILE__), "..", "templates/haproxy.conf")
end

Instance Attribute Summary

Attributes inherited from PoolPartyBaseClass

#init_opts, #ordered_resources

Instance Method Summary collapse

Methods inherited from Resource

#after_create, #after_load, available_resources, #before_load, #class_name_sym, #class_type_name, #cloud, #duplicatable?, #get_modified_options, inherited, #initialize, #is_a_resource?, #is_in_plugin?, #loaded, #resource?, #resource_name, #services

Methods included from SearchablePaths

included

Methods included from PoolParty::ResourcingDsl

#absent, #client_template_exists?, #client_templates_directory_exists?, #ensures, #get_client_or_gem_template, #is_absent, #is_present, #present

Methods included from DependencyResolverResourceExtensions

#to_properties_hash

Methods inherited from PoolPartyBaseClass

add_has_and_does_not_have_methods_for, #add_resource, add_resource_lookup_method, #add_service, #add_to_parent_if_parent_exists_and_is_a_service, #get_local_resource, #get_name_from_options_and_extra_options, #get_resource, #handle_option_values, #in_local_resources?, #initialize, #inspect, #is_a_resource?, #is_plugin?, #plugin_store, #resource, #resources, #run_in_context, #run_with_callbacks, #search_in_known_locations, #store_in_local_resources, #to_hash, #to_json

Methods included from DependencyResolverCloudExtensions

#to_properties_hash

Constructor Details

This class inherits a constructor from PoolParty::Resources::Resource

Instance Method Details

#source(arg = nil) ⇒ Object



45
46
47
# File 'lib/poolparty/resources/remote_file.rb', line 45

def source(arg=nil)
  arg ? dsl_options[:source] = arg : "#{Default.fileserver_base}/#{::File.basename(name)}"
end