Sha256: 7f8c956e51af254a6111ff48d4e43acac4dfb1f99d0a16350b12c392f027bf3f
Contents?: true
Size: 1.21 KB
Versions: 1
Compression:
Stored size: 1.21 KB
Contents
# coding: utf-8 module Status module Github class Statuses def initialize(qa_status, branch) @qa_status = qa_status @branch = branch @jenkins = Jenkins.new(branch) end def request Request.new.post(status_api, payload) end private def status_api "/repos/#{Status.owner}/#{Status.repo}/statuses/" + sha + "?access_token=" + Status.token end def description "Build status: #{@jenkins.state}, QA #{@qa_status}" end def payload {:state => state, :description => description, :target_url => target_url} end def target_url "#{Status.ci_url}/job/#{@branch}" end def state return "success" if @jenkins.pass? && @qa_status == "pass" return "pending" if @jenkins.pass? && @qa_status != "pass" return "pending" if @jenkins.state == "pending" && @qa_status != "pass" git_state end def git_state states.include?(@jenkins.state) ? states[states.index(@jenkins.state)] : "error" end def states %w(error failure) end def sha `git log #{@branch} -1 --pretty=format:'%H'` end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
update_status-0.2.2 | lib/status/github/statuses.rb |