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

feature: rust bind silo-input-transformer in docker #51

Merged
merged 33 commits into from
Dec 2, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
33 commits
Select commit Hold shift + click to select a range
314eaba
add as submodule in docker
gordonkoehn Nov 26, 2024
762b8ac
imporve docs / and READMe
gordonkoehn Nov 26, 2024
beecb8e
Dockerfile edits
gordonkoehn Nov 26, 2024
92e014d
rename silo_input_trafo
gordonkoehn Nov 28, 2024
b42c501
WIP: rust bound, dirty wrangeling of inputs
gordonkoehn Nov 28, 2024
3a3d5ce
Update submodule to track feature/shared_lib branch
gordonkoehn Nov 28, 2024
eea1f62
WIP: add unaligned fake
gordonkoehn Nov 28, 2024
e831c9e
WIP: first complete set of inoputs
gordonkoehn Nov 28, 2024
daad8a1
WIP: refactor to wrangle / trafo - fail at trafo config
gordonkoehn Nov 28, 2024
27f43ef
mkdir - not rust fails
gordonkoehn Nov 28, 2024
7f923a3
fix missing read_id
gordonkoehn Nov 28, 2024
e055639
larger dat
gordonkoehn Nov 28, 2024
5888a1f
fixing file naming issues / added debug statemnts
gordonkoehn Nov 29, 2024
4ecbe20
adding description wrangel function
gordonkoehn Nov 29, 2024
1722824
WIP: untested amino acid inseraitons
gordonkoehn Nov 29, 2024
2958d40
add warning insertions
gordonkoehn Dec 2, 2024
1358219
skip pytest
gordonkoehn Dec 2, 2024
8aa6561
fix: variable override
gordonkoehn Dec 2, 2024
3a3e512
fix: testing suits
gordonkoehn Dec 2, 2024
1da3541
fix: cleanup unnessary volumes
gordonkoehn Dec 2, 2024
2b7b9c6
refert to small dataset
gordonkoehn Dec 2, 2024
bbc0986
remove minimal database config
gordonkoehn Dec 2, 2024
d412ca5
Delete scripts/reference_genomes.json
gordonkoehn Dec 2, 2024
3b58199
Revert "Delete scripts/reference_genomes.json"
gordonkoehn Dec 2, 2024
c87ec89
fix: silo_input_transformer cannot handle empty amino acid file need …
gordonkoehn Dec 2, 2024
260ed8d
Remove submodule silo_input_transformer
gordonkoehn Dec 2, 2024
11ddae4
remove submodile
gordonkoehn Dec 2, 2024
8f66836
Add silo_input_transformer files directly to the repository
gordonkoehn Dec 2, 2024
b435503
fix tests
gordonkoehn Dec 2, 2024
b0df26d
add ref genome
gordonkoehn Dec 2, 2024
cd47c32
rename
gordonkoehn Dec 2, 2024
fbe768f
Add silo_input_transformer files directly to the repository - correct…
gordonkoehn Dec 2, 2024
ec8032c
only build docker not run
gordonkoehn Dec 2, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .github/workflows/docker-build-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -42,8 +42,8 @@ jobs:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}

- name: Build and test Docker image
run: docker-compose --env-file docker-compose.env up --build --exit-code-from sr2silo
- name: Build Docker image
run: docker-compose --env-file docker-compose.env build

- name: Push to DockerHub
if: github.ref == 'refs/heads/main'
Expand Down
6 changes: 6 additions & 0 deletions Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,9 @@ FROM continuumio/miniconda3
# Set the working directory in the container
WORKDIR /app

# Install build-essential package for gcc and other build tools - required for the Rust project
RUN apt-get update && apt-get install -y build-essential

# Copy the environment.yml file into the container at /app
COPY environment.yml /app/environment.yml

Expand All @@ -16,6 +19,9 @@ SHELL ["conda", "run", "-n", "sr2silo", "/bin/bash", "-c"]
# Copy the current directory contents into the container at /app
COPY . /app

# Build the Rust project as a Python extension
RUN cd silo_input_transformer && maturin develop --release

# Install the sr2silo package
RUN pip install -e .

Expand Down
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@ The V-Pipe Docker is designed to process a single `.bam` file and upload the res

## Project Organization

- `silo-input-transformer`: Is a rust based utility to handle the `fasta` to `ndjson` transformation and is here imported as a git submodule.
- `.github/workflows`: Contains GitHub Actions used for building, testing, and publishing.
install, and whether or not to mount the project directory into the container.
- `.vscode/settings.json`: Contains VSCode settings specific to the project, such as the Python interpreter to use and the maximum line length for auto-formatting.
Expand Down
6 changes: 3 additions & 3 deletions docker-compose.env
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
SAMPLE_DIR=./tests/data/samples/A1_05_2024_10_08/20241024_2411515907/alignments
SAMPLE_DIR=./tests/data/samples_large/A1_05_2024_10_08/20241024_2411515907/alignments
SAMPLE_ID=A1_05_2024_10_08
BATCH_ID=20241024_2411515907
TIMELINE_FILE=./tests/data/samples/timeline_A1_05_2024_10_08.tsv
PRIMER_FILE=./tests/data/samples/primers.yaml
TIMELINE_FILE=./tests/data/samples_large/timeline_A1_05_2024_10_08.tsv
PRIMER_FILE=./tests/data/samples_large/primers.yaml
NEXTCLADE_REFERENCE=sars-cov2
RESULTS_DIR=./results
3 changes: 2 additions & 1 deletion docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,8 @@ services:
- ${TIMELINE_FILE}:/app/timeline.tsv
- ${PRIMER_FILE}:/app/primers.yaml
- ${RESULTS_DIR}:/app/results
- ./scripts/vp_config.json:/app/scripts/vp_config.json
- ./scripts/database_config.yaml:/app/scripts/database_config.yaml
- ./scripts/reference_genomes.json:/app/scripts/- ./scripts/database_config.yaml:/app/scripts/reference_genomes.json
environment:
- PYTHONUNBUFFERED=1
- SAMPLE_DIR=${SAMPLE_DIR}
Expand Down
2 changes: 2 additions & 0 deletions environment.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,3 +9,5 @@ dependencies:
- poetry
- pydantic
- click
- rust
- maturin
45 changes: 45 additions & 0 deletions scripts/database_config.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
schema:
metadata:
- name: sample_id
type: string
generateIndex: false
- name: batch_id
type: string
generateIndex: false
- name: sequencing_well_position
type: string
generateIndex: false
- name: location_code
type: string
generateIndex: false
- name: sampling_date
type: date
generateIndex: false
- name: sequencing_date
type: string
generateIndex: false
- name: flow_cell_serial_number
type: string
generateIndex: false
- name: read_length
type: number
generateIndex: false
- name: primer_protocol
type: string
generateIndex: false
- name: location_name
type: string
generateIndex: false
- name: primer_protocol_name
type: string
generateIndex: false
- name: nextclade_reference
type: string
generateIndex: false
- name: read_id
type: string
generateIndex: false
opennessLevel: OPEN
instanceName: wise-sarsCoV2
features: []
primaryKey: read_id
58 changes: 58 additions & 0 deletions scripts/reference_genomes.json

Large diffs are not rendered by default.

Loading
Loading