summaryrefslogtreecommitdiffstats
path: root/meta
diff options
context:
space:
mode:
authorEd Bartosh <ed.bartosh@linux.intel.com>2016-02-13 11:02:13 +0200
committerRichard Purdie <richard.purdie@linuxfoundation.org>2016-02-15 16:28:44 +0000
commit7066f1671eb1d400d33c5477ae64d2e5a5934f95 (patch)
treeded5654a7ba877209722befca30f8dc20cd6821b /meta
parent0ade65834b6c3d6e6a28ed551497a58f31a8d348 (diff)
downloadpoky-7066f1671eb1d400d33c5477ae64d2e5a5934f95.tar.gz
oeqa/targetcontrol: make ssh control optional
Added new parameter 'ssh' to targetcontrol 'start' method to be able to test images without running ssh server. [YOCTO #8498] (From OE-Core rev: 1c3c66aadd43092bc19242b0651ee810cc31fe7c) (From OE-Core rev: 67ccf7413b2ac9f516dbdaa6a39d4cec38a6c94d) Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta')
-rw-r--r--meta/lib/oeqa/targetcontrol.py18
-rw-r--r--meta/lib/oeqa/utils/commands.py4
2 files changed, 12 insertions, 10 deletions
diff --git a/meta/lib/oeqa/targetcontrol.py b/meta/lib/oeqa/targetcontrol.py
index edc0d01c1e..f461651930 100644
--- a/meta/lib/oeqa/targetcontrol.py
+++ b/meta/lib/oeqa/targetcontrol.py
@@ -68,7 +68,7 @@ class BaseTarget(object):
68 bb.note("SSH log file: %s" % self.sshlog) 68 bb.note("SSH log file: %s" % self.sshlog)
69 69
70 @abstractmethod 70 @abstractmethod
71 def start(self, params=None): 71 def start(self, params=None, ssh=True):
72 pass 72 pass
73 73
74 @abstractmethod 74 @abstractmethod
@@ -176,11 +176,12 @@ class QemuTarget(BaseTarget):
176 bb.note("Qemu log file: %s" % self.qemulog) 176 bb.note("Qemu log file: %s" % self.qemulog)
177 super(QemuTarget, self).deploy() 177 super(QemuTarget, self).deploy()
178 178
179 def start(self, params=None): 179 def start(self, params=None, ssh=True):
180 if self.runner.start(params): 180 if self.runner.start(params, get_ip=ssh):
181 self.ip = self.runner.ip 181 if ssh:
182 self.server_ip = self.runner.server_ip 182 self.ip = self.runner.ip
183 self.connection = SSHControl(ip=self.ip, logfile=self.sshlog) 183 self.server_ip = self.runner.server_ip
184 self.connection = SSHControl(ip=self.ip, logfile=self.sshlog)
184 else: 185 else:
185 self.stop() 186 self.stop()
186 if os.path.exists(self.qemulog): 187 if os.path.exists(self.qemulog):
@@ -231,8 +232,9 @@ class SimpleRemoteTarget(BaseTarget):
231 def deploy(self): 232 def deploy(self):
232 super(SimpleRemoteTarget, self).deploy() 233 super(SimpleRemoteTarget, self).deploy()
233 234
234 def start(self, params=None): 235 def start(self, params=None, ssh=True):
235 self.connection = SSHControl(self.ip, logfile=self.sshlog, port=self.port) 236 if ssh:
237 self.connection = SSHControl(self.ip, logfile=self.sshlog, port=self.port)
236 238
237 def stop(self): 239 def stop(self):
238 self.connection = None 240 self.connection = None
diff --git a/meta/lib/oeqa/utils/commands.py b/meta/lib/oeqa/utils/commands.py
index 93a0e4846b..32e001c6b5 100644
--- a/meta/lib/oeqa/utils/commands.py
+++ b/meta/lib/oeqa/utils/commands.py
@@ -178,7 +178,7 @@ def create_temp_layer(templayerdir, templayername, priority=999, recipepathspec=
178 178
179 179
180@contextlib.contextmanager 180@contextlib.contextmanager
181def runqemu(pn): 181def runqemu(pn, ssh=True):
182 182
183 import bb.tinfoil 183 import bb.tinfoil
184 import bb.build 184 import bb.build
@@ -222,7 +222,7 @@ def runqemu(pn):
222 try: 222 try:
223 qemu.deploy() 223 qemu.deploy()
224 try: 224 try:
225 qemu.start() 225 qemu.start(ssh=ssh)
226 except bb.build.FuncFailed: 226 except bb.build.FuncFailed:
227 raise Exception('Failed to start QEMU - see the logs in %s' % logdir) 227 raise Exception('Failed to start QEMU - see the logs in %s' % logdir)
228 228