In een docker container is een GIT hook actief van GrumPHP. Deze luistert naar de git commits en voert een aantal checks uit (unit test, linting, etc.) voordat de commit uitgevoerd wordt indien alle tests slagen.
Dit alles draait dus in een docker container en dit maakt het iets gecompliceerder.
Vanuit de host is ook git geinstalleerd en zou het ideaal zijn als ik niet in de container mijn git commits hoef uit te voeren om de git hook te activeren. Immers wil ik wel dat de git hook getriggerd wordt zodra ik een commit wil uitvoeren.
Nu heb ik een aantal opties:
- De git hook buiten de container installeren. Dit is echter geen optie want dat houdt in dat PHP/composer ook geinstalleerd moet worden op de host wat de hele container overbodig maakt.
- Een linux shim gebruiken zodat ik een alias kan maken die de git commit uitvoert vanuit de host naar de container. Dit kan, maar wordt al snel ingewikkelder bij het gebruik van meerdere containers
- Elke keer in de container de git commits uitvoeren. Hier moet ik elke keer de config aanpassen met naam en email en het pushen zal ook niet goed verlopen zonder SSH key etc. Dus niet geheel wenselijk
Dit heeft niet zozeer te maken met PHP o.i.d. maar kan gezien worden als een git hook binnen een docker container.
Zijn er nog andere manieren die het leven wat makkerlijker maken?
Dit alles draait dus in een docker container en dit maakt het iets gecompliceerder.
Vanuit de host is ook git geinstalleerd en zou het ideaal zijn als ik niet in de container mijn git commits hoef uit te voeren om de git hook te activeren. Immers wil ik wel dat de git hook getriggerd wordt zodra ik een commit wil uitvoeren.
Nu heb ik een aantal opties:
- De git hook buiten de container installeren. Dit is echter geen optie want dat houdt in dat PHP/composer ook geinstalleerd moet worden op de host wat de hele container overbodig maakt.
- Een linux shim gebruiken zodat ik een alias kan maken die de git commit uitvoert vanuit de host naar de container. Dit kan, maar wordt al snel ingewikkelder bij het gebruik van meerdere containers
- Elke keer in de container de git commits uitvoeren. Hier moet ik elke keer de config aanpassen met naam en email en het pushen zal ook niet goed verlopen zonder SSH key etc. Dus niet geheel wenselijk
Dit heeft niet zozeer te maken met PHP o.i.d. maar kan gezien worden als een git hook binnen een docker container.
Zijn er nog andere manieren die het leven wat makkerlijker maken?