12345678910111213141516171819202122232425262728293031323334353637383940414243444546 |
- #!/usr/bin/env bash
- #
- # This is a wrapper to properly execute Vagrant within the embedded
- # Vagrant installation directory. This sets up proper environmental variables
- # so that everything loads and compiles to proper directories.
- VAGRANT_DIR="$( ruby -e 'print Gem::default_path[-1] + "/gems/vagrant-1.9.2"' )"
- # Export GEM_HOME based on VAGRANT_HOME
- #
- # This needs to be set because Bundler includes gem paths
- # from RubyGems' Gem.paths.
- if [ -z $VAGRANT_HOME ]; then
- VAGRANT_HOME=$(eval echo "~/.vagrant.d")
- fi
- export GEM_HOME="$VAGRANT_HOME/gems"
- # SSL certs
- export SSL_CERT_FILE="/etc/ssl/certs/ca-certificates.crt"
- # Export an environmental variable to say we're in a Vagrant
- # installer created environment.
- export VAGRANT_INSTALLER_ENV=1
- # This is currently used only in Vagrant::Plugin::Manager.system_plugins_file
- # to locate plugins configuration file.
- export VAGRANT_INSTALLER_EMBEDDED_DIR="/var/lib/vagrant"
- export VAGRANT_INSTALLER_VERSION="2"
- # Determine the OS that we're on, which is used in some later checks.
- # It is very important we do this _before_ setting the PATH below
- # because uname dependencies can conflict on some platforms.
- OS=$(uname -s 2>/dev/null)
- # Export the OS as an environmental variable that Vagrant can access
- # so that it can behave better.
- export VAGRANT_DETECTED_OS="${OS}"
- VAGRANT_EXECUTABLE="${VAGRANT_DIR}/bin/vagrant"
- # Export the VAGRANT_EXECUTABLE so that pre-rubygems can optimize a bit
- export VAGRANT_EXECUTABLE
- # Call the actual Vagrant bin with our arguments
- exec ruby "${VAGRANT_EXECUTABLE}" "$@"
|