class Dslimple::CLI
Public Instance Methods
apply()
click to toggle source
# File lib/dslimple/cli.rb, line 44 def apply require 'dslimple/applier' applier = Dslimple::Applier.new(client, self, options) applier.execute rescue => e rescue_from(e) rescue Dslimple::DSL::Error => e rescue_from(e) end
export()
click to toggle source
# File lib/dslimple/cli.rb, line 22 def export require 'dslimple/exporter' fd = options[:file] == '-' ? STDOUT : File.open(options[:file].to_s, 'w') exporter = Dslimple::Exporter.new(client, fd, options) exporter.execute fd.close rescue => e rescue_from(e) end
Private Instance Methods
client()
click to toggle source
# File lib/dslimple/cli.rb, line 57 def client @aclient ||= Dslimple::Client.new( access_token: options[:api_token] || ENV['DSLIMPLE_API_TOKEN'] || ENV['DSLIMPLE_ACCESS_TOKEN'], sandbox: options[:sandbox] ) end
rescue_from(e)
click to toggle source
# File lib/dslimple/cli.rb, line 64 def rescue_from(e) raise e if options[:debug] case e when Dnsimple::AuthenticationError error(set_color(e.message, :red, :bold)) when Dnsimple::RequestError error(set_color("#{e.message}: #{JSON.parse(e.http_response.body)['message']}", :yellow, :bold)) when Dslimple::DSL::Error error(set_color(e.message, :yellow, :bold)) else error(set_color("#{e.class}: #{e.message}", :red, :bold)) end e.backtrace.each do |bt| say(" #{set_color('from', :green)} #{bt}") end exit 1 end