Sha256: 412fbe7854cebe952410f688ae9c7f336cd6c3ff2958f502d9874796232a2289

Contents?: true

Size: 1.4 KB

Versions: 15

Compression:

Stored size: 1.4 KB

Contents

module VagrantPlugins
  module Invade
    module Validator
      module Provision

        # (see: https://docs.vagrantup.com/v2/provisioning/shell.html)
        class Shell

          attr_accessor :env
          attr_accessor :shell

          DEFAULT = {
            'name' => 'invade_shell',
            'path' => nil,
            'binary' => nil, # Vagrant default is true
            'privileged' => nil # Vagrant default is true
          }

          def initialize(env, shell)
            @env = env
            @shell = shell
          end

          def validate
            return nil unless @shell

            # NAME
            @shell['name'] = Validator.validate_string(
              @shell['name'], 'name', DEFAULT['name']
            )

            # PATH (path to shell script or remote address to script file)
            @shell['path'] = Validator.validate_string(
              @shell['path'], 'path', DEFAULT['path']
            )

            # BINARY (replace windows newline endings with unix line endings)
            @shell['binary'] = Validator.validate_boolean(
              @shell['binary'], 'binary', DEFAULT['binary']
            )

            # PRIVILEGED (run with sudo)
            @shell['privileged'] = Validator.validate_boolean(
              @shell['privileged'], 'privileged', DEFAULT['privileged']
            )

            @shell
          end
        end
      end
    end
  end
end

Version data entries

15 entries across 15 versions & 1 rubygems

Version Path
vagrant-invade-0.5.5 lib/vagrant-invade/validator/provision/shell.rb
vagrant-invade-0.5.4 lib/vagrant-invade/validator/provision/shell.rb
vagrant-invade-0.5.3 lib/vagrant-invade/validator/provision/shell.rb
vagrant-invade-0.5.2 lib/vagrant-invade/validator/provision/shell.rb
vagrant-invade-0.5.1 lib/vagrant-invade/validator/provision/shell.rb
vagrant-invade-0.5.0 lib/vagrant-invade/validator/provision/shell.rb
vagrant-invade-0.4.8 lib/vagrant-invade/validator/provision/shell.rb
vagrant-invade-0.4.7 lib/vagrant-invade/validator/provision/shell.rb
vagrant-invade-0.4.6 lib/vagrant-invade/validator/provision/shell.rb
vagrant-invade-0.4.5 lib/vagrant-invade/validator/provision/shell.rb
vagrant-invade-0.4.4 lib/vagrant-invade/validator/provision/shell.rb
vagrant-invade-0.4.3 lib/vagrant-invade/validator/provision/shell.rb
vagrant-invade-0.4.2 lib/vagrant-invade/validator/provision/shell.rb
vagrant-invade-0.4.1 lib/vagrant-invade/validator/provision/shell.rb
vagrant-invade-0.4.0 lib/vagrant-invade/validator/provision/shell.rb