class AnsibleEYCInventory::CLI

Public Instance Methods

generate() click to toggle source
# File lib/ansible_eyc_inventory/cli.rb, line 15
def generate
  choose_app.environments.each do |env|
    dest = "#{options[:destdir]}/eyc_#{env.name}"

    template 'inventory', dest, env_name: env.name, account_name: env.account.name
    chmod dest, 0755
  end
rescue Error => e
  error e.message

  exit 1
end

Private Instance Methods

choose_app() click to toggle source
# File lib/ansible_eyc_inventory/cli.rb, line 30
def choose_app
  apps = AnsibleEYCInventory.api.apps.sort_by(&:hierarchy_name)

  say

  print_table apps.map.with_index(1) {|app, i|
    [i, app.hierarchy_name]
  }

  say

  chosen = ask('Choose an application:', limited_to: 1.upto(apps.size).map(&:to_s))

  apps[chosen.to_i.pred]
end