diff --git a/devimint/src/bin/faucet.rs b/devimint/src/bin/faucet.rs index 3ab0c655ae6..c1752e91f55 100644 --- a/devimint/src/bin/faucet.rs +++ b/devimint/src/bin/faucet.rs @@ -103,7 +103,7 @@ fn get_invite_code(invite_code: Option) -> anyhow::Result { match invite_code { Some(s) => Ok(s), None => { - let data_dir = std::env::var("FM_DATA_DIR")?; + let data_dir = std::env::var("FM_CLIENT_DIR")?; Ok(std::fs::read_to_string( PathBuf::from(data_dir).join("invite-code"), )?) diff --git a/devimint/src/federation.rs b/devimint/src/federation.rs index e3a645247fd..e563b902858 100644 --- a/devimint/src/federation.rs +++ b/devimint/src/federation.rs @@ -51,7 +51,7 @@ impl Client { /// TODO: Get rid of built-in client, make it a normal `Client` and let them /// fork each other as they please. async fn new_forked(name: &str) -> Result { - let workdir: PathBuf = env::var("FM_DATA_DIR")?.parse()?; + let workdir: PathBuf = env::var("FM_CLIENT_DIR")?.parse()?; let client_dir = workdir.join("clients").join(name); std::fs::create_dir_all(&client_dir)?; @@ -107,7 +107,7 @@ impl Federation { run_dkg(admin_clients, params).await?; let out_dir = &vars[&0].FM_DATA_DIR; - let cfg_dir = &process_mgr.globals.FM_DATA_DIR; + let cfg_dir = &process_mgr.globals.FM_CLIENT_DIR; let out_dir = utf8(out_dir); let cfg_dir = utf8(cfg_dir); // move configs to config directory @@ -132,7 +132,7 @@ impl Federation { } pub fn invite_code(&self) -> Result { - let workdir: PathBuf = env::var("FM_DATA_DIR")?.parse()?; + let workdir: PathBuf = env::var("FM_CLIENT_DIR")?.parse()?; let invite_code = fs::read_to_string(workdir.join("invite-code"))?; Ok(invite_code) } @@ -162,7 +162,7 @@ impl Federation { } pub async fn cmd(&self) -> Command { - let cfg_dir = env::var("FM_DATA_DIR").unwrap(); + let cfg_dir = env::var("FM_CLIENT_DIR").unwrap(); cmd!("fedimint-cli", "--data-dir={cfg_dir}") } diff --git a/devimint/src/main.rs b/devimint/src/main.rs index 3076bd6351e..a0793238bf5 100644 --- a/devimint/src/main.rs +++ b/devimint/src/main.rs @@ -215,8 +215,8 @@ async fn cli_tests(dev_fed: DevFed) -> Result<()> { fed, "dev", "config-decrypt", - "--in-file={data_dir}/server-0/private.encrypt", - "--out-file={data_dir}/server-0/config-plaintext.json" + "--in-file={data_dir}/fedimintd-0/private.encrypt", + "--out-file={data_dir}/fedimintd-0/config-plaintext.json" ) .env("FM_PASSWORD", "pass") .run() @@ -226,8 +226,8 @@ async fn cli_tests(dev_fed: DevFed) -> Result<()> { fed, "dev", "config-encrypt", - "--in-file={data_dir}/server-0/config-plaintext.json", - "--out-file={data_dir}/server-0/config-2" + "--in-file={data_dir}/fedimintd-0/config-plaintext.json", + "--out-file={data_dir}/fedimintd-0/config-2" ) .env("FM_PASSWORD", "pass-foo") .run() @@ -237,17 +237,17 @@ async fn cli_tests(dev_fed: DevFed) -> Result<()> { fed, "dev", "config-decrypt", - "--in-file={data_dir}/server-0/config-2", - "--out-file={data_dir}/server-0/config-plaintext-2.json" + "--in-file={data_dir}/fedimintd-0/config-2", + "--out-file={data_dir}/fedimintd-0/config-plaintext-2.json" ) .env("FM_PASSWORD", "pass-foo") .run() .await?; let plaintext_one = - fs::read_to_string(format!("{data_dir}/server-0/config-plaintext.json")).await?; + fs::read_to_string(format!("{data_dir}/fedimintd-0/config-plaintext.json")).await?; let plaintext_two = - fs::read_to_string(format!("{data_dir}/server-0/config-plaintext-2.json")).await?; + fs::read_to_string(format!("{data_dir}/fedimintd-0/config-plaintext-2.json")).await?; anyhow::ensure!( plaintext_one == plaintext_two, "config-decrypt/encrypt failed" @@ -1409,10 +1409,10 @@ pub async fn recoverytool_test(dev_fed: DevFed) -> Result<()> { "recoverytool", "--readonly", "--cfg", - "{data_dir}/server-0", + "{data_dir}/fedimintd-0", "utxos", "--db", - "{data_dir}/server-0/database" + "{data_dir}/fedimintd-0/database" ) .env("FM_PASSWORD", "pass") .out_json() @@ -1469,10 +1469,10 @@ pub async fn recoverytool_test(dev_fed: DevFed) -> Result<()> { "recoverytool", "--readonly", "--cfg", - "{data_dir}/server-0", + "{data_dir}/fedimintd-0", "epochs", "--db", - "{data_dir}/server-0/database" + "{data_dir}/fedimintd-0/database" ) .env("FM_PASSWORD", "pass") .out_json() @@ -1615,7 +1615,7 @@ async fn run_ui(process_mgr: &ProcessManager) -> Result<(Vec, Externa FM_DATA_DIR: process_mgr .globals .FM_DATA_DIR - .join(format!("server-{peer}")), + .join(format!("fedimintd-{peer}")), FM_BIND_METRICS_API: format!("127.0.0.1:{metrics_port}"), }; let fm = Fedimintd::new(process_mgr, bitcoind.clone(), peer, &vars).await?; diff --git a/devimint/src/vars.rs b/devimint/src/vars.rs index a7ea64fe61f..6d3d7687df8 100644 --- a/devimint/src/vars.rs +++ b/devimint/src/vars.rs @@ -113,7 +113,8 @@ declare_vars! { FM_CLN_DIR: PathBuf = mkdir(FM_TEST_DIR.join("cln")).await?; FM_LND_DIR: PathBuf = mkdir(FM_TEST_DIR.join("lnd")).await?; FM_BTC_DIR: PathBuf = mkdir(FM_TEST_DIR.join("bitcoin")).await?; - FM_DATA_DIR: PathBuf = mkdir(FM_TEST_DIR.join("cfg")).await?; + FM_DATA_DIR: PathBuf = FM_TEST_DIR.clone(); + FM_CLIENT_DIR: PathBuf = mkdir(FM_TEST_DIR.join("client")).await?; FM_ELECTRS_DIR: PathBuf = mkdir(FM_TEST_DIR.join("electrs")).await?; FM_ESPLORA_DIR: PathBuf = mkdir(FM_TEST_DIR.join("esplora")).await?; FM_READY_FILE: PathBuf = FM_TEST_DIR.join("ready"); @@ -135,7 +136,7 @@ declare_vars! { FM_LIGHTNING_CLI: String = f!("lightning-cli --network regtest --lightning-dir={}", utf8(&FM_CLN_DIR)); FM_LNCLI: String = f!("lncli -n regtest --lnddir={} --rpcserver=localhost:{FM_PORT_LND_RPC}", utf8(&FM_LND_DIR)); FM_BTC_CLIENT: String = f!("bitcoin-cli -regtest -rpcuser=bitcoin -rpcpassword=bitcoin -datadir={}", utf8(&FM_BTC_DIR)); - FM_MINT_CLIENT: String = f!("fedimint-cli --data-dir {}", utf8(&FM_DATA_DIR)); + FM_MINT_CLIENT: String = f!("fedimint-cli --data-dir {}", utf8(&FM_CLIENT_DIR)); FM_MINT_RPC_CLIENT: String = f!("mint-rpc-client"); FM_GWCLI_CLN: String = f!("gateway-cli --rpcpassword=theresnosecondbest -a http://127.0.0.1:{FM_PORT_GW_CLN}/"); FM_GWCLI_LND: String = f!("gateway-cli --rpcpassword=theresnosecondbest -a http://127.0.0.1:{FM_PORT_GW_LND}/"); @@ -162,6 +163,6 @@ declare_vars! { FM_P2P_URL: String = params.consensus.peers[¶ms.local.our_id].p2p_url.to_string(); FM_API_URL: String = params.consensus.peers[¶ms.local.our_id].api_url.to_string(); FM_BIND_METRICS_API: String = format!("127.0.0.1:{}", globals.FM_PORT_FEDIMINTD_BASE as usize + 2 * globals.FM_FED_SIZE + params.local.our_id.to_usize()); - FM_DATA_DIR: PathBuf = mkdir(globals.FM_DATA_DIR.join(format!("server-{}", params.local.our_id.to_usize()))).await?; + FM_DATA_DIR: PathBuf = mkdir(globals.FM_DATA_DIR.join(format!("fedimintd-{}", params.local.our_id.to_usize()))).await?; } } diff --git a/fedimint-cli/src/lib.rs b/fedimint-cli/src/lib.rs index f7a48f9e6aa..f7e1fc5c614 100644 --- a/fedimint-cli/src/lib.rs +++ b/fedimint-cli/src/lib.rs @@ -231,7 +231,7 @@ impl fmt::Display for CliError { #[command(version)] struct Opts { /// The working directory of the client containing the config and db - #[arg(long = "data-dir", alias = "workdir", env = "FM_DATA_DIR")] + #[arg(long = "data-dir", alias = "workdir", env = "FM_CLIENT_DIR")] workdir: Option, /// Peer id of the guardian diff --git a/fedimint-dbtool/README.md b/fedimint-dbtool/README.md index aa20b66b818..8ced930fd71 100644 --- a/fedimint-dbtool/README.md +++ b/fedimint-dbtool/README.md @@ -69,27 +69,27 @@ First, run a local federation in mprocs: just mprocs ``` -Dump the entire database of server-0 +Dump the entire database of fedimintd-0 ```shell -fedimint-dbtool $FM_DATA_DIR/server-0/database dump -- $FM_DATA_DIR/server-0 pass +fedimint-dbtool $FM_DATA_DIR/fedimintd-0/database dump -- $FM_DATA_DIR/fedimintd-0 pass ``` -Dump the consensus db entries of server-0 +Dump the consensus db entries of fedimintd-0 ```shell -fedimint-dbtool $FM_DATA_DIR/server-0/database dump -- $FM_DATA_DIR/server-0 pass consensus +fedimint-dbtool $FM_DATA_DIR/fedimintd-0/database dump -- $FM_DATA_DIR/fedimintd-0 pass consensus ``` -Dump the blocks from the wallet module of server-1 +Dump the blocks from the wallet module of fedimintd-1 ```shell -fedimint-dbtool $FM_DATA_DIR/server-1/database dump -- $FM_DATA_DIR/server-1 pass consensus blockhash +fedimint-dbtool $FM_DATA_DIR/fedimintd-1/database dump -- $FM_DATA_DIR/fedimintd-1 pass consensus blockhash ``` Dump the used notes from the mint module and the accepted transactions from consensus ```shell -fedimint-dbtool $FM_DATA_DIR/server-1/database dump -- $FM_DATA_DIR/server-1 pass consensus,mint notenonce,acceptedtransaction +fedimint-dbtool $FM_DATA_DIR/fedimintd-1/database dump -- $FM_DATA_DIR/fedimintd-1 pass consensus,mint notenonce,acceptedtransaction ``` Dump the entire client database (client password can be anything since it doesn't require decryption) ```shell -fedimint-dbtool $FM_DATA_DIR/client.db dump $FM_DATA_DIR clientpass client +fedimint-dbtool $FM_CLIENT_DIR/client.db dump $FM_CLIENT_DIR clientpass client ``` diff --git a/recoverytool/README.md b/recoverytool/README.md index a94eb3c3879..0c57e912a5f 100644 --- a/recoverytool/README.md +++ b/recoverytool/README.md @@ -61,7 +61,7 @@ The output of `recoverytool` consists of an array of wallet descriptors with opt include n-1 public keys and 1 private key (belonging to the guardian running the script): ``` -$ recoverytool --cfg server-1 --password pass1 utxos --db server-1/database/ | jq +$ recoverytool --cfg fedimintd-1 --password pass1 utxos --db fedimintd-1/database/ | jq [ { "outpoint": "c76d51c9c6dc6b8e462c37b3fa376e7c2055f04f16a8fffc2ab66c5bf0deff55:1", @@ -80,7 +80,7 @@ To import it into bitcoin core use the following `jq` command to transform the t for [`bitcoin-cli importdescriptors`](https://bitcoincore.org/en/doc/24.0.0/rpc/wallet/importdescriptors/): ```bash -$ WALLETS="$(recoverytool --cfg server-1 --password pass1 utxos --db server-1/database/ | jq '. | map({"desc": .descriptor, "timestamp":0})')" +$ WALLETS="$(recoverytool --cfg fedimintd-1 --password pass1 utxos --db fedimintd-1/database/ | jq '. | map({"desc": .descriptor, "timestamp":0})')" [ { "desc": "wsh(sortedmulti(3,0280bf3115766b7e1cb23f2f57caf4de5a9171d3985934f2895cc568b384b52319,cSRM825vXJwf8iXcngedon8nQsPC9VMB18wSiG1Fgw6Y1Kzi16ta,021123625d9b21822e1178fc0d2b3f737d0397584cfac821df3250e49c3127cab5,03865705be62a71a3776cca1169908099ad6d138a0c0ed4aeeaf2c8e64616f4085))#h2zg3uhw", diff --git a/scripts/dev/aliases.sh b/scripts/dev/aliases.sh index 1c31985ca2c..8f1376f3fda 100644 --- a/scripts/dev/aliases.sh +++ b/scripts/dev/aliases.sh @@ -6,10 +6,10 @@ alias bitcoin-cli="\$FM_BTC_CLIENT" alias fedimint-cli="\$FM_MINT_CLIENT" alias gateway-cln="\$FM_GWCLI_CLN" alias gateway-lnd="\$FM_GWCLI_LND" -alias fedimint-dbtool-server-0="env FM_DBTOOL_CONFIG_DIR=\$FM_DATA_DIR/server-0 FM_PASSWORD=pass \$FM_DB_TOOL --database \$FM_DATA_DIR/server-0/database" -alias fedimint-dbtool-server-1="env FM_DBTOOL_CONFIG_DIR=\$FM_DATA_DIR/server-1 FM_PASSWORD=pass \$FM_DB_TOOL --database \$FM_DATA_DIR/server-1/database" -alias fedimint-dbtool-server-2="env FM_DBTOOL_CONFIG_DIR=\$FM_DATA_DIR/server-2 FM_PASSWORD=pass \$FM_DB_TOOL --database \$FM_DATA_DIR/server-2/database" -alias fedimint-dbtool-server-3="env FM_DBTOOL_CONFIG_DIR=\$FM_DATA_DIR/server-3 FM_PASSWORD=pass \$FM_DB_TOOL --database \$FM_DATA_DIR/server-3/database" -alias fedimint-dbtool-client="env FM_DBTOOL_CONFIG_DIR=\$FM_DATA_DIR FM_PASSWORD=clientpass \$FM_DB_TOOL --database \$FM_DATA_DIR/client.db" -alias fedimint-dbtool-gw-cln="env FM_DBTOOL_CONFIG_DIR=\$FM_DATA_DIR FM_PASSWORD=clientpass \$FM_DB_TOOL --database \$FM_DATA_DIR/../gw-cln/gatewayd.db" -alias fedimint-dbtool-gw-lnd="env FM_DBTOOL_CONFIG_DIR=\$FM_DATA_DIR FM_PASSWORD=clientpass \$FM_DB_TOOL --database \$FM_DATA_DIR/../gw-lnd/gatewayd.db" +alias fedimint-dbtool-fedimintd-0="env FM_DBTOOL_CONFIG_DIR=\$FM_DATA_DIR/fedimintd-0 FM_PASSWORD=pass \$FM_DB_TOOL --database \$FM_DATA_DIR/fedimintd-0/database" +alias fedimint-dbtool-fedimintd-1="env FM_DBTOOL_CONFIG_DIR=\$FM_DATA_DIR/fedimintd-1 FM_PASSWORD=pass \$FM_DB_TOOL --database \$FM_DATA_DIR/fedimintd-1/database" +alias fedimint-dbtool-fedimintd-2="env FM_DBTOOL_CONFIG_DIR=\$FM_DATA_DIR/fedimintd-2 FM_PASSWORD=pass \$FM_DB_TOOL --database \$FM_DATA_DIR/fedimintd-2/database" +alias fedimint-dbtool-fedimintd-3="env FM_DBTOOL_CONFIG_DIR=\$FM_DATA_DIR/fedimintd-3 FM_PASSWORD=pass \$FM_DB_TOOL --database \$FM_DATA_DIR/fedimintd-3/database" +alias fedimint-dbtool-client="env FM_DBTOOL_CONFIG_DIR=\$FM_DATA_DIR FM_PASSWORD=clientpass \$FM_DB_TOOL --database \$FM_CLIENT_DIR/client.db" +alias fedimint-dbtool-gw-cln="env FM_DBTOOL_CONFIG_DIR=\$FM_DATA_DIR FM_PASSWORD=clientpass \$FM_DB_TOOL --database \$FM_DATA_DIR/gw-cln/gatewayd.db" +alias fedimint-dbtool-gw-lnd="env FM_DBTOOL_CONFIG_DIR=\$FM_DATA_DIR FM_PASSWORD=clientpass \$FM_DB_TOOL --database \$FM_DATA_DIR/gw-lnd/gatewayd.db"