Skip to content

chore: Create reusable setup-dependencies action #383

chore: Create reusable setup-dependencies action

chore: Create reusable setup-dependencies action #383

Workflow file for this run

name: "Code Quality"
on:
push:
branches: [main]
pull_request:
types: [opened, synchronize, reopened, ready_for_review]
permissions:
contents: read
packages: read
statuses: write
jobs:
check-code-quality:
name: Check Code Quality
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0
# Lint and Format everything but Python/JavaScript/TypeScript
- name: Lint Code Base
uses: super-linter/super-linter/[email protected]
env:
VALIDATE_ALL_CODEBASE: true
DEFAULT_BRANCH: main
GITHUB_TOKEN: ${{ secrets.GH_TOKEN }}
LINTER_RULES_PATH: .github/super-linter-configurations
YAML_ERROR_ON_WARNING: true
VALIDATE_PYTHON_BLACK: false
VALIDATE_PYTHON_FLAKE8: false
VALIDATE_PYTHON_ISORT: false
VALIDATE_PYTHON_MYPY: false
VALIDATE_PYTHON_PYLINT: false
VALIDATE_PYTHON_RUFF: false
VALIDATE_PYTHON_PYINK: false
VALIDATE_NATURAL_LANGUAGE: false
GITHUB_ACTIONS_COMMAND_ARGS: "-ignore '.branding.icon.'"
check-python-code-format-and-quality:
name: Check Python Code Format and Quality
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Setup Dependencies
uses: ./.github/actions/setup-dependencies
- name: Check Python Code Quality (Ruff)
run: just ruff-lint
- name: Check Python Code Format (Ruff)
run: just ruff-format
- name: Check Python Code for Dead Code (Vulture)
run: just vulture
check-markdown-links:
name: Check Markdown links
runs-on: ubuntu-latest
steps:
- name: Checkout Repository
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Check Markdown links
uses: UmbrellaDocs/[email protected]
with:
github_token: ${{ secrets.GH_TOKEN }}
config_file: .github/other-configurations/.linkspector.yml
reporter: github-pr-review
fail_on_error: true
filter_mode: nofilter
check-justfile-format:
name: Check Justfile Format
runs-on: ubuntu-latest
steps:
- name: Checkout Repository
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Set up Just
uses: extractions/setup-just@v2
- name: Check Justfile Format
run: just format-check