Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

At Sage Bionetworks, we generally provision an EC2 Linux instance for a Challenge that leverages SynapseWorkflowOrchestrator to run CWL workflows.  These workflows will be responsible for evaluating and scoring submissions (see model-to-data-challenge-workflow GitHub for an example workflow).  If Sage Bionetworks is responsible for the cloud compute services, please give a general estimate of the computing power (memory, volume) needed.  We can also help with the estimates if you are unsure.

By default, up to ten submissions can be evaluated concurrently, though this number can be increased or decreased accordingly within the orchestrator's .env file.  Generally, the more submissions you want to run concurrently, the more power will be required of the instance.

...

If Sage is not allowed access to the server, then it is the external site’s responsibility to get the orchestrator running in whatever environment chosen.  If Docker is not supported by the system, please let us know as we do have solutions for workarounds (e.g. using Java to execute, etc.).

...

We have created two templates in Sage-Bionetworks-Challenges that you may use as a starting point. Their READMEs outline what will need to be updated within the scripts (under Configurations), but we will return to this later in Step 10.

Workflow Template

Submission Type

data-to-model-challenge-workflow

Flat files (e.g. CSV)

model-to-data-challenge-workflow

Docker images

2. Create the Challenge site on Synapse with challengeutils' create-challenge:

...

This command will create two Synapse /wiki/spaces/DOCS/pages/2048327716projects:

  • Staging - Organizers will use this project during the Challenge development to share files and draft the Challenge wiki. The create-challenge command initializes the wiki with the DREAM Challenge Wiki Template.

  • Live - Organizers will use this project as the pre-registration page during Challenge development. When the Challenge is ready for launch, the project will then be replaced with the contents from staging.

You may think of these two projects as development (staging project) and production (live project), in that all edits must be done in the staging site, NOT the live site. Maintenance of both projects enables wiki content to be edited and previewed in the staging project before the content is published to the live project. Changes to the live site are synced over with challengeutils' mirror-wiki (see Update the Challenge for more).

Info

At first, the live site will be just one page where a general overview about the Challenge is provided.  There will also be a pre-register button that Synapse users can click on if they are interested in the upcoming Challenge.

Panel
panelIconId203c
panelIcon:bangbang:
panelIconText
bgColor#FFFAE6

Important! For the initial deployment of the staging site to live, use synapseutils' copyWikicommand, NOT mirror-wiki (more on this under Launch the Challenge).

create-challenge will also create four /wiki/spaces/DOCS/pages/1985446029 for the Challenge:

...

Panel
panelIconId270f
panelIcon:pencil2:
panelIconText
bgColor#E3FCEF

This file will be what links the evaluation queue to the orchestrator. Make note of this File ID for use later in Step 9.

6. Add an annotation /wiki/spaces/DOCS/pages/2667708522 to the file called ROOT_TEMPLATE by clicking on Files Tools > Annotations > Edit.  The "Value" will be the path to the workflow script, written as:

...

7. Create a cloud compute environment with the required memory and volume specifications.  Once it spins up, log into the instance and clone the orchestrator. Follow the "Setting up linux environment" instructions in the README to install and run Docker as well as docker-compose onto the instance.

...

Other properties may also be updated if desired, e.g. SUBMITTER_NOTIFICATION_MASK, SHARE_RESULTS_IMMEDIATELY, MAX_CONCURRENT_WORKFLOWS, etc.  Refer to the "Running the Orchestrator with Docker containers" notes in the README for more details.

...

12. Go to the staging site and click on the TABLES tab.   Create a new SubmissionView Submission View by clicking on Table Tools > Add Submission View.  Under  Under "Scope", add the evaluation queue(s) you are interested in monitoring (you may add more than one), then click Next. On the next screen, select which information to display - this is known as its schema. We recommend the following schema for a typical SubmissionView:

...

Once you click Save, a table of the submissions and their metadata will become available for viewing and querying /wiki/spaces/DOCS/pages/2667642897. Changes to the information displayed can be edited by going to the SubmissionView, then clicking on Submission View Tools > Show Submission View Schema > Edit Schema.

...

Panel
panelIconId203c
panelIcon:bangbang:
panelIconText
bgColor#FFFAE6

Important! After the initial copying, all changes to the live site should now be synced over with mirror-wiki; DO NOT use copyWiki again.   See more on updating the wikis under the Update the Challenge section below.

Stop the Orchestrator

...

Learn more about adding leaderboards in the /wiki/spaces/DOCS/pages/1985151345.

/wiki/spaces/DOCS/pages/1985151441, /wiki/spaces/DOCS/pages/1985151345, /wiki/spaces/DOCS/pages/2011070739

...