Sha256: 5de6d8c221178563a01d7d0c56df421852d2eaf77191b1261f37fda9e853f46b

Contents?: true

Size: 770 Bytes

Versions: 42

Compression:

Stored size: 770 Bytes

Contents

require "vagrant/util/template_renderer"

module Vagrant
  module Action
    module Builtin
      # This class validates the configuration and raises an exception
      # if there are any validation errors.
      class ConfigValidate
        def initialize(app, env)
          @app = app
        end

        def call(env)
          if !env.key?(:config_validate) || env[:config_validate]
            errors = env[:machine].config.validate(env[:machine])

            if errors && !errors.empty?
              raise Errors::ConfigInvalid,
                errors: Util::TemplateRenderer.render(
                  "config/validation_failed",
                  errors: errors)
            end
          end

          @app.call(env)
        end
      end
    end
  end
end

Version data entries

42 entries across 35 versions & 6 rubygems

Version Path
vagrant-unbundled-2.2.0.0 lib/vagrant/action/builtin/config_validate.rb
vagrant-unbundled-2.1.4.0 lib/vagrant/action/builtin/config_validate.rb
vagrant-unbundled-2.1.2.0 lib/vagrant/action/builtin/config_validate.rb
vagrant-packet-0.1.2 vendor/bundle/ruby/2.3.0/bundler/gems/vagrant-04f7215b5e3f/lib/vagrant/action/builtin/config_validate.rb
vagrant-packet-0.1.2 vendor/bundle/ruby/2.4.0/bundler/gems/vagrant-04f7215b5e3f/lib/vagrant/action/builtin/config_validate.rb
vagrant-packet-0.1.2 vendor/bundle/ruby/2.5.0/bundler/gems/vagrant-04f7215b5e3f/lib/vagrant/action/builtin/config_validate.rb
vagrant-packet-0.1.1 vendor/bundle/ruby/2.4.0/bundler/gems/vagrant-04f7215b5e3f/lib/vagrant/action/builtin/config_validate.rb
vagrant-packet-0.1.1 vendor/bundle/ruby/2.3.0/bundler/gems/vagrant-04f7215b5e3f/lib/vagrant/action/builtin/config_validate.rb
vagrant-packet-0.1.1 vendor/bundle/ruby/2.5.0/bundler/gems/vagrant-04f7215b5e3f/lib/vagrant/action/builtin/config_validate.rb
vagrant-unbundled-2.1.1.0 lib/vagrant/action/builtin/config_validate.rb
vagrant-unbundled-2.0.4.0 lib/vagrant/action/builtin/config_validate.rb
vagrant-unbundled-2.0.3.0 lib/vagrant/action/builtin/config_validate.rb
vagrant-aws-detiber-0.7.2.pre.4 vendor/bundle/ruby/2.3.0/bundler/gems/vagrant-419afb4dcffe/lib/vagrant/action/builtin/config_validate.rb
vagrant-aws-detiber-0.7.2.pre.3 vendor/bundle/ruby/2.3.0/bundler/gems/vagrant-419afb4dcffe/lib/vagrant/action/builtin/config_validate.rb
vagrant-aws-detiber-0.7.2.pre.2 vendor/bundle/ruby/2.3.0/bundler/gems/vagrant-419afb4dcffe/lib/vagrant/action/builtin/config_validate.rb
vagrant-unbundled-2.0.2.0 lib/vagrant/action/builtin/config_validate.rb
vagrant-unbundled-2.0.1.0 lib/vagrant/action/builtin/config_validate.rb
vagrant-aws-mkubenka-0.7.2.pre.22 vendor/bundle/ruby/2.3.0/bundler/gems/vagrant-f3fdbf414272/lib/vagrant/action/builtin/config_validate.rb
vagrant-aws-mkubenka-0.7.2.pre.16 vendor/bundle/ruby/2.3.0/bundler/gems/vagrant-1ee58c40e3f5/lib/vagrant/action/builtin/config_validate.rb
vagrant-unbundled-2.0.0.1 lib/vagrant/action/builtin/config_validate.rb