-
Notifications
You must be signed in to change notification settings - Fork 412
Drop electrsd
's auto-download feature for good
#3020
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
5f15d6f
3e1c9e7
e99ff45
a5aef14
e5fea78
f316a3f
4320f48
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -14,50 +14,6 @@ function PIN_RELEASE_DEPS { | |
return 0 # Don't fail the script if our rustc is higher than the last check | ||
} | ||
|
||
# The tests of `lightning-transaction-sync` require `electrs` and `bitcoind` | ||
# binaries. Here, we download the binaries, validate them, and export their | ||
# location via `ELECTRS_EXE`/`BITCOIND_EXE` which will be used by the | ||
# `electrsd`/`bitcoind` crates in our tests. | ||
function DOWNLOAD_ELECTRS_AND_BITCOIND { | ||
ELECTRS_DL_ENDPOINT="https://github.com/RCasatta/electrsd/releases/download/electrs_releases" | ||
ELECTRS_VERSION="esplora_a33e97e1a1fc63fa9c20a116bb92579bbf43b254" | ||
BITCOIND_DL_ENDPOINT="https://bitcoincore.org/bin/" | ||
BITCOIND_VERSION="25.1" | ||
if [[ "$HOST_PLATFORM" == *linux* ]]; then | ||
ELECTRS_DL_FILE_NAME=electrs_linux_"$ELECTRS_VERSION".zip | ||
ELECTRS_DL_HASH="865e26a96e8df77df01d96f2f569dcf9622fc87a8d99a9b8fe30861a4db9ddf1" | ||
BITCOIND_DL_FILE_NAME=bitcoin-"$BITCOIND_VERSION"-x86_64-linux-gnu.tar.gz | ||
BITCOIND_DL_HASH="a978c407b497a727f0444156e397b50491ce862d1f906fef9b521415b3611c8b" | ||
elif [[ "$HOST_PLATFORM" == *darwin* ]]; then | ||
ELECTRS_DL_FILE_NAME=electrs_macos_"$ELECTRS_VERSION".zip | ||
ELECTRS_DL_HASH="2d5ff149e8a2482d3658e9b386830dfc40c8fbd7c175ca7cbac58240a9505bcd" | ||
BITCOIND_DL_FILE_NAME=bitcoin-"$BITCOIND_VERSION"-x86_64-apple-darwin.tar.gz | ||
BITCOIND_DL_HASH="1acfde0ec3128381b83e3e5f54d1c7907871d324549129592144dd12a821eff1" | ||
else | ||
echo -e "\n\nUnsupported platform. Exiting.." | ||
exit 1 | ||
fi | ||
|
||
DL_TMP_DIR=$(mktemp -d) | ||
trap 'rm -rf -- "$DL_TMP_DIR"' EXIT | ||
|
||
pushd "$DL_TMP_DIR" | ||
ELECTRS_DL_URL="$ELECTRS_DL_ENDPOINT"/"$ELECTRS_DL_FILE_NAME" | ||
curl -L -o "$ELECTRS_DL_FILE_NAME" "$ELECTRS_DL_URL" | ||
echo "$ELECTRS_DL_HASH $ELECTRS_DL_FILE_NAME"|shasum -a 256 -c | ||
unzip "$ELECTRS_DL_FILE_NAME" | ||
export ELECTRS_EXE="$DL_TMP_DIR"/electrs | ||
chmod +x "$ELECTRS_EXE" | ||
|
||
BITCOIND_DL_URL="$BITCOIND_DL_ENDPOINT"/bitcoin-core-"$BITCOIND_VERSION"/"$BITCOIND_DL_FILE_NAME" | ||
curl -L -o "$BITCOIND_DL_FILE_NAME" "$BITCOIND_DL_URL" | ||
echo "$BITCOIND_DL_HASH $BITCOIND_DL_FILE_NAME"|shasum -a 256 -c | ||
tar xzf "$BITCOIND_DL_FILE_NAME" | ||
export BITCOIND_EXE="$DL_TMP_DIR"/bitcoin-"$BITCOIND_VERSION"/bin/bitcoind | ||
chmod +x "$BITCOIND_EXE" | ||
popd | ||
} | ||
|
||
PIN_RELEASE_DEPS # pin the release dependencies in our main workspace | ||
|
||
# Starting with version 1.10.0, the `regex` crate has an MSRV of rustc 1.65.0. | ||
|
@@ -71,9 +27,6 @@ PIN_RELEASE_DEPS # pin the release dependencies in our main workspace | |
|
||
export RUST_BACKTRACE=1 | ||
|
||
# Build `lightning-transaction-sync` in no_download mode. | ||
export RUSTFLAGS="$RUSTFLAGS --cfg no_download" | ||
|
||
echo -e "\n\nBuilding and testing all workspace crates..." | ||
cargo test --verbose --color always | ||
cargo check --verbose --color always | ||
|
@@ -91,20 +44,22 @@ cargo check --verbose --color always --features rpc-client,rest-client,tokio | |
popd | ||
|
||
if [[ "$HOST_PLATFORM" != *windows* ]]; then | ||
echo -e "\n\nBuilding and testing Transaction Sync Clients with features" | ||
pushd lightning-transaction-sync | ||
|
||
DOWNLOAD_ELECTRS_AND_BITCOIND | ||
|
||
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 | ||
if [ -z "$BITCOIND_EXE" ] || [ -z "$ELECTRS_EXE" ]; then | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I added this exception to still allow running @TheBlueMatt Do you have an opinion if it would be worth handing in a There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Hmm, yea, would be nice to have a CI flag, I think. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Done in a follow-up: #3240 |
||
echo -e "\n\nSkipping testing Transaction Sync Clients due to BITCOIND_EXE or ELECTRS_EXE being unset." | ||
else | ||
echo -e "\n\nBuilding and testing Transaction Sync Clients with features" | ||
pushd lightning-transaction-sync | ||
|
||
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 | ||
fi | ||
|
||
echo -e "\n\nTest futures builds" | ||
|
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,47 @@ | ||
#!/bin/bash | ||
set -eox pipefail | ||
|
||
# The tests of `lightning-transaction-sync` require `electrs` and `bitcoind` | ||
# binaries. Here, we download the binaries, validate them, and export their | ||
# location via `ELECTRS_EXE`/`BITCOIND_EXE` which will be used by the | ||
# `electrsd`/`bitcoind` crates in our tests. | ||
|
||
HOST_PLATFORM="$(rustc --version --verbose | grep "host:" | awk '{ print $2 }')" | ||
ELECTRS_DL_ENDPOINT="https://github.com/RCasatta/electrsd/releases/download/electrs_releases" | ||
ELECTRS_VERSION="esplora_a33e97e1a1fc63fa9c20a116bb92579bbf43b254" | ||
BITCOIND_DL_ENDPOINT="https://bitcoincore.org/bin/" | ||
BITCOIND_VERSION="25.1" | ||
if [[ "$HOST_PLATFORM" == *linux* ]]; then | ||
ELECTRS_DL_FILE_NAME=electrs_linux_"$ELECTRS_VERSION".zip | ||
ELECTRS_DL_HASH="865e26a96e8df77df01d96f2f569dcf9622fc87a8d99a9b8fe30861a4db9ddf1" | ||
BITCOIND_DL_FILE_NAME=bitcoin-"$BITCOIND_VERSION"-x86_64-linux-gnu.tar.gz | ||
BITCOIND_DL_HASH="a978c407b497a727f0444156e397b50491ce862d1f906fef9b521415b3611c8b" | ||
elif [[ "$HOST_PLATFORM" == *darwin* ]]; then | ||
ELECTRS_DL_FILE_NAME=electrs_macos_"$ELECTRS_VERSION".zip | ||
ELECTRS_DL_HASH="2d5ff149e8a2482d3658e9b386830dfc40c8fbd7c175ca7cbac58240a9505bcd" | ||
BITCOIND_DL_FILE_NAME=bitcoin-"$BITCOIND_VERSION"-x86_64-apple-darwin.tar.gz | ||
BITCOIND_DL_HASH="1acfde0ec3128381b83e3e5f54d1c7907871d324549129592144dd12a821eff1" | ||
else | ||
printf "\n\n" | ||
echo "Unsupported platform: $HOST_PLATFORM Exiting.." | ||
exit 1 | ||
fi | ||
|
||
DL_TMP_DIR=$(mktemp -d) | ||
trap 'rm -rf -- "$DL_TMP_DIR"' EXIT | ||
|
||
pushd "$DL_TMP_DIR" | ||
ELECTRS_DL_URL="$ELECTRS_DL_ENDPOINT"/"$ELECTRS_DL_FILE_NAME" | ||
curl -L -o "$ELECTRS_DL_FILE_NAME" "$ELECTRS_DL_URL" | ||
echo "$ELECTRS_DL_HASH $ELECTRS_DL_FILE_NAME"|shasum -a 256 -c | ||
unzip "$ELECTRS_DL_FILE_NAME" | ||
export ELECTRS_EXE="$DL_TMP_DIR"/electrs | ||
chmod +x "$ELECTRS_EXE" | ||
|
||
BITCOIND_DL_URL="$BITCOIND_DL_ENDPOINT"/bitcoin-core-"$BITCOIND_VERSION"/"$BITCOIND_DL_FILE_NAME" | ||
curl -L -o "$BITCOIND_DL_FILE_NAME" "$BITCOIND_DL_URL" | ||
echo "$BITCOIND_DL_HASH $BITCOIND_DL_FILE_NAME"|shasum -a 256 -c | ||
tar xzf "$BITCOIND_DL_FILE_NAME" | ||
export BITCOIND_EXE="$DL_TMP_DIR"/bitcoin-"$BITCOIND_VERSION"/bin/bitcoind | ||
chmod +x "$BITCOIND_EXE" | ||
popd |
Uh oh!
There was an error while loading. Please reload this page.