Class: AppConfig

Inherits:
ThorCli show all
Defined in:
lib/apigee_cli/cli/app_config.rb

Instance Method Summary collapse

Instance Method Details

#deleteObject



53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
# File 'lib/apigee_cli/cli/app_config.rb', line 53

def delete
  config_name = options[:config_name]
  entry_name  = options[:entry_name]

  config_set  = ApigeeCli::ConfigSet.new(environment)

  pull_list(config_set)

  if entry_name
    confirm = yes? "Are you sure you want to delete #{entry_name} from #{config_name} in #{environment} environment? [y/n]"
    exit if !confirm

    remove_entry(config_set, config_name, entry_name)
  else
    confirm = yes? "Are you sure you want to delete #{config_name} from #{environment} environment? [y/n]"
    exit if !confirm

    remove_config(config_set, config_name)
  end
end

#listObject



9
10
11
12
13
14
15
16
17
18
# File 'lib/apigee_cli/cli/app_config.rb', line 9

def list
  config_name = options[:config_name]
  config_set  = ApigeeCli::ConfigSet.new(environment)

  if config_name
    pull_config(config_set, config_name)
  else
    pull_list(config_set)
  end
end

#push(*entries) ⇒ Object



23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
# File 'lib/apigee_cli/cli/app_config.rb', line 23

def push(*entries)
  config_name = options[:config_name]
  overwrite   = options[:overwrite] || false

  config_set  = ApigeeCli::ConfigSet.new(environment)

  data = populate_data(entries)
  result, changed_keys = config_set.add_config(config_name, data, overwrite)

  if result == :error
    say "Error [#{changed_keys.first}] pushing config for [#{config_name}] to [#{environment}] environment"
    exit
  end

  if result == :new
    say "Creating new config for [#{config_name}] in [#{environment}] environment"
  elsif result == :existing
    say "Adding new keys #{changed_keys} to config [#{config_name}] in [#{environment}] environment"
  elsif result == :overwritten
    say "Overwriting existing config [#{config_name}] in [#{environment}] environment"
  end

  updated_config = config_set.read_config(config_name)[ApigeeCli::ConfigSet::ENTRY_KEY]

  render_config(config_name, updated_config, changed_keys)
end