Unter Windows lässt sich mit dem Subsystem for Linux Ansible direkt in Visual Studio Code nutzen \o/
Aber was brauch ich alles dafür?
Was ist das Windows Subsystem for Linux (WSL)?
Mit Hilfe des WSL lassen sich ab dem Windows 10 Anniversary Update (1607) Linux Executables im ELF-Format ausführen. Im Grunde startet man eine Bash und kann dann sehr viele unter Linux gewohnte Tools benutzen. Als Grundlage dient ein Ubuntu. Sogar Pakete lassen sich wie gewohnt per apt installieren.
Installation des WSL
Um das WSL installieren zu können muss in den Einstellungen der Entwicklermodus aktiviert und anschließend über Programs and Features installiert werden.
Rechtsklick auf das Startmenü --> Settings --> Update & Security --> For Developers
Im Startmenü nach "Turn windows features on or off" suchen und das Windows Subsystem for Linux installieren. Nach einem Neustart kann vom Startmenü aus die Bash aufgerufen werden. Beim ersten Start werden alle benötigten Komponenten automatisch heruntergeladen. Der Fortschritt der Installation lässt sich in der Bash beobachten
Ansible installieren
Ansible habe ich wie gewohnt in einer virtuellen Python Umgebung installiert.
Anschließend habe ich in der /root/.bashrc noch eingetragen, dass meine bevorzugte virtuelle Pythonumgebung automatisch geladen wird sobald ich als root User im WSL eingeloggt bin.
source /opt/ansible2.3/bin/activate
Bash in VS Code
Jetzt muss VS Code noch die Bash kennen lernen. Dafür in VS Code unter File --> Preferences --> Settings öffnen und im rechten Teil des Fensters, den User Settings, folgenden Eintrag hinzufügen:
Ab jetzt öffnet sich das in VS Code integrierte Terminal mit der bash. In meinem Fall werde ich als mneese eingeloggt und wechsle mit sudo -i zum root User. Dank des .bashrc Eintrags wird meine bevorzugte virtuelle Pythonumgebung mit Ansible automatisch geladen.
Fazit
Dank des WSL kann ich unter Windows meine in VS Code geschriebenen Ansible Playbooks direkt von VS Code aus nutzen. Mit Hilfe von virtuellen Python Umgebungen für Ansible lässt sich jede beliebige Ansible Version installieren und die Bevorzugte direkt laden. Sollte der Bedarf einer anderen Ansible Version bestehen, kann ich einfach wechseln. Zudem kann ich dank SSH Agent Integration in VS Code meine Playbooks direkt in Git pushen / von Git pullen.