Sha256: 880ab47dbbd9ad493cb53b00a15533bcf85b48761d4335ecf87b2873e8a9bb24
Contents?: true
Size: 1.36 KB
Versions: 16
Compression:
Stored size: 1.36 KB
Contents
require 'json' require 'logger' require "base64" require "prepare-environment" require "trace-runner" class HelperRun def initialize () @basePath = Pathname.new(Canzea::config[:catalog_location]).realpath @log = Logger.new(Canzea::config[:logging_root] + '/plans.log') end def runPlan (plans) plans.each { | plan | puts "Running #{plan[:action]}" self.run plan[:solution], plan[:action], plan[:parameters] } end def run (solution, action, parameters) type = "ruby" #parameters = JSON.generate(parameters) envPush = PrepareEnvironment.new begin envScript = "#{@basePath}/helpers/#{solution}/environment.json" if File.exist?(envScript) @log.info("Adding environment variables...") envPush.addToEnv "#{envScript}" end r = RunnerWorker.new if (type == "ruby") cmd = "ruby #{@basePath}/helpers/#{solution}/#{action}.rb '#{parameters}'" else cmd = "#{@basePath}/helpers/#{solution}/#{action}.sh \"#{parameters}\"" end r.run cmd, 1, 1, false rescue => exception @log.error(cmd) @log.error(exception.to_s) @log.error(exception.backtrace) abort() end end end
Version data entries
16 entries across 16 versions & 1 rubygems