pcu_{sysmo,oc2g}: Inherit from pcu abstract class

For some reason these classes were still not inheriting from the base
class (probably because it was added after they existed) and they
started failing after recent changes which presumed they where already
inheriting.

Change-Id: I88217baf490ec45373d0743585377ed2639a8cfd
diff --git a/src/osmo_gsm_tester/pcu_oc2g.py b/src/osmo_gsm_tester/pcu_oc2g.py
index 36aef60..67c49b3 100644
--- a/src/osmo_gsm_tester/pcu_oc2g.py
+++ b/src/osmo_gsm_tester/pcu_oc2g.py
@@ -19,25 +19,21 @@
 
 import os
 import pprint
-from . import log, config, util, template, process
+from . import log, config, util, template, process, pcu
 
-class OsmoPcuOC2G(log.Origin):
+class OsmoPcuOC2G(pcu.Pcu):
 
     REMOTE_DIR = '/osmo-gsm-tester-pcu'
     PCU_OC2G_BIN = 'osmo-pcu'
     PCU_OC2G_CFG = 'osmo-pcu-oc2g.cfg'
 
     def __init__(self, suite_run, btsoc2g, conf):
-        super().__init__(log.C_RUN, self.PCU_OC2G_BIN)
+        super().__init__(suite_run, btsoc2g, conf, self.PCU_OC2G_BIN)
         self.run_dir = None
         self.bsc = None
         self.inst = None
         self.remote_inst = None
         self.remote_dir = None
-        self.btsoc2g = None
-        self.suite_run = suite_run
-        self.btsoc2g = btsoc2g
-        self.conf = conf
         self.remote_env = {}
         self.remote_user = 'root'
 
@@ -58,26 +54,26 @@
         self.run_remote('rm-remote-dir', ('test', '!', '-d', OsmoPcuOC2G.REMOTE_DIR, '||', 'rm', '-rf', OsmoPcuOC2G.REMOTE_DIR))
         self.run_remote('mk-remote-dir', ('mkdir', '-p', OsmoPcuOC2G.REMOTE_DIR))
         self.run_local('scp-inst-to-btsoc2g',
-            ('scp', '-r', str(self.inst), '%s@%s:%s' % (self.remote_user, self.btsoc2g.remote_addr(), str(self.remote_inst))))
+            ('scp', '-r', str(self.inst), '%s@%s:%s' % (self.remote_user, self.bts.remote_addr(), str(self.remote_inst))))
 
         remote_run_dir = self.remote_dir.child(OsmoPcuOC2G.PCU_OC2G_BIN)
         self.run_remote('mk-remote-run-dir', ('mkdir', '-p', remote_run_dir))
 
         remote_config_file = self.remote_dir.child(OsmoPcuOC2G.PCU_OC2G_CFG)
         self.run_local('scp-cfg-to-btsoc2g',
-            ('scp', '-r', self.config_file, '%s@%s:%s' % (self.remote_user, self.btsoc2g.remote_addr(), remote_config_file)))
+            ('scp', '-r', self.config_file, '%s@%s:%s' % (self.remote_user, self.bts.remote_addr(), remote_config_file)))
 
         remote_lib = self.remote_inst.child('lib')
         remote_binary = self.remote_inst.child('bin', OsmoPcuOC2G.PCU_OC2G_BIN)
         self.launch_remote(OsmoPcuOC2G.PCU_OC2G_BIN,
             ('LD_LIBRARY_PATH=%s' % remote_lib,
              remote_binary, '-c', remote_config_file, '-r', '1',
-             '-i', self.btsoc2g.bsc.addr()),
+             '-i', self.bts.bsc.addr()),
             remote_cwd=remote_run_dir, keepalive=keepalive)
 
     def _process_remote(self, name, popen_args, remote_cwd=None):
         run_dir = self.run_dir.new_dir(name)
-        return process.RemoteProcess(name, run_dir, self.remote_user, self.btsoc2g.remote_addr(), remote_cwd,
+        return process.RemoteProcess(name, run_dir, self.remote_user, self.bts.remote_addr(), remote_cwd,
                                      popen_args)
 
     def run_remote(self, name, popen_args, remote_cwd=None):
@@ -110,8 +106,8 @@
         config.overlay(values, self.suite_run.config())
         config.overlay(values, {
                         'osmo_pcu_oc2g': {
-                            'bts_addr': self.btsoc2g.remote_addr(),
-                            'pcu_socket_path': self.btsoc2g.pcu_socket_path(),
+                            'bts_addr': self.bts.remote_addr(),
+                            'pcu_socket_path': self.bts.pcu_socket_path(),
                             'egprs_enabled': self.egprs_enabled(),
                         }
         })
diff --git a/src/osmo_gsm_tester/pcu_sysmo.py b/src/osmo_gsm_tester/pcu_sysmo.py
index 8998622..55d6f53 100644
--- a/src/osmo_gsm_tester/pcu_sysmo.py
+++ b/src/osmo_gsm_tester/pcu_sysmo.py
@@ -19,25 +19,21 @@
 
 import os
 import pprint
-from . import log, config, util, template, process
+from . import log, config, util, template, process, pcu
 
-class OsmoPcuSysmo(log.Origin):
+class OsmoPcuSysmo(pcu.Pcu):
 
     REMOTE_DIR = '/osmo-gsm-tester-pcu'
     PCU_SYSMO_BIN = 'osmo-pcu'
     PCU_SYSMO_CFG = 'osmo-pcu-sysmo.cfg'
 
     def __init__(self, suite_run, sysmobts, conf):
-        super().__init__(log.C_RUN, self.PCU_SYSMO_BIN)
+        super().__init__(suite_run, sysmobts, conf, self.PCU_SYSMO_BIN)
         self.run_dir = None
         self.bsc = None
         self.inst = None
         self.remote_inst = None
         self.remote_dir = None
-        self.sysmobts = None
-        self.suite_run = suite_run
-        self.sysmobts = sysmobts
-        self.conf = conf
         self.remote_env = {}
         self.remote_user = 'root'
 
@@ -57,27 +53,27 @@
 
         self.run_remote('rm-remote-dir', ('test', '!', '-d', OsmoPcuSysmo.REMOTE_DIR, '||', 'rm', '-rf', OsmoPcuSysmo.REMOTE_DIR))
         self.run_remote('mk-remote-dir', ('mkdir', '-p', OsmoPcuSysmo.REMOTE_DIR))
-        self.run_local('scp-inst-to-sysmobts',
-            ('scp', '-r', str(self.inst), '%s@%s:%s' % (self.remote_user, self.sysmobts.remote_addr(), str(self.remote_inst))))
+        self.run_local('scp-inst-to-bts',
+            ('scp', '-r', str(self.inst), '%s@%s:%s' % (self.remote_user, self.bts.remote_addr(), str(self.remote_inst))))
 
         remote_run_dir = self.remote_dir.child(OsmoPcuSysmo.PCU_SYSMO_BIN)
         self.run_remote('mk-remote-run-dir', ('mkdir', '-p', remote_run_dir))
 
         remote_config_file = self.remote_dir.child(OsmoPcuSysmo.PCU_SYSMO_CFG)
         self.run_local('scp-cfg-to-sysmobts',
-            ('scp', '-r', self.config_file, '%s@%s:%s' % (self.remote_user, self.sysmobts.remote_addr(), remote_config_file)))
+            ('scp', '-r', self.config_file, '%s@%s:%s' % (self.remote_user, self.bts.remote_addr(), remote_config_file)))
 
         remote_lib = self.remote_inst.child('lib')
         remote_binary = self.remote_inst.child('bin', OsmoPcuSysmo.PCU_SYSMO_BIN)
         self.launch_remote(OsmoPcuSysmo.PCU_SYSMO_BIN,
             ('LD_LIBRARY_PATH=%s' % remote_lib,
              remote_binary, '-c', remote_config_file, '-r', '1',
-             '-i', self.sysmobts.bsc.addr()),
+             '-i', self.bts.bsc.addr()),
             remote_cwd=remote_run_dir, keepalive=keepalive)
 
     def _process_remote(self, name, popen_args, remote_cwd=None):
         run_dir = self.run_dir.new_dir(name)
-        return process.RemoteProcess(name, run_dir, self.remote_user, self.sysmobts.remote_addr(), remote_cwd,
+        return process.RemoteProcess(name, run_dir, self.remote_user, self.bts.remote_addr(), remote_cwd,
                                      popen_args)
 
     def run_remote(self, name, popen_args, remote_cwd=None):
@@ -110,8 +106,8 @@
         config.overlay(values, self.suite_run.config())
         config.overlay(values, {
                         'osmo_pcu_sysmo': {
-                            'bts_addr': self.sysmobts.remote_addr(),
-                            'pcu_socket_path': self.sysmobts.pcu_socket_path(),
+                            'bts_addr': self.bts.remote_addr(),
+                            'pcu_socket_path': self.bts.pcu_socket_path(),
                             'egprs_enabled': self.egprs_enabled(),
                         }
         })