Teilen Sie git mit, welcher private Schlüssel für einen Benutzer ohne Basisordner verwendet werden soll

9

Ich habe die Frage Lesen Sie git, welchen privaten Schlüssel Sie verwenden sollen , und die Antwort gilt nicht für einen Fall, in dem der Benutzer kein Home-Verzeichnis hat.

Wir richten gerade einen Jenkins-Server ein, und der Benutzer, der Jenkins ausführt, hat keinen Basisordner. Dieser bestimmte Benutzer muss jedoch auf ein GIT-Repository zugreifen.

Wie kann der Benutzer, der GIT ausführt, eine Schlüsselauthentifizierung verwenden?

FMaz008
quelle
//, Was ist, wenn die Maschine nicht einmal den fraglichen Schlüssel hat? Kann man angeben, welche weitergeleitete Identität verwendet werden soll?
Nathan Basanese

Antworten:

14

Die Umgebungsvariable GIT_SSH teilt git mit, welche ssh ausgeführt werden soll. Sie können also ein Skript erstellen wie:

#!/bin/bash
/usr/bin/ssh -i /path/to/identity.file "$@"

Dann chmod es ausführbar und setze GIT_SSH = / path / to / sshscript

Paul
quelle
Weiter zur nächsten Straßensperre: Mein SSH-Client versucht dann, bekannte_Hosts zu aktualisieren, und das schlägt fehl!
GLRoman
1
@ GLRoman Mit der Option UserKnownHostsFile können Sie angeben, wo sich die Datei befinden soll
Paul