diff options
author | Quentin Dufour <quentin@deuxfleurs.fr> | 2023-03-13 10:48:47 +0100 |
---|---|---|
committer | Quentin Dufour <quentin@deuxfleurs.fr> | 2023-03-13 15:06:05 +0100 |
commit | 2687fb7fa80f645a2e29822d60e8970433788889 (patch) | |
tree | 5ca69de2ca6a5ecf8a9840771baef62b3e7ac592 | |
parent | 24e43f1aa0553686f9dace5d839b717cf634bf6c (diff) | |
download | garage-2687fb7fa80f645a2e29822d60e8970433788889.tar.gz garage-2687fb7fa80f645a2e29822d60e8970433788889.zip |
do not assume Garage boots in 2sec during tests
-rw-r--r-- | src/garage/tests/common/garage.rs | 25 |
1 files changed, 19 insertions, 6 deletions
diff --git a/src/garage/tests/common/garage.rs b/src/garage/tests/common/garage.rs index 8f994f49..d64a8310 100644 --- a/src/garage/tests/common/garage.rs +++ b/src/garage/tests/common/garage.rs @@ -111,16 +111,29 @@ api_bind_addr = "127.0.0.1:{admin_port}" } fn setup(&mut self) { - use std::{thread, time::Duration}; - - // Wait for node to be ready - thread::sleep(Duration::from_secs(2)); - + self.wait_for_boot(); self.setup_layout(); - self.key = self.new_key("garage_test"); } + fn wait_for_boot(&mut self) { + use std::{thread, time::Duration}; + + // 60 * 2 seconds = 120 seconds = 2min + for _ in 0..60 { + let termination = self + .command() + .args(["status"]) + .quiet() + .status() + .expect("Unable to run command"); + if termination.success() { + break; + } + thread::sleep(Duration::from_secs(2)); + } + } + fn setup_layout(&self) { let node_id = self.node_id(); let node_short_id = &node_id[..64]; |