You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
45 lines
1.3 KiB
45 lines
1.3 KiB
---
|
|
name: "Setup"
|
|
description: Setup the environment for the project
|
|
inputs:
|
|
python-version:
|
|
description: "Python version to use"
|
|
required: false
|
|
default: "3.10"
|
|
runs:
|
|
using: "composite"
|
|
steps:
|
|
- name: Free up disk space
|
|
run: |
|
|
sudo rm -rf /usr/share/dotnet /usr/local/lib/android /opt/ghc /opt/hostedtoolcache/CodeQL
|
|
sudo docker image prune --all --force
|
|
shell: bash
|
|
- name: Set up Python ${{ inputs.python-version }}
|
|
uses: actions/setup-python@v4
|
|
with:
|
|
python-version: ${{ inputs.python-version }}
|
|
- name: Install and configure Poetry
|
|
uses: snok/install-poetry@v1
|
|
with:
|
|
installer-parallel: true
|
|
- name: Cache Poetry cache
|
|
uses: actions/cache@v4
|
|
with:
|
|
path: ~/.cache/pypoetry
|
|
key: poetry-cache
|
|
-${{ runner.os }}
|
|
-${{ steps.setup_python.outputs.python-version }}
|
|
-${{ env.POETRY_VERSION }}
|
|
- name: Cache Packages
|
|
uses: actions/cache@v4
|
|
with:
|
|
path: ~/.local
|
|
key: poetry-local
|
|
-${{ runner.os }}
|
|
-${{ steps.setup_python.outputs.python-version }}
|
|
-${{ hashFiles('**/poetry.lock')}}
|
|
-${{ hashFiles('.github/workflows/*.yml') }}
|
|
- name: Install dependencies
|
|
run: POETRY_VIRTUALENVS_CREATE=false poetry install
|
|
shell: bash
|