Похоже, что передача переменных окружения при вызове vagrant up проста, если вы используете средство создания Ruby:
VAR=123 vagrant up
В Vagrantfile:
ENV['VAR']
Как это сделать с помощью средства создания :shell? Просто это не работает:
$VAR