From 577a67ef4cc11cf12aeda27df253e8c4833d0d69 Mon Sep 17 00:00:00 2001 From: Ulthran Date: Wed, 28 Feb 2024 14:42:48 -0500 Subject: [PATCH 1/4] Apptainer test needs docker push --- .github/workflows/release.yml | 1 + scripts/filter_aln_quality.py | 1 + 2 files changed, 2 insertions(+) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index abde0f9..a31ec53 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -79,6 +79,7 @@ jobs: steps: - name: Checkout Code uses: actions/checkout@v4 + needs: build-and-push-to-dockerhub - name: Set test env run: echo "SUNBEAM_TEST_PROFILE=apptainer" >> $GITHUB_ENV diff --git a/scripts/filter_aln_quality.py b/scripts/filter_aln_quality.py index ed33a0d..9a7f9f0 100755 --- a/scripts/filter_aln_quality.py +++ b/scripts/filter_aln_quality.py @@ -1,3 +1,4 @@ +# from scripts.filter_aln_quality_f import filter_bam_alignments import pysam import re From d92fed67fa6c3d22cde6fea91aad282ff1986e04 Mon Sep 17 00:00:00 2001 From: Ulthran Date: Wed, 28 Feb 2024 15:05:40 -0500 Subject: [PATCH 2/4] Use extension's version for container tag --- sbx_mapping.smk | 28 ++++++++++++++++++++-------- 1 file changed, 20 insertions(+), 8 deletions(-) diff --git a/sbx_mapping.smk b/sbx_mapping.smk index c946827..8a2111d 100644 --- a/sbx_mapping.smk +++ b/sbx_mapping.smk @@ -1,6 +1,18 @@ # -*- mode: Snakemake -*- import sys +import os +from pathlib import Path + +def get_mapping_path() -> Path: + for fp in sys.path: + if fp.split("/")[-1] == "sbx_mapping": + return Path(fp) + raise Error( + "Filepath for sbx_mapping not found, are you sure it's installed under extensions/sbx_mapping?" + ) + +SBX_MAPPING_VERSION = open(get_mapping_path() / "VERSION").read().strip() try: GenomeFiles @@ -79,7 +91,7 @@ rule build_genome_index: conda: "envs/sbx_mapping_env.yml" container: - "docker://ctbushman/sbx_mapping:0.0.0" + f"docker://ctbushman/sbx_mapping:{SBX_MAPPING_VERSION}" shell: "cd {Cfg[sbx_mapping][genomes_fp]} && bwa index {input} 2>&1 | tee {log}" @@ -100,7 +112,7 @@ rule align_to_genome: conda: "envs/sbx_mapping_env.yml" container: - "docker://ctbushman/sbx_mapping:0.0.0" + f"docker://ctbushman/sbx_mapping:{SBX_MAPPING_VERSION}" shell: """ bwa mem -M -t {threads} \ @@ -124,7 +136,7 @@ rule samtools_convert: conda: "envs/sbx_mapping_env.yml" container: - "docker://ctbushman/sbx_mapping:0.0.0" + f"docker://ctbushman/sbx_mapping:{SBX_MAPPING_VERSION}" shell: """ samtools view -@ {threads} -b {Cfg[sbx_mapping][samtools_opts]} {input} 2>&1 | tee {log.view_log} | \ @@ -143,7 +155,7 @@ rule filter_aln_quality: conda: "envs/sbx_mapping_env.yml" container: - "docker://ctbushman/sbx_mapping:0.0.0" + f"docker://ctbushman/sbx_mapping:{SBX_MAPPING_VERSION}" script: "scripts/filter_aln_quality.py" @@ -160,7 +172,7 @@ rule samtools_index: conda: "envs/sbx_mapping_env.yml" container: - "docker://ctbushman/sbx_mapping:0.0.0" + f"docker://ctbushman/sbx_mapping:{SBX_MAPPING_VERSION}" shell: "samtools index {input} {output} 2>&1 | tee {log}" @@ -183,7 +195,7 @@ rule get_sliding_coverage: conda: "envs/sbx_mapping_env.yml" container: - "docker://ctbushman/sbx_mapping:0.0.0" + f"docker://ctbushman/sbx_mapping:{SBX_MAPPING_VERSION}" script: "scripts/get_sliding_coverage.py" @@ -222,7 +234,7 @@ rule get_coverage_filtered: conda: "envs/sbx_mapping_env.yml" container: - "docker://ctbushman/sbx_mapping:0.0.0" + f"docker://ctbushman/sbx_mapping:{SBX_MAPPING_VERSION}" script: "scripts/samtools_get_coverage.py" @@ -252,7 +264,7 @@ rule summarize_num_mapped_reads: conda: "envs/sbx_mapping_env.yml" container: - "docker://ctbushman/sbx_mapping:0.0.0" + f"docker://ctbushman/sbx_mapping:{SBX_MAPPING_VERSION}" shell: """ samtools idxstats {input} | (sed 's/^/{wildcards.sample}\t/') > {output} From ff530ed022bbc8a927c09e039254c7c787ed89fb Mon Sep 17 00:00:00 2001 From: Ulthran Date: Wed, 28 Feb 2024 15:22:33 -0500 Subject: [PATCH 3/4] Use sunbeam-labs dockerhub repo --- .github/workflows/release.yml | 8 ++++---- sbx_mapping.smk | 18 ++++++++++-------- 2 files changed, 14 insertions(+), 12 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index a31ec53..c1f89be 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -54,14 +54,14 @@ jobs: - name: Log in to Docker Hub uses: docker/login-action@v3 with: - username: ${{ secrets.DOCKER_USERNAME }} - password: ${{ secrets.DOCKER_PASSWORD }} + username: ${{ secrets.DOCKERHUB_USERNAME }} + password: ${{ secrets.DOCKERHUB_TOKEN }} - name: Extract metadata (tags, labels) for Docker id: meta uses: docker/metadata-action@v5 with: - images: ctbushman/sbx_mapping + images: sunbeam-labs/sbx_mapping - name: Build and push Docker image uses: docker/build-push-action@v5 @@ -75,11 +75,11 @@ jobs: test-apptainer: name: Apptainer Test runs-on: ubuntu-latest + needs: build-and-push-to-dockerhub steps: - name: Checkout Code uses: actions/checkout@v4 - needs: build-and-push-to-dockerhub - name: Set test env run: echo "SUNBEAM_TEST_PROFILE=apptainer" >> $GITHUB_ENV diff --git a/sbx_mapping.smk b/sbx_mapping.smk index 8a2111d..60a4d06 100644 --- a/sbx_mapping.smk +++ b/sbx_mapping.smk @@ -4,6 +4,7 @@ import sys import os from pathlib import Path + def get_mapping_path() -> Path: for fp in sys.path: if fp.split("/")[-1] == "sbx_mapping": @@ -12,6 +13,7 @@ def get_mapping_path() -> Path: "Filepath for sbx_mapping not found, are you sure it's installed under extensions/sbx_mapping?" ) + SBX_MAPPING_VERSION = open(get_mapping_path() / "VERSION").read().strip() try: @@ -91,7 +93,7 @@ rule build_genome_index: conda: "envs/sbx_mapping_env.yml" container: - f"docker://ctbushman/sbx_mapping:{SBX_MAPPING_VERSION}" + f"docker://sunbeam-labs/sbx_mapping:{SBX_MAPPING_VERSION}" shell: "cd {Cfg[sbx_mapping][genomes_fp]} && bwa index {input} 2>&1 | tee {log}" @@ -112,7 +114,7 @@ rule align_to_genome: conda: "envs/sbx_mapping_env.yml" container: - f"docker://ctbushman/sbx_mapping:{SBX_MAPPING_VERSION}" + f"docker://sunbeam-labs/sbx_mapping:{SBX_MAPPING_VERSION}" shell: """ bwa mem -M -t {threads} \ @@ -136,7 +138,7 @@ rule samtools_convert: conda: "envs/sbx_mapping_env.yml" container: - f"docker://ctbushman/sbx_mapping:{SBX_MAPPING_VERSION}" + f"docker://sunbeam-labs/sbx_mapping:{SBX_MAPPING_VERSION}" shell: """ samtools view -@ {threads} -b {Cfg[sbx_mapping][samtools_opts]} {input} 2>&1 | tee {log.view_log} | \ @@ -155,7 +157,7 @@ rule filter_aln_quality: conda: "envs/sbx_mapping_env.yml" container: - f"docker://ctbushman/sbx_mapping:{SBX_MAPPING_VERSION}" + f"docker://sunbeam-labs/sbx_mapping:{SBX_MAPPING_VERSION}" script: "scripts/filter_aln_quality.py" @@ -172,7 +174,7 @@ rule samtools_index: conda: "envs/sbx_mapping_env.yml" container: - f"docker://ctbushman/sbx_mapping:{SBX_MAPPING_VERSION}" + f"docker://sunbeam-labs/sbx_mapping:{SBX_MAPPING_VERSION}" shell: "samtools index {input} {output} 2>&1 | tee {log}" @@ -195,7 +197,7 @@ rule get_sliding_coverage: conda: "envs/sbx_mapping_env.yml" container: - f"docker://ctbushman/sbx_mapping:{SBX_MAPPING_VERSION}" + f"docker://sunbeam-labs/sbx_mapping:{SBX_MAPPING_VERSION}" script: "scripts/get_sliding_coverage.py" @@ -234,7 +236,7 @@ rule get_coverage_filtered: conda: "envs/sbx_mapping_env.yml" container: - f"docker://ctbushman/sbx_mapping:{SBX_MAPPING_VERSION}" + f"docker://sunbeam-labs/sbx_mapping:{SBX_MAPPING_VERSION}" script: "scripts/samtools_get_coverage.py" @@ -264,7 +266,7 @@ rule summarize_num_mapped_reads: conda: "envs/sbx_mapping_env.yml" container: - f"docker://ctbushman/sbx_mapping:{SBX_MAPPING_VERSION}" + f"docker://sunbeam-labs/sbx_mapping:{SBX_MAPPING_VERSION}" shell: """ samtools idxstats {input} | (sed 's/^/{wildcards.sample}\t/') > {output} From 6b5a89f2c5d20f7cae674e1203a3bd9fbf4b21ee Mon Sep 17 00:00:00 2001 From: Ulthran Date: Wed, 28 Feb 2024 15:26:53 -0500 Subject: [PATCH 4/4] Bump version to 0.0.1 --- VERSION | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/VERSION b/VERSION index bd52db8..8a9ecc2 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -0.0.0 \ No newline at end of file +0.0.1 \ No newline at end of file