#!/usr/bin/ruby.ruby2.5 

require 'bosh/template/renderer'
require 'optparse'

template_name = ARGV[0]

options = {}
OptionParser.new do |opts|
  opts.banner = 'Usage: bosh-templates template.erb [options]'
  opts.separator('Command-line renderer BOSH templates')

  opts.separator('')
  opts.separator('Options:')

  opts.on('-C', '--context STRING', 'JSON string containing property values for template context') do |v|
    options[:context] = v
  end
end.parse!

raise OptionParser::MissingArgument.new('--context') if options[:context].nil?

renderer = Bosh::Template::Renderer.new(options)
puts renderer.render(template_name)
