]> git.bitcoin.ninja Git - rust-lightning/commitdiff
Disallow skipping tx-sync tests in CI
authorElias Rohrer <dev@tnull.de>
Wed, 14 Aug 2024 07:22:13 +0000 (09:22 +0200)
committerElias Rohrer <dev@tnull.de>
Fri, 16 Aug 2024 15:41:16 +0000 (17:41 +0200)
Previously, we'd always skip tx-sync tests if the
`BITCOIND_EXE`/`ELECTRS_EXE` environment variables would be unset. While
this is especially fine for local testing, we still want to enforce
tests failing if somehow the `bitcoind`/`electrs` downloading or caching
in CI stops working. Here, we therefore add a `CI_ENV` variable that
indicates we're indeed running in CI, and only skip if it's unset.

.github/workflows/build.yml
ci/ci-tests.sh

index d15932b5cdbddc9b0ba56efd6009ba6f591a14d1..9ed1b5eee290a6922e5799a3d0893fdd0e60147e 100644 (file)
@@ -66,7 +66,7 @@ jobs:
             echo "ELECTRS_EXE=$( pwd )/bin/electrs-${{ runner.os }}-${{ runner.arch }}" >> "$GITHUB_ENV"
       - name: Run CI script
         shell: bash # Default on Winblows is powershell
-        run: CI_MINIMIZE_DISK_USAGE=1 ./ci/ci-tests.sh
+        run: CI_ENV=1 CI_MINIMIZE_DISK_USAGE=1 ./ci/ci-tests.sh
 
   coverage:
     strategy:
index 74bf427d6139d13efd5abdb87d500a80160b21b1..43d6aeaa46f70e23a919c66cdd799f962ca3e3ca 100755 (executable)
@@ -44,22 +44,24 @@ cargo check --verbose --color always --features rpc-client,rest-client,tokio
 popd
 
 if [[ "$HOST_PLATFORM" != *windows* ]]; then
-       if [ -z "$BITCOIND_EXE" ] || [ -z "$ELECTRS_EXE" ]; then
+       pushd lightning-transaction-sync
+       echo -e "\n\nChecking Transaction Sync Clients with features."
+       cargo check --verbose --color always --features esplora-blocking
+       cargo check --verbose --color always --features esplora-async
+       cargo check --verbose --color always --features esplora-async-https
+       cargo check --verbose --color always --features electrum
+
+       if [ -z "$CI_ENV" ] && [[ -z "$BITCOIND_EXE" || -z "$ELECTRS_EXE" ]]; then
                echo -e "\n\nSkipping testing Transaction Sync Clients due to BITCOIND_EXE or ELECTRS_EXE being unset."
+               cargo check --tests
        else
-               echo -e "\n\nBuilding and testing Transaction Sync Clients with features"
-               pushd lightning-transaction-sync
-
+               echo -e "\n\nTesting Transaction Sync Clients with features."
                cargo test --verbose --color always --features esplora-blocking
-               cargo check --verbose --color always --features esplora-blocking
                cargo test --verbose --color always --features esplora-async
-               cargo check --verbose --color always --features esplora-async
                cargo test --verbose --color always --features esplora-async-https
-               cargo check --verbose --color always --features esplora-async-https
                cargo test --verbose --color always --features electrum
-               cargo check --verbose --color always --features electrum
-               popd
        fi
+       popd
 fi
 
 echo -e "\n\nTest futures builds"