Sha256: 701d4b19e57f788ca0076587f32b5547397c625167284c31620ecaf56d953865
Contents?: true
Size: 1015 Bytes
Versions: 19
Compression:
Stored size: 1015 Bytes
Contents
module Vagrant class Action module VM class Provision def initialize(app, env) @app = app @env = env @env["provision.enabled"] = true if !@env.has_key?("provision.enabled") end def call(env) # Instantiate and prepare the provisioners. Preparation must happen here # so that shared folders and such can properly take effect. provisioners = enabled_provisioners provisioners.map { |p| p.prepare } @app.call(env) # Take prepared provisioners and run the provisioning provisioners.each do |instance| @env.ui.info I18n.t("vagrant.actions.vm.provision.beginning", :provisioner => instance.class) instance.provision! end end def enabled_provisioners @env["config"].vm.provisioners.map do |provisioner| provisioner.provisioner.new(@env, provisioner.config) end end end end end end
Version data entries
19 entries across 19 versions & 3 rubygems