Class: Jenkins::Build::Build

Inherits:
Object
  • Object
show all
Defined in:
lib/jenkins/build/build.rb

Constant Summary collapse

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

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(url) ⇒ Build

Returns a new instance of Build.



12
13
14
15
16
17
18
19
# File 'lib/jenkins/build/build.rb', line 12

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

Instance Attribute Details

#jobObject (readonly)

Returns the value of attribute job.



10
11
12
# File 'lib/jenkins/build/build.rb', line 10

def job
  @job
end

#numberObject (readonly)

Returns the value of attribute number.



10
11
12
# File 'lib/jenkins/build/build.rb', line 10

def number
  @number
end

#uriObject (readonly)

Returns the value of attribute uri.



10
11
12
# File 'lib/jenkins/build/build.rb', line 10

def uri
  @uri
end