Skip to content

Commit 36ecb86

Browse files
committed
.github/workflows: Add Action to run integration tests
1 parent b436b46 commit 36ecb86

File tree

1 file changed

+54
-0
lines changed

1 file changed

+54
-0
lines changed
Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
name: Integration Tests
2+
3+
on:
4+
push:
5+
branches: [ main ]
6+
paths:
7+
- 'src/**/*.py'
8+
- 'tests/**/*.py'
9+
- 'pyproject.toml'
10+
- '.github/workflows/integration-tests.yml'
11+
pull_request:
12+
branches: [ main ]
13+
paths:
14+
- 'src/**/*.py'
15+
- 'tests/**/*.py'
16+
- 'pyproject.toml'
17+
- '.github/workflows/integration-tests.yml'
18+
19+
jobs:
20+
integration-tests:
21+
runs-on: ubuntu-latest
22+
23+
steps:
24+
- uses: actions/checkout@v4
25+
26+
- name: Install uv
27+
uses: astral-sh/setup-uv@v4
28+
with:
29+
enable-cache: true
30+
cache-dependency-glob: "**/pyproject.toml"
31+
32+
- name: Set up Python 3.12
33+
run: uv python install 3.12
34+
35+
- name: Install all dependencies
36+
run: uv sync --group all_loaders --group test --group dev
37+
38+
- name: Run integration tests with coverage
39+
env:
40+
USE_TESTCONTAINERS: "true"
41+
TESTCONTAINERS_RYUK_DISABLED: "true"
42+
run: |
43+
uv run pytest tests/integration/ -v --tb=short -m "integration" \
44+
-k "not snowflake" \
45+
--cov=src/amp/loaders --cov-report=xml --cov-report=term-missing
46+
47+
- name: Upload coverage reports
48+
uses: codecov/codecov-action@v4
49+
if: always()
50+
with:
51+
file: ./coverage.xml
52+
flags: integration
53+
name: codecov-integration
54+
fail_ci_if_error: false

0 commit comments

Comments
 (0)