Drüben im Ubuntu/WSL-Repository haben wir einige GitHub-Aktionen entwickelt, um Ihnen das Leben beim Ausführen Ihres CI in WSL zu erleichtern. Dies ist erforderlich, da GitHub-Läufer WSL nicht unterstützen. Auch das bloße Einrichten einer Azure-VM reicht nicht aus, da der Runner in Sitzung 0 ausgeführt wird, was bedeutet, dass Microsoft Store-Anwendungen wie WSL nicht ausgeführt werden können.
run.cmd
in Ihrem Actions-Runner).Du bist fertig! Ihre CI-YAML-Dateien erfordern jedoch etwas zusätzliche Arbeit, da Sie die VM bei Bedarf zuweisen und freigeben müssen. Der Runner muss unter Windows und nicht direkt unter WSL ausgeführt werden, da WSL-Instanzen automatisch heruntergefahren werden. Daher haben wir einige Dienstprogramme implementiert, um WSL und die Distribution zu installieren und zu aktualisieren sowie um Skripte auszuführen.
Diese Aktionen und eine ausführlichere Erklärung zur Einrichtung finden Sie hier.
Dieses Repository enthält eine sehr einfache Bibliothek src.py
mit einer Funktion, die unterschiedliche Ergebnisse innerhalb und außerhalb der WSL zurückgibt. Um es richtig zu testen, führen wir auf jeder Plattform einen Test durch: