pub fn parse_tcp_socket(raw: &str) -> Result<SocketAddr, Box<dyn Error>>Examples found in repository?
examples/socket_runner.rs (line 43)
11fn main() -> Result<(), Box<dyn std::error::Error>> {
12 let runtime = RunnerRuntime::new()?;
13
14 #[cfg(feature = "otel")]
15 {
16 let _guard = runtime.enter();
17 init_tracing("rrq-runner")?;
18 }
19
20 #[cfg(feature = "otel")]
21 let telemetry = OtelTelemetry;
22 #[cfg(not(feature = "otel"))]
23 let telemetry = NoopTelemetry;
24
25 let mut registry = Registry::new();
26 registry.register("echo", |request| async move {
27 ExecutionOutcome::success(
28 request.job_id.clone(),
29 request.request_id.clone(),
30 json!({
31 "job_id": request.job_id,
32 "params": request.params,
33 }),
34 )
35 });
36
37 let tcp_socket = std::env::var(ENV_RUNNER_TCP_SOCKET).map_err(|_| {
38 std::io::Error::new(
39 std::io::ErrorKind::InvalidInput,
40 "RRQ_RUNNER_TCP_SOCKET must be set",
41 )
42 })?;
43 let addr = parse_tcp_socket(&tcp_socket)?;
44 runtime.run_tcp_with(®istry, addr, &telemetry)
45}