Skip to content

Commit 1a05b5b

Browse files
committed
Reorganize CI
1 parent 5495e9b commit 1a05b5b

File tree

1 file changed

+64
-65
lines changed

1 file changed

+64
-65
lines changed

.github/workflows/ci.yaml

Lines changed: 64 additions & 65 deletions
Original file line numberDiff line numberDiff line change
@@ -62,8 +62,8 @@ jobs:
6262
run: cargo clippy --tests ${{ matrix.features }}
6363
env:
6464
RUSTFLAGS: -D warnings
65-
66-
connection_tests:
65+
66+
io_tests:
6767
name: Connection tests
6868
needs: clippy
6969
runs-on: ubuntu-latest
@@ -84,12 +84,6 @@ jobs:
8484
- uses: dtolnay/[email protected]
8585
- uses: Swatinem/rust-cache@v2
8686

87-
- name: Unit tests
88-
timeout-minutes: ${{ fromJSON(env.TESTS_TIMEOUT) }}
89-
run: cargo test -p sqlx-exasol-impl --features migrate -- --nocapture
90-
env:
91-
DATABASE_URL: ${{ steps.exa-cluster.outputs.url }}
92-
9387
- name: Test IO combos (no TLS, no compression)
9488
timeout-minutes: ${{ fromJSON(env.TESTS_TIMEOUT) }}
9589
run: cargo test --features runtime-tokio,etl -- it_works_with_io_combo --ignored --nocapture
@@ -132,63 +126,8 @@ jobs:
132126
DATABASE_URL: ${{ steps.exa-cluster.outputs.url }}
133127
SQLX_OFFLINE: true
134128

135-
- name: Integration connection tests
136-
timeout-minutes: ${{ fromJSON(env.TESTS_TIMEOUT) }}
137-
run: cargo test --all-features -- --nocapture
138-
env:
139-
DATABASE_URL: ${{ steps.exa-cluster.outputs.url }}?compression=disabled
140-
SQLX_OFFLINE: true
141-
142-
etl_tests:
143-
name: ETL tests
144-
needs: clippy
145-
runs-on: ubuntu-latest
146-
steps:
147-
- uses: actions/checkout@v4
148-
149-
- name: Free disk space
150-
uses: ./.github/actions/free-space
151-
152-
- name: Create Exasol cluster
153-
timeout-minutes: ${{ fromJSON(env.EXA_CLUSTER_SETUP_TIMEOUT) }}
154-
id: exa-cluster
155-
uses: ./.github/actions/exa-cluster
156-
with:
157-
exasol-version: ${{ env.EXASOL_VERSION }}
158-
num-nodes: ${{ env.NUM_NODES }}
159-
160-
- uses: dtolnay/[email protected]
161-
- uses: Swatinem/rust-cache@v2
162-
163-
- name: ETL tests (no TLS)
164-
timeout-minutes: ${{ fromJSON(env.TESTS_TIMEOUT) }}
165-
run: |
166-
export DATABASE_URL="$BASE_DATABASE_URL?ssl-mode=disabled"
167-
cargo test --features runtime-tokio,compression,etl -- test_etl --ignored --nocapture
168-
env:
169-
BASE_DATABASE_URL: ${{ steps.exa-cluster.outputs.url }}
170-
SQLX_OFFLINE: true
171-
172-
- name: ETL tests (NativeTLS)
173-
timeout-minutes: ${{ fromJSON(env.TESTS_TIMEOUT) }}
174-
run: |
175-
export DATABASE_URL="$BASE_DATABASE_URL?ssl-mode=required"
176-
cargo test --features runtime-tokio,compression,etl,tls-native-tls -- test_etl --ignored --nocapture
177-
env:
178-
BASE_DATABASE_URL: ${{ steps.exa-cluster.outputs.url }}
179-
SQLX_OFFLINE: true
180-
181-
- name: ETL tests (Rustls)
182-
timeout-minutes: ${{ fromJSON(env.TESTS_TIMEOUT) }}
183-
run: |
184-
export DATABASE_URL="$BASE_DATABASE_URL?ssl-mode=required"
185-
cargo test --features runtime-tokio,compression,etl,tls-rustls-aws-lc-rs -- test_etl --ignored --nocapture
186-
env:
187-
BASE_DATABASE_URL: ${{ steps.exa-cluster.outputs.url }}
188-
SQLX_OFFLINE: true
189-
190-
compile_time_tests:
191-
name: Compile time tests
129+
driver_tests:
130+
name: Connection tests
192131
needs: clippy
193132
runs-on: ubuntu-latest
194133
steps:
@@ -242,8 +181,68 @@ jobs:
242181
run: cargo test --features runtime-tokio,rust_decimal -- test_compile_time_rust_decimal --ignored --nocapture
243182
env:
244183
DATABASE_URL: ${{ steps.exa-cluster.outputs.url }}/test
184+
185+
- name: Unit tests
186+
timeout-minutes: ${{ fromJSON(env.TESTS_TIMEOUT) }}
187+
run: cargo test -p sqlx-exasol-impl --features migrate -- --nocapture
188+
env:
189+
DATABASE_URL: ${{ steps.exa-cluster.outputs.url }}/test
190+
191+
- name: Integration connection tests
192+
timeout-minutes: ${{ fromJSON(env.TESTS_TIMEOUT) }}
193+
run: cargo test --all-features -- --nocapture
194+
env:
195+
DATABASE_URL: ${{ steps.exa-cluster.outputs.url }}/test?ssl-mode=disabled&compression=disabled
245196

246197
- name: Drop database (existent)
247198
run: cargo run -p sqlx-exasol-cli -- database drop -y
248199
env:
249200
DATABASE_URL: ${{ steps.exa-cluster.outputs.url }}/test
201+
202+
etl_tests:
203+
name: ETL tests
204+
needs: clippy
205+
runs-on: ubuntu-latest
206+
steps:
207+
- uses: actions/checkout@v4
208+
209+
- name: Free disk space
210+
uses: ./.github/actions/free-space
211+
212+
- name: Create Exasol cluster
213+
timeout-minutes: ${{ fromJSON(env.EXA_CLUSTER_SETUP_TIMEOUT) }}
214+
id: exa-cluster
215+
uses: ./.github/actions/exa-cluster
216+
with:
217+
exasol-version: ${{ env.EXASOL_VERSION }}
218+
num-nodes: ${{ env.NUM_NODES }}
219+
220+
- uses: dtolnay/[email protected]
221+
- uses: Swatinem/rust-cache@v2
222+
223+
- name: ETL tests (no TLS)
224+
timeout-minutes: ${{ fromJSON(env.TESTS_TIMEOUT) }}
225+
run: |
226+
export DATABASE_URL="$BASE_DATABASE_URL?ssl-mode=disabled"
227+
cargo test --features runtime-tokio,compression,etl -- test_etl --ignored --nocapture
228+
env:
229+
BASE_DATABASE_URL: ${{ steps.exa-cluster.outputs.url }}
230+
SQLX_OFFLINE: true
231+
232+
- name: ETL tests (NativeTLS)
233+
timeout-minutes: ${{ fromJSON(env.TESTS_TIMEOUT) }}
234+
run: |
235+
export DATABASE_URL="$BASE_DATABASE_URL?ssl-mode=required"
236+
cargo test --features runtime-tokio,compression,etl,tls-native-tls -- test_etl --ignored --nocapture
237+
env:
238+
BASE_DATABASE_URL: ${{ steps.exa-cluster.outputs.url }}
239+
SQLX_OFFLINE: true
240+
241+
- name: ETL tests (Rustls)
242+
timeout-minutes: ${{ fromJSON(env.TESTS_TIMEOUT) }}
243+
run: |
244+
export DATABASE_URL="$BASE_DATABASE_URL?ssl-mode=required"
245+
cargo test --features runtime-tokio,compression,etl,tls-rustls-aws-lc-rs -- test_etl --ignored --nocapture
246+
env:
247+
BASE_DATABASE_URL: ${{ steps.exa-cluster.outputs.url }}
248+
SQLX_OFFLINE: true

0 commit comments

Comments
 (0)