Set the active gateway.
(name: &str)
| 584 | |
| 585 | /// Set the active gateway. |
| 586 | pub fn gateway_use(name: &str) -> Result<()> { |
| 587 | // Verify the gateway exists |
| 588 | get_gateway_metadata(name).ok_or_else(|| { |
| 589 | miette::miette!( |
| 590 | "No gateway metadata found for '{name}'.\n\ |
| 591 | Register it first with: openshell gateway add <endpoint> --name {name}\n\ |
| 592 | Or list available gateways: openshell gateway select" |
| 593 | ) |
| 594 | })?; |
| 595 | |
| 596 | save_active_gateway(name)?; |
| 597 | eprintln!("{} Active gateway set to '{name}'", "✓".green().bold()); |
| 598 | if let Some(warning) = gateway_env_override_warning(name) { |
| 599 | eprintln!("{} {warning}", "⚠".yellow().bold()); |
| 600 | } |
| 601 | Ok(()) |
| 602 | } |
| 603 | |
| 604 | fn gateway_env_override_warning(selected_name: &str) -> Option<String> { |
| 605 | let env_name = std::env::var("OPENSHELL_GATEWAY").ok()?; |
no test coverage detected