mit habe ich jenkins auf master.com
läuft, und will einen Slave auf slave.com
ausgeführt haben. Um jedoch zum Slave zu kommen, muss ich gateway.com
durchlaufen. Im Allgemeinen verwende ich ~/.ssh/config, um einen ProxyCommand einzurichten.Jenkins Slave einen SSH-Gateway
Host slave.com
User felix
ProxyCommand ssh [email protected] nc %h %p
Ich habe Authentifizierung über öffentliche Schlüssel sowohl für das Gateway und Slave, so eingerichtet, dass ich von der Kommandozeile direkt [email protected]
-[email protected]
ssh kann:
Ich habe dieses Setup in meiner /var/lib/jenkins/.ssh/config
Datei repliziert einfach indem Sie ssh slave.com
tun.
Leider Jenkins scheint nicht meinen .ssh/config-Setup zu respektieren, und die Verbindung unterbrochen wird (der Slave ist nicht direkt erreichbar). Die Jenkins Slave-Protokolldatei ist:
java.io.IOException: There was a problem while connecting to slave.com:22
....
Caused by: java.net.ConnectException: Connection timed out
Wie kann ich herausfinden, ob oder ob nicht jenkins meine .ssh/config-Datei zu respektieren? Fehle ich einen Schritt bei der Konfiguration des Master-Jenkins-Accounts oder der .ssh/config-Datei für Jenkins?
Ich stieß auf das gleiche Problem. Hast du ein Update @Felix? –
Leider nicht; Mein "Workaround" war, eine Slave-Maschine außerhalb des Gateways einzurichten. – Felix