def status(self):
        """Return the job status as one of the codes defined in the
        `clusterjob.status` module.
        finished, communicate with the cluster to determine the job's status.
        """
        if self._status >= COMPLETED:
            return self._status
        else:
            cmd = self.backend.cmd_status(self, finished=False)
            response = self._run_cmd(cmd, self.remote, ignore_exit_code=True,
                                     ssh=self.ssh)
            status = self.backend.get_status(response, finished=False)
            if status is None:
                cmd = self.backend.cmd_status(self, finished=True)
                response = self._run_cmd(cmd, self.remote,
                                         ignore_exit_code=True, ssh=self.ssh)
                status = self.backend.get_status(response, finished=True)
            prev_status = self._status
            self._status = status
            if self._status not in STATUS_CODES:
                raise ValueError("Invalid status code %s", self._status)
            if prev_status != self._status:
                if self._status >= COMPLETED:
                    self.run_epilogue()
                self.dump()
            return self._status
def status ( self ) : if self . _status >= COMPLETED : return self . _status else : cmd = self . backend . cmd_status ( self , finished = False ) response = self . _run_cmd ( cmd , self . remote , ignore_exit_code = True , ssh = self . ssh ) status = self . backend . get_status ( response , finished = False ) if status is None : cmd = self . backend . cmd_status ( self , finished = True ) response = self . _run_cmd ( cmd , self . remote , ignore_exit_code = True , ssh = self . ssh ) status = self . backend . get_status ( response , finished = True ) prev_status = self . _status self . _status = status if self . _status not in STATUS_CODES : raise ValueError ( "Invalid status code %s" , self . _status ) if prev_status != self . _status : if self . _status >= COMPLETED : self . run_epilogue ( ) self . dump ( ) return self . _status
Return the job status as one of the codes defined in the
        `clusterjob.status` module.
        finished, communicate with the cluster to determine the job's status.