Class: Gzr::Commands::Model::Import
- Inherits:
-
Gzr::Command
- Object
- Gzr::Command
- Gzr::Commands::Model::Import
- Includes:
- FileHelper, Model
- Defined in:
- lib/gzr/commands/model/import.rb
Instance Method Summary collapse
- #execute(input: $stdin, output: $stdout) ⇒ Object
-
#initialize(file, options) ⇒ Import
constructor
A new instance of Import.
Methods included from FileHelper
Methods included from Model
#cat_model, #create_model, #query_all_lookml_models, #trim_model, #update_model
Methods inherited from Gzr::Command
#all_color_collections, #color_collection, #color_palette_lookup!, #create_merge_query, #create_query, #default_color_collection, #field_expressions_eval, #field_names, #find_color_palette_reference, #find_vis_config_reference, #get_auth, #get_user_by_id, #keys_to_keep, #keys_to_keep_internal, #merge_query, #pairs, #query, #render_csv, #rewrite_color_palette!, #run_inline_query, #update_color_palette!
Methods included from Session
#build_connection_hash, #login, #logout_all, #pastel, #read_token_data, #say_error, #say_ok, #say_warning, #sufficient_version?, #token_file, #update_auth, #with_session, #write_token_data
Constructor Details
#initialize(file, options) ⇒ Import
Returns a new instance of Import.
35 36 37 38 39 |
# File 'lib/gzr/commands/model/import.rb', line 35 def initialize(file, ) super() @file = file @options = end |
Instance Method Details
#execute(input: $stdin, output: $stdout) ⇒ Object
41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 |
# File 'lib/gzr/commands/model/import.rb', line 41 def execute(input: $stdin, output: $stdout) say_warning("options: #{@options.inspect}", output: output) if @options[:debug] with_session do read_file(@file) do |data| if !!cat_model(data[:name]) name = data[:name] if !@options[:force] raise Gzr::CLI::Error, "Model #{name} already exists\nUse --force if you want to overwrite it" end data.select! do |k,v| keys_to_keep('update_lookml_model').include? k end model = update_model(data[:name],data) output.puts "Updated model #{model[:name]}" unless @options[:plain] output.puts model[:name] if @options[:plain] else data.select! do |k,v| keys_to_keep('create_lookml_model').include? k end model = create_model(data) output.puts "Created model #{model[:name]}" unless @options[:plain] output.puts model[:name] if @options[:plain] end end end end |