class Circle::CLI::Project
Attributes
repo[R]
Public Class Methods
new(repo)
click to toggle source
# File lib/circle/cli/project.rb, line 9 def initialize(repo) @repo = repo configure end
Public Instance Methods
build!()
click to toggle source
# File lib/circle/cli/project.rb, line 14 def build! request CircleCi::Project, :build_branch, repo.branch_name end
builds()
click to toggle source
# File lib/circle/cli/project.rb, line 18 def builds @builds ||= request_builds(CircleCi::Project, :recent_builds_branch, repo.branch_name) end
clear_cache!()
click to toggle source
# File lib/circle/cli/project.rb, line 30 def clear_cache! @builds = nil @recent_builds = nil end
latest()
click to toggle source
# File lib/circle/cli/project.rb, line 26 def latest builds.first end
recent_builds()
click to toggle source
# File lib/circle/cli/project.rb, line 22 def recent_builds @recent_builds ||= request_builds(CircleCi::Project, :recent_builds) end
request(klass, action, *args)
click to toggle source
# File lib/circle/cli/project.rb, line 35 def request(klass, action, *args) response = klass.send(action, repo.user_name, repo.project, *args) if response.success? response.body else abort "The following error occurred: #{response.body['message']}" end end
Private Instance Methods
configure()
click to toggle source
# File lib/circle/cli/project.rb, line 47 def configure CircleCi.configure do |config| config.token = repo.circle_token end end
request_builds(*args)
click to toggle source
# File lib/circle/cli/project.rb, line 53 def request_builds(*args) request(*args).to_a.map { |build| Build.new(self, build) } end