Skip to content
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

Combine midi samples in MiSeq monitor #438

Closed
15 tasks done
donkirkby opened this issue Mar 22, 2018 · 2 comments
Closed
15 tasks done

Combine midi samples in MiSeq monitor #438

donkirkby opened this issue Mar 22, 2018 · 2 comments
Assignees

Comments

@donkirkby
Copy link
Member

donkirkby commented Mar 22, 2018

In order to generate HCV reports, we have to combine HCV sample pairs: the main sample and the midi sample. That means that we will have three pipelines:

  1. filter_quality that runs once for the whole run
  2. main pipeline that generates amino.csv and coverage maps
  3. resistance pipeline that combines the two samples and generates resistance reports

Since this means big changes for the MiSeq monitor configuration, I thought I should change it to run as a service, and also to read the configuration settings from environment variables instead of settings.py.

In my research, I found the python-daemon package for launching a daemon process from Python. However, it looks like that's not really necessary, because systemd services can wrap a plain executable.

  • Define filter_quality pipeline in local Kive.
  • Define main pipeline in local Kive.
  • Define resistance pipeline in local Kive.
  • Change monitor to run three pipelines, with pipeline ids loaded from environment variables.
  • Upload to QAI.
  • External datasets.
  • New folder appears.
  • Kive retries and session refresh. Mark failed runs.
  • Use preexisting runs, if any.
  • Restart run when cancelled by user.
  • Convert logging settings to an optional file, with default useful for developers. (json, yaml, or Python?)
  • Set high priority on latest run. Not exposed through the API wrapper, yet.
  • Convert other settings to environment variables with useful defaults.
  • Configure as a systemd service, and document configuration.
  • Find pipeline by name if environment variable is not set (for developers).
@donkirkby donkirkby added this to the 7.9 - HCV reports milestone Mar 22, 2018
@donkirkby donkirkby self-assigned this Mar 22, 2018
donkirkby added a commit that referenced this issue Mar 27, 2018
Round error rates in error_metrics_parser to match old quality.csv.
donkirkby added a commit that referenced this issue Mar 27, 2018
donkirkby added a commit that referenced this issue Mar 27, 2018
Fix broken tests by upgrading to Python 3.6.
donkirkby added a commit that referenced this issue Mar 28, 2018
donkirkby added a commit that referenced this issue Mar 29, 2018
donkirkby added a commit that referenced this issue Apr 3, 2018
donkirkby added a commit that referenced this issue Apr 3, 2018
donkirkby added a commit that referenced this issue Apr 5, 2018
Also launch mixed HCV runs for MIDI samples.
donkirkby added a commit that referenced this issue Apr 5, 2018
donkirkby added a commit that referenced this issue Apr 16, 2018
Also shut down cleanly after a keyboard interrupt.
donkirkby added a commit that referenced this issue Apr 17, 2018
Rename MiSeq Monitor to MiCall Watcher.
Pull find_groups out of the resistance module, to avoid unnecessary requirements.
donkirkby added a commit that referenced this issue Apr 18, 2018
Remove settings.py, because they have moved to environment variables.
Remove MISEQ_MONITOR.py, kive_download.py, and kive_loader.py.
Following the changes for #438.
Also sort sample groups by sample number.
@jamesnakagawa
Copy link

Will this mean that MidHCV will be combined under the HCV project in lab_miseq_review_decisions?

@donkirkby
Copy link
Member Author

This issue only covers the changes to MiSeq Monitor that combine the two samples together when making the resistance calls. Issue #427 covers what you're asking about, and I'll add some notes there.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants