Skip to content

Commit da1bbce

Browse files
authored
Add GitHub test action (#85)
* update gh action * trigger on PR * remove PR trigger * use all cores * fix snakemake style * trigger on PR * remove PR trigger
1 parent 92375d0 commit da1bbce

File tree

3 files changed

+74
-47
lines changed

3 files changed

+74
-47
lines changed

.github/workflows/ci.yml

Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
name: CI
2+
3+
on:
4+
workflow_dispatch:
5+
6+
concurrency:
7+
group: ci-${{ github.workflow }}-${{ github.ref }}
8+
cancel-in-progress: true
9+
10+
permissions:
11+
contents: read
12+
packages: read
13+
statuses: write
14+
15+
jobs:
16+
format:
17+
name: Format workflow
18+
runs-on: ubuntu-latest
19+
timeout-minutes: 15
20+
21+
steps:
22+
- name: Checkout code
23+
uses: actions/checkout@v5
24+
with:
25+
fetch-depth: 0
26+
persist-credentials: false
27+
28+
- name: Format code base
29+
uses: super-linter/super-linter@v8.5.0
30+
env:
31+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
32+
VALIDATE_ALL_CODEBASE: true
33+
DEFAULT_BRANCH: main
34+
35+
VALIDATE_SNAKEMAKE_SNAKEFMT: true
36+
VALIDATE_PYTHON_BLACK: true
37+
VALIDATE_YAML_PRETTIER: true
38+
39+
- name: Set up R
40+
uses: r-lib/actions/setup-r@v2
41+
42+
- name: Set up R dependencies
43+
uses: r-lib/actions/setup-r-dependencies@v2
44+
with:
45+
packages: styler
46+
47+
- name: Check R style
48+
run: Rscript -e 'changed <- styler::style_dir(".", dry = "on"); if (any(changed$changed)) quit(status = 1)'
49+
50+
test:
51+
name: Test example data
52+
runs-on: ubuntu-latest
53+
timeout-minutes: 45
54+
55+
steps:
56+
- name: Checkout code
57+
uses: actions/checkout@v5
58+
with:
59+
persist-credentials: false
60+
61+
- name: Run workflow on example data
62+
uses: snakemake/snakemake-github-action@v2
63+
with:
64+
directory: .
65+
snakefile: workflow/Snakefile
66+
snakemake-version: 8.25.3
67+
args: >-
68+
--cores all
69+
--sdm conda
70+
--conda-cleanup-pkgs cache
71+
--show-failed-logs
72+
show-disk-usage-on-error: true

.github/workflows/lint.yml

Lines changed: 0 additions & 47 deletions
This file was deleted.

workflow/Snakefile

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,8 @@ report: os.path.join("report", "workflow.rst")
2121

2222
##### load and validate config and sample annotation sheets #####
2323
configfile: os.path.join("config", "config.yaml")
24+
25+
2426
validate(config, os.path.join("schemas", "config.schema.yaml"))
2527

2628

0 commit comments

Comments
 (0)