Skip to content

This package can deploy a AACR GENIE like project on Synapse and perform validation and processing of files.

License

Notifications You must be signed in to change notification settings

Sage-Bionetworks/synapsegenie

Repository files navigation

Synapse Genie

Introduction

This package can deploy a AACR GENIE like project on Synapse and perform validation and processing of files.

Installation

Dependencies:

  • Python 3.7 or higher
  • synapseclient (pip install synapseclient)
  • Python pandas (pip install pandas)
pip install synapsegenie
synapsegenie -v

Usage

Creating your own registry

Please view the example registry to learn how to utilize synapsegenie. synapsegenie allows a user to create a registry package with a list of file formats. Each of these file format classes should extend synapsegenie.example_filetype_format.FileTypeFormat. Learn more about creating Python packages here. Once you have installed your registry package, you can now use the synapsegenie command line client.

synapsegenie Synapse project

A synapsegenie Synapse project must exist for you to fully utilize this package. There is now a command to create this infrastructure in Synapse. If you already have an existing Synapse Project you would like to use, please use the --project_id parameter, otherwise please use the --project_name parameter to create a new Synapse project.

synapsegenie bootstrap-infra --format_registry_packages example_registry \
                             --project_name "My Project Name"
                             --centers AAA BBB CCC

If you decide to add centers at a later date, you can re-run this command and the center will be added

synapsegenie bootstrap-infra --format_registry_packages example_registry \
                             --project_id syn12345
                             --centers AAA BBB CCC DDD

File Validator

The synapsegenie package also has a function to run the validator locally on all of your files. Please view the help to see how to run to validator.

synapsegenie validate-single-file -h

synapsegenie /path/to/file center_name \
             --format_registry_packages example_registry \
             --project_id syn12345 \ # Run bootstrap-infra to create a Synapse project

Validation/Processing

synapsegenie will validate and process all the files uploaded by centers. Every valid file will be processed and uploaded into Synapse tables. syn22337078 is a test project.

synapsegenie process -h


# only validate
synapsegenie process --format_registry_packages example_registry \
                     --project_id syn22337078 \
                     --only_validate

# Don't download the files, only get the entity for validation
# Sometimes there may be large files in your project which you don't
# want to download
synapsegenie process --format_registry_packages example_registry \
                     --project_id syn22337078 \
                     --only_validate \
                     --only_get_entity
# validate + process
synapsegenie process --format_registry_packages example_registry \
                     --project_id syn22337078

Contributing

To learn how to contribute, please read the contributing guide

About

This package can deploy a AACR GENIE like project on Synapse and perform validation and processing of files.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •  

Languages