pub fn parse_tcp_socket(raw: &str) -> Result<SocketAddr, Box<dyn Error>>Examples found in repository?
examples/socket_runner.rs (line 44)
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 "args": request.args,
33 "kwargs": request.kwargs,
34 }),
35 )
36 });
37
38 let tcp_socket = std::env::var(ENV_RUNNER_TCP_SOCKET).map_err(|_| {
39 std::io::Error::new(
40 std::io::ErrorKind::InvalidInput,
41 "RRQ_RUNNER_TCP_SOCKET must be set",
42 )
43 })?;
44 let addr = parse_tcp_socket(&tcp_socket)?;
45 runtime.run_tcp_with(®istry, addr, &telemetry)
46}