Module: Repositories

Included in:
GHGem
Defined in:
lib/repositories.rb

Instance Method Summary collapse

Instance Method Details

#create_repository(repository_name, repository_description = "", homepage = "", private_repository = false, auto_init = false, has_issues = false, has_projects = false, has_wiki = false) ⇒ Object



33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
# File 'lib/repositories.rb', line 33

def create_repository(repository_name, repository_description = "", homepage = "", private_repository = false, auto_init = false, has_issues = false, has_projects = false, has_wiki = false)
  uri = URI.parse("https://api.github.com/user/repos")
  request = Net::HTTP::Post.new(uri)
  request.basic_auth(@nickname, @token)
  request.body = JSON.dump({
    "name" => repository_name,
    "description" => repository_name,
    "homepage" => homepage,
    "private" => private_repository,
    "has_issues" => has_issues,
    "has_projects" => has_projects,
    "has_wiki" => has_wiki,
  })

  ap(JSON.parse(responser(uri, request).body))
end

#get_all_private_repositories(name, password) ⇒ Object



11
12
13
14
15
16
17
# File 'lib/repositories.rb', line 11

def get_all_private_repositories(name, password)
  uri = URI.parse("https://api.github.com/user/repos?visibility=private")
  request = Net::HTTP::Get.new(uri)
  request.basic_auth(name, password)

  ap(JSON.parse(responser(uri, request).body))
end

#get_organization_repositories(organization) ⇒ Object



4
5
6
7
8
9
# File 'lib/repositories.rb', line 4

def get_organization_repositories(organization)
  uri = URI.parse("https://api.github.com/orgs/#{organization}/repos")
  response = Net::HTTP.get_response(uri)

  ap(JSON.parse(responser(uri, request).body))
end

#get_public_repositories(nickname) ⇒ Object



19
20
21
22
23
24
25
26
27
28
29
30
31
# File 'lib/repositories.rb', line 19

def get_public_repositories(nickname)
  @nickname = nickname

  uri = URI.parse("https://api.github.com/users/#{@nickname}/repos")
  request = Net::HTTP::Get.new(uri)
  request.basic_auth("#{@nickname}", "#{@token}")

  if responser(uri, request).body.include?("Bad credentials")
    ap("Invalid token!")
  else
    ap(JSON.parse(responser(uri, request).body))
  end
end