-
Notifications
You must be signed in to change notification settings - Fork 2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat(ena-submission): Create ena assembly #2332
Closed
Closed
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
7e0adae
to
1c378aa
Compare
bfb754a
to
ae5d42a
Compare
750fc67
to
8968dfa
Compare
3 tasks
…d mapping. Keep state in sample_table. Send slack notifications if submission fails.
6353a76
to
1a17eb3
Compare
68fd8d6
to
5700e24
Compare
Closing as this was part of #2417 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
resolves #2397
preview URL: https://create-ena-assembly.loculus.org/
Summary
Uses same principal as create_ena_projects to keep submission state in DB - please review that PR first :-)
Summary
This adds the following rule to the ena-submission snakemake file :
create_assembly
rule . This function will continuously (in a loop) scan for new sequences where a sample needs to be created and trigger their creation. It will also update both thesubmission_table
and theassembly_table
.webin-cli.jar
for assembly submission. This had to be added to the docker image (and its dependencies).WAITING
.High level overview of
assembly_creation
:In a loop:
submission_table
in state SUBMITTED_SAMPLEsample_table
for the corresponding (accession, version)):-- if (entry is in status SUBMITTED): update
submission_table
to SUBMITTED_ASSEMBLY.-- else: update
submission_table
to SUBMITTING_ASSEMBLY.assembly_table
for (accession, version).submission_table
in state SUBMITTING_SAMPLEassembly_table
entry is in state SUBMITTED): update entries to state SUBMITTED_ASSEMBLY.assembly_table
in state READY, prepare files: we need chromosome_list, fasta files and a manifest file, set status to WAITINGassembly_table
in state WAITING, every 5minutes (to not overload ENA) check if ENA has processed the assemblies and assigned them "gca_accession". If so update the table to status SUBMITTED and fill in resultsassembly_table
in state HAS_ERRORS for over 15min and sequences in status SUBMITTING for over 15min, or in state WAITING for over 48hours: #TODO (handle failure ena-submission: Recover from failed project/sample/assembly submission #2311), currently just throw an errorENA Assembly
As we are submitting https://ena-docs.readthedocs.io/en/latest/submit/assembly/genome.html#chromosome-assembly
We need to submit 3 files for each (multi-segmented) sequence:
PR Checklist
here I can again set the table to the erz_accession of an already existing sample to verify check_ena works for getting the gca_accessions after processing:
![image](https://private-user-images.githubusercontent.com/50943381/357752331-c5d7c2b4-6515-4aba-9492-8ae72f09c56d.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mzk4MzU0NjIsIm5iZiI6MTczOTgzNTE2MiwicGF0aCI6Ii81MDk0MzM4MS8zNTc3NTIzMzEtYzVkN2MyYjQtNjUxNS00YWJhLTk0OTItOGFlNzJmMDljNTZkLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTAyMTclMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwMjE3VDIzMzI0MlomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWI0YjI3ZGMyMjZjMGNmNGQ5MDgwN2NlYTI2YjgyZmIxMDRhOTkyZDcxYTRiYzI1NGZhOGY5YTBhNmM2YzNiMjcmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.umXrWfgdBRpn7HHYaOxRdKsjN6Yrzb_wOt61mR2LQPA)
this then puts the submission_table in status
SUBMITTED_ALL