module Lono::Template::Strategy::Common::Helpers
Public Instance Methods
extract_scripts(options={})
click to toggle source
Bash code that is meant to included in user-data
# File lib/lono/template/strategy/common/helpers.rb, line 4 def extract_scripts(options={}) settings = setting.data["extract_scripts"] || {} options = settings.merge(options) # defaults also here in case they are removed from settings to = options[:to] || "/opt" user = options[:as] || "ec2-user" if Dir.glob("#{Lono.config.scripts_path}/*").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 lono extract_scripts helper. # Downloads scripts from s3, extract them, and setup. mkdir -p #{to} aws s3 cp #{scripts_s3_path} #{to}/ ( cd #{to} tar zxf #{to}/#{scripts_name} chown -R #{user}:#{user} #{to}/scripts ) BASH_CODE end
scripts_name()
click to toggle source
# File lib/lono/template/strategy/common/helpers.rb, line 31 def scripts_name File.basename(scripts_s3_path) end
scripts_s3_path()
click to toggle source
# File lib/lono/template/strategy/common/helpers.rb, line 35 def scripts_s3_path upload = Lono::Script::Upload.new(@options) upload.s3_dest end
setting()
click to toggle source
# File lib/lono/template/strategy/common/helpers.rb, line 40 def setting @setting ||= Lono::Setting.new end