Submissions
Functions that interact with submissions
- 
challengeutils.submission.append_writeup_to_main_submission(row, syn)[source] Helper function that appends the write up synapse id and archived write up synapse id on the main submission
- Parameters
 row – Dictionary row[‘team’], row[‘objectId’], row[‘archived’], row[‘entityId’]
syn – synapse object
- 
challengeutils.submission.archive_project(syn, submission, admin)[source] Make a copy (archive) of the Project submission.
- Parameters
 - submission ID (submission) –
- user who will own the archived project (admin) –
- 
challengeutils.submission.attach_writeup(syn, writeup_queueid, submission_queueid)[source] Attach the write up to the submission queue
- Parameters
 writeup_queueid – Write up evaluation queue id
submission_queueid – Submission queue id
- 
challengeutils.submission.download_current_lead_sub(syn, submissionid, status, cutoff_annotation, verbose=False)[source] Download the current leading submission for boot ladder boot method
- Parameters
 syn – Synapse connection
submissionid – Submission id
status – Submission status
cutoff_annotation – Boolean cutoff annotation key
verbose – Boolean value to print
- Returns
 Path to current leading submission or None
- 
challengeutils.submission.get_submitterid_from_submission_id(syn, submissionid, queue, verbose=False)[source] Gets submitterid from submission id
- Parameters
 syn – Synapse connection
submissionid – Submission id
queue – Evaluation queue id
verbose – Boolean value to print
- Returns
 Submitter id
- 
challengeutils.submission.get_submitters_lead_submission(syn, submitterid, queue, cutoff_annotation, verbose=False)[source] Gets submitter’s lead submission
- Parameters
 submitterid – Submitter id
queue – Evaluation queue id
cutoff_annotation – Boolean cutoff annotation key
verbose – Boolean value to print
- Returns
 previous_submission.csv or None
- 
challengeutils.submission.stop_submission_over_quota(syn: synapseclient.client.Synapse, submission_view: Union[str, synapseclient.table.SubmissionViewSchema], quota: int = 9223372036854775807)[source] Stops any submission that has exceeded the run time quota by using submission views. A submission view must first exist. Rerunning submissions will require setting TimeRemaining annotation to a positive integer.
- Parameters
 syn – Synapse connection
submission_view – Submission View or its Synapse Id.
quota – Quota in milliseconds. Default is sys.maxsize. One hour is 3600000.
- 
challengeutils.submission.validate_docker_submission(syn, submissionid)[source] Validates Synapse docker repository + sha digest submission This function requires users to have a synapse config file using synapse username and password
- Parameters
 syn – Synapse connection
submissionid – Submission id
- Returns
 True if valid, False if not
- 
challengeutils.submission.validate_project(syn, submission, challenge, public=False, admin=None)[source] Validate a Project submission.
- Parameters
 - submission ID (submission) –
- Synapse ID of Challenge wiki (challenge) –
- Project should be public (default (public) – False)
- (admin) –
- Returns
 submission_errors (str) - error messages (“” if none found) submission_status (str) - “VALIDATED”/”INVALID”