def run()

in competitions/runner.py [0:0]


    def run(self):
        while True:
            pending_submissions = self.get_pending_subs()
            if pending_submissions is None:
                time.sleep(5)
                continue
            if self.competition_type == "generic":
                for _, row in pending_submissions.iterrows():
                    team_id = row["team_id"]
                    submission_id = row["submission_id"]
                    submission_repo = row["submission_repo"]
                    self.run_local(team_id, submission_id, submission_repo)
            elif self.competition_type == "script":
                for _, row in pending_submissions.iterrows():
                    team_id = row["team_id"]
                    submission_id = row["submission_id"]
                    submission_repo = row["submission_repo"]
                    space_id = row["space_id"]
                    try:
                        self.create_space(team_id, submission_id, submission_repo, space_id)
                    except Exception as e:
                        logger.error(
                            f"Failed to create space for {team_id} {submission_id} {submission_repo} {space_id}: {e}"
                        )
                        # mark submission as failed
                        self.mark_submission_failed(team_id, submission_id)
                        logger.error(f"Marked submission {submission_id} as failed.")
                        continue
            time.sleep(5)