568078aa5bee793e3bbfddedfd42f51daa8aa9ec daemon: remove bitcoind folder (Antoine Poinsot)
Pull request description:
It was mistakenly committed as part of the introduction of the bitcoind module
ACKs for top commit:
darosior:
ACK 568078aa5bee793e3bbfddedfd42f51daa8aa9ec -- trivial
Tree-SHA512: 8083e00bbd7bf71431de100c3d9047f69afc8f768b52eed7a39e7b762160d0567e56ccb874a6400d60fab7703cd79b5ea59ed815494b15a7b77dbace707c5644
7c3289fda95aa79ca62258f14b7afb28548f5541 tests: add a functional test framework, adapted from revaultd (Antoine Poinsot)
cea72d8a63a247c8bcba39ecd487731d045d75eb bitcoind: don't try to match bitcoind's error string when loading wallet (Antoine Poinsot)
096ad68c4bd1b0332835fdbacb5d540a71646217 bitcoind: correctly check for errors when creating wallet (Antoine Poinsot)
5db59b1c892b82f2778949d2a51093507165b2c0 git: add a gitignore (Antoine Poinsot)
Pull request description:
This adds a Python functional tests framework, taken and adapted from `revaultd`. Since we don't have a JSONRPC interface yet it only contains a single trivial startup functional test... And 2 bug fixes this trivial test uncovered! :)
CI integration is still TODO, but it's not critical at the moment and i don't have the heart of fighting with it at the moment (we require a non-standard `bitcoind`).
ACKs for top commit:
darosior:
ACK 7c3289fda95aa79ca62258f14b7afb28548f5541 -- mostly adapted from revaultd, and tested with the following PRs rebased on this one.
Tree-SHA512: 95bd8ecfe70b1c7bacd17d10f009ec1bcc0211cb66b9545fa25c70b02a0f12d81e7747fc94c00de62f9aa7de17e7eb95183d8a2ffa659628f40313ef6bc43a1d
512b5b7d120e929b6e2f275d4427d8c5207d6b85 daemon: gate startup unit test to UNIX only (Antoine Poinsot)
ad3297755889a5eb14745e2908a8185eedef6b3e Don't compile daemon and cli binaries on Windows (Antoine Poinsot)
11cc4dc2e689981a308e99882eb7b9a4c66f2117 Cargo: pin rusqlite dependency for MSRV (Antoine Poinsot)
7340c13142b84e1709c765a6a88018ac7177d55a daemon: implement daemonize for UNIX platforms (Antoine Poinsot)
c095346e17bbbbbf8f6877119ef8a5e4ee33273c Introduce the Bitcoin network interface along with a bitcoind module (Antoine Poinsot)
8626e05a55f8e0141ce5ffd917f0f39497b34c63 ci: basic GA for unit tests on various platforms (Antoine Poinsot)
b0196ab5294def4afbe4b9f5d130785e189c392e daemon: introduce an SQLite database (Antoine Poinsot)
989a2cf8fde3178a41e600c684756c3270b240bd daemon: introduce the DaemonHandle, which for now only creates a datadir (Antoine Poinsot)
1b3519644802de3cfef1723f2f144dc08fe1f358 daemon: backbone and configuration parsing (Antoine Poinsot)
Pull request description:
This implements the configuration, database backend, bitcoind connection and initialization of the Minisafe daemon.
A lot of code was ported from revaultd and miradord, although the interface (for bitcoind and the database) changed and many things were re-written. This contains some basic unit tests for startup and database initialization. I intend to port the functional test framework from revaultd in a future PR.
ACKs for top commit:
darosior:
ACK 512b5b7d120e929b6e2f275d4427d8c5207d6b85 -- most of this code was reviewed and tested in `revaultd` and `miradord`. I also manually tested it.
Tree-SHA512: a4c1384798b976d25391513f6455f96b73ed3b07b668ff1cf1f3a77e6bce3b1e2f559df1128dbf47e30a77c4bf30d177176b6400a34e7237a5227053f34b8dd5