end
end
-ENV["RAILS_ENV"] = ARGV[0] || "development"
+ENV["RAILS_ENV"] = ARGV[0] || ENV["RAILS_ENV"] || "development"
require File.dirname(__FILE__) + '/../config/boot'
require File.dirname(__FILE__) + '/../config/environment'
raise "Unknown crunch_job_wrapper: #{Server::Application.config.crunch_job_wrapper}"
end
+ if Server::Application.config.crunch_job_user
+ cmd_args.unshift("sudo", "-E", "-u",
+ Server::Application.config.crunch_job_user,
+ "PERLLIB=#{ENV['PERLLIB']}")
+ end
+
job_auth = ApiClientAuthorization.
new(user: User.where('uuid=?', job.modified_by_user).first,
api_client_id: 0)
job_auth.save
- cmd_args << 'crunch-job'
+ cmd_args << (ENV['CRUNCH_JOB_BIN'] || `which crunch-job`.strip)
cmd_args << '--job-api-token'
cmd_args << job_auth.api_token
cmd_args << '--job'
commit = Commit.where(sha1: job.script_version).first
if commit
cmd_args << '--git-dir'
- cmd_args << File.
- join(Rails.configuration.git_repositories_dir,
- commit.repository_name,
- '.git')
+ if File.exists?(File.
+ join(Rails.configuration.git_repositories_dir,
+ commit.repository_name + '.git'))
+ cmd_args << File.
+ join(Rails.configuration.git_repositories_dir,
+ commit.repository_name + '.git')
+ else
+ cmd_args << File.
+ join(Rails.configuration.git_repositories_dir,
+ commit.repository_name, '.git')
+ end
end
$stderr.puts "dispatch: #{cmd_args.join ' '}"