()
| 2313 | } |
| 2314 | |
| 2315 | fn read_service_metadata() -> anyhow::Result<Option<ServiceMetadata>> { |
| 2316 | let path = service_metadata_path()?; |
| 2317 | if !path.exists() { |
| 2318 | return Ok(None); |
| 2319 | } |
| 2320 | let data = fs::read_to_string(&path).with_context(|| format!("read {}", path.display()))?; |
| 2321 | Ok(Some(serde_json::from_str(&data).with_context(|| { |
| 2322 | format!("parse service metadata {}", path.display()) |
| 2323 | })?)) |
| 2324 | } |
| 2325 | |
| 2326 | fn write_service_metadata(metadata: &ServiceMetadata) -> anyhow::Result<()> { |
| 2327 | let path = service_metadata_path()?; |
no test coverage detected