module Octo::Profile

Attributes

config[R]

Public Instance Methods

add(type, profile, server) click to toggle source
# File lib/octo/profile.rb, line 28
def add(type, profile, server)
  @config[type][profile] = [] if @config[type][profile].nil?
  @config[type][profile] << server
end
config_file() click to toggle source
# File lib/octo/profile.rb, line 6
def config_file
  "#{Dir.home}/.octorc"
end
list(type, profile = nil) click to toggle source
# File lib/octo/profile.rb, line 14
def list(type, profile = nil)
  if profile.nil?
    @config[type].keys
  else
    @config[type].each do |name, servers|
      if name == profile
        return servers
      end
    end

    return nil
  end
end
load() click to toggle source
# File lib/octo/profile.rb, line 38
def load
  if File.exists?(config_file)
    @config = YAML.load_file(config_file)
  else
    @config = {}
  end
end
profile_exists?(type, profile) click to toggle source
# File lib/octo/profile.rb, line 10
def profile_exists?(type, profile)
  @config[type].keys.include? profile
end
rm(type, profile, server) click to toggle source
# File lib/octo/profile.rb, line 33
def rm(type, profile, server)
  @config[type][profile].delete(server)
  @config[type].delete(profile) if @config[type][profile].empty?
end
save() click to toggle source
# File lib/octo/profile.rb, line 46
def save
  File.open(config_file, 'w') do |f|
    f.write YAML.dump(@config)
  end
end