module Forger::Template::Helper::ScriptHelper
Public Instance Methods
extract_scripts(options={})
click to toggle source
Bash code that is meant to included in user-data
# File lib/forger/template/helper/script_helper.rb, line 3 def extract_scripts(options={}) settings_options = settings["extract_scripts"] || {} options = settings_options.merge(options) # defaults also here in case they are removed from settings to = options[:to] || "/opt" user = options[:as] || "ec2-user" if Dir.glob("#{Forger.root}/app/scripts*").empty? puts "WARN: you are using the extract_scripts helper method but you do not have any app/scripts.".color(:yellow) calling_line = caller[0].split(':')[0..1].join(':') puts "Called from: #{calling_line}" return "" end <<-BASH_CODE # Generated from the forger extract_scripts helper. # Downloads scripts from s3, extract them, and setup. mkdir -p #{to} aws s3 cp #{scripts_s3_path} #{to}/ ( cd #{to} rm -rf #{to}/scripts # cleanup tar zxf #{to}/#{scripts_name} chmod -R a+x #{to}/scripts chown -R #{user}:#{user} #{to}/scripts ) BASH_CODE end
Private Instance Methods
register_extract_scripts()
click to toggle source
# File lib/forger/template/helper/script_helper.rb, line 33 def register_extract_scripts end
scripts_name()
click to toggle source
# File lib/forger/template/helper/script_helper.rb, line 37 def scripts_name File.basename(scripts_s3_path) end
scripts_s3_path()
click to toggle source
# File lib/forger/template/helper/script_helper.rb, line 41 def scripts_s3_path upload = Forger::Script::Upload.new upload.s3_dest end