Add GitHub workflows for JavaScript and Python autofix (#2381)
This pull request adds GitHub workflows for JavaScript and Python autofix. The JavaScript workflow is triggered on pull requests and pushes to the main branch for changes in the "src/frontend" directory. It sets up Node.js, caches Node.js dependencies, installs Node.js dependencies, and runs Prettier for code formatting. The Python workflow is also triggered on pull requests and pushes to the main branch for changes in the "poetry.lock", "pyproject.toml", "src/backend", and "tests" directories. It installs Ruff and runs Mypy for type checking and code formatting.
This commit is contained in:
commit
7af8b6bd9f
3 changed files with 81 additions and 8 deletions
50
.github/workflows/js_autofix.yml
vendored
Normal file
50
.github/workflows/js_autofix.yml
vendored
Normal file
|
|
@ -0,0 +1,50 @@
|
|||
name: autofix.ci
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
types: [opened, synchronize, reopened, auto_merge_enabled, auto_merge_disabled]
|
||||
paths:
|
||||
- "src/frontend/**"
|
||||
push:
|
||||
branches: [ "main" ]
|
||||
paths:
|
||||
- "src/frontend/**"
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
env:
|
||||
NODE_VERSION: "21"
|
||||
jobs:
|
||||
autofix:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Setup Node.js
|
||||
uses: actions/setup-node@v4
|
||||
id: setup-node
|
||||
with:
|
||||
node-version: ${{ env.NODE_VERSION }}
|
||||
|
||||
- name: Cache Node.js dependencies
|
||||
uses: actions/cache@v4
|
||||
id: npm-cache
|
||||
with:
|
||||
path: ~/.npm
|
||||
key: ${{ runner.os }}-node-${{ hashFiles('src/frontend/package-lock.json') }}
|
||||
restore-keys: |
|
||||
${{ runner.os }}-node-
|
||||
|
||||
- name: Install Node.js dependencies
|
||||
run: |
|
||||
cd src/frontend
|
||||
npm ci
|
||||
if: ${{ steps.setup-node.outputs.cache-hit != 'true' }}
|
||||
- name: Run Prettier
|
||||
run: |
|
||||
cd src/frontend
|
||||
npm run format
|
||||
|
||||
- uses: autofix-ci/action@dd55f44df8f7cdb7a6bf74c78677eb8acd40cd0a
|
||||
29
.github/workflows/py_autofix.yml
vendored
Normal file
29
.github/workflows/py_autofix.yml
vendored
Normal file
|
|
@ -0,0 +1,29 @@
|
|||
name: autofix.ci
|
||||
on:
|
||||
pull_request:
|
||||
types: [opened, synchronize, reopened, auto_merge_enabled, auto_merge_disabled]
|
||||
paths:
|
||||
- "poetry.lock"
|
||||
- "pyproject.toml"
|
||||
- "src/backend/**"
|
||||
- "tests/**"
|
||||
env:
|
||||
POETRY_VERSION: "1.8.2"
|
||||
|
||||
jobs:
|
||||
lint:
|
||||
name: Run Mypy
|
||||
runs-on: ubuntu-latest
|
||||
strategy:
|
||||
matrix:
|
||||
python-version:
|
||||
- "3.12"
|
||||
- "3.11"
|
||||
- "3.10"
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: install-pinned/ruff@6b463d795ce39011cc004438ae507ae56235e12a
|
||||
- run: ruff --fix-only .
|
||||
- run: ruff format .
|
||||
|
||||
- uses: autofix-ci/action@dd55f44df8f7cdb7a6bf74c78677eb8acd40cd0a
|
||||
10
.github/workflows/style-check-py.yml
vendored
10
.github/workflows/style-check-py.yml
vendored
|
|
@ -35,14 +35,8 @@ jobs:
|
|||
poetry install
|
||||
- name: Register problem matcher
|
||||
run: echo "::add-matcher::.github/workflows/matchers/ruff.json"
|
||||
- name: Run Ruff
|
||||
- name: Run Ruff Check
|
||||
run: poetry run ruff check --output-format=github .
|
||||
- name: Run Ruff format
|
||||
run: poetry run ruff format .
|
||||
- name: Commit changes
|
||||
uses: stefanzweifel/git-auto-commit-action@v5
|
||||
with:
|
||||
commit_message: Apply Ruff formatting
|
||||
branch: ${{ github.head_ref }}
|
||||
|
||||
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue