68 lines
2 KiB
YAML
68 lines
2 KiB
YAML
name: nf-core linting
|
|
# This workflow is triggered on pushes and PRs to the repository.
|
|
# It runs the `nf-core lint` and markdown lint tests to ensure
|
|
# that the code meets the nf-core guidelines.
|
|
on:
|
|
push:
|
|
branches:
|
|
- dev
|
|
pull_request:
|
|
release:
|
|
types: [published]
|
|
|
|
jobs:
|
|
pre-commit:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4
|
|
|
|
- name: Set up Python 3.12
|
|
uses: actions/setup-python@82c7e631bb3cdc910f68e0081d67478d79c6982d # v5
|
|
with:
|
|
python-version: "3.12"
|
|
|
|
- name: Install pre-commit
|
|
run: pip install pre-commit
|
|
|
|
- name: Run pre-commit
|
|
run: pre-commit run --all-files
|
|
|
|
nf-core:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Check out pipeline code
|
|
uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4
|
|
|
|
- name: Install Nextflow
|
|
uses: nf-core/setup-nextflow@v2
|
|
|
|
- uses: actions/setup-python@82c7e631bb3cdc910f68e0081d67478d79c6982d # v5
|
|
with:
|
|
python-version: "3.12"
|
|
architecture: "x64"
|
|
|
|
- name: Install dependencies
|
|
run: |
|
|
python -m pip install --upgrade pip
|
|
pip install nf-core
|
|
|
|
- name: Run nf-core lint
|
|
env:
|
|
GITHUB_COMMENTS_URL: ${{ github.event.pull_request.comments_url }}
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
GITHUB_PR_COMMIT: ${{ github.event.pull_request.head.sha }}
|
|
run: nf-core -l lint_log.txt lint --dir ${GITHUB_WORKSPACE} --markdown lint_results.md
|
|
|
|
- name: Save PR number
|
|
if: ${{ always() }}
|
|
run: echo ${{ github.event.pull_request.number }} > PR_number.txt
|
|
|
|
- name: Upload linting log file artifact
|
|
if: ${{ always() }}
|
|
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4
|
|
with:
|
|
name: linting-logs
|
|
path: |
|
|
lint_log.txt
|
|
lint_results.md
|
|
PR_number.txt
|