Skip to content

Fix ssh-agent use on test machines in RelEng JIPP

Summary

In order to simplify the collection of test results (in the context of eclipse-platform/eclipse.platform.releng.aggregator#3419) we want to use an ssh-agent on different test machines in the RelEng JIPP. But this currently fails for different reasons on different machines

  • qa6xd-win11 On this Windows-machine starting the SSH-agent fails with
ERROR: Failed to run ssh-agent: unable to start ssh-agent service, error :1058

This Stack-Overflow answer says this is because the ssh-agent Windows service is disabled and suggests to configure 'the service to start manually': https://stackoverflow.com/a/53606760 I did some experiments on my personal computer and it seems to make sense (although I cannot replicate this exact same situation).

  • rie8t-win11-arm64 This second windows machine seems to have the same problem

  • nc1ht-macos11-arm64 On this mac-machine starting the SSH-agent succeeds, but invoking ssh fails with Host key verification failed.

[Pipeline] sshagent
 [ssh-agent] Using credentials genie.releng (ssh://genie.releng@projects-storage.eclipse.org)
 $ ssh-agent
 SSH_AUTH_SOCK=/var/folders/p2/3vplzt5920j0zmbvd8wlbxw80000gp/T//ssh-kbE4AqL3BAfF/agent.82879
 SSH_AGENT_PID=82880
 Running ssh-add (command line suppressed)
 Identity added: /Users/genie.releng/workspace/AutomatedTests/ep438I-unit-testing-anyO-Hannes@tmp/private_key_17317656151387680570.key (/Users/genie.releng/workspace/AutomatedTests/ep438I-unit-testing-anyO-Hannes@tmp/private_key_17317656151387680570.key)
 [ssh-agent] Started.
[Pipeline] {
[Pipeline] sh
 + testResultsDirectory=/home/data/httpd/download.eclipse.org/eclipse/try-outs/eclipse/downloads/drops4/I20251017-0000/testresults
 + ssh genie.releng@projects-storage.eclipse.org mkdir -p /home/data/httpd/download.eclipse.org/eclipse/try-outs/eclipse/downloads/drops4/I20251017-0000/testresults
 Host key verification failed.
[Pipeline] }
 $ ssh-agent -k
 unset SSH_AUTH_SOCK;
 unset SSH_AGENT_PID;
 echo Agent pid 82880 killed;
 [ssh-agent] Stopped.

I have created a job to test the ssh-agent configuration on all relevant machines:

You can run it without passing any value to the defined parameter and it will fail if all ssh-agent usage was successful, with the message The following should not run at the moment.

Priority

  • Urgent
  • High
  • Medium
  • Low

Severity

  • Blocker
  • Major
  • Normal
  • Low