31 lines
1.1 KiB
YAML
31 lines
1.1 KiB
YAML
name: "Setup Python"
|
|
description: "Setup Python + optionally install dependencies from a set of requirements file(s)"
|
|
inputs:
|
|
install-dependencies:
|
|
description: "Whether to install dependencies from the Python requirements file(s)"
|
|
required: false
|
|
default: "true"
|
|
python-requirements-paths:
|
|
description: "The path(s) to the Python requirements file(s) to install"
|
|
required: false
|
|
default: "engine/requirements.txt engine/requirements-dev.txt"
|
|
runs:
|
|
using: "composite"
|
|
steps:
|
|
- name: Setup Python
|
|
id: setup-python
|
|
uses: actions/setup-python@v5.1.0
|
|
env:
|
|
PYTHON_REQUIREMENTS_PATHS: ${{ inputs.python-requirements-paths }}
|
|
with:
|
|
python-version: "3.12.10"
|
|
cache: "pip"
|
|
cache-dependency-path: ${{ env.PYTHON_REQUIREMENTS_PATHS }}
|
|
- name: Install Python dependencies
|
|
if: ${{ inputs.install-dependencies == 'true' }}
|
|
shell: bash
|
|
env:
|
|
PYTHON_REQUIREMENTS_PATHS: ${{ inputs.python-requirements-paths }}
|
|
run: |
|
|
pip install uv setuptools
|
|
uv pip sync --system ${{ env.PYTHON_REQUIREMENTS_PATHS }}
|