class ConfConf::CLI::Root

Public Instance Methods

export(environment_name) click to toggle source
# File lib/conf_conf/cli/root.rb, line 27
def export(environment_name)
  project     = ConfConf::Project.new
  environment = project.environments[environment_name]

  environment.variables.each do |variable_name, variable_value|
    puts "#{variable_name}=#{variable_value}"
  end
end
import(environment_name) click to toggle source
# File lib/conf_conf/cli/root.rb, line 38
def import(environment_name)
  require 'dotenv'

  project = ConfConf::Project.new
  environment = project.environments[environment_name]
  dotenv_environment = Dotenv::Environment.new('.env')

  dotenv_environment.each do |k,v|
    environment.set(k, v)
  end

  environment.save
  puts MultiJson.dump(environment.variables, pretty: true)
end
info() click to toggle source
# File lib/conf_conf/cli/root.rb, line 54
def info
  project = ConfConf::Project.new

  summary = {}
  summary[:environments] = project.environments.to_a.collect(&:name)
  summary[:variables] = {}

  project.environments.to_a.each do |environment|
    environment.variables.each do |variable_name, variable_value|
      summary[:variables][variable_name] ||= []
      summary[:variables][variable_name] << environment.name
    end
  end

  puts MultiJson.dump(summary, pretty: true)
end
init() click to toggle source
# File lib/conf_conf/cli/root.rb, line 19
def init
  account = ConfConf::Project::Developer.current
  FileUtils.mkdir_p('config/conf_conf')
  FileUtils.mkdir_p('config/conf_conf/environments')
  puts MultiJson.dump(account: account, pretty: true)
end