Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
12 changes: 4 additions & 8 deletions .github/workflows/conventional-prs.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
name: Lint PR
name: Conventional PRs

on:
pull_request_target:
types:
Expand All @@ -11,10 +12,5 @@ permissions:
pull-requests: read

jobs:
main:
name: Validate PR title
runs-on: ubuntu-latest
steps:
- uses: amannn/action-semantic-pull-request@v5
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
conventional-prs:
uses: MPUSP/mpusp-github-actions/.github/workflows/conventional-prs.yml@main
17 changes: 17 additions & 0 deletions .github/workflows/deploy-apptainer.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
name: Deploy Apptainer

on:
workflow_run:
workflows: ["Release Please"]
types:
- completed
workflow_dispatch:

permissions:
contents: read
packages: write

jobs:
deploy-apptainer:
if: ${{ github.event_name == 'workflow_dispatch' || github.event.workflow_run.conclusion == 'success' }}
uses: MPUSP/mpusp-github-actions/.github/workflows/deploy-apptainer.yml@main
60 changes: 0 additions & 60 deletions .github/workflows/deploy_apptainer.yml

This file was deleted.

57 changes: 0 additions & 57 deletions .github/workflows/main.yml

This file was deleted.

14 changes: 4 additions & 10 deletions .github/workflows/release-please.yml
Original file line number Diff line number Diff line change
@@ -1,20 +1,14 @@
name: Release Please

on:
push:
branches:
- main
branches: [main]

permissions:
contents: write
pull-requests: write
issues: write

name: release-please

jobs:
release-please:
runs-on: ubuntu-latest
steps:
- uses: googleapis/release-please-action@v4
with:
token: ${{ secrets.GITHUB_TOKEN }}
release-type: simple
uses: MPUSP/mpusp-github-actions/.github/workflows/release-please.yml@main
12 changes: 12 additions & 0 deletions .github/workflows/snakemake-tests.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
name: Snakemake Tests

on:
pull_request:
branches: [main]

jobs:
snakemake-tests:
uses: MPUSP/mpusp-github-actions/.github/workflows/snakemake-tests.yml@main
with:
cores: 2
dryrun: false
10 changes: 8 additions & 2 deletions .test/config/config.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,10 @@
samplesheet: "config/samples.csv"
tool: ["prokka"]

reference:
fasta: ""
gff: ""

pgap:
bin: "path/to/pgap.py"
use_yaml_config: True
Expand All @@ -18,12 +22,14 @@ bakta:
extra: "--keep-contig-headers --compliant"

quast:
reference_fasta: ""
reference_gff: ""
extra: ""

panaroo:
skip: False
remove_source: "cmsearch"
remove_feature: "tRNA|rRNA|ncRNA|exon|sequence_feature"
extra: "--clean-mode strict --remove-invalid-genes"

fastani:
skip: False
extra: ""
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# snakemake-assembly-postprocessing

[![Snakemake](https://img.shields.io/badge/snakemake-≥8.24.1-brightgreen.svg)](https://snakemake.github.io)
[![GitHub actions status](https://github.com/MPUSP/snakemake-assembly-postprocessing/actions/workflows/main.yml/badge.svg)](https://github.com/MPUSP/snakemake-assembly-postprocessing/actions/workflows/main.yml)
[![GitHub Actions](https://github.com/MPUSP/snakemake-assembly-postprocessing/actions/workflows/snakemake-tests.yml/badge.svg)](https://github.com/MPUSP/snakemake-assembly-postprocessing/actions/workflows/snakemake-tests.yml)
[![run with conda](http://img.shields.io/badge/run%20with-conda-3EB049?labelColor=000000&logo=anaconda)](https://docs.conda.io/en/latest/)
[![run with apptainer](https://img.shields.io/badge/run%20with-apptainer-1D355C.svg?labelColor=000000)](https://apptainer.org/)
[![workflow catalog](https://img.shields.io/badge/Snakemake%20workflow%20catalog-darkgreen)](https://snakemake.github.io/snakemake-workflow-catalog/docs/workflows/MPUSP/snakemake-assembly-postprocessing)
Expand Down
33 changes: 2 additions & 31 deletions config/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ A Snakemake workflow for the post-processing of microbial genome assemblies.
3. [bakta](https://github.com/oschwengers/bakta), a fast, alignment-free annotation tool. Note: Bakta will automatically download its companion database from zenodo (light: 1.5 GB, full: 40 GB)
3. Create a QC report for the assemblies using [Quast](https://github.com/ablab/quast)
4. Create a pangenome analysis (orthologs/homologs) using [Panaroo](https://gthlab.au/panaroo/)
5. Compute pairwise average nucleotide identity (ANI) between the assemblies using [FastANI](https://github.com/ParBLiSS/FastANI) and plot a phylogenetic tree based on the ANI distances.

## Running the workflow

Expand All @@ -22,34 +23,4 @@ The samplesheet table has the following layout:
| EC2224 | "Streptococcus pyogenes" | SF370 | SPY | assembly.fasta |
| ... | ... | ... | ... | ... |

**Note:** Pangenome analysis with `Panaroo` requires at least two samples.

### Parameters

This table lists all parameters that can be used to run the workflow.

| Parameter | Type | Details | Default |
|:---|:---|:---|:---|
| **samplesheet** | string | Path to the sample sheet file in csv format | |
| **tool** | array[string] | Annotation tool to use (one of `prokka`, `pgap`, `bakta`) | |
| **pgap** | | PGAP configuration object | |
| bin | string | Path to the PGAP script | |
| use_yaml_config | boolean | Whether to use YAML configuration for PGAP | `False` |
| _prepare_yaml_files_ | | Paths to YAML templates for PGAP | |
| generic | string | Path to the generic YAML configuration file | |
| submol | string | Path to the submol YAML configuration file | |
| **prokka** | | Prokka configuration object | |
| center | string | Center name for Prokka annotation (used in sequence IDs) | |
| extra | string | Extra command-line arguments for Prokka | `--addgenes` |
| **bakta** | | Bakta configuration object | |
| download_db | string | Bakta database type (`full`, `light`, or `none`) | `light` |
| existing_db | string | Path to an existing Bakta database (optional). Needs to be combined with `download_db='none'` | `--keep-contig-headers --compliant` |
| extra | string | Extra command-line arguments for Bakta | |
| **quast** | | QUAST configuration object | |
| reference_fasta | string | Path to the reference genome for QUAST | |
| reference_gff | string | Path to the reference annotation for QUAST |
| extra | string | Extra command-line arguments for QUAST | |
| **panaroo** | | Panaroo configuration object | |
| remove_source | string | Source types to remove in Panaroo (regex supported) | `cmsearch` |
| remove_feature | string | Feature types to remove in Panaroo (regex supported) | `tRNA\|rRNA\|ncRNA\|exon\|sequence_feature` |
| extra | string | Extra command-line arguments for Panaroo | `--clean-mode strict --remove-invalid-genes` |
**Note:** Pangenome analysis with `Panaroo` and pairwise similarity analysis with `FastANI` requires at least two samples.
10 changes: 8 additions & 2 deletions config/config.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,10 @@
samplesheet: "config/samples.csv"
tool: ["prokka"]

reference:
fasta: ""
gff: ""

pgap:
bin: "path/to/pgap.py"
use_yaml_config: True
Expand All @@ -18,12 +22,14 @@ bakta:
extra: "--keep-contig-headers --compliant"

quast:
reference_fasta: ""
reference_gff: ""
extra: ""

panaroo:
skip: False
remove_source: "cmsearch"
remove_feature: "tRNA|rRNA|ncRNA|exon|sequence_feature"
extra: "--clean-mode strict --remove-invalid-genes"

fastani:
skip: False
extra: ""
Loading
Loading