Class: Deployed::RepoData

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

Overview

RepoData

Instance Method Summary collapse

Instance Method Details

#branchObject



17
18
19
# File 'lib/deployed_version.rb', line 17

def branch
  @branch ||= git_branch || read_file('BRANCH').strip.presence
end

#extraObject



49
50
51
# File 'lib/deployed_version.rb', line 49

def extra
  @extra ||= version(:extra)
end

#labelObject



33
34
35
# File 'lib/deployed_version.rb', line 33

def label
  tag.presence || branch
end

#majorObject



37
38
39
# File 'lib/deployed_version.rb', line 37

def major
  @major ||= version(:major)
end

#minorObject



41
42
43
# File 'lib/deployed_version.rb', line 41

def minor
  @minor ||= version(:minor)
end

#patchObject



45
46
47
# File 'lib/deployed_version.rb', line 45

def patch
  @patch ||= version(:patch)
end

#releaseObject



21
22
23
# File 'lib/deployed_version.rb', line 21

def release
  @release ||= read_file('RELEASE').strip
end

#release_urlObject



25
26
27
# File 'lib/deployed_version.rb', line 25

def release_url
  @release_url ||= read_file('REPO').strip
end

#revisionObject



13
14
15
# File 'lib/deployed_version.rb', line 13

def revision
  @revision ||= git_rev || read_file('REVISION').strip.presence
end

#revision_shortObject



29
30
31
# File 'lib/deployed_version.rb', line 29

def revision_short
  @revision_short ||= revision&.slice 0..6
end

#tagObject



9
10
11
# File 'lib/deployed_version.rb', line 9

def tag
  @tag ||= git_tag || read_file('TAG').strip.presence
end

#version_hashObject



53
54
55
# File 'lib/deployed_version.rb', line 53

def version_hash
  @version_hash ||= /\Av(?<major>\d+)\.(?<minor>\d+)\.(?<patch>\d+)(?<extra>\S*)/.match(label)
end

#version_labelObject



57
58
59
# File 'lib/deployed_version.rb', line 57

def version_label
  major == 0 && minor == 0 && patch == 0 ? 'WIP' : "#{major}.#{minor}.#{patch}"
end