Implemented file diff (see: #445)

This commit is contained in:
Théo DURR 2022-08-26 17:04:09 +02:00
parent 863f9ff77e
commit 9a1a5635e2
No known key found for this signature in database
GPG Key ID: 708858E9F7281E30

View File

@ -12,36 +12,51 @@ jobs:
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v3
# Skip unit testing if no diff on .py files
- name: Check file diff
uses: technote-space/get-diff-action@v6
id: git-diff
with:
PATTERNS: +**/*.+(py)
- name: Set up python - name: Set up python
if: steps.git-diff.outputs.diff
uses: actions/setup-python@v4 uses: actions/setup-python@v4
with: with:
python-version: '3.8' python-version: '3.8'
- name: Install dependencies - name: Install dependencies
if: steps.git-diff.outputs.diff
run: | run: |
sudo apt-get update sudo apt-get update
sudo apt-get install gettext libxapian-dev libgraphviz-dev sudo apt-get install gettext libxapian-dev libgraphviz-dev
- name: Install poetry - name: Install poetry
if: steps.git-diff.outputs.diff
run: | run: |
python -m pip install --upgrade pip python -m pip install --upgrade pip
python -m pip install poetry python -m pip install poetry
- name: Checking pyproject.toml syntax - name: Checking pyproject.toml syntax
if: steps.git-diff.outputs.diff
run: poetry check run: poetry check
- name: Install project - name: Install project
if: steps.git-diff.outputs.diff
run: poetry install -E testing run: poetry install -E testing
- name: Setup xapian index - name: Setup xapian index
if: steps.git-diff.outputs.diff
run: | run: |
mkdir -p /dev/shm/search_indexes mkdir -p /dev/shm/search_indexes
ln -s /dev/shm/search_indexes sith/search_indexes ln -s /dev/shm/search_indexes sith/search_indexes
- name: Setup project - name: Setup project
if: steps.git-diff.outputs.diff
run: poetry run ./manage.py compilemessages run: poetry run ./manage.py compilemessages
- name: Launch tests and generate coverage report - name: Launch tests and generate coverage report
if: steps.git-diff.outputs.diff
run: | run: |
poetry run coverage run ./manage.py test poetry run coverage run ./manage.py test
poetry run coverage report poetry run coverage report