Class: Bosh::Gen::Models::ReleaseDetection

Inherits:
Object
  • Object
show all
Defined in:
lib/bosh/gen/models/release_detection.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(release_path) ⇒ ReleaseDetection

Returns a new instance of ReleaseDetection.



8
9
10
11
12
13
14
# File 'lib/bosh/gen/models/release_detection.rb', line 8

def initialize(release_path)
  @release_path = release_path

  @dev_config = YAML.load_file(File.join(release_path, "config", "dev.yml"))
  @latest_dev_release_filename = File.expand_path(@dev_config["latest_release_filename"], release_path) # absolute or relative
  @latest_dev_release = YAML.load_file(@latest_dev_release_filename)
end

Instance Attribute Details

#latest_dev_releaseObject (readonly)

Returns the value of attribute latest_dev_release.



6
7
8
# File 'lib/bosh/gen/models/release_detection.rb', line 6

def latest_dev_release
  @latest_dev_release
end

#release_pathObject (readonly)

Returns the value of attribute release_path.



5
6
7
# File 'lib/bosh/gen/models/release_detection.rb', line 5

def release_path
  @release_path
end

Instance Method Details

#latest_dev_release_job_namesObject



24
25
26
# File 'lib/bosh/gen/models/release_detection.rb', line 24

def latest_dev_release_job_names
  @latest_dev_release["jobs"].map {|job| job["name"]}
end

#latest_dev_release_nameObject



16
17
18
# File 'lib/bosh/gen/models/release_detection.rb', line 16

def latest_dev_release_name
  @latest_dev_release["name"]
end

#latest_dev_release_propertiesObject



28
29
30
31
32
33
# File 'lib/bosh/gen/models/release_detection.rb', line 28

def latest_dev_release_properties
  {
    "name" => latest_dev_release_name,
    "version" => latest_dev_release_version
  }
end

#latest_dev_release_versionObject



20
21
22
# File 'lib/bosh/gen/models/release_detection.rb', line 20

def latest_dev_release_version
  @latest_dev_release["version"]
end