class Bosh::Workspace::StubFile
Attributes
director_uuid[R]
name[R]
Public Class Methods
create(path, project_deployment)
click to toggle source
# File lib/bosh/workspace/stub_file.rb, line 5 def self.create(path, project_deployment) self.new(project_deployment).tap { |stub| stub.write(path) } end
new(project_deployment)
click to toggle source
# File lib/bosh/workspace/stub_file.rb, line 9 def initialize(project_deployment) @name = project_deployment.name @director_uuid = project_deployment.director_uuid @releases = project_deployment.releases @stemcells = project_deployment.stemcells @meta = project_deployment.meta end
Public Instance Methods
content()
click to toggle source
# File lib/bosh/workspace/stub_file.rb, line 21 def content { "name" => name, "director_uuid" => director_uuid, "releases" => releases, "meta" => meta } end
meta()
click to toggle source
# File lib/bosh/workspace/stub_file.rb, line 34 def meta stemcells_meta.merge(@meta) end
releases()
click to toggle source
# File lib/bosh/workspace/stub_file.rb, line 30 def releases filter_keys(@releases, %w(name version)) end
write(file)
click to toggle source
# File lib/bosh/workspace/stub_file.rb, line 17 def write(file) IO.write file, content.to_yaml end
Private Instance Methods
filter_keys(array, keys)
click to toggle source
# File lib/bosh/workspace/stub_file.rb, line 40 def filter_keys(array, keys) array.map { |s| s.select { |key| keys.include?(key) } } end
stemcell()
click to toggle source
# File lib/bosh/workspace/stub_file.rb, line 48 def stemcell stemcells[1] ? nil : stemcells[0] end
stemcells()
click to toggle source
# File lib/bosh/workspace/stub_file.rb, line 44 def stemcells filter_keys(@stemcells, %w(name version)) end
stemcells_meta()
click to toggle source
# File lib/bosh/workspace/stub_file.rb, line 52 def stemcells_meta stemcell.nil? ? { 'stemcells' => stemcells } : { 'stemcell' => stemcell } end