diff --git a/contrib/teamcity/build-configurations.json b/contrib/teamcity/build-configurations.json index 2c52eae2d..c0171fcde 100644 --- a/contrib/teamcity/build-configurations.json +++ b/contrib/teamcity/build-configurations.json @@ -1,273 +1,280 @@ { "templates": { "common_unix_artifacts": { "artifacts": { "CMakeCache.txt": "CMakeCache.txt", "src/bitcoind": "bin/bitcoind", "src/bitcoin-*": "bin", "src/qt/bitcoin-qt": "bin/bitcoin-qt", "src/bench/bitcoin-bench": "bin/bitcoin-bench", "src/seeder/bitcoin-seeder": "bin/bitcoin-seeder", "src/libbitcoinconsensus.*": "lib", "src/test/test_bitcoin": "bin/test_bitcoin", "src/qt/test/test_bitcoin-qt": "bin/test_bitcoin-qt", "src/seeder/test/test-seeder": "bin/test-seeder", "src/qt/test/test_bitcoin-qt.log": "log/qt/test_bitcoin-qt.log", "src/seeder/test/*.log": "log/seeder", "test/tmp/*": "functional" } }, "gitian_builds": { "script": "gitian.sh", "timeout": 7200, "artifacts": { "gitian-results": "" } } }, "builds": { "build-asan": { "script": "builds/build-asan.sh", "templates": [ "common_unix_artifacts" ], "timeout": 1800, "env": { "ASAN_OPTIONS": "log_path=stdout", "LSAN_OPTIONS": "log_path=stdout" } }, "build-autotools": { "script": "builds/build-autotools.sh", "templates": [ "common_unix_artifacts" ], "timeout": 1200, "artifacts": { "src/bench/bench_bitcoin": "bin/bench_bitcoin", "config.log": "log/config.log", "src/test-suite.log": "log/test-suite.log", "src/test/*.log": "log", "src/seeder/test/test-seeder.log": "log/test-seeder.log" } }, "build-bench": { "script": "builds/build-bench.sh", "templates": [ "common_unix_artifacts" ], "timeout": 1200 }, "build-clang-10": { "runOnDiff": true, "script": "builds/build-clang-10.sh", "templates": [ "common_unix_artifacts" ], "timeout": 1200 }, "build-clang-tidy": { "runOnDiff": true, "script": "builds/build-clang-tidy.sh", "templates": [ "common_unix_artifacts" ], "timeout": 600, "artifacts": { "clang-tidy-warnings.txt": "clang-tidy-warnings.txt" } }, "build-coverage": { "script": "builds/build-coverage.sh", "templates": [ "common_unix_artifacts" ], "timeout": 3600, "artifacts": { "coverage.tar.gz": "coverage.tar.gz" } }, "build-diff": { "runOnDiff": true, "script": "builds/build-diff.sh", "templates": [ "common_unix_artifacts" ], "timeout": 1200 }, + "build-docs": { + "script": "builds/build-docs.sh", + "templates": [ + "common_unix_artifacts" + ], + "timeout": 600, + "artifacts": { + "doc/*": "doc" + } + }, "build-ibd": { "script": "builds/build-ibd.sh", "templates": [ "common_unix_artifacts" ], "timeout": 14400, "artifacts": { "ibd/debug.log": "log/debug.log" } }, "build-ibd-no-assumevalid-checkpoint": { "script": "builds/build-ibd-no-assumevalid-checkpoint.sh", "template": [ "common_unix_artifacts" ], "timeout": 21600, "artifacts": { "ibd/debug.log": "log/debug.log" } }, "build-linux64": { "script": "builds/build-linux64.sh", "templates": [ "common_unix_artifacts" ], "timeout": 3600 }, "build-linux-aarch64": { "script": "builds/build-linux-aarch64.sh", "templates": [ "common_unix_artifacts" ], "timeout": 3600, "env": { "QEMU_LD_PREFIX": "/usr/aarch64-linux-gnu" } }, "build-linux-arm": { "script": "builds/build-linux-arm.sh", "templates": [ "common_unix_artifacts" ], "timeout": 3600, "env": { "QEMU_LD_PREFIX": "/usr/arm-linux-gnueabihf" } }, "build-make-generator": { "script": "builds/build-make-generator.sh", "templates": [ "common_unix_artifacts" ], "timeout": 1200 }, "build-master": { "script": "builds/build-master.sh", "templates": [ "common_unix_artifacts" ], - "timeout": 4800, - "artifacts": { - "doc/Doxyfile": "doc/Doxyfile" - } + "timeout": 4800 }, "build-osx": { "script": "builds/build-osx.sh", "templates": [ "common_unix_artifacts" ], "timeout": 3600, "artifacts": { "src/qt/BitcoinABC-Qt.app": "bin", "Bitcoin-ABC.dmg": "Bitcoin-ABC.dmg" } }, "build-secp256k1": { "script": "builds/build-secp256k1.sh", "templates": [ "common_unix_artifacts" ], "timeout": 900, "artifacts": { "src/secp256k1/libsecp256k1*": "lib" } }, "build-tsan": { "script": "builds/build-tsan.sh", "templates": [ "common_unix_artifacts" ], "timeout": 1800, "env": { "TSAN_OPTIONS": "log_path=stdout" } }, "build-ubsan": { "script": "builds/build-ubsan.sh", "templates": [ "common_unix_artifacts" ], "timeout": 1800, "env": { "UBSAN_OPTIONS": "log_path=stdout" } }, "build-win64": { "script": "builds/build-win64.sh", "timeout": 3600, "artifacts": { "CMakeCache.txt": "CMakeCache.txt", "src/bitcoind.exe": "bin/bitcoind.exe", "src/bitcoin-*.exe": "bin", "src/qt/bitcoin-qt.exe": "bin/bitcoin-qt.exe", "src/bench/bitcoin-bench.exe": "bin/bitcoin-bench.exe", "src/libbitcoinconsensus*": "lib", "src/test/test_bitcoin.exe": "bin/test_bitcoin.exe", "src/qt/test/test_bitcoin-qt.exe": "bin/test_bitcoin-qt.exe", "src/qt/test/test_bitcoin-qt.log": "log/qt/test_bitcoin-qt.log", "bitcoin-abc-*-x86_64-w64-mingw32.exe": "bitcoin-abc-x86_64-w64-mingw32.exe" } }, "build-without-cli": { "script": "builds/build-without-cli.sh", "templates": [ "common_unix_artifacts" ], "timeout": 1200 }, "build-without-wallet": { "runOnDiff": true, "script": "builds/build-without-wallet.sh", "templates": [ "common_unix_artifacts" ], "timeout": 1200 }, "build-without-zmq": { "script": "builds/build-without-zmq.sh", "templates": [ "common_unix_artifacts" ], "timeout": 1800 }, "check-seeds": { "script": "builds/check-seeds.sh", "templates": [ "common_unix_artifacts" ], "timeout": 600 }, "gitian-linux": { "templates": [ "gitian_builds" ], "env": { "OS_NAME": "linux" } }, "gitian-osx": { "templates": [ "gitian_builds" ], "env": { "OS_NAME": "osx" } }, "gitian-win": { "templates": [ "gitian_builds" ], "env": { "OS_NAME": "win" } } } } diff --git a/contrib/teamcity/builds/build-docs.sh b/contrib/teamcity/builds/build-docs.sh new file mode 100755 index 000000000..4bcdae71a --- /dev/null +++ b/contrib/teamcity/builds/build-docs.sh @@ -0,0 +1,37 @@ +#!/usr/bin/env bash + +export LC_ALL=C.UTF-8 + +set -euxo pipefail + +# shellcheck source=../ci-fixture.sh +source "${TOPLEVEL}/contrib/teamcity/ci-fixture.sh" + +# Build. This also generates doc/Doxyfile +build_with_cmake bitcoind bitcoin-cli + +./src/bitcoind -regtest & +BITCOIND_PID=$! +cleanup() { + kill "${BITCOIND_PID}" +} +trap "cleanup" EXIT + +echo "Waiting for bitcoind to spin up..." +READY="no" +for _ in {1..5}; do + if ./src/bitcoin-cli -regtest help > /dev/null ; then + READY="yes" + break + fi + sleep 1 + echo "." +done + +if [ "${READY}" != "yes" ]; then + echo "Error: bitcoind is not ready or was not started" + exit 1 +fi + +# Generate RPC documentation +ninja doc-rpc