import conv fix postgres url fix migration fixup timestamp postgresql fixup more timestamp fix migrations fix migrations fix statement add psycopg2 for conv tests expiry timestamp flaku fix expiry more wait parse to int remove time from filters
71 lines
1.8 KiB
YAML
71 lines
1.8 KiB
YAML
name: prepare
|
|
|
|
inputs:
|
|
python-version:
|
|
description: "Python Version"
|
|
required: true
|
|
default: "3.9"
|
|
poetry-version:
|
|
description: "Poetry Version"
|
|
default: "1.7.0"
|
|
node-version:
|
|
description: "Node Version"
|
|
default: "20.x"
|
|
npm:
|
|
description: "use npm"
|
|
default: false
|
|
type: boolean
|
|
|
|
|
|
runs:
|
|
using: "composite"
|
|
steps:
|
|
- name: Set up Python ${{ inputs.python-version }}
|
|
uses: actions/setup-python@v5
|
|
with:
|
|
python-version: ${{ inputs.python-version }}
|
|
# cache poetry install via pip
|
|
cache: "pip"
|
|
|
|
- name: Set up Poetry ${{ inputs.poetry-version }}
|
|
uses: abatilo/actions-poetry@v2
|
|
with:
|
|
poetry-version: ${{ inputs.poetry-version }}
|
|
|
|
- name: Setup a local virtual environment (if no poetry.toml file)
|
|
shell: bash
|
|
run: |
|
|
poetry config virtualenvs.create true --local
|
|
poetry config virtualenvs.in-project true --local
|
|
|
|
- uses: actions/cache@v4
|
|
name: Define a cache for the virtual environment based on the dependencies lock file
|
|
with:
|
|
path: ./.venv
|
|
key: venv-${{ hashFiles('poetry.lock') }}
|
|
|
|
- name: Install the project dependencies
|
|
shell: bash
|
|
run: |
|
|
poetry install
|
|
# needed for conv tests
|
|
poetry add psycopg2-binary
|
|
|
|
- name: Use Node.js ${{ inputs.node-version }}
|
|
if: ${{ (inputs.npm == 'true') }}
|
|
uses: actions/setup-node@v4
|
|
with:
|
|
node-version: ${{ inputs.node-version }}
|
|
|
|
- uses: actions/cache@v4
|
|
if: ${{ (inputs.npm == 'true') }}
|
|
name: Define a cache for the npm based on the dependencies lock file
|
|
with:
|
|
path: ./node_modules
|
|
key: npm-${{ hashFiles('package-lock.json') }}
|
|
|
|
- name: Install npm packages
|
|
if: ${{ (inputs.npm == 'true') }}
|
|
shell: bash
|
|
run: npm install
|