def cancel_jobs(self, joblist): """ For the given job list, cancel each job. :param joblist: A list of job identifiers to be cancelled. :returns: The return code to indicate if jobs were cancelled. """ return CancellationRecord(CancelCode.OK, 0)
def cancel_jobs(self, joblist): """ For the given job list, cancel each job. :param joblist: A list of job identifiers to be cancelled. :returns: The return code to indicate if jobs were cancelled. """ # If we don't have any jobs to check, just return status OK. if not joblist: return CancelCode.OK cmd = "bkill {}".format(" ".join(joblist)) p = Popen(cmd, shell=True, stdout=PIPE, stderr=PIPE) output, err = p.communicate() retcode = p.wait() if retcode == 0: return CancellationRecord(CancelCode.OK, retcode) else: LOGGER.error( "Error code '%s' seen. Unexpected behavior " "encountered.", retcode) return CancellationRecord(CancelCode.ERROR, retcode)
def cancel_jobs(self, joblist): """ For the given job list, cancel each job. :param joblist: A list of job identifiers to be cancelled. :returns: The return code to indicate if jobs were cancelled. """ # If we don't have any jobs to check, just return status OK. if not joblist: return CancellationRecord(CancelCode.OK, 0) cmd = "scancel --quiet {}".format(" ".join(joblist)) p = start_process(cmd) output, err = p.communicate() retcode = p.wait() if retcode == 0: _record = CancellationRecord(CancelCode.OK, retcode) else: LOGGER.error("Error code '%s' seen. Unexpected behavior " "encountered.") _record = CancellationRecord(CancelCode.ERROR, retcode) return _record