Sha256: 482cfc848c6ab299a980a860f43d384144aca1d470de2abbd3e3bf76d265d683

Contents?: true

Size: 628 Bytes

Versions: 1

Compression:

Stored size: 628 Bytes

Contents

module SousChef
  module Resource
    class Execute < Base
      def initialize(context, name=nil, &block)
        super

        @cwd = nil
      end

      def to_script
        @script ||= begin
          prepend %{cd #{escape_path(@cwd)}} if @cwd
          @commands = @commands.inject([]) do |result, line|
            result + line.split("\n")
          end
          super
        end
      end

      def cwd(dir=nil)
        set_or_return(:cwd, dir)
      end

      def command(cmd)
        @commands << cmd
      end

      def creates(path)
        not_if %{test -e #{escape_path(path)}}
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
sous_chef-0.0.1 lib/sous_chef/resource/execute.rb