]> code.ossystems Code Review - openembedded-core.git/commitdiff
testimage.bbclass: enable ssh agent forwarding
authorAndré Draszik <git@andred.net>
Wed, 16 Oct 2019 09:18:21 +0000 (10:18 +0100)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Sat, 19 Oct 2019 17:13:38 +0000 (18:13 +0100)
Some targets might use ssh to do their power- or serial-
control. In that case, ssh might need access to the
ssh agent, or otherwise won't work.

So export it into the environment.

Note that the (old) oeqa/controllers/masterimage.py
tries to do that as well by exporting all of BB_ORIGENV
into the test environment. Here in testimage.bbclass we
are a bit more strict and only pass the ssh related
environment variables.

Signed-off-by: André Draszik <git@andred.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/classes/testimage.bbclass

index befda6b72c082d9b738b9f0c08abdf87f324a1b4..844ed87944bfe215f7e4303bfba071f0bd4fd539 100644 (file)
@@ -268,6 +268,18 @@ def testimage_main(d):
     target_kwargs['serialcontrol_cmd'] = d.getVar("TEST_SERIALCONTROL_CMD") or None
     target_kwargs['serialcontrol_extra_args'] = d.getVar("TEST_SERIALCONTROL_EXTRA_ARGS") or ""
 
+    def export_ssh_agent(d):
+        import os
+
+        variables = ['SSH_AGENT_PID', 'SSH_AUTH_SOCK']
+        for v in variables:
+            if v not in os.environ.keys():
+                val = d.getVar(v)
+                if val is not None:
+                    os.environ[v] = val
+
+    export_ssh_agent(d)
+
     # runtime use network for download projects for build
     export_proxies(d)