Installing Ansible on Ubuntu 18.04 on WSL.
There's a few hiccups in the install process and it's necessary to modify the way the drives are mounted. sudo apt update
sudo apt install software-properties-common
sudo apt-add-repository ppa:ansible/ansible
sudo apt update
sudo apt install ansible
Once WSL is up and running, create/modify the /etc/wsl.conf to include the following: #Let’s enable extra metadata options by default
options = "metadata,umask=22,fmask=11"
This will ensure that the folders and files aren't just world writeable by default. The metadata flag allows writing separate linux permissions from the windows permissions, they can't be more permissive but you can restrict further to make various linux binaries happier about their execution environment.
See https://blogs.msdn.microsoft.com/commandline/2018/01/12/chmod-chown-wsl-improvements/ for more details.
Laragon is a great solution for developing PHP, and especially Laravel, projects on Windows.
It bundles together Apache, PHP, MySql and automatic host resolution based on folder names.
You try and debug in VS Code using XDebug when multiple sites on your local machine are hit in quick succession resulting in multiple connections from apache being opened against port 9000 on your VS Code instance at the same time.
This manifests itself in VS Code by not hitting any breakpoints and just showing "Request 1" and "Request 2", or similar, in the debug call stack.
In my environment, I have a main project containing middleware that does a security check against a second project before hitting my main action in my controller. Both PHP instances fire off their XDebug connections on port 9000, as xdebug.remote_autostart=1 in the PHP ini file.
Normally this is fine as only one project is practically running at once, but the middleware causes the two …