Make sure fk_object column in every extrafields is backed by an uniqu… #5
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: 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 | |
# ??? | |
- 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@v5 | |
with: | |
cache: pip | |
python-version: '3.11' | |
- run: python -m pip install pre-commit regex | |
# Restore previous cache of precommit | |
- uses: actions/cache/restore@v3 | |
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: no-commit-to-branch,php-cs,php-cbf,trailing-whitespace,end-of-file-fixer | |
run: | | |
set -o pipefail | |
pre-commit gc | |
pre-commit run --show-diff-on-failure --color=always --all-files | tee ${RAW_LOG} | |
# If error, we convert log in the checkstyle format | |
- name: Convert Raw Log to CheckStyle format | |
if: ${{ failure() }} | |
run: | | |
python ${LOG_TO_CS} ${RAW_LOG} ${CS_XML} | |
# Annotate the git sources with the log messages | |
- name: Annotate Source Code with Messages | |
uses: staabm/annotate-pull-request-from-checkstyle-action@v1 | |
if: ${{ failure() }} | |
with: | |
files: ${{ env.CS_XML }} | |
notices-as-warnings: true # optional | |
prepend-filename: true # optional | |
# Save the precommit cache | |
- uses: actions/cache/save@v3 | |
if: ${{ always() }} | |
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@v4 | |
if: ${{ always() }} | |
with: | |
name: precommit-logs | |
path: | | |
${{ env.RAW_LOG }} | |
${{ env.CS_XML }} | |
retention-days: 2 |