| name: Presto |
| |
| on: [push, pull_request] |
| |
| jobs: |
| test-postgres-presto: |
| runs-on: ubuntu-18.04 |
| strategy: |
| matrix: |
| # run unit tests in multiple version just for fun |
| python-version: [3.8] |
| env: |
| PYTHONPATH: ${{ github.workspace }} |
| SUPERSET_CONFIG: tests.superset_test_config |
| REDIS_PORT: 16379 |
| SUPERSET__SQLALCHEMY_DATABASE_URI: |
| postgresql+psycopg2://superset:superset@127.0.0.1:15432/superset |
| SUPERSET__SQLALCHEMY_EXAMPLES_URI: |
| presto://localhost:15433/memory/default |
| services: |
| postgres: |
| image: postgres:10-alpine |
| env: |
| POSTGRES_USER: superset |
| POSTGRES_PASSWORD: superset |
| ports: |
| # Use custom ports for services to avoid accidentally connecting to |
| # GitHub action runner's default installations |
| - 15432:5432 |
| presto: |
| image: prestosql/presto:339 |
| env: |
| POSTGRES_USER: superset |
| POSTGRES_PASSWORD: superset |
| ports: |
| # Use custom ports for services to avoid accidentally connecting to |
| # GitHub action runner's default installations |
| - 15433:8080 |
| redis: |
| image: redis:5-alpine |
| ports: |
| - 16379:6379 |
| steps: |
| - uses: actions/checkout@v2 |
| - name: Setup Python |
| uses: actions/setup-python@v2 |
| with: |
| python-version: ${{ matrix.python-version }} |
| - name: Install dependencies |
| uses: ./.github/actions/cached-dependencies |
| with: |
| run: | |
| apt-get-install |
| pip-upgrade |
| pip install -r requirements/testing.txt |
| setup-postgres |
| - name: Run celery |
| run: celery worker --app=superset.tasks.celery_app:app -Ofair -c 2 & |
| - name: Python unit tests (PostgreSQL) |
| run: | |
| ./scripts/python_tests.sh |
| - name: Upload code coverage |
| run: | |
| bash <(curl -s https://codecov.io/bash) -cF python |