Sha256: 9ee71385facc38dce4718659d69fe4b53bc281011e535de7a4dd90041a3868b2
Contents?: true
Size: 626 Bytes
Versions: 5
Compression:
Stored size: 626 Bytes
Contents
require 'uri' module Jenkins module Build class Build BUILDS = %w[lastBuild lastStableBuild lastSuccessfulBuild lastFailedBuild lastUnstableBuild lastUnsuccessfulBuild lastCompletedBuild].freeze JENKINS_PATH = %r{^/jobs?/(?<job>[\w-]+)/(?<build_number>\d+|#{Regexp.union(BUILDS)})}.freeze NUMBER = /\A\d+\z/.freeze attr_reader :uri, :job, :number def initialize(url) @uri = URI(url) match = @uri.path.match(JENKINS_PATH) or return @job = match[:job] @number = (number = match[:build_number]) =~ NUMBER ? number.to_i : number end end end end
Version data entries
5 entries across 5 versions & 1 rubygems