Skip to content

excluded large2 for monetdb #138

excluded large2 for monetdb

excluded large2 for monetdb #138

Workflow file for this run

name: Runs the tests
on:
push:
branches:
- proto-without-grpc
jobs:
build-polypheny:
timeout-minutes: 15
runs-on: ubuntu-latest
steps:
- uses: polypheny/GitHub-Action-Build-Polypheny@main
with:
branch: proto-without-grpc
test-system-python:
timeout-minutes: 10
strategy:
fail-fast: false
matrix:
version: ['3.8', '3.9', '3.10', '3.11', '3.12'] # TODO: When dropping 3.8, adjust type hints for polypheny.connect
os: [ubuntu-latest, macos-latest, windows-latest]
runs-on: ${{ matrix.os }}
needs: build-polypheny
steps:
- uses: actions/setup-python@v5
with:
python-version: ${{ matrix.version }}
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: '17'
- name: Checkout Polypheny-Prism-API
uses: actions/checkout@v4
with:
repository: polypheny/Polypheny-Prism-API
path: Polypheny-Prism-API
- name: Checkout driver
uses: actions/checkout@v4
with:
path: main
- name: Download protobuf for Linux
if: ${{ startsWith(matrix.os, 'ubuntu') }}
run: |
curl -LO https://github.com/protocolbuffers/protobuf/releases/download/v26.0/protoc-26.0-linux-x86_64.zip
unzip protoc-26.0-linux-x86_64.zip
working-directory: Polypheny-Prism-API
- name: Build Protobuf Files
if: ${{ startsWith(matrix.os, 'ubuntu') }}
run: bin/protoc --experimental_allow_proto3_optional -I . --python_out . org/polypheny/prism/*.proto
working-directory: Polypheny-Prism-API
- name: Download protobuf for Windows
if: ${{ startsWith(matrix.os, 'windows') }}
run: |
curl -LO https://github.com/protocolbuffers/protobuf/releases/download/v26.0/protoc-26.0-win64.zip
unzip protoc-26.0-win64.zip
working-directory: Polypheny-Prism-API
- name: Build Protobuf Files
if: ${{ startsWith(matrix.os, 'windows') }}
run: bin/protoc.exe --experimental_allow_proto3_optional -I . --python_out . org/polypheny/prism/*.proto
working-directory: Polypheny-Prism-API
- name: Download protobuf for macOS
if: ${{ startsWith(matrix.os, 'macos') }}
run: |
curl -LO https://github.com/protocolbuffers/protobuf/releases/download/v26.0/protoc-26.0-osx-universal_binary.zip
unzip protoc-26.0-osx-universal_binary.zip
working-directory: Polypheny-Prism-API
- name: Build Protobuf Files
if: ${{ startsWith(matrix.os, 'macos') }}
run: bin/protoc --experimental_allow_proto3_optional -I . --python_out . org/polypheny/prism/*.proto
working-directory: Polypheny-Prism-API
- name: Install Protobuf Package
run: pip install .
working-directory: Polypheny-Prism-API
env:
VERSION: 1.2
- name: Install driver dependencies
run: pip install -r requirements.txt
working-directory: main
- name: Load Polypheny JAR
uses: actions/download-artifact@v4
with:
name: polypheny-jar
path: main
- name: Run tests
uses: polypheny/[email protected]
with:
cmd: pytest --doctest-modules -v
jar: polypheny.jar
autodocker: ${{ matrix.os != 'windows' }}
working-directory: main
timeout-minutes: 10
- name: Install locally
run: pip install .
working-directory: main
- name: Run tests in docs
uses: polypheny/[email protected]
with:
cmd: make doctest
jar: ../polypheny.jar
autodocker: ${{ matrix.os != 'windows' }}
working-directory: main/docs
test-stores:
timeout-minutes: 10
strategy:
fail-fast: false
matrix:
adapter: [ mongodb, hsqldb, monetdb, postgresql, file, cottontail, neo4j ]
runs-on: ubuntu-latest
needs: build-polypheny
steps:
- uses: actions/setup-python@v5
with:
python-version: '3.12'
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: '17'
- name: Checkout Polypheny-Prism-API
uses: actions/checkout@v4
with:
repository: polypheny/Polypheny-Prism-API
path: Polypheny-Prism-API
- name: Checkout driver
uses: actions/checkout@v4
with:
path: main
- name: Download protobuf for Linux
run: |
curl -LO https://github.com/protocolbuffers/protobuf/releases/download/v26.0/protoc-26.0-linux-x86_64.zip
unzip protoc-26.0-linux-x86_64.zip
working-directory: Polypheny-Prism-API
- name: Build Protobuf Files
run: bin/protoc --experimental_allow_proto3_optional -I . --python_out . org/polypheny/prism/*.proto
working-directory: Polypheny-Prism-API
- name: Install Protobuf Package
run: pip install .
working-directory: Polypheny-Prism-API
env:
VERSION: 1.2
- name: Install driver dependencies
run: pip install -r requirements.txt
working-directory: main
- name: Load Polypheny JAR
uses: actions/download-artifact@v4
with:
name: polypheny-jar
path: main
- name: Run tests
uses: polypheny/[email protected]
with:
cmd: pytest --doctest-modules -v
jar: polypheny.jar
working-directory: main
default-store: ${{ matrix.adapter }}
timeout-minutes: 10
- name: Install locally
run: pip install .
working-directory: main
- name: Run tests in docs
uses: polypheny/[email protected]
with:
cmd: make doctest
jar: ../polypheny.jar
working-directory: main/docs
default-store: ${{ matrix.adapter }}
build-docs:
timeout-minutes: 2
runs-on: ubuntu-latest
steps:
- uses: actions/setup-python@v5
with:
python-version: '3.12'
- name: Checkout Polypheny-Prism-API
uses: actions/checkout@v4
with:
repository: polypheny/Polypheny-Prism-API
path: Polypheny-Prism-API
- name: Checkout driver
uses: actions/checkout@v4
with:
path: main
- name: Download protobuf for Linux
run: |
curl -LO https://github.com/protocolbuffers/protobuf/releases/download/v26.0/protoc-26.0-linux-x86_64.zip
unzip protoc-26.0-linux-x86_64.zip
working-directory: Polypheny-Prism-API
- name: Build Protobuf Files
run: bin/protoc --experimental_allow_proto3_optional -I . --python_out . org/polypheny/prism/*.proto
working-directory: Polypheny-Prism-API
- name: Install Protobuf Package
run: pip install .
working-directory: Polypheny-Prism-API
env:
VERSION: 1.2
- name: Install driver dependencies
run: pip install -r requirements.txt
working-directory: main
- name: Install markdown generator
run: pip install sphinx-markdown-builder
working-directory: main
- name: Install locally
run: pip install .
working-directory: main
- name: Generate documentation (markdown)
run: make markdown
working-directory: main/docs
- name: Generate documentation (HTML)
run: make html
working-directory: main/docs
- name: Store docs
uses: actions/upload-artifact@v4
with:
name: docs
path: main/docs/_build