Class: Gitlab::QA::Component::Staging::Version

Inherits:
Object
  • Object
show all
Defined in:
lib/gitlab/qa/component/staging.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(address) ⇒ Version

Returns a new instance of Version.



66
67
68
69
70
# File 'lib/gitlab/qa/component/staging.rb', line 66

def initialize(address)
  @uri = URI.join(address, '/api/v4/version')

  Runtime::Env.require_qa_access_token!
end

Instance Attribute Details

#uriObject (readonly)

Returns the value of attribute uri.



64
65
66
# File 'lib/gitlab/qa/component/staging.rb', line 64

def uri
  @uri
end

Instance Method Details

#major_minor_revisionObject



76
77
78
79
80
81
82
# File 'lib/gitlab/qa/component/staging.rb', line 76

def major_minor_revision
  api_response = api_get!
  version_regexp = /^v?(?<major>\d+)\.(?<minor>\d+)\.\d+/
  match = version_regexp.match(api_response.fetch('version'))

  "#{match[:major]}.#{match[:minor]}-#{api_response.fetch('revision')}"
end

#revisionObject



72
73
74
# File 'lib/gitlab/qa/component/staging.rb', line 72

def revision
  api_get!.fetch('revision')
end