Skip to content

Commit

Permalink
run SAAS tests against datachain
Browse files Browse the repository at this point in the history
  • Loading branch information
mattseddon committed Jul 15, 2024
1 parent d5cfe2c commit 413674f
Show file tree
Hide file tree
Showing 2 changed files with 144 additions and 1 deletion.
76 changes: 75 additions & 1 deletion .github/workflows/tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ jobs:
- name: Lint code
run: nox -s lint

tests:
test-open-source:
timeout-minutes: 25
runs-on: ${{ matrix.os }}
strategy:
Expand Down Expand Up @@ -120,6 +120,80 @@ jobs:
files: coverage.xml
flags: datachain


test-studio:
runs-on: ubuntu-latest-16-cores
strategy:
matrix:
pyv: ['3.12']
group: [1, 2, 3, 4, 5, 6]
services:
postgres:
image: postgres:16.3
ports:
- 5432:5432
env:
POSTGRES_USER: test
POSTGRES_DB: database
POSTGRES_HOST_AUTH_METHOD: trust
clickhouse:
image: clickhouse/clickhouse-server:24
ports:
- 8123:8123
- 9010:9000
env:
CLICKHOUSE_DB: studio_local_db
CLICKHOUSE_USER: studio_local
CLICKHOUSE_PASSWORD: ch123456789!
CLICKHOUSE_DEFAULT_ACCESS_MANAGEMENT: 1
redis:
image: redis:7.2.5
ports:
- 6379:6379
steps:

- name: Check out Studio
uses: actions/checkout@v4
with:
fetch-depth: 0
repository: iterative/studio
ref: develop
token: ${{ secrets.GITHUB_TOKEN }}

- name: Check out repository
uses: actions/checkout@v4
with:
path: './backend/datachain'
fetch-depth: 0

- name: Set up Python ${{ matrix.pyv }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.pyv }}
cache: 'pip'

- name: Install uv
run: |
python -m pip install --upgrade uv
uv --version
- name: Install dependencies
run: uv pip install --system ./backend/datachain_server[datachain,tests]

- name: Run tests
# Generate `.test_durations` file with `pytest --store-durations --durations-path ../.github/.test_durations ...`
run: >
pytest
--config-file=pyproject.toml -rsx
--cov-branch --cov=backend/datachain_server --cov-report=xml:coverage.xml
--splits=6 --group=${{ matrix.group }} --durations-path=../../.github/.test_durations
tests ../datachain/tests
working-directory: backend/datachain_server


build:
runs-on: ubuntu-latest
steps:
- name: Build package
run: nox -s build

Expand Down
69 changes: 69 additions & 0 deletions .github/workflows/wat.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,69 @@
test-datachain:
runs-on: ubuntu-latest-16-cores
needs: check-changes
if: ${{ github.event_name != 'pull_request' || needs.check-changes.outputs.datachain == 'true' }}
strategy:
matrix:
pyv: ['3.12']
group: [1, 2, 3, 4, 5, 6]
services:
postgres:
image: postgres:16.3
ports:
- 5432:5432
env:
POSTGRES_USER: test
POSTGRES_DB: database
POSTGRES_HOST_AUTH_METHOD: trust
clickhouse:
image: clickhouse/clickhouse-server:24
ports:
- 8123:8123
- 9010:9000
env:
CLICKHOUSE_DB: studio_local_db
CLICKHOUSE_USER: studio_local
CLICKHOUSE_PASSWORD: ch123456789!
CLICKHOUSE_DEFAULT_ACCESS_MANAGEMENT: 1
redis:
image: redis:7.2.5
ports:
- 6379:6379
steps:
- name: Check out the repository
uses: actions/checkout@v4
with:
fetch-depth: 0

- name: Check out DVCX repository
uses: actions/checkout@v4
with:
repository: iterative/dvcx
ref: 0.2.1 # updated by make update_datachain
token: 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 # trufflehog:ignore
path: './backend/dvcx'
fetch-depth: 0

- name: Set up Python ${{ matrix.pyv }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.pyv }}
cache: 'pip'

- name: Install uv
run: |
python -m pip install --upgrade uv
uv --version
- name: Install dependencies
run: uv pip install --system ./backend/datachain_server[datachain,tests]

- name: Run tests
# Generate `.test_durations` file with `pytest --store-durations --durations-path ../.github/.test_durations ...`
run: >
pytest
--config-file=pyproject.toml -rsx
--cov-branch --cov=backend/datachain_server --cov-report=xml:coverage.xml
--splits=6 --group=${{ matrix.group }} --durations-path=../../.github/.test_durations
tests ../dvcx/tests
working-directory: backend/datachain_server

0 comments on commit 413674f

Please sign in to comment.