class Multideploy::CreateScripts
Attributes
c[R]
Public Class Methods
new()
click to toggle source
# File lib/mina/multideploy/create_scripts.rb, line 7 def initialize @c = Mina::Multideploy.configuration end
Public Instance Methods
call()
click to toggle source
# File lib/mina/multideploy/create_scripts.rb, line 11 def call create_dir write_ruby_script end
Private Instance Methods
create_dir()
click to toggle source
# File lib/mina/multideploy/create_scripts.rb, line 18 def create_dir FileUtils.mkdir_p(working_dir) end
deploy_file()
click to toggle source
# File lib/mina/multideploy/create_scripts.rb, line 26 def deploy_file 'servers_deploy.rb' end
ruby_script()
click to toggle source
# File lib/mina/multideploy/create_scripts.rb, line 37 def ruby_script template_path = File.join(File.dirname(__FILE__), "./templates/#{deploy_file}") script = File.read(template_path) script = script.gsub('SERVERS_TO_REPLACE', c.servers.inspect) script = script.gsub('ORIGINAL_DEPLOY_FILE_TO_REPLACE', c.original) script = script.gsub('CUSTOM_W_DIR_TO_REPLACE', c.w_dir) end
working_dir()
click to toggle source
# File lib/mina/multideploy/create_scripts.rb, line 22 def working_dir c.w_dir end
write_ruby_script()
click to toggle source
# File lib/mina/multideploy/create_scripts.rb, line 30 def write_ruby_script File.open("#{working_dir}/#{deploy_file}", 'w+') do |f| f.write(ruby_script) end FileUtils.chmod 0o755, "#{working_dir}/#{deploy_file}" end