Skip to content

ClickHouse CI Tests #107

ClickHouse CI Tests

ClickHouse CI Tests #107

Workflow file for this run

name: ClickHouse CI Tests
on:
workflow_dispatch:
schedule:
- cron: '34 17 * * *'
jobs:
head:
runs-on: ubuntu-latest
name: ClickHouse CI Tests
env:
CLICKHOUSE_CONNECT_TEST_DOCKER: 'False'
CLICKHOUSE_CONNECT_TEST_FUZZ: 50
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Set up Python 3.11
uses: actions/setup-python@v4
with:
python-version: 3.11
- name: Install pip
run: python -m pip install --upgrade pip
- name: Install Test Dependencies
run: pip install -r tests/test_requirements.txt
- name: Build cython extensions
run: python setup.py build_ext --inplace
- name: "Add distribution info" # This lets SQLAlchemy find entry points
run: python setup.py develop
- name: Run ClickHouse Container (HEAD)
run: docker run
-d
-p 8123:8123
--name clickhouse_head
-v /var/lib/clickhouse
-v ${{ github.workspace }}/tests/integration_tests/test_config.xml:/etc/clickhouse-server/conf.d/test_config.xml
--ulimit nofile=262144:262144
clickhouse/clickhouse-server:head
- name: Run HEAD tests
run: pytest tests/integration_tests
- name: stop head container
run: docker stop clickhouse_head
- name: remove head container
run: docker remove clickhouse_head
- name: Run ClickHouse Container (LATEST)
run: docker run
-d
-p 8123:8123
--name clickhouse_latest
-v /var/lib/clickhouse
-v ${{ github.workspace }}/tests/integration_tests/test_config.xml:/etc/clickhouse-server/conf.d/test_config.xml
--ulimit nofile=262144:262144
clickhouse/clickhouse-server:latest
- name: Run LATEST tests
run: pytest tests/integration_tests
- name: stop latest container
run: docker stop clickhouse_latest
- name: remove latest container
run: docker remove clickhouse_latest
- name: run ClickHouse Cloud tests
env:
CLICKHOUSE_CONNECT_TEST_PORT: 8443
CLICKHOUSE_CONNECT_TEST_INSERT_QUORUM: 3
CLICKHOUSE_CONNECT_TEST_HOST: ${{ secrets.INTEGRATIONS_TEAM_TESTS_CLOUD_HOST }}
CLICKHOUSE_CONNECT_TEST_PASSWORD: ${{ secrets.INTEGRATIONS_TEAM_TESTS_CLOUD_PASSWORD }}
run: pytest tests/integration_tests