Sha256: 8be91a790ef9373a1e7a547d5e3022c5a7e0d9f761a7c6b06ab7005520b6f5f9

Contents?: true

Size: 496 Bytes

Versions: 2

Compression:

Stored size: 496 Bytes

Contents

require 'open3'
module Project
  class CommandSet
    attr_accessor :project, :workflow
    
    def initialize(project, workflow)
      self.project, self.workflow = project, workflow
    end
    
    def execute!
      stdin, stdout, stderr = Open3::popen3 SHELL_BINARY
      
      self.workflow.each do |command|
        command = Template.new(command, self.project).parse!
        stdin.puts command
      end
      
      stdin.close
      return stdout.read, stderr.read
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
project-1.3.0 lib/project/command_set.rb
project-1.2.0 lib/project/command_set.rb