def _sync_portal_job(self, job_id): kvstore_key = common.portal_job_kvstore_key(self._portal_name, job_id) data = self._kvstore.get_data(kvstore_key) if data is not None: return text_format.Parse(data, dp_pb.DataPortalJob(), allow_unknown_field=True) return None
def _check_portal_job(self, kvstore, fnames, portal_manifest, job_id): kvstore_key = common.portal_job_kvstore_key(portal_manifest.name, job_id) data = kvstore.get_data(kvstore_key) self.assertIsNotNone(data) portal_job = text_format.Parse(data, dp_pb.DataPortalJob()) self.assertEqual(job_id, portal_job.job_id) self.assertFalse(portal_job.finished) fnames.sort() fpaths = [os.path.join(portal_manifest.input_base_dir, f) for f in fnames if fnmatch(f, portal_manifest.input_file_wildcard)] self.assertEqual(len(fpaths), len(portal_job.fpaths)) for index, fpath in enumerate(fpaths): self.assertEqual(fpath, portal_job.fpaths[index])
def _update_processing_job(self, job): self._processing_job = None kvstore_key = common.portal_job_kvstore_key(self._portal_name, job.job_id) self._kvstore.set_data(kvstore_key, text_format.MessageToString(job)) self._processing_job = job