Skip to content

Commit

Permalink
Merge pull request #1542 from hirosystems/feat/log-devnet-no-dashboard
Browse files Browse the repository at this point in the history
feat: log events in terminal if --no-dashboard
  • Loading branch information
tippenein authored Aug 12, 2024
2 parents 5ecaee9 + 56fb603 commit b84e0d0
Show file tree
Hide file tree
Showing 6 changed files with 77 additions and 17 deletions.
2 changes: 1 addition & 1 deletion components/clarinet-cli/src/frontend/cli.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1860,7 +1860,7 @@ fn devnet_start(cmd: DevnetStart, global_settings: GlobalSettings) {
}
};

let orchestrator = match DevnetOrchestrator::new(manifest, None, None, true) {
let orchestrator = match DevnetOrchestrator::new(manifest, None, None, true, cmd.no_dashboard) {
Ok(orchestrator) => orchestrator,
Err(e) => {
eprintln!("{}", format_err!(e));
Expand Down
17 changes: 9 additions & 8 deletions components/stacks-devnet-js/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -115,15 +115,16 @@ impl StacksDevnet {
read_deployment_or_generate_default(&manifest, &StacksNetwork::Devnet)
.expect("Unable to generate deployment");
let working_dir = devnet_overrides.working_dir.clone();
let devnet = match DevnetOrchestrator::new(manifest, None, Some(devnet_overrides), true) {
Ok(devnet) => devnet,
Err(message) => {
if logs_enabled {
println!("Fatal error: {}", message);
let devnet =
match DevnetOrchestrator::new(manifest, None, Some(devnet_overrides), true, false) {
Ok(devnet) => devnet,
Err(message) => {
if logs_enabled {
println!("Fatal error: {}", message);
}
std::process::exit(1);
}
std::process::exit(1);
}
};
};
let ctx: Option<Context> = match working_dir {
Some(working_dir) => match PathBuf::from_str(&working_dir) {
Ok(mut log_path) => {
Expand Down
3 changes: 3 additions & 0 deletions components/stacks-network/src/chains_coordinator.rs
Original file line number Diff line number Diff line change
Expand Up @@ -353,6 +353,7 @@ pub async fn start_chains_coordinator(
send_status_update(
&devnet_event_tx,
enable_subnet_node,
&None,
"bitcoin-node",
Status::Green,
&comment,
Expand Down Expand Up @@ -401,6 +402,7 @@ pub async fn start_chains_coordinator(
send_status_update(
&devnet_event_tx,
enable_subnet_node,
&None,
"stacks-node",
Status::Green,
&format!(
Expand Down Expand Up @@ -473,6 +475,7 @@ pub async fn start_chains_coordinator(
send_status_update(
&devnet_event_tx,
enable_subnet_node,
&None,
"subnet-node",
Status::Green,
"⚡️",
Expand Down
26 changes: 20 additions & 6 deletions components/stacks-network/src/event.rs
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ use chainhook_sdk::{
observer::MempoolAdmissionData,
types::{BitcoinChainEvent, StacksChainEvent},
};
use hiro_system_kit::slog;

use crate::{
chains_coordinator::BitcoinMiningCommand,
Expand Down Expand Up @@ -73,6 +74,7 @@ impl DevnetEvent {
pub fn send_status_update(
event_tx: &Sender<DevnetEvent>,
with_subnets: bool,
logger: &Option<slog::Logger>,
name: &str,
status: Status,
comment: &str,
Expand All @@ -94,12 +96,24 @@ pub fn send_status_update(
_ => return,
};

let _ = event_tx.send(DevnetEvent::ServiceStatus(ServiceStatusData {
order,
status,
name: name.into(),
comment: comment.into(),
}));
match logger {
None => {
let _ = event_tx.send(DevnetEvent::ServiceStatus(ServiceStatusData {
order,
status,
name: name.into(),
comment: comment.into(),
}));
}
Some(logger) => {
let msg = format!("{} - {}", name, comment);
match status {
Status::Green => slog::info!(logger, "{}", &msg),
Status::Yellow => slog::warn!(logger, "{}", &msg),
Status::Red => slog::error!(logger, "{}", &msg),
}
}
}
}

#[derive(Clone, Debug)]
Expand Down
3 changes: 2 additions & 1 deletion components/stacks-network/src/main.rs
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,8 @@ fn main() {
.unwrap_or_else(|e| panic!("Devnet.toml file malformatted {:?}", e));

let orchestrator =
DevnetOrchestrator::new(manifest, Some(network_manifest.clone()), None, false).unwrap();
DevnetOrchestrator::new(manifest, Some(network_manifest.clone()), None, false, false)
.unwrap();

let deployment_specification_file_content = deployment_location
.read_content()
Expand Down
Loading

0 comments on commit b84e0d0

Please sign in to comment.