I want to use Vagrant to provide a common development environment for my team. Hosts are completely different:
- Some use OS X, some Linux, and some Windows.
- Some use VMware, some use VirtualBox.
Inside the virtual machine, we want to run Linux.
So far so good.
Now our idea was that each developer will be able to use the IDE of their choice, and therefore we presented a synchronized folder that shares the source code between the host and the virtual machine. It basically works as well ... except for symbolic links.
Inside our source code, we actually have some symbolic links, which is not a problem inside Linux inside the VM, but on Windows as a host this causes problems. The only thing we cannot do is get rid of symbolic links, so we need another way to handle this.
So far, we have tried several options:
- There is a workaround mentioned in issue Vagrant, unfortunately, this is only VirtualBox and does not help those who run VMware. So far, we have not found a way to run code in Vagrantfile depending on the provider used.
- Instead of using the standard shared folder, we tried using the rsync type. This works on Windows, but a crash on OS X with a number of errors tells us that
symlink has no referent (one error for a symbolic link). - We thought about NFS , but this only works if you are not using Windows as the host.
- We are also talking about SMB , but again it only works on Windows as a host.
I canβt imagine that we are the only or first people on this planet to experience problems with multi-platform hosts and symbolic links in a shared folder.
How can you solve this problem so that we can keep symbolic links, but still use different host operating systems?
synchronization vagrant vagrantfile rsync sync
Golo Roden Jun 13 '14 at 7:53 on 2014-06-13 07:53
source share