Esempio n. 1
0
 def executeRun(self):
     inData = self.getInData()
     hasValidInDataSchema = False
     hasValidOutDataSchema = False
     if self.getInDataSchema() is not None:
         instance = inData
         schema = self.getInDataSchema()
         try:
             jsonschema.validate(instance=instance, schema=schema)
             hasValidInDataSchema = True
         except Exception as e:
             logger.exception(e)
     else:
         hasValidInDataSchema = True
     if hasValidInDataSchema:
         self._workingDirectory = UtilsPath.getWorkingDirectory(
             self,
             inData,
             workingDirectorySuffix=self._workingDirectorySuffix)
         self.writeInputData(inData)
         self._oldDir = os.getcwd()
         os.chdir(str(self._workingDirectory))
         outData = self.run(inData)
         os.chdir(self._oldDir)
     else:
         raise RuntimeError("Schema validation error for inData")
     if self.getOutDataSchema() is not None:
         instance = outData
         schema = self.getOutDataSchema()
         try:
             jsonschema.validate(instance=instance, schema=schema)
             hasValidOutDataSchema = True
         except Exception as e:
             logger.exception(e)
     else:
         hasValidOutDataSchema = True
     if hasValidOutDataSchema:
         self.writeOutputData(outData)
     else:
         raise RuntimeError("Schema validation error for outData")
     if not os.listdir(str(self._workingDirectory)):
         os.rmdir(str(self._workingDirectory))
Esempio n. 2
0
 def setWorkingDirectory(self, inData):
     self._workingDirectory = UtilsPath.getWorkingDirectory(self, inData)