Sha256: 57bef9f26996cfa8961f43fc0317fda9a30169ca2165cbb0be7cc61ceabd7462
Contents?: true
Size: 1.26 KB
Versions: 3
Compression:
Stored size: 1.26 KB
Contents
require 'travis/cli' module Travis module CLI class Monitor < ApiCommand on('-m', '--my-repos', 'Only monitor my own repositories') on('-r', '--repo SLUG', 'monitor given repository (can be used more than once)') do |c, slug| c.repos << slug end attr_reader :repos def initialize(*) @repos = [] super end def setup super repos.map! { |r| repo(r) } repos.concat(user.repositories) if my_repos? end def description case repos.size when 0 then session.config['host'] when 1 then repos.first.slug else "#{repos.size} repositories" end end def run listen(*repos) do |listener| listener.on_connect { say description, 'Monitoring %s:' } listener.on 'build:started', 'job:started', 'build:finished', 'job:finished' do |event| entity = event.job || event.build time = entity.finished_at || entity.started_at say [ color(formatter.time(time), entity.color), color(entity.inspect_info, [entity.color, :bold]), color(entity.state, entity.color) ].join(" ") end end end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
travis-1.5.2 | lib/travis/cli/monitor.rb |
travis-1.5.1 | lib/travis/cli/monitor.rb |
travis-1.5.0 | lib/travis/cli/monitor.rb |