module GithubReleases::Client
Public Instance Methods
fetch(key, resource)
click to toggle source
# File lib/github_releases/client.rb, line 2 def fetch(key, resource) return cache.read(key) if cache.exist?(key) cache.write(key, get(resource)) cache.read(key) end
Private Instance Methods
cache()
click to toggle source
# File lib/github_releases/client.rb, line 28 def cache Rails.cache end
endpoint()
click to toggle source
# File lib/github_releases/client.rb, line 23 def endpoint "#{GithubReleases.github_api}/repos/#{GithubReleases.username}/" \ "#{GithubReleases.repo}/releases" end
get(resource)
click to toggle source
# File lib/github_releases/client.rb, line 10 def get(resource) JSON.parse(HTTParty.get(resource, headers: headers).body) end
headers()
click to toggle source
# File lib/github_releases/client.rb, line 14 def headers { 'Content-Type' => 'application/json', 'Accept' => 'application/vnd.github.v3+json', 'User-Agent' => GithubReleases.username, 'Authorization' => "token #{ENV['GITHUB_API_TOKEN']}" } end