Apply suggestions from code review #359
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Lint tools code formatting | ||
on: | ||
push: | ||
branches: | ||
- dev | ||
pull_request: | ||
release: | ||
types: [published] | ||
# Cancel if a newer run is started | ||
concurrency: | ||
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} | ||
cancel-in-progress: true | ||
jobs: | ||
EditorConfig: | ||
runs-on: ["self-hosted"] | ||
steps: | ||
- uses: actions/checkout@v4 | ||
- uses: actions/setup-node@v4 | ||
with: | ||
node-version: "20" | ||
- name: Install editorconfig-checker | ||
run: npm install -g editorconfig-checker | ||
# Run editor config check only on files not covered by a linter | ||
- name: Run ECLint check | ||
run: editorconfig-checker -exclude README.md $(git ls-files | grep -v 'test\|.py\|md\|json\|yml\|yaml\|html\|css\|Makefile') | ||
Prettier: | ||
runs-on: ["self-hosted"] | ||
steps: | ||
- uses: actions/checkout@v4 | ||
- uses: actions/setup-node@v4 | ||
with: | ||
node-version: "20" | ||
- name: Install Prettier | ||
run: npm install -g prettier | ||
- name: Run Prettier --check | ||
run: prettier --check ${GITHUB_WORKSPACE} | ||
Ruff: | ||
runs-on: ["self-hosted"] | ||
steps: | ||
- name: Check out source-code repository | ||
uses: actions/checkout@v4 | ||
- name: Set up Python 3.11 | ||
uses: actions/setup-python@v4 | ||
with: | ||
python-version: 3.11 | ||
- name: Install Ruff | ||
run: | | ||
python -m pip install --upgrade pip | ||
pip install ruff | ||
- name: Run Ruff check | ||
run: ruff check . | ||
- name: Run Ruff format | ||
run: ruff format . | ||
# If the above check failed, post a comment on the PR explaining the failure | ||
- name: Post PR comment | ||
if: failure() | ||
uses: mshick/add-pr-comment@v1 | ||
with: | ||
message: | | ||
## Python linting (`ruff`) is failing | ||
To keep the code consistent with lots of contributors, we run automated code consistency checks. | ||
To fix this CI test, please run: | ||
* Install [`ruff`](https://github.com/astral-sh/ruff): `pip install ruff` | ||
* Fix formatting errors in your pipeline: `ruff check --fix .` and `ruff format .` | ||
Once you push these changes the test should pass, and you can hide this comment :+1: | ||
We highly recommend setting up Ruff in your code editor so that this formatting is done automatically on save. Ask about it on Slack for help! | ||
Thanks again for your contribution! | ||
repo-token: ${{ secrets.GITHUB_TOKEN }} | ||
allow-repeats: false | ||
static-type-check: | ||
runs-on: ["self-hosted"] | ||
steps: | ||
- uses: actions/checkout@v4 | ||
- uses: actions/setup-python@v4 | ||
with: | ||
python-version: 3.11 | ||
cache: "pip" | ||
- name: Install dependencies | ||
run: | | ||
python -m pip install --upgrade pip -r requirements-dev.txt | ||
pip install -e . | ||
- name: Cache nf-test installation | ||
id: cache-software | ||
uses: actions/cache@v3 | ||
with: | ||
path: | | ||
/usr/local/bin/nf-test | ||
/home/runner/.nf-test/nf-test.jar | ||
key: ${{ runner.os }}-${{ env.NFTEST_VER }}-nftest | ||
- name: Install nf-test | ||
if: steps.cache-software.outputs.cache-hit != 'true' | ||
run: | | ||
wget -qO- https://code.askimed.com/install/nf-test | bash | ||
sudo mv nf-test /usr/local/bin/ | ||
- name: Get Python changed files | ||
id: changed-py-files | ||
uses: tj-actions/changed-files@v23 | ||
with: | ||
files: | | ||
*.py | ||
**/*.py | ||
- name: Run if any of the listed files above is changed | ||
if: steps.changed-py-files.outputs.any_changed == 'true' | ||
run: mypy ${{ steps.changed-py-files.outputs.all_changed_files }} |