module Github::Repos::Collaborators
def add_collaborator(user_name, repo_name, collaborator, params={})
@repos.add_collaborator 'user', 'repo', 'collaborator'
@repos = Github::Repos.new
@github.collaborators.add_collaborator 'user', 'repo', 'collaborator'
@github = Github.new
Examples:
Add collaborator
def add_collaborator(user_name, repo_name, collaborator, params={}) _update_user_repo_params(user_name, repo_name) _validate_user_repo_params(user, repo) unless user? && repo? _validate_presence_of collaborator _normalize_params_keys(params) put("/repos/#{user}/#{repo}/collaborators/#{collaborator}", params) end
def collaborator?(user_name, repo_name, collaborator, params={})
@github.collaborators.collaborator?('user', 'repo', 'collaborator')
@github = Github.new
Examples:
Checks if user is a collaborator for a given repository
def collaborator?(user_name, repo_name, collaborator, params={}) _update_user_repo_params(user_name, repo_name) _validate_user_repo_params(user, repo) unless user? && repo? _validate_presence_of collaborator _normalize_params_keys(params) get("/repos/#{user}/#{repo}/collaborators/#{collaborator}", params) true rescue Github::ResourceNotFound false end
def collaborators(user_name=nil, repo_name=nil, params={})
@github.repos.collaborators 'user-name', 'repo-name' { |cbr| .. }
@github.repos.collaborators 'user-name', 'repo-name'
@github = Github.new
Examples:
List collaborators
def collaborators(user_name=nil, repo_name=nil, params={}) _update_user_repo_params(user_name, repo_name) _validate_user_repo_params(user, repo) unless (user? && repo?) _normalize_params_keys(params) response = get("/repos/#{user}/#{repo}/collaborators", params) return response unless block_given? response.each { |el| yield el } end
def remove_collaborator(user_name, repo_name, collaborator, params={})
@github.repos.remove_collaborator 'user', 'repo', 'collaborator'
@github = Github.new
Examples:
Removes collaborator
def remove_collaborator(user_name, repo_name, collaborator, params={}) _update_user_repo_params(user_name, repo_name) _validate_user_repo_params(user, repo) unless user? && repo? _validate_presence_of collaborator _normalize_params_keys(params) delete("/repos/#{user}/#{repo}/collaborators/#{collaborator}", params) end