module Porkadot::Assets
def render_erb file, **opts
def render_erb file, **opts file = file.to_s opts[:config] = self.config opts[:global_config] = self.global_config opts[:certs] = Porkadot::Assets::Certs.new(self.global_config) opts[:u] = ErbUtils.new logger.info "----> #{file}" asset = config.asset_path(file) if opts[:force] != nil && File.file?(asset) logger.debug "------> Already exists: skipping #{file}" return end asset_dir = File.dirname(asset) FileUtils.mkdir_p(asset_dir) unless File.directory?(asset_dir) open(File.join(self.class::TEMPLATE_DIR, "#{file}.erb")) do |io| open(asset, 'w') do |out| out.write ERB.new(io.read, trim_mode: '-').result_with_hash(opts) end end end
def render_secrets_erb file, opts={}
def render_secrets_erb file, opts={} file = file.to_s opts[:config] = self.config opts[:global_config] = self.global_config opts[:certs] = Porkadot::Assets::Certs.new(self.global_config) opts[:u] = ErbUtils.new logger.info "----> #{file}" secret = config.secrets_path(file) secret_dir = File.dirname(secret) FileUtils.mkdir_p(secret_dir) unless File.directory?(secret_dir) open(File.join(self.class::TEMPLATE_DIR, "#{file}.erb")) do |io| open(secret, 'w') do |out| out.write ERB.new(io.read, trim_mode: '-').result_with_hash(opts) end end end