Настраивая коробку и конфигурацию Vagrant для Linux, я смотрю на следующую проблему:
На этапе предоставления я устанавливаю Subversion. Я хотел бы также на этапе подготовки отредактировать файл ~/.subversion/servers
так, чтобы он получал необходимые настройки прокси.
Я знаю, как это сделать (используя sed
), однако есть одна загвоздка.
~/.subversion
не существует на данный момент.
Каталог ~/.subversion
фактически не создается до тех пор, пока вы сначала не вызовете svn info
, svn status
или что-то еще.
Поэтому я добавил в свой Vagrantfile ...
config.vm.provision "shell", inline: "svn info 2>/dev/null"
... и команда действительно выполняется (с ошибкой, поскольку, конечно, нет рабочего каталога для вызова info
)...
==> default: Running provisioner: shell...
default: Running: inline script
The SSH command responded with a non-zero exit status. Vagrant
assumes that this means the command failed. The output for this command
should be in the log above. Please read the output to determine what
went wrong.
... но до сих пор нет ~/subversion
.
Я не совсем понимаю, почему svn info
, которая делает трюк (с настройкой ~/.subversion
), работает нормально, когда я вошел в систему на виртуальной машине (через vagrant ssh
), но не выполняется при выполнении во время инициализации, как показано выше.
Как я могу инициализировать ~/.subversion
на этапе инициализации Vagrant (без реального доступа к реальному репо)?