Skip to content

update sample

update sample #140

Workflow file for this run

name: 'Lint and Test'
on:
pull_request:
branches:
- timeplus
paths-ignore:
- 'VERSION'
- 'LICENSE'
- '**.md'
- 'examples'
- 'publish.yaml'
- '.github/workflows/clickhouse_ci.yml'
- '.github/workflows/on_push.yml'
workflow_dispatch:
push:
branches-ignore:
- '*_test'
- '*_dev'
- '*_build'
- 'release_*'
- timeplus
paths-ignore:
- 'VERSION'
- 'LICENSE'
- '**.md'
- 'examples'
- 'publish.yaml'
- '.github/workflows/clickhouse_ci.yml'
- '.github/workflows/on_push.yml'
jobs:
lint:
runs-on: ubuntu-latest
name: PyLint
steps:
- uses: actions/checkout@v4
- name: Set up Python (3.11)
uses: actions/setup-python@v5
with:
python-version: 3.11
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install setuptools wheel
pip install -r tests/test_requirements.txt
pip install astroid==3.3.5
pip install pylint==3.3.1
python setup.py build_ext --inplace
- name: Run Pylint
run: |
pylint timeplus_connect
pylint tests
pylint examples
tests:
runs-on: ubuntu-latest
needs: lint
strategy:
matrix:
python-version:
- '3.9'
- '3.10'
- '3.11'
- '3.12'
- '3.13'
timeplus-version:
- latest
name: Local Tests Py=${{ matrix.python-version }} TP=${{ matrix.timeplus-version }}
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Start Timeplus (version - ${{ matrix.timeplus-version }}) in Docker
uses: hoverkraft-tech/compose-action@v2.0.0
env:
TIMEPLUS_CONNECT_TEST_TP_VERSION: ${{ matrix.timeplus-version }}
with:
compose-file: 'docker-compose.yml'
down-flags: '--volumes'
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- 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: Add ClickHouse TLS instance to /etc/hosts
run: |
sudo echo "127.0.0.1 server1.clickhouse.test" | sudo tee -a /etc/hosts
df -h
- name: Run tests
env:
# CLICKHOUSE_CONNECT_TEST_TLS: 1
CLICKHOUSE_CONNECT_TEST_DOCKER: 'False'
CLICKHOUSE_CONNECT_TEST_FUZZ: 50
SQLALCHEMY_SILENCE_UBER_WARNING: 1
run: pytest tests
check-secret:
runs-on: ubuntu-latest
needs: tests
outputs:
has_secrets: ${{ steps.has_secrets.outputs.HAS_SECRETS }}
steps:
- id: has_secrets
env:
CLOUD_HOST: ${{ secrets.INTEGRATIONS_TEAM_TESTS_CLOUD_HOST }}
if: "${{ env.CLOUD_HOST != '' }}"
run: echo "HAS_SECRETS=true" >> $GITHUB_OUTPUT
# cloud-tests:
# runs-on: ubuntu-latest
# name: Cloud Tests Py=${{ matrix.python-version }}
# needs: check-secret
# if: needs.check-secret.outputs.has_secrets == 'true'
# strategy:
# matrix:
# python-version:
# - '3.10'
# - '3.11'
# steps:
# - name: Checkout
# uses: actions/checkout@v4
# - name: Set up Python ${{ matrix.python-version }}
# uses: actions/setup-python@v5
# with:
# python-version: ${{ matrix.python-version }}
# - name: Install dependencies
# run: |
# python -m pip install --upgrade pip
# 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 tests
# env:
# CLICKHOUSE_CONNECT_TEST_FUZZ: 10
# CLICKHOUSE_CONNECT_TEST_CLOUD: 'True'
# CLICKHOUSE_CONNECT_TEST_PORT: 8443
# CLICKHOUSE_CONNECT_TEST_HOST: ${{ secrets.INTEGRATIONS_TEAM_TESTS_CLOUD_HOST_SMT }}
# CLICKHOUSE_CONNECT_TEST_PASSWORD: ${{ secrets.INTEGRATIONS_TEAM_TESTS_CLOUD_PASSWORD_SMT }}
# CLICKHOUSE_CONNECT_TEST_JWT_SECRET: ${{ secrets.INTEGRATIONS_TEAM_TESTS_CLOUD_JWT_PRIVATE_KEY }}
# SQLALCHEMY_SILENCE_UBER_WARNING: 1
# run: pytest tests/integration_tests