Sha256: c5c201d9770defb0f1c72541b2f2dbb018efdcf4580e720cf00c7031b37c8178

Contents?: true

Size: 1.18 KB

Versions: 54

Compression:

Stored size: 1.18 KB

Contents

require 'time'

module Travis
  module Tools
    class Formatter
      DAY         = 24 * 60 * 60
      TIME_FORMAT = "%Y-%m-%d %H:%M:%S"
      CONFIG_KEYS = ['rvm', 'gemfile', 'env', 'jdk', 'otp_release', 'php', 'node_js', 'perl', 'python', 'scala', 'compiler']

      def duration(seconds, suffix = nil)
        return "none" if seconds.nil?
        seconds          = (Time.now - seconds).to_i if seconds.is_a? Time
        output           = []
        minutes, seconds = seconds.divmod(60)
        hours, minutes   = minutes.divmod(60)
        output << "#{hours  } hrs" if hours > 0
        output << "#{minutes} min" if minutes > 0
        output << "#{seconds} sec" if seconds > 0 or output.empty?
        output << suffix           if suffix
        output.join(" ")
      end

      def time(time)
        return "not yet" if time.nil? # or time > Time.now
        #return duration(time, "ago") if Time.now - time < DAY
        time.localtime.strftime(TIME_FORMAT)
      end

      def job_config(config)
        output = []
        config.each_pair do |key, value|
          output << "#{key}: #{value}" if CONFIG_KEYS.include? key
        end
        output.join(", ")
      end
    end
  end
end

Version data entries

54 entries across 54 versions & 1 rubygems

Version Path
travis-1.5.6.travis.317.4 lib/travis/tools/formatter.rb
travis-1.5.6.travis.315.4 lib/travis/tools/formatter.rb
travis-1.5.6.travis.314.4 lib/travis/tools/formatter.rb
travis-1.5.6.travis.312.4 lib/travis/tools/formatter.rb
travis-1.5.6.travis.307.4 lib/travis/tools/formatter.rb
travis-1.5.6.travis.306.4 lib/travis/tools/formatter.rb
travis-1.5.6.travis.304.4 lib/travis/tools/formatter.rb
travis-1.5.6.travis.303.4 lib/travis/tools/formatter.rb
travis-1.5.6.travis.301.4 lib/travis/tools/formatter.rb
travis-1.5.6.travis.299.4 lib/travis/tools/formatter.rb
travis-1.5.6.travis.297.4 lib/travis/tools/formatter.rb
travis-1.5.6.travis.296.4 lib/travis/tools/formatter.rb
travis-1.5.5 lib/travis/tools/formatter.rb
travis-1.5.4 lib/travis/tools/formatter.rb
travis-1.5.3 lib/travis/tools/formatter.rb
travis-1.5.2 lib/travis/tools/formatter.rb
travis-1.5.1 lib/travis/tools/formatter.rb
travis-1.5.0 lib/travis/tools/formatter.rb
travis-1.4.0 lib/travis/tools/formatter.rb
travis-1.3.1 lib/travis/tools/formatter.rb