Git Auto Deploy schlägt fehl: Aufgabe "ext-git-task\​deployment" ist fehlgeschlagen

  • Hi,

    Ich hoste mein erstes Projekt bei Netcup (Webhosting 1000 NUE). Ich habe eine externe Domain für mein Produkt eingerichtet, für welche ich das Deployment über Git eingerichtet habe.

    Am Anfang konnte ich ohne Probleme deployen, seit gestern aber bekomme ich einen Fehler. Die Dateien können zwar per pull erfolgreich bereitgestellt werden, aber die Aufgabe "ext-git-task\deployment" ist fehlgeschlagen. (siehe Screenshot)

    Ich habe meine Fehlersuche bei Git begonnen und mir neue SSH-Keys erstellt, damit ich einen frischen Start habe. Mein public-SSH-key ist bei mir im Git-Account hinterlegt, genauso wie der SSH-key von Netcup aus dem cPanel.

    Ein Forumeintrag von 2018 beschriebt das gleiche Problem, jedoch hat der OP keine Lösung hinterlegt...

    Was mich irritiert, ist das der in der Fehlermeldung angegebene Pfad ('/var/www/vhost/hostingxxxxx.netcup.net/.ssh/git_known_hosts') nicht das Basisverzeichnis für meine Website ist. So wie ich das verstehe, ist das die inkl. Domain von Netcup für mein Paket. Ich habe eine andere Domain.xyz hinterlegt. Für die Basisdomain hostingxxx.netcup.net ist kein Git Repository hinterlegt.

    Wie gesagt, ich kann mich über Terminal mit meinem Repo verbinden und mit Git authentifizieren, der Netcup SSH ist in meinem Git Account hinterlegt und git pull funktioniert.

    Was übersehe ich?

  • Was mich irritiert, ist das der in der Fehlermeldung angegebene Pfad ('/var/www/vhost/hostingxxxxx.netcup.net/.ssh/git_known_hosts') nicht das Basisverzeichnis für meine Website ist. So wie ich das verstehe, ist das die inkl. Domain von Netcup für mein Paket.

    Das macht erstmal nichts - da ist nur die SSH Config hinterlegt.

    Die Fehlermeldung kommt direkt von Github, die sagen, dass mit dem hinterlegten Key kein Zugriff auf das Repo möglich ist.

    Wie gesagt, ich kann mich über Terminal mit meinem Repo verbinden und mit Git authentifizieren, der Netcup SSH ist in meinem Git Account hinterlegt und git pull funktioniert.

    Das ist ein Trugschluss, weil durch SSH Agent Forewarding immer die Keys des lokalen Rechners verwendet werden, und so nicht auffällt, wenn Keys auf dem Server nicht richtig zwischengespeichert werden.

    Noch einmal die Keys richtig schreiben, ggf. auch Dateiberechtigungen prüfen, ssh agent forewarding zum Testen deaktivieren und mit erhöhter Verbosity von SSH kannst du dir auch angucken, welcher Key verwendet wird.

    Wie sieht denn deine Config im WCP aus?

  • Hi H6G,

    Danke für deine Nachricht, ich versuche deine Hinweise umzusetzen und die Zugänge zu überprüfen.

    Welche Config im WCP meinst du genau?

    Im Ordner "conf" meines Basisverzeichnis ist lediglich die phpversion hinterlegt.

    In den Hosting-Einstellungen->Webspace-Einstellungen ist der SSH-Zugriff als Typ "/bin/bash (chrooted)" für beide Domains eingestellt.

  • Ich denke, ich konnte das Problem lösen.


    Hier mein Vorgehen:

    1. ich habe mich auf dem server eingeloggt:

    ssh your-username@server-ip

    als Password musste ich im cPanel ein neues Password für meinen Systembenutzer anlegen

    2. git als host in der .ssh/config hinterlegt und meinen git account auf dem server authentifiziert

    nano ~/.ssh/config

    Inhalt der config:

    Host github.com

    User git

    IdentityFile ~/.ssh/id_rsa

    IdentitiesOnly yes

    Authentifizierung:

    ssh -T git@github.com

    3. ssh-copy-id war auf dem server nicht verfügbar, deswegen bin ich dieser Anleitung zum manuellen hinterlegen den SSH-Keys gefolgt

    4. durch ssh -vvv git@github.com konnte ich (denke ich) die Verbindung bestätigen

    Zumindest bekomme ich jetzt keinen Fehler mehr :)