Я пытаюсь установить бродячую коробку для нашей среды разработки. На vagrant box (гостевая виртуальная машина) происходит установка нашего программного обеспечения по адресу C:\BespokeSoftware. В каталоге Vagrantfile на хосте у меня есть каталог "BespokeSoftware".

Пожалуйста, смотрите мой Vagrantfile ниже:

Vagrant.configure("2") do |config|
  config.vm.box = "jacqinthebox/windowsserver2016"
  config.vm.synced_folder "BespokeSoftware", "C:/BespokeSoftware", type: "virtualbox"
  config.vm.provision "shell", inline: <<-SHELL
    slmgr /rearm
    composer self-update
    choco upgrade git /y
    cmd.exe /c "npm-windows-upgrade -p -v latest"
  SHELL
end

Я надеюсь, что файлы из C:\BespokeSoftware в гостевой системе будут синхронизированы в подкаталог BespokeSoftware в каталоге, который содержит Vagrantfile для этого блока, и наоборот.

Что я получаю, это ошибка ниже:

function Test-ReparsePoint([string]$path) {
 : Mount point already exists and is not a symbolic link
    + CategoryInfo          : NotSpecified: (:) [Write-Error], WriteErrorException
    + FullyQualifiedErrorId : Microsoft.PowerShell.Commands.WriteErrorException

Я подозреваю, что это связано с тем, что папка уже существует в гостевой системе Windows (и в этом весь смысл, мы хотим иметь возможность менять файлы в установке, которая по желанию хранится в обновленной папке vagrant, чтобы мы могли тестировать новые приложения и развертывать тесты), и это работает на хосте, предоставляя общий ресурс samba для гостя, по сути, символическую ссылку в заданном месте. Есть ли хороший обходной путь для этого?

0