|
1 | 1 |
|
2 | | -name: test athena |
| 2 | +name: dest | athena |
3 | 3 |
|
4 | 4 | on: |
5 | 5 | pull_request: |
6 | 6 | branches: |
7 | 7 | - master |
8 | 8 | - devel |
9 | 9 | workflow_dispatch: |
| 10 | + schedule: |
| 11 | + - cron: '0 2 * * *' |
10 | 12 |
|
11 | 13 | concurrency: |
12 | 14 | group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} |
|
20 | 22 | RUNTIME__DLTHUB_TELEMETRY_SEGMENT_WRITE_KEY: TLJiyRkGVZGCi2TtjClamXpFcxAA1rSB |
21 | 23 | ACTIVE_DESTINATIONS: "[\"athena\"]" |
22 | 24 | ALL_FILESYSTEM_DRIVERS: "[\"memory\"]" |
23 | | - EXCLUDED_DESTINATION_CONFIGURATIONS: "[\"athena-parquet-staging-iceberg\"]" |
| 25 | + EXCLUDED_DESTINATION_CONFIGURATIONS: "[\"athena-parquet-staging-iceberg\", \"athena-parquet-no-staging-iceberg\"]" |
24 | 26 |
|
25 | 27 | jobs: |
26 | 28 | get_docs_changes: |
| 29 | + name: docs changes |
27 | 30 | uses: ./.github/workflows/get_docs_changes.yml |
28 | 31 | # Tests that require credentials do not run in forks |
29 | | - if: ${{ !github.event.pull_request.head.repo.fork }} |
| 32 | + if: ${{ !github.event.pull_request.head.repo.fork || contains(github.event.pull_request.labels.*.name, 'ci from fork')}} |
30 | 33 |
|
31 | 34 | run_loader: |
32 | | - name: test destination athena |
| 35 | + name: dest | athena tests |
33 | 36 | needs: get_docs_changes |
34 | 37 | if: needs.get_docs_changes.outputs.changes_outside_docs == 'true' |
35 | | - strategy: |
36 | | - fail-fast: false |
37 | | - matrix: |
38 | | - os: ["ubuntu-latest"] |
39 | | - # os: ["ubuntu-latest", "macos-latest", "windows-latest"] |
40 | 38 | defaults: |
41 | 39 | run: |
42 | 40 | shell: bash |
43 | | - runs-on: ${{ matrix.os }} |
| 41 | + runs-on: "ubuntu-latest" |
44 | 42 |
|
45 | 43 | steps: |
46 | 44 |
|
@@ -75,22 +73,11 @@ jobs: |
75 | 73 | run: pwd && echo "$DLT_SECRETS_TOML" > tests/.dlt/secrets.toml |
76 | 74 |
|
77 | 75 | - run: | |
78 | | - poetry run pytest tests/load |
79 | | - if: runner.os != 'Windows' |
80 | | - name: Run tests Linux/MAC |
| 76 | + poetry run pytest tests/load -m "essential" |
| 77 | + name: Run essential tests Linux |
| 78 | + if: ${{ ! (contains(github.event.pull_request.labels.*.name, 'ci full') || !github.event_name == 'schedule')}} |
| 79 | +
|
81 | 80 | - run: | |
82 | 81 | poetry run pytest tests/load |
83 | | - if: runner.os == 'Windows' |
84 | | - name: Run tests Windows |
85 | | - shell: cmd |
86 | | -
|
87 | | - matrix_job_required_check: |
88 | | - name: Redshift, PostgreSQL and DuckDB tests |
89 | | - needs: run_loader |
90 | | - runs-on: ubuntu-latest |
91 | | - if: always() |
92 | | - steps: |
93 | | - - name: Check matrix job results |
94 | | - if: contains(needs.*.result, 'failure') || contains(needs.*.result, 'cancelled') |
95 | | - run: | |
96 | | - echo "One or more matrix job tests failed or were cancelled. You may need to re-run them." && exit 1 |
| 82 | + name: Run all tests Linux |
| 83 | + if: ${{ contains(github.event.pull_request.labels.*.name, 'ci full') || github.event_name == 'schedule'}} |
0 commit comments