Class: HerokuSan::Configuration
- Inherits:
-
Object
- Object
- HerokuSan::Configuration
- Defined in:
- lib/heroku_san/configuration.rb
Instance Attribute Summary collapse
-
#config_file ⇒ Object
readonly
Returns the value of attribute config_file.
-
#configuration ⇒ Object
Returns the value of attribute configuration.
-
#external_configuration ⇒ Object
Returns the value of attribute external_configuration.
-
#options ⇒ Object
readonly
Returns the value of attribute options.
Instance Method Summary collapse
- #configured? ⇒ Boolean
- #generate_config ⇒ Object
-
#initialize(configurable) ⇒ Configuration
constructor
A new instance of Configuration.
- #parse ⇒ Object
- #stages ⇒ Object
- #template ⇒ Object
Constructor Details
#initialize(configurable) ⇒ Configuration
8 9 10 11 12 13 14 |
# File 'lib/heroku_san/configuration.rb', line 8 def initialize(configurable) @config_file = configurable.config_file = { 'deploy' => HerokuSan::Deploy::Rails } = .merge(configurable. || {}) end |
Instance Attribute Details
#config_file ⇒ Object (readonly)
Returns the value of attribute config_file.
3 4 5 |
# File 'lib/heroku_san/configuration.rb', line 3 def config_file @config_file end |
#configuration ⇒ Object
Returns the value of attribute configuration.
4 5 6 |
# File 'lib/heroku_san/configuration.rb', line 4 def configuration @configuration end |
#external_configuration ⇒ Object
Returns the value of attribute external_configuration.
5 6 7 |
# File 'lib/heroku_san/configuration.rb', line 5 def external_configuration @external_configuration end |
#options ⇒ Object (readonly)
Returns the value of attribute options.
6 7 8 |
# File 'lib/heroku_san/configuration.rb', line 6 def end |
Instance Method Details
#configured? ⇒ Boolean
28 29 30 |
# File 'lib/heroku_san/configuration.rb', line 28 def configured? !!configuration end |
#generate_config ⇒ Object
36 37 38 39 40 41 42 43 44 |
# File 'lib/heroku_san/configuration.rb', line 36 def generate_config # TODO: Convert true/false returns to success/exception if File.exists?(config_file) false else FileUtils.cp(template, config_file) true end end |
#parse ⇒ Object
16 17 18 |
# File 'lib/heroku_san/configuration.rb', line 16 def parse HerokuSan::Parser.new.parse(self) end |
#stages ⇒ Object
20 21 22 23 24 25 26 |
# File 'lib/heroku_san/configuration.rb', line 20 def stages configured? or parse configuration.inject({}) do |stages, (stage, settings)| stages[stage] = HerokuSan::Stage.new(stage, settings.merge('deploy' => ([:deploy]||['deploy']))) stages end end |
#template ⇒ Object
32 33 34 |
# File 'lib/heroku_san/configuration.rb', line 32 def template File.(File.join(File.dirname(__FILE__), '../templates', 'heroku.example.yml')) end |