def fetchRootJob(self):
        """
        Fetches the root job from the jobStore that provides context for all other jobs.

        Exactly the same as the jobStore.loadRootJob() function, but with a different
        exit message if the root job is not found (indicating the workflow ran successfully
        to completion and certain stats cannot be gathered from it meaningfully such
        as which jobs are left to run).

        :raises JobException: if the root job does not exist.
        """
        try:
            return self.jobStore.loadRootJob()
        except JobException:
            print('Root job is absent. The workflow may have completed successfully.', file=sys.stderr)
            raise
def fetchRootJob ( self ) : try : return self . jobStore . loadRootJob ( ) except JobException : print ( 'Root job is absent. The workflow may have completed successfully.' , file = sys . stderr ) raise
Fetches the root job from the jobStore that provides context for all other jobs.

        Exactly the same as the jobStore.loadRootJob() function, but with a different
        exit message if the root job is not found (indicating the workflow ran successfully
        to completion and certain stats cannot be gathered from it meaningfully such
        as which jobs are left to run).

        :raises JobException: if the root job does not exist.