Class: Bosh::Cloudfoundry::ReleaseVersionCpiSize
- Inherits:
-
Object
- Object
- Bosh::Cloudfoundry::ReleaseVersionCpiSize
- Defined in:
- lib/bosh/cloudfoundry/release_version_cpi_size.rb
Overview
This project should support all known versions of Cloud Foundry back to v132. v132 was the first release of Cloud Foundry v2. The project also supports the different CPIs that are supported by bosh. The project also supports different basic sizings/compositions (small dev deployments or large, high-availability production deployments). Each sizing might scale out differently.
To achieve these goals it includes templates for each combination of CPI & sizing & release version.
This class calculates which deployment template to use for the current deployment.
Instance Attribute Summary collapse
-
#deployment_size ⇒ Object
readonly
Returns the value of attribute deployment_size.
-
#release_version_cpi ⇒ Object
readonly
Returns the value of attribute release_version_cpi.
Instance Method Summary collapse
- #deployment_attributes_class ⇒ Object
-
#initialize(release_version_cpi, deployment_size) ⇒ ReleaseVersionCpiSize
constructor
A new instance of ReleaseVersionCpiSize.
- #release_name ⇒ Object
- #release_version_number ⇒ Object
- #spec ⇒ Object
- #spec_file_path ⇒ Object
- #template_dir ⇒ Object
- #template_file_path ⇒ Object
Constructor Details
#initialize(release_version_cpi, deployment_size) ⇒ ReleaseVersionCpiSize
Returns a new instance of ReleaseVersionCpiSize.
15 16 17 18 |
# File 'lib/bosh/cloudfoundry/release_version_cpi_size.rb', line 15 def initialize(release_version_cpi, deployment_size) @release_version_cpi = release_version_cpi @deployment_size = deployment_size end |
Instance Attribute Details
#deployment_size ⇒ Object (readonly)
Returns the value of attribute deployment_size.
13 14 15 |
# File 'lib/bosh/cloudfoundry/release_version_cpi_size.rb', line 13 def deployment_size @deployment_size end |
#release_version_cpi ⇒ Object (readonly)
Returns the value of attribute release_version_cpi.
12 13 14 |
# File 'lib/bosh/cloudfoundry/release_version_cpi_size.rb', line 12 def release_version_cpi @release_version_cpi end |
Instance Method Details
#deployment_attributes_class ⇒ Object
20 21 22 |
# File 'lib/bosh/cloudfoundry/release_version_cpi_size.rb', line 20 def deployment_attributes_class Bosh::Cloudfoundry::DeploymentAttributes end |
#release_name ⇒ Object
40 41 42 |
# File 'lib/bosh/cloudfoundry/release_version_cpi_size.rb', line 40 def release_name release_version_cpi.release_name end |
#release_version_number ⇒ Object
44 45 46 |
# File 'lib/bosh/cloudfoundry/release_version_cpi_size.rb', line 44 def release_version_number release_version_cpi.release_version_number end |
#spec ⇒ Object
36 37 38 |
# File 'lib/bosh/cloudfoundry/release_version_cpi_size.rb', line 36 def spec YAML.load_file(spec_file_path) end |
#spec_file_path ⇒ Object
32 33 34 |
# File 'lib/bosh/cloudfoundry/release_version_cpi_size.rb', line 32 def spec_file_path File.join(template_dir, "spec") end |
#template_dir ⇒ Object
24 25 26 |
# File 'lib/bosh/cloudfoundry/release_version_cpi_size.rb', line 24 def template_dir File.join(release_version_cpi.template_dir, deployment_size) end |
#template_file_path ⇒ Object
28 29 30 |
# File 'lib/bosh/cloudfoundry/release_version_cpi_size.rb', line 28 def template_file_path File.join(template_dir, "deployment_file.yml.erb") end |