def parseJobFiles(jobTreeJobsRoot, updatedJobFiles, childJobFileToParentJob, childCounts, shellJobs): jobFile = getJobFileName(jobTreeJobsRoot) if os.path.exists(jobFile): return _parseJobFiles(jobTreeJobsRoot, updatedJobFiles, childJobFileToParentJob, childCounts, shellJobs) return reduce(lambda x, y: x + y, [ parseJobFiles(childDir, updatedJobFiles, childJobFileToParentJob, childCounts, shellJobs) for childDir in listChildDirs(jobTreeJobsRoot) ], [])
def _parseJobFiles(jobTreeJobsRoot, updatedJobFiles, childJobFileToParentJob, childCounts, shellJobs): #Read job job = parseJobFile(getJobFileName(jobTreeJobsRoot)) #Get children childJobs = reduce(lambda x,y:x+y, [ parseJobFiles(childDir, updatedJobFiles, childJobFileToParentJob, childCounts, shellJobs) for childDir in listChildDirs(jobTreeJobsRoot) ], []) if len(childJobs) > 0: childCounts[job] = len(childJobs) for childJob in childJobs: childJobFileToParentJob[childJob.getJobFileName()] = job elif len(job.followOnCommands) > 0: updatedJobFiles.add(job) else: #Job is stub with nothing left to do, so ignore shellJobs.add(job) return [] return [ job ]
def _parseJobFiles(jobTreeJobsRoot, updatedJobFiles, childJobFileToParentJob, childCounts, shellJobs): #Read job job = parseJobFile(getJobFileName(jobTreeJobsRoot)) #Get children childJobs = reduce(lambda x, y: x + y, [ parseJobFiles(childDir, updatedJobFiles, childJobFileToParentJob, childCounts, shellJobs) for childDir in listChildDirs(jobTreeJobsRoot) ], []) if len(childJobs) > 0: childCounts[job] = len(childJobs) for childJob in childJobs: childJobFileToParentJob[childJob.getJobFileName()] = job elif len(job.followOnCommands) > 0: updatedJobFiles.add(job) else: #Job is stub with nothing left to do, so ignore shellJobs.add(job) return [] return [job]
def parseJobFiles(jobTreeJobsRoot, updatedJobFiles, childJobFileToParentJob, childCounts, shellJobs): jobFile = getJobFileName(jobTreeJobsRoot) if os.path.exists(jobFile): return _parseJobFiles(jobTreeJobsRoot, updatedJobFiles, childJobFileToParentJob, childCounts, shellJobs) return reduce(lambda x,y:x+y, [ parseJobFiles(childDir, updatedJobFiles, childJobFileToParentJob, childCounts, shellJobs) for childDir in listChildDirs(jobTreeJobsRoot) ], [])