Skip to content

feat: multicorn2 (Postgres FDW) backend #684

feat: multicorn2 (Postgres FDW) backend

feat: multicorn2 (Postgres FDW) backend #684

# This workflow will install Python dependencies, run tests and lint with a variety of Python versions
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions
concurrency:
group: integration
cancel-in-progress: false
name: Python integration tests
on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
jobs:
build:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
python-version: [3.9]
steps:
- uses: actions/checkout@v2
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v2
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install -r requirements/test.txt
- name: Install multicorn2
run: |
git clone https://github.com/pgsql-io/multicorn2.git
cd multicorn2
git checkout v2.5
pip install .
- name: Start the Postgres service
run: |
docker-compose -f postgres/docker-compose.yml up --build -d
- name: Download wait-for-it.sh
run: |
curl -L https://raw.githubusercontent.com/vishnubob/wait-for-it/master/wait-for-it.sh -o wait-for-it.sh
chmod +x wait-for-it.sh
- name: Wait for Postgres to become available
run: |
./wait-for-it.sh -t 60 localhost:12345 -- echo "Postgres is up and running!"
- name: Test with pytest
env:
SHILLELAGH_ADAPTER_KWARGS: ${{ secrets.SHILLELAGH_ADAPTER_KWARGS }}
run: |
pytest --cov-fail-under=100 --cov=src/shillelagh -vv tests/ --doctest-modules src/shillelagh --with-integration --with-slow-integration
- name: Stop the Postgres service
if: always()
run: |
docker-compose -f postgres/docker-compose.yml down