class Travis::Tools::Github

def security(type, key, arg, name)

def security(type, key, arg, name)
  return false unless System.has? 'security'
  return false unless system "security find-#{type}-password #{arg} 2>/dev/null >/dev/null"
  debug "requesting to load #{name} from keychain"
  result = `security find-#{type}-password #{arg} -#{key} 2>&1`.chomp
  $CHILD_STATUS.success? ? yield(result) : debug('request denied')
rescue StandardError => e
  raise e if explode
end