def __init__(self, testdef_obj, post_process_script, probe_args=None): SignalHandler.__init__(self, testdef_obj) self.scratch_dir = testdef_obj.context.client.target_device.scratch_dir # post_process_script can be local to the repo or a URL if not urlparse.urlparse(post_process_script).scheme: self.post_process_script = os.path.join( testdef_obj.repo, post_process_script) else: self.post_process_script = download_image( post_process_script, testdef_obj.context, self.scratch_dir) os.chmod(self.post_process_script, 755) # make sure we can execute it # build up the command we'll use for running the probe config = testdef_obj.context.client.config self.aep_channels = config.arm_probe_channels self.aep_args = [ config.arm_probe_binary, '-C', config.arm_probe_config] for c in self.aep_channels: self.aep_args.append('-c') self.aep_args.append(c) for arg in probe_args: self.aep_args.append(arg)
def __init__(self, testdef_obj, handlers=None, device_config_vars=None): if not device_config_vars: device_config_vars = {} if not handlers: handlers = {} SignalHandler.__init__(self, testdef_obj) self.result_dir = utils.mkdtemp() self.handlers = handlers self.scratch_dir = utils.mkdtemp() self.code_dir = os.path.join(self.scratch_dir, 'code') shutil.copytree(testdef_obj.repo, self.code_dir) device_config = testdef_obj.context.client.target_device.config self.our_env = os.environ.copy() for env_var, config_var in device_config_vars.iteritems(): try: config_value = device_config.cp.get('__main__', config_var) except NoOptionError: logging.warning( "No value found for device config %s; leaving %s unset " "in environment", config_var, env_var) else: self.our_env[env_var] = config_value