mirror of
https://github.com/mikeroyal/Self-Hosting-Guide
synced 2026-05-24 09:48:33 +00:00
Merge 147b8a68cf into 3eaf827bf4
This commit is contained in:
commit
cf2079cd6b
3 changed files with 98 additions and 0 deletions
5
.codespellrc
Normal file
5
.codespellrc
Normal file
|
|
@ -0,0 +1,5 @@
|
||||||
|
[codespell]
|
||||||
|
builtin=clear,rare,informal,usage,code,names
|
||||||
|
ignore-words-list=aci,master,jupyter,lite,ws,wan,hass,cmak,aks,tim,offen,som,iterm,man-in-the-middle
|
||||||
|
skip="./.*"
|
||||||
|
quiet-level=2
|
||||||
66
.github/workflows/pre-commit.yml
vendored
Normal file
66
.github/workflows/pre-commit.yml
vendored
Normal file
|
|
@ -0,0 +1,66 @@
|
||||||
|
---
|
||||||
|
name: pre-commit
|
||||||
|
on:
|
||||||
|
pull_request:
|
||||||
|
push:
|
||||||
|
jobs:
|
||||||
|
pre-commit:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
env:
|
||||||
|
LOG_TO_CS: .github/logToCs.py
|
||||||
|
RAW_LOG: pre-commit.log
|
||||||
|
CS_XML: pre-commit.xml
|
||||||
|
steps:
|
||||||
|
- name: Install required tools
|
||||||
|
run: sudo apt-get update && sudo apt-get install cppcheck
|
||||||
|
if: false
|
||||||
|
# Checkout git sources to analyze
|
||||||
|
- uses: actions/checkout@v4
|
||||||
|
# Needed to ensuire expected file exists
|
||||||
|
- name: Create requirements.txt if no requirements.txt or pyproject.toml
|
||||||
|
run: |-
|
||||||
|
[ -r requirements.txt ] || [ -r pyproject.toml ] || touch requirements.txt
|
||||||
|
# Install python and pre-commit tool
|
||||||
|
- uses: actions/setup-python@v4
|
||||||
|
with:
|
||||||
|
cache: pip
|
||||||
|
python-version: '3.11'
|
||||||
|
- run: python -m pip install pre-commit
|
||||||
|
# Restore previous cache of precommit
|
||||||
|
- uses: actions/cache/restore@v4
|
||||||
|
with:
|
||||||
|
path: ~/.cache/pre-commit/
|
||||||
|
key: pre-commit-4|${{ env.pythonLocation }}|${{ hashFiles('.pre-commit-config.yaml') }}
|
||||||
|
# Run all the precommit tools (defined into pre-commit-config.yaml). We can force exclusion of some of them here.
|
||||||
|
- name: Run pre-commit hooks
|
||||||
|
env:
|
||||||
|
# SKIP is used by pre-commit to not execute certain hooks
|
||||||
|
SKIP: mdformat
|
||||||
|
run: |
|
||||||
|
set -o pipefail
|
||||||
|
pre-commit gc
|
||||||
|
pre-commit run --show-diff-on-failure --color=always --all-files | tee ${RAW_LOG}
|
||||||
|
|
||||||
|
- name: Convert Raw Log to Annotations
|
||||||
|
uses: mdeweerd/logToCheckStyle@v2024.2.9
|
||||||
|
if: ${{ failure() }}
|
||||||
|
with:
|
||||||
|
in: ${{ env.RAW_LOG }}
|
||||||
|
|
||||||
|
# Save the precommit cache
|
||||||
|
- uses: actions/cache/save@v4
|
||||||
|
if: ${{ ! cancelled() }}
|
||||||
|
with:
|
||||||
|
path: ~/.cache/pre-commit/
|
||||||
|
key: pre-commit-4|${{ env.pythonLocation }}|${{ hashFiles('.pre-commit-config.yaml')
|
||||||
|
}}
|
||||||
|
# Upload result log files of precommit into the Artifact shared store
|
||||||
|
- name: Provide log as artifact
|
||||||
|
uses: actions/upload-artifact@v3
|
||||||
|
if: ${{ always() }}
|
||||||
|
with:
|
||||||
|
name: precommit-logs
|
||||||
|
path: |
|
||||||
|
${{ env.RAW_LOG }}
|
||||||
|
${{ env.CS_XML }}
|
||||||
|
retention-days: 2
|
||||||
27
.pre-commit-config.yaml
Normal file
27
.pre-commit-config.yaml
Normal file
|
|
@ -0,0 +1,27 @@
|
||||||
|
---
|
||||||
|
files: ^(.*\.(py|json|md|sh|yaml|cfg|txt))$
|
||||||
|
exclude: ^(\.[^/]*cache/.*|.*/_user.py)$
|
||||||
|
repos:
|
||||||
|
- repo: https://github.com/executablebooks/mdformat
|
||||||
|
# Do this before other tools "fixing" the line endings
|
||||||
|
rev: 0.7.17
|
||||||
|
hooks:
|
||||||
|
- id: mdformat
|
||||||
|
name: Format Markdown
|
||||||
|
entry: mdformat # Executable to run, with fixed options
|
||||||
|
language: python
|
||||||
|
types: [markdown]
|
||||||
|
args: [--wrap, '75', --number]
|
||||||
|
additional_dependencies:
|
||||||
|
- mdformat-toc
|
||||||
|
- mdformat-beautysh
|
||||||
|
# -mdformat-shfmt
|
||||||
|
# -mdformat-tables
|
||||||
|
- mdformat-config
|
||||||
|
- mdformat-black
|
||||||
|
- mdformat-web
|
||||||
|
- mdformat-gfm
|
||||||
|
- repo: https://github.com/codespell-project/codespell
|
||||||
|
rev: v2.2.5
|
||||||
|
hooks:
|
||||||
|
- id: codespell
|
||||||
Loading…
Reference in a new issue