Module: Pod::GitHub

Defined in:
lib/cocoapods-core/github.rb

Overview

Allows to access information about the GitHub repos.

This class is stored in Core because it might be used by web services.

Class Method Summary collapse

Class Method Details

.branches(url) ⇒ Array

Returns the branches of a repo.

Parameters:

  • url (String)

    @see #repo

Returns:

  • (Array)

    The list of the branches.



49
50
51
52
53
# File 'lib/cocoapods-core/github.rb', line 49

def self.branches(url)
  if repo_id = normalized_repo_id(url)
    peform_request("https://api.github.com/repos/#{repo_id}/branches")
  end
end

.contents(url, path = nil, branch = nil) ⇒ Array, Hash

Returns the contents of a file or directory in a repository.

Parameters:

  • url (String)

    @see #repo

  • path (#to_s) (defaults to: nil)

    The path for which the contents are needed.

  • branch (String) (defaults to: nil)

    The branch for which to fetch the contents of the path.

Returns:

  • (Array)

    The list of the files and of the directories if the given path is a directory.

  • (Hash)

    The contents of the file (usually base64 encoded).



70
71
72
73
74
75
76
77
# File 'lib/cocoapods-core/github.rb', line 70

def self.contents(url, path = nil, branch = nil)
  if repo_id = normalized_repo_id(url)
    request_url = "https://api.github.com/repos/#{repo_id}/contents"
    request_url << "/#{path}" if path
    request_url << "?ref=#{branch}" if branch
    peform_request(request_url)
  end
end

.repo(url) ⇒ Hash

Returns the information of a repo.

Parameters:

  • url (String)

    The URL of the repo.

Returns:

  • (Hash)

    The hash containing the data as reported by GitHub.



25
26
27
28
29
# File 'lib/cocoapods-core/github.rb', line 25

def self.repo(url)
  if repo_id = normalized_repo_id(url)
    peform_request("https://api.github.com/repos/#{repo_id}")
  end
end

.tags(url) ⇒ Array

Returns the tags of a repo.

Parameters:

  • url (String)

    @see #repo

Returns:

  • (Array)

    The list of the tags.



37
38
39
40
41
# File 'lib/cocoapods-core/github.rb', line 37

def self.tags(url)
  if repo_id = normalized_repo_id(url)
    peform_request("https://api.github.com/repos/#{repo_id}/tags")
  end
end

.user(login) ⇒ Hash

Returns the information of a user.

Parameters:

  • login (String)

    The name of the user.

Returns:

  • (Hash)

    The data of user.



14
15
16
# File 'lib/cocoapods-core/github.rb', line 14

def self.user()
  peform_request("https://api.github.com/users/#{}")
end