Sha256: ec4e2a4e007ea718428c673f8603348886a01673f671e3d94ef3a6c7167833e2

Contents?: true

Size: 873 Bytes

Versions: 5

Compression:

Stored size: 873 Bytes

Contents

module PoolParty    
  class Rsyncmirror
        
    virtual_resource(:rsyncmirror) do
      
      def loaded(opts={}, parent=self)
        @parent = parent        
        execute_on_node do
          @dir = dir || name
          has_exec(opts.merge({:command => "#{cloud.remote_rsync_command} --no-implied-dirs --delete-excluded #{Base.user}@master:#{@dir}/ #{@dir}/".safe_quote, :name => "rsync-#{name}"}))
        end
      end
            
      # Since git is not a native type, we have to say which core resource
      # it is using to be able to require it
      def class_type_name
        "exec"
      end
      
      # Because we are requiring an exec, instead of a built-in package of the git, we have to overload
      # the to_s method and prepend it with the same name as above
      def key
        "rsync-#{name}"
      end
      
    end
    
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
auser-poolparty-0.2.91 lib/poolparty/plugins/rsyncmirror.rb
auser-poolparty-0.2.92 lib/poolparty/plugins/rsyncmirror.rb
auser-poolparty-0.2.93 lib/poolparty/plugins/rsyncmirror.rb
auser-poolparty-0.2.94 lib/poolparty/plugins/rsyncmirror.rb
auser-poolparty-1.0.0 lib/poolparty/plugins/rsyncmirror.rb