Class: VagrantPlugins::Berkshelf::Action::Save
- Defined in:
- lib/vagrant-berkshelf/action/save.rb
Instance Method Summary collapse
Methods inherited from Base
clean, #initialize, provision, setup
Methods included from Helpers
#berks, #berks_bin, #berkshelf_enabled?, #chef_client?, #chef_solo?, #chef_zero?, #datafile_path, #provision_enabled?, #provisioners, #with_clean_env
Constructor Details
This class inherits a constructor from VagrantPlugins::Berkshelf::Action::Base
Instance Method Details
#call(env) ⇒ Object
7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
# File 'lib/vagrant-berkshelf/action/save.rb', line 7 def call(env) if !berkshelf_enabled?(env) @logger.info "Berkshelf disabled, skipping" return @app.call(env) end if env[:berkshelf].shelf @logger.debug "Saving datafile to disk" FileUtils.mkdir_p(datafile_path(env).dirname) datafile_path(env).open("w+") do |f| f.write(env[:berkshelf].shelf) end end @app.call(env) end |