diff --git a/.gitea/workflows/ci-cd.yml b/.gitea/workflows/ci-cd.yml index 69868e967..c59825a9f 100755 --- a/.gitea/workflows/ci-cd.yml +++ b/.gitea/workflows/ci-cd.yml @@ -91,10 +91,16 @@ jobs: - name: Install dependencies shell: sh run: | + # Detect pip --break-system-packages support (pip >= 23.0 / PEP 668) + PIP_BREAK_FLAG="" + if python3 -m pip install --help 2>/dev/null | grep -q "break-system-packages"; then + PIP_BREAK_FLAG="--break-system-packages" + fi + echo "PIP_BREAK_FLAG=$PIP_BREAK_FLAG" >> "$GITHUB_ENV" set -eu - python3 -m pip install --break-system-packages -q -r requirements-base.txt - python3 -m pip install --break-system-packages -q -r requirements.txt - python3 -m pip install --break-system-packages -q -r requirements-dev.txt + python3 -m pip install $PIP_BREAK_FLAG -q -r requirements-base.txt + python3 -m pip install $PIP_BREAK_FLAG -q -r requirements.txt + python3 -m pip install $PIP_BREAK_FLAG -q -r requirements-dev.txt python3 -m black --version python3 -m isort --version-number python3 -m flake8 --version @@ -220,10 +226,16 @@ jobs: - name: Install dependencies shell: sh run: | + # Detect pip --break-system-packages support (pip >= 23.0 / PEP 668) + PIP_BREAK_FLAG="" + if python3 -m pip install --help 2>/dev/null | grep -q "break-system-packages"; then + PIP_BREAK_FLAG="--break-system-packages" + fi + echo "PIP_BREAK_FLAG=$PIP_BREAK_FLAG" >> "$GITHUB_ENV" set -eu - python3 -m pip install --break-system-packages -q -r requirements-base.txt - python3 -m pip install --break-system-packages -q -r requirements.txt - python3 -m pip install --break-system-packages -q -r requirements-dev.txt + python3 -m pip install $PIP_BREAK_FLAG -q -r requirements-base.txt + python3 -m pip install $PIP_BREAK_FLAG -q -r requirements.txt + python3 -m pip install $PIP_BREAK_FLAG -q -r requirements-dev.txt pytest --version - name: Run unit tests with coverage @@ -319,10 +331,16 @@ jobs: - name: Install dependencies shell: sh run: | + # Detect pip --break-system-packages support (pip >= 23.0 / PEP 668) + PIP_BREAK_FLAG="" + if python3 -m pip install --help 2>/dev/null | grep -q "break-system-packages"; then + PIP_BREAK_FLAG="--break-system-packages" + fi + echo "PIP_BREAK_FLAG=$PIP_BREAK_FLAG" >> "$GITHUB_ENV" set -eu - python3 -m pip install --break-system-packages -q -r requirements-base.txt - python3 -m pip install --break-system-packages -q -r requirements.txt - python3 -m pip install --break-system-packages -q -r requirements-dev.txt + python3 -m pip install $PIP_BREAK_FLAG -q -r requirements-base.txt + python3 -m pip install $PIP_BREAK_FLAG -q -r requirements.txt + python3 -m pip install $PIP_BREAK_FLAG -q -r requirements-dev.txt pytest --version - name: Start Redis @@ -394,7 +412,7 @@ jobs: shell: sh run: | set -eu - pip install --break-system-packages -q pytest-rerunfailures + pip install $PIP_BREAK_FLAG -q pytest-rerunfailures PYTHONPATH="$PWD/apps/api:$PWD" python3 -m coverage run --append \ --source=apps/api/app,packages \ --omit="*/migrations/*,*/tests/*,*/test_*.py,*/site-packages/*" \ @@ -536,6 +554,12 @@ jobs: - name: Install dependencies shell: sh run: | + # Detect pip --break-system-packages support (pip >= 23.0 / PEP 668) + PIP_BREAK_FLAG="" + if python3 -m pip install --help 2>/dev/null | grep -q "break-system-packages"; then + PIP_BREAK_FLAG="--break-system-packages" + fi + echo "PIP_BREAK_FLAG=$PIP_BREAK_FLAG" >> "$GITHUB_ENV" set -eu docker run --rm \ -v "$PWD:/workspace" \