Sync test (old) #587
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Sync test (old) | |
on: | |
push: | |
paths-ignore: | |
- 'docker-compose/**' | |
- 'docs/**' | |
- 'README.md' | |
pull_request: | |
schedule: | |
- cron: '47 0/3 * * *' | |
jobs: | |
sync-test-ubuntu-tsan: | |
timeout-minutes: 60 | |
runs-on: ubuntu-22.04 | |
steps: | |
- name: Install dependencies | |
run: | | |
sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test | |
sudo apt update | |
sudo apt install -y git build-essential cmake gcc-12 g++-12 | |
- name: Checkout repository | |
uses: actions/checkout@v4 | |
with: | |
submodules: recursive | |
- name: Build libcurl | |
run: | | |
cd external/src/curl | |
cmake . -DCMAKE_C_COMPILER=gcc-12 -DCMAKE_C_FLAGS='-fsanitize=thread -Og -fno-omit-frame-pointer -g' -DBUILD_CURL_EXE=OFF -DBUILD_SHARED_LIBS=OFF -DCURL_DISABLE_INSTALL=ON -DCURL_ENABLE_EXPORT_TARGET=OFF -DCURL_DISABLE_HEADERS_API=ON -DCURL_DISABLE_BINDLOCAL=ON -DBUILD_LIBCURL_DOCS=OFF -DBUILD_MISC_DOCS=OFF -DENABLE_CURL_MANUAL=OFF -DCURL_ZLIB=OFF -DCURL_DISABLE_ALTSVC=ON -DCURL_DISABLE_COOKIES=ON -DCURL_DISABLE_DOH=ON -DCURL_DISABLE_GETOPTIONS=ON -DCURL_DISABLE_HSTS=ON -DCURL_DISABLE_LIBCURL_OPTION=ON -DCURL_DISABLE_MIME=ON -DCURL_DISABLE_NETRC=ON -DCURL_DISABLE_NTLM=ON -DCURL_DISABLE_PARSEDATE=ON -DCURL_DISABLE_PROGRESS_METER=ON -DCURL_DISABLE_SHUFFLE_DNS=ON -DCURL_DISABLE_SOCKETPAIR=ON -DCURL_DISABLE_VERBOSE_STRINGS=ON -DHTTP_ONLY=ON -DCURL_ENABLE_SSL=OFF -DUSE_LIBIDN2=OFF -DCURL_USE_LIBPSL=OFF -DCURL_USE_LIBSSH2=OFF -DENABLE_UNIX_SOCKETS=OFF | |
make -j$(nproc) | |
cd lib && mkdir .libs && cp libcurl.a .libs | |
- name: Build libuv | |
run: | | |
cd external/src/libuv | |
mkdir build | |
cd build | |
cmake .. -DCMAKE_C_COMPILER=gcc-12 -DCMAKE_C_FLAGS='-fsanitize=thread -Og -fno-omit-frame-pointer -g' -DBUILD_TESTING=OFF -DLIBUV_BUILD_SHARED=OFF | |
make -j$(nproc) | |
- name: Build libzmq | |
run: | | |
cd external/src/libzmq | |
mkdir build | |
cd build | |
cmake .. -DCMAKE_C_COMPILER=gcc-12 -DCMAKE_CXX_COMPILER=g++-12 -DCMAKE_C_FLAGS='-fsanitize=thread -Og -fno-omit-frame-pointer -g' -DCMAKE_CXX_FLAGS='-fsanitize=thread -Og -fno-omit-frame-pointer -g' -DWITH_LIBSODIUM=OFF -DWITH_LIBBSD=OFF -DBUILD_TESTS=OFF -DWITH_DOCS=OFF -DENABLE_DRAFTS=OFF -DBUILD_SHARED=OFF | |
make -j$(nproc) | |
- name: Build p2pool | |
run: | | |
mkdir build | |
cd build | |
cmake .. -DDEV_TEST_SYNC=ON -DDEV_WITH_TSAN=ON -DCMAKE_C_COMPILER=gcc-12 -DCMAKE_CXX_COMPILER=g++-12 -DCMAKE_C_FLAGS='-fsanitize=thread -Og -fno-omit-frame-pointer -g' -DCMAKE_CXX_FLAGS='-fsanitize=thread -Og -fno-omit-frame-pointer -g' -DWITH_LTO=OFF -DSTATIC_LIBS=ON | |
make -j$(nproc) p2pool | |
- name: Run p2pool | |
run: | | |
cd build | |
mkdir data | |
python ../tests/src/stratum_dummy.py 1 & | |
python ../tests/src/stratum_dummy.py 2 & | |
python ../tests/src/stratum_dummy.py 3 & | |
sudo sysctl vm.mmap_rnd_bits=28 | |
TSAN_OPTIONS="suppressions=../tests/src/tsan_sup.txt halt_on_error=1" ./p2pool --host xmr.support --rpc-port 18081 --zmq-port 18083 --host node.richfowler.net --rpc-port 18089 --zmq-port 18084 --wallet 44MnN1f3Eto8DZYUWuE5XZNUtE3vcRzt2j6PzqWpPau34e6Cf4fAxt6X2MBmrm6F9YMEiMNjN6W4Shn4pLcfNAja621jwyg --mini --out-peers 200 --data-api data --local-api --loglevel 6 | |
- name: Check p2pool.log | |
run: | | |
cd build | |
grep 'Synchronization finished successfully' p2pool.log | |
- name: Archive p2pool.log | |
uses: actions/upload-artifact@v4 | |
with: | |
name: p2pool_ubuntu_data_tsan | |
path: | | |
build/*.log | |
build/data/ | |
sync-test-ubuntu-msan: | |
timeout-minutes: 60 | |
runs-on: ubuntu-22.04 | |
steps: | |
- name: Install dependencies | |
run: | | |
sudo apt update | |
sudo apt install -y git build-essential cmake ninja-build | |
- name: Install clang | |
run: | | |
wget https://apt.llvm.org/llvm.sh | |
chmod +x llvm.sh | |
sudo ./llvm.sh 18 | |
- name: Build libcxx_msan | |
run: | | |
git clone --depth=1 https://github.com/llvm/llvm-project -b release/18.x | |
cd llvm-project | |
mkdir build | |
cmake -G Ninja -S runtimes -B build -DLLVM_ENABLE_RUNTIMES="libcxx;libcxxabi" -DCMAKE_C_COMPILER=clang-18 -DCMAKE_CXX_COMPILER=clang++-18 -DLLVM_USE_SANITIZER=MemoryWithOrigins -DLIBCXXABI_USE_LLVM_UNWINDER=OFF | |
ninja -C build cxx cxxabi | |
cd build | |
mkdir /tmp/libcxx_msan | |
cp -r include /tmp/libcxx_msan | |
cp -r lib /tmp/libcxx_msan | |
- name: Checkout repository | |
uses: actions/checkout@v4 | |
with: | |
submodules: recursive | |
- name: Build libcurl | |
run: | | |
cd external/src/curl | |
cmake . -DCMAKE_C_COMPILER=clang-18 -DCMAKE_C_FLAGS='-fsanitize=memory -fsanitize-recover -fsanitize-memory-track-origins -Og -fno-omit-frame-pointer -g' -DBUILD_CURL_EXE=OFF -DBUILD_SHARED_LIBS=OFF -DCURL_DISABLE_INSTALL=ON -DCURL_ENABLE_EXPORT_TARGET=OFF -DCURL_DISABLE_HEADERS_API=ON -DCURL_DISABLE_BINDLOCAL=ON -DBUILD_LIBCURL_DOCS=OFF -DBUILD_MISC_DOCS=OFF -DENABLE_CURL_MANUAL=OFF -DCURL_ZLIB=OFF -DCURL_DISABLE_ALTSVC=ON -DCURL_DISABLE_COOKIES=ON -DCURL_DISABLE_DOH=ON -DCURL_DISABLE_GETOPTIONS=ON -DCURL_DISABLE_HSTS=ON -DCURL_DISABLE_LIBCURL_OPTION=ON -DCURL_DISABLE_MIME=ON -DCURL_DISABLE_NETRC=ON -DCURL_DISABLE_NTLM=ON -DCURL_DISABLE_PARSEDATE=ON -DCURL_DISABLE_PROGRESS_METER=ON -DCURL_DISABLE_SHUFFLE_DNS=ON -DCURL_DISABLE_SOCKETPAIR=ON -DCURL_DISABLE_VERBOSE_STRINGS=ON -DHTTP_ONLY=ON -DCURL_ENABLE_SSL=OFF -DUSE_LIBIDN2=OFF -DCURL_USE_LIBPSL=OFF -DCURL_USE_LIBSSH2=OFF -DENABLE_UNIX_SOCKETS=OFF | |
make -j$(nproc) | |
cd lib && mkdir .libs && cp libcurl.a .libs | |
- name: Build libuv | |
run: | | |
cd external/src/libuv | |
mkdir build | |
cd build | |
cmake .. -DCMAKE_C_COMPILER=clang-18 -DCMAKE_C_FLAGS='-fsanitize=memory -fsanitize-recover -fsanitize-memory-track-origins -Og -fno-omit-frame-pointer -g' -DBUILD_TESTING=OFF -DLIBUV_BUILD_SHARED=OFF | |
make -j$(nproc) | |
- name: Build libzmq | |
run: | | |
cd external/src/libzmq | |
mkdir build | |
cd build | |
cmake .. -DCMAKE_C_COMPILER=clang-18 -DCMAKE_CXX_COMPILER=clang++-18 -DCMAKE_C_FLAGS='-fsanitize=memory -fsanitize-recover -fsanitize-memory-track-origins -Og -fno-omit-frame-pointer -g' -DCMAKE_CXX_FLAGS='-nostdinc++ -nostdlib++ -fsanitize=memory -fsanitize-recover -fsanitize-memory-track-origins -Og -fno-omit-frame-pointer -g -isystem /tmp/libcxx_msan/include/c++/v1 -L/tmp/libcxx_msan/lib -lc++ -lc++abi -Wno-unused-command-line-argument' -DWITH_LIBSODIUM=OFF -DWITH_LIBBSD=OFF -DBUILD_TESTS=OFF -DWITH_DOCS=OFF -DENABLE_DRAFTS=OFF -DBUILD_SHARED=OFF | |
make -j$(nproc) | |
- name: Build p2pool | |
run: | | |
mkdir build | |
cd build | |
cmake .. -DCMAKE_C_COMPILER=clang-18 -DCMAKE_CXX_COMPILER=clang++-18 -DCMAKE_C_FLAGS='-fsanitize=memory -fsanitize-recover -fsanitize-memory-track-origins -fno-omit-frame-pointer -g' -DCMAKE_CXX_FLAGS='-nostdinc++ -nostdlib++ -fsanitize=memory -fsanitize-recover -fsanitize-memory-track-origins -isystem /tmp/libcxx_msan/include/c++/v1 -L/tmp/libcxx_msan/lib -Wl,-rpath /tmp/libcxx_msan/lib -lc++ -lc++abi -Wno-unused-command-line-argument -fuse-ld=lld-18 -fno-omit-frame-pointer -g' -DDEV_TEST_SYNC=ON -DDEV_WITH_MSAN=ON -DWITH_LTO=OFF -DSTATIC_LIBS=ON | |
make -j$(nproc) p2pool | |
- name: Run p2pool | |
run: | | |
cd build | |
mkdir data | |
python ../tests/src/stratum_dummy.py 1 & | |
python ../tests/src/stratum_dummy.py 2 & | |
python ../tests/src/stratum_dummy.py 3 & | |
sudo sysctl vm.mmap_rnd_bits=28 | |
MSAN_OPTIONS="halt_on_error=1" ./p2pool --host xmr.support --rpc-port 18081 --zmq-port 18083 --host node.richfowler.net --rpc-port 18089 --zmq-port 18084 --wallet 44MnN1f3Eto8DZYUWuE5XZNUtE3vcRzt2j6PzqWpPau34e6Cf4fAxt6X2MBmrm6F9YMEiMNjN6W4Shn4pLcfNAja621jwyg --mini --out-peers 200 --data-api data --local-api --loglevel 6 | |
- name: Check p2pool.log | |
run: | | |
cd build | |
grep 'Synchronization finished successfully' p2pool.log | |
- name: Archive p2pool.log | |
uses: actions/upload-artifact@v4 | |
with: | |
name: p2pool_ubuntu_data_msan | |
path: | | |
build/*.log | |
build/data/ | |
sync-test-ubuntu-ubsan: | |
timeout-minutes: 60 | |
runs-on: ubuntu-22.04 | |
steps: | |
- name: Install dependencies | |
run: | | |
sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test | |
sudo apt update | |
sudo apt install -y git build-essential cmake libuv1-dev libzmq3-dev libsodium-dev libpgm-dev libnorm-dev libgss-dev libcurl4-openssl-dev libidn2-0-dev gcc-12 g++-12 | |
- name: Checkout repository | |
uses: actions/checkout@v4 | |
with: | |
submodules: recursive | |
- name: Build p2pool | |
run: | | |
mkdir build | |
cd build | |
cmake .. -DDEV_TEST_SYNC=ON -DDEV_WITH_UBSAN=ON -DCMAKE_C_COMPILER=gcc-12 -DCMAKE_CXX_COMPILER=g++-12 -DWITH_LTO=OFF | |
make -j$(nproc) p2pool | |
- name: Run p2pool | |
run: | | |
cd build | |
mkdir data | |
python ../tests/src/stratum_dummy.py 1 & | |
python ../tests/src/stratum_dummy.py 2 & | |
python ../tests/src/stratum_dummy.py 3 & | |
sudo sysctl vm.mmap_rnd_bits=28 | |
UBSAN_OPTIONS="suppressions=../tests/src/ubsan_sup.txt halt_on_error=1" ./p2pool --host xmr.support --rpc-port 18081 --zmq-port 18083 --host node.richfowler.net --rpc-port 18089 --zmq-port 18084 --wallet 44MnN1f3Eto8DZYUWuE5XZNUtE3vcRzt2j6PzqWpPau34e6Cf4fAxt6X2MBmrm6F9YMEiMNjN6W4Shn4pLcfNAja621jwyg --mini --out-peers 200 --data-api data --local-api --loglevel 6 | |
- name: Check p2pool.log | |
run: | | |
cd build | |
grep 'Synchronization finished successfully' p2pool.log | |
- name: Archive p2pool.log | |
uses: actions/upload-artifact@v4 | |
with: | |
name: p2pool_ubuntu_data_ubsan | |
path: | | |
build/*.log | |
build/data/ | |
sync-test-ubuntu-asan: | |
timeout-minutes: 60 | |
runs-on: ubuntu-22.04 | |
steps: | |
- name: Install dependencies | |
run: | | |
sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test | |
sudo apt update | |
sudo apt install -y git build-essential cmake libuv1-dev libzmq3-dev libsodium-dev libpgm-dev libnorm-dev libgss-dev libcurl4-openssl-dev libidn2-0-dev gcc-12 g++-12 | |
- name: Checkout repository | |
uses: actions/checkout@v4 | |
with: | |
submodules: recursive | |
- name: Build p2pool | |
run: | | |
mkdir build | |
cd build | |
cmake .. -DDEV_TEST_SYNC=ON -DDEV_WITH_ASAN=ON -DCMAKE_C_COMPILER=gcc-12 -DCMAKE_CXX_COMPILER=g++-12 -DCMAKE_C_FLAGS="-fno-omit-frame-pointer -fsanitize=address -Og -g" -DCMAKE_CXX_FLAGS="-fno-omit-frame-pointer -fsanitize=address -Og -g" -DWITH_LTO=OFF | |
make -j$(nproc) p2pool | |
- name: Run p2pool | |
run: | | |
cd build | |
mkdir data | |
python ../tests/src/stratum_dummy.py 1 & | |
python ../tests/src/stratum_dummy.py 2 & | |
python ../tests/src/stratum_dummy.py 3 & | |
sudo sysctl vm.mmap_rnd_bits=28 | |
ASAN_OPTIONS="detect_stack_use_after_return=1 atexit=1" ./p2pool --host xmr.support --rpc-port 18081 --zmq-port 18083 --host node.richfowler.net --rpc-port 18089 --zmq-port 18084 --wallet 44MnN1f3Eto8DZYUWuE5XZNUtE3vcRzt2j6PzqWpPau34e6Cf4fAxt6X2MBmrm6F9YMEiMNjN6W4Shn4pLcfNAja621jwyg --mini --out-peers 200 --data-api data --local-api --loglevel 6 | |
- name: Check p2pool.log | |
run: | | |
cd build | |
grep 'Synchronization finished successfully' p2pool.log | |
- name: Archive p2pool.log | |
uses: actions/upload-artifact@v4 | |
with: | |
name: p2pool_ubuntu_data_asan | |
path: | | |
build/*.log | |
build/data/ | |
sync-test-macos: | |
timeout-minutes: 60 | |
runs-on: ${{ matrix.config.os }} | |
strategy: | |
matrix: | |
config: | |
- {os: macos-13, flags: "-Og -ftrapv"} | |
- {os: macos-14, flags: "-Og -ftrapv -target arm64-apple-macos-11"} | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v4 | |
with: | |
submodules: recursive | |
- name: Install dependencies | |
run: | | |
HOMEBREW_NO_AUTO_UPDATE=1 brew install pyenv | |
pyenv install 3:latest | |
- name: Build libcurl | |
run: | | |
cd external/src/curl | |
cmake . -DCMAKE_C_COMPILER="$(brew --prefix llvm@15)/bin/clang" -DCMAKE_AR="$(brew --prefix llvm@15)/bin/llvm-ar" -DCMAKE_RANLIB="$(brew --prefix llvm@15)/bin/llvm-ranlib" -DCMAKE_C_FLAGS="${{ matrix.config.flags }}" -DBUILD_CURL_EXE=OFF -DBUILD_SHARED_LIBS=OFF -DCURL_DISABLE_INSTALL=ON -DCURL_ENABLE_EXPORT_TARGET=OFF -DCURL_DISABLE_HEADERS_API=ON -DCURL_DISABLE_BINDLOCAL=ON -DBUILD_LIBCURL_DOCS=OFF -DBUILD_MISC_DOCS=OFF -DENABLE_CURL_MANUAL=OFF -DCURL_ZLIB=OFF -DCURL_DISABLE_ALTSVC=ON -DCURL_DISABLE_COOKIES=ON -DCURL_DISABLE_DOH=ON -DCURL_DISABLE_GETOPTIONS=ON -DCURL_DISABLE_HSTS=ON -DCURL_DISABLE_LIBCURL_OPTION=ON -DCURL_DISABLE_MIME=ON -DCURL_DISABLE_NETRC=ON -DCURL_DISABLE_NTLM=ON -DCURL_DISABLE_PARSEDATE=ON -DCURL_DISABLE_PROGRESS_METER=ON -DCURL_DISABLE_SHUFFLE_DNS=ON -DCURL_DISABLE_SOCKETPAIR=ON -DCURL_DISABLE_VERBOSE_STRINGS=ON -DHTTP_ONLY=ON -DCURL_ENABLE_SSL=OFF -DUSE_LIBIDN2=OFF -DCURL_USE_LIBPSL=OFF -DCURL_USE_LIBSSH2=OFF -DENABLE_UNIX_SOCKETS=OFF | |
make -j4 | |
cd lib && mkdir .libs && cp libcurl.a .libs | |
- name: Build libuv | |
run: | | |
cd external/src/libuv | |
mkdir build | |
cd build | |
cmake .. -DCMAKE_C_COMPILER="$(brew --prefix llvm@15)/bin/clang" -DCMAKE_AR="$(brew --prefix llvm@15)/bin/llvm-ar" -DCMAKE_RANLIB="$(brew --prefix llvm@15)/bin/llvm-ranlib" -DCMAKE_C_FLAGS='${{ matrix.config.flags }}' -DBUILD_TESTING=OFF -DLIBUV_BUILD_SHARED=OFF | |
make -j4 | |
- name: Build libzmq | |
run: | | |
cd external/src/libzmq | |
mkdir build | |
cd build | |
cmake .. -DCMAKE_C_COMPILER="$(brew --prefix llvm@15)/bin/clang" -DCMAKE_CXX_COMPILER="$(brew --prefix llvm@15)/bin/clang++" -DCMAKE_AR="$(brew --prefix llvm@15)/bin/llvm-ar" -DCMAKE_RANLIB="$(brew --prefix llvm@15)/bin/llvm-ranlib" -DCMAKE_C_FLAGS='${{ matrix.config.flags }}' -DCMAKE_CXX_FLAGS='${{ matrix.config.flags }}' -DWITH_LIBSODIUM=OFF -DWITH_LIBBSD=OFF -DBUILD_TESTS=OFF -DWITH_DOCS=OFF -DENABLE_DRAFTS=OFF -DBUILD_SHARED=OFF | |
make -j4 | |
- name: Build p2pool | |
run: | | |
mkdir build | |
cd build | |
cmake .. -DCMAKE_C_COMPILER="$(brew --prefix llvm@15)/bin/clang" -DCMAKE_CXX_COMPILER="$(brew --prefix llvm@15)/bin/clang++" -DCMAKE_AR="$(brew --prefix llvm@15)/bin/llvm-ar" -DCMAKE_RANLIB="$(brew --prefix llvm@15)/bin/llvm-ranlib" -DCMAKE_C_FLAGS='${{ matrix.config.flags }}' -DCMAKE_CXX_FLAGS='${{ matrix.config.flags }}' -DWITH_LTO=OFF -DSTATIC_LIBS=ON -DDEV_TEST_SYNC=ON | |
make -j4 p2pool | |
- name: Run p2pool | |
run: | | |
cd build | |
mkdir data | |
python3 ../tests/src/stratum_dummy.py 1 & | |
python3 ../tests/src/stratum_dummy.py 2 & | |
python3 ../tests/src/stratum_dummy.py 3 & | |
./p2pool --host xmr.support --rpc-port 18081 --zmq-port 18083 --host node.richfowler.net --rpc-port 18089 --zmq-port 18084 --wallet 44MnN1f3Eto8DZYUWuE5XZNUtE3vcRzt2j6PzqWpPau34e6Cf4fAxt6X2MBmrm6F9YMEiMNjN6W4Shn4pLcfNAja621jwyg --mini --out-peers 200 --data-api data --local-api --loglevel 6 | |
- name: Check p2pool.log | |
run: | | |
cd build | |
grep 'Synchronization finished successfully' p2pool.log | |
- name: Archive p2pool.log | |
uses: actions/upload-artifact@v4 | |
with: | |
name: p2pool_${{ matrix.config.os }}_data | |
path: | | |
build/*.log | |
build/data/ | |
sync-test-windows-debug-asan: | |
timeout-minutes: 60 | |
runs-on: windows-2022 | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v4 | |
with: | |
submodules: recursive | |
- name: Setup cmake | |
uses: lukka/get-cmake@latest | |
- name: Build p2pool | |
run: | | |
mkdir build | |
cd build | |
cmake .. -G "Visual Studio 17 2022" -DCMAKE_SYSTEM_VERSION="10.0" -DDEV_TEST_SYNC=ON -DDEV_WITH_ASAN=ON | |
& "C:\\Program Files\\Microsoft Visual Studio\\2022\\Enterprise\\Msbuild\\Current\\Bin\\amd64\\msbuild" -v:m /m /p:Configuration=Debug p2pool.vcxproj | |
- name: Run p2pool | |
shell: cmd | |
run: | | |
call "C:\\Program Files\\Microsoft Visual Studio\\2022\\Enterprise\\VC\\Auxiliary\\Build\\vcvarsall.bat" amd64 | |
cd build/Debug | |
mkdir data | |
start python ../../tests/src/stratum_dummy.py 1 | |
start python ../../tests/src/stratum_dummy.py 2 | |
start python ../../tests/src/stratum_dummy.py 3 | |
p2pool.exe --host xmr.support --rpc-port 18081 --zmq-port 18083 --host node.richfowler.net --rpc-port 18089 --zmq-port 18084 --wallet 44MnN1f3Eto8DZYUWuE5XZNUtE3vcRzt2j6PzqWpPau34e6Cf4fAxt6X2MBmrm6F9YMEiMNjN6W4Shn4pLcfNAja621jwyg --mini --out-peers 200 --data-api data --local-api --loglevel 6 | |
- name: Check p2pool.log | |
run: | | |
cd build/Debug | |
findstr /C:"Synchronization finished successfully" p2pool.log | |
- name: Archive p2pool.log | |
uses: actions/upload-artifact@v4 | |
with: | |
name: p2pool_windows_data_debug_asan | |
path: | | |
build/Debug/*.log | |
build/Debug/data/ | |
sync-test-windows-leaks: | |
timeout-minutes: 60 | |
runs-on: windows-2022 | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v4 | |
with: | |
submodules: recursive | |
- name: Setup cmake | |
uses: lukka/get-cmake@latest | |
- name: Build p2pool | |
run: | | |
mkdir build | |
cd build | |
cmake .. -G "Visual Studio 17 2022" -DCMAKE_SYSTEM_VERSION="10.0" -DDEV_TEST_SYNC=ON -DDEV_TRACK_MEMORY=ON | |
& "C:\\Program Files\\Microsoft Visual Studio\\2022\\Enterprise\\Msbuild\\Current\\Bin\\amd64\\msbuild" -v:m /m /p:Configuration=RelWithDebInfo p2pool.vcxproj | |
- name: Run p2pool | |
run: | | |
cd build/RelWithDebInfo | |
mkdir data | |
Start-Process python -ArgumentList "../../tests/src/stratum_dummy.py 1" | |
Start-Process python -ArgumentList "../../tests/src/stratum_dummy.py 2" | |
Start-Process python -ArgumentList "../../tests/src/stratum_dummy.py 3" | |
./p2pool.exe --host xmr.support --rpc-port 18081 --zmq-port 18083 --host node.richfowler.net --rpc-port 18089 --zmq-port 18084 --wallet 44MnN1f3Eto8DZYUWuE5XZNUtE3vcRzt2j6PzqWpPau34e6Cf4fAxt6X2MBmrm6F9YMEiMNjN6W4Shn4pLcfNAja621jwyg --mini --out-peers 200 --data-api data --local-api --loglevel 6 | |
- name: Check p2pool.log | |
run: | | |
cd build/RelWithDebInfo | |
Remove-Item p2pool.cache -Force | |
findstr /C:"Synchronization finished successfully" p2pool.log | |
- name: Archive p2pool.log | |
if: '!cancelled()' | |
uses: actions/upload-artifact@v4 | |
with: | |
name: p2pool_windows_data_leaks | |
path: | | |
build/RelWithDebInfo/p2pool.* | |
build/RelWithDebInfo/data/ |