From f1fba36a28b8faf25a2cc9331de0af08e2152fbc Mon Sep 17 00:00:00 2001 From: PJ Date: Thu, 23 Apr 2026 15:53:54 +0700 Subject: [PATCH] feat(sidecar): wire env map in DriverService + IosDriverBackend in Main --- .../kotlin/dev/sanderling/sidecar/DriverService.kt | 2 +- .../src/main/kotlin/dev/sanderling/sidecar/Main.kt | 11 +++++++---- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/sidecar/src/main/kotlin/dev/sanderling/sidecar/DriverService.kt b/sidecar/src/main/kotlin/dev/sanderling/sidecar/DriverService.kt index 8a2f19b..0f3c945 100644 --- a/sidecar/src/main/kotlin/dev/sanderling/sidecar/DriverService.kt +++ b/sidecar/src/main/kotlin/dev/sanderling/sidecar/DriverService.kt @@ -30,7 +30,7 @@ class DriverService( override fun launch(request: LaunchRequest, responseObserver: StreamObserver) { runRpc(responseObserver) { - backend.launch(request.bundleId, request.clearState) + backend.launch(request.bundleId, request.clearState, request.envMap) launchedBundleId.set(request.bundleId) Empty.getDefaultInstance() } diff --git a/sidecar/src/main/kotlin/dev/sanderling/sidecar/Main.kt b/sidecar/src/main/kotlin/dev/sanderling/sidecar/Main.kt index 929ac6d..4aeed6c 100644 --- a/sidecar/src/main/kotlin/dev/sanderling/sidecar/Main.kt +++ b/sidecar/src/main/kotlin/dev/sanderling/sidecar/Main.kt @@ -44,11 +44,14 @@ fun main(arguments: Array) { val serial = arguments.indexOf("--serial").let { index -> if (index >= 0 && index + 1 < arguments.size) arguments[index + 1] else null } + val udid = arguments.indexOf("--udid").let { index -> + if (index >= 0 && index + 1 < arguments.size) arguments[index + 1] else null + } - val backend: DriverBackend = if (platform == "android") { - MaestroDriverBackend(serial) - } else { - StubDriverBackend(platform) + val backend: DriverBackend = when (platform) { + "android" -> MaestroDriverBackend(serial) + "ios" -> IosDriverBackend(udid ?: error("--udid required for ios platform")) + else -> StubDriverBackend(platform) } val service = DriverService(platform = platform, backend = backend) val server = SidecarServer(port, service)