Sha256: fa8e8cc86560845a30c576a168fb5ff43112429c24f6e33221443aea85b871fb
Contents?: true
Size: 1.06 KB
Versions: 1
Compression:
Stored size: 1.06 KB
Contents
module Sprinkle module Installers # The runner installer is great for running a simple command. # # == Example Usage # # package :magic_beans do # runner "make world" # end # # You can also pass multiple commands as arguments or an array. # # package :magic_beans do # runner "make world", "destroy world" # runner [ "make world", "destroy world" ] # end # class Runner < Installer api do def runner(*cmds, &block) options = cmds.extract_options! install Runner.new(self, cmds, options, &block) end end attr_accessor :cmds #:nodoc: def initialize(parent, cmds, options = {}, &block) #:nodoc: super parent, options, &block @cmds = [*cmds].flatten raise "you need to specify a command" if cmds.nil? end protected def install_commands #:nodoc: sudo? ? @cmds.map { |cmd| "#{sudo_cmd}#{cmd}"} : @cmds end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
sprinkle-0.5.2 | lib/sprinkle/installers/runner.rb |