Module: Octokit::Client::Contents
- Included in:
- Octokit::Client
- Defined in:
- lib/octokit/client/contents.rb
Overview
Methods for the Repo Contents API
Instance Method Summary collapse
-
#archive_link(repo, options = {}) ⇒ String
This method will provide a URL to download a tarball or zipball archive for a repository.
-
#contents(repo, options = {}) ⇒ Sawyer::Resource
(also: #content)
Receive a listing of a repository folder or the contents of a file.
-
#create_contents(repo, path, message, content = nil, options = {}) ⇒ Sawyer::Resource
(also: #create_content, #add_content, #add_contents)
Add content to a repository.
-
#delete_contents(repo, path, message, sha, options = {}) ⇒ Sawyer::Resource
(also: #delete_content, #remove_content, #remove_contents)
Delete content in a repository.
-
#readme(repo, options = {}) ⇒ Sawyer::Resource
Receive the default Readme for a repository.
-
#update_contents(repo, path, message, sha, content = nil, options = {}) ⇒ Sawyer::Resource
(also: #update_content)
Update content in a repository.
Instance Method Details
#archive_link(repo, options = {}) ⇒ String
This method will provide a URL to download a tarball or zipball archive for a repository.
150 151 152 153 154 155 156 157 |
# File 'lib/octokit/client/contents.rb', line 150 def archive_link(repo, ={}) repo_ref = .delete :ref format = (.delete :format) || 'tarball' url = "repos/#{Repository.new repo}/#{format}/#{repo_ref}" request :head, url, last_response.headers['Location'] end |
#contents(repo, options = {}) ⇒ Sawyer::Resource Also known as: content
Receive a listing of a repository folder or the contents of a file
32 33 34 35 36 |
# File 'lib/octokit/client/contents.rb', line 32 def contents(repo, ={}) repo_path = .delete :path url = "repos/#{Repository.new repo}/contents/#{repo_path}" get url, end |
#create_contents(repo, path, message, content = nil, options = {}) ⇒ Sawyer::Resource Also known as: create_content, add_content, add_contents
Add content to a repository
56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 |
# File 'lib/octokit/client/contents.rb', line 56 def create_contents(*args) = args.last.is_a?(Hash) ? args.pop : {} repo = args.shift path = args.shift = args.shift content = args.shift if content.nil? && file = .delete(:file) case file when String if File.exists?(file) file = File.open(file, "r") content = file.read file.close end when File content = file.read file.close end end raise ArgumentError.new "content or :file option required" if content.nil? [:content] = Base64.encode64(content) [:message] = url = "repos/#{Repository.new repo}/contents/#{path}" put url, end |
#delete_contents(repo, path, message, sha, options = {}) ⇒ Sawyer::Resource Also known as: delete_content, remove_content, remove_contents
Delete content in a repository
131 132 133 134 135 136 |
# File 'lib/octokit/client/contents.rb', line 131 def delete_contents(repo, path, , sha, = {}) [:message] = [:sha] = sha url = "repos/#{Repository.new repo}/contents/#{path}" delete url, end |
#readme(repo, options = {}) ⇒ Sawyer::Resource
Receive the default Readme for a repository
19 20 21 |
# File 'lib/octokit/client/contents.rb', line 19 def readme(repo, ={}) get "repos/#{Repository.new repo}/readme", end |
#update_contents(repo, path, message, sha, content = nil, options = {}) ⇒ Sawyer::Resource Also known as: update_content
Update content in a repository
104 105 106 107 108 109 110 111 112 113 |
# File 'lib/octokit/client/contents.rb', line 104 def update_contents(*args) = args.last.is_a?(Hash) ? args.pop : {} repo = args.shift path = args.shift = args.shift sha = args.shift content = args.shift .merge!(:sha => sha) create_contents(repo, path, , content, ) end |