(
gsettings: &GlobalSettings,
opts: WorkerAddressOpts,
)
| 316 | } |
| 317 | |
| 318 | async fn command_worker_address( |
| 319 | gsettings: &GlobalSettings, |
| 320 | opts: WorkerAddressOpts, |
| 321 | ) -> anyhow::Result<()> { |
| 322 | use hyperqueue::common::arraydef::IntArray; |
| 323 | use hyperqueue::transfer::messages::IdSelector; |
| 324 | |
| 325 | let mut session = get_client_session(gsettings.server_directory()).await?; |
| 326 | let selector = IdSelector::Specific(IntArray::from_id(opts.worker_id.as_num())); |
| 327 | let response = get_worker_info(&mut session, selector, false).await?; |
| 328 | |
| 329 | match response.into_iter().next() { |
| 330 | Some((_, Some(info))) => println!("{}", info.configuration.hostname), |
| 331 | Some((id, None)) => anyhow::bail!("Worker {} not found", id), |
| 332 | None => anyhow::bail!("Worker {} not found", opts.worker_id), |
| 333 | } |
| 334 | |
| 335 | Ok(()) |
| 336 | } |
| 337 | |
| 338 | #[cfg(feature = "dashboard")] |
| 339 | /// Starts the hq dashboard |
no test coverage detected