build(sidecar): strip iOS runner bundles and classes from the fat jar

This commit is contained in:
pj committed 2026-06-08 20:00:01 +05:30
1 parent 7c2f5e296c
commit 19e1c26f04
2 files changed
+7 -1

No files matched your search

+1 -1
View File
@@ -13,7 +13,7 @@ COMPANION_PREPARE := internal/driver/ioscompanion/companionassets/prepare.sh
RUNNER_EMBED := internal/driver/ioscompanion/runnerassets/assets/runner-1.0.0.tar.gz
RUNNER_PREPARE := companion/prepare.sh
RUNNER_SRC := $(shell find companion/Sources -type f -name '*.swift' 2>/dev/null) companion/project.yml
SIDECAR_SRC := $(shell find sidecar/src -type f \( -name '*.kt' -o -name '*.kts' \) 2>/dev/null) build.gradle.kts settings.gradle.kts
SIDECAR_SRC := $(shell find sidecar/src -type f \( -name '*.kt' -o -name '*.kts' \) 2>/dev/null) sidecar/build.gradle.kts build.gradle.kts settings.gradle.kts
SANDERLING_BIN := bin/sanderling
DOCS_SRC := $(shell find docs -type f -name '*.md' -not -path 'docs/_*')
+6
View File
@@ -98,6 +98,12 @@ application {
tasks.named<com.github.jengelman.gradle.plugins.shadow.tasks.ShadowJar>("shadowJar") {
archiveFileName.set("sidecar-all.jar")
exclude("META-INF/*.SF", "META-INF/*.DSA", "META-INF/*.RSA")
// The iOS driving modules arrive transitively through maestro-client but
// the sidecar only drives Android, so strip the iOS UITest runner bundles
// and iOS-only classes from the fat JAR. Compilation keeps the full
// classpath; only the packaged artifact drops these.
exclude("driver-iphoneos/**", "driver-iPhoneSimulator/**")
exclude("ios/**", "xcuitest/**", "hierarchy/**")
}
// JUnit 4 (vintage) for the gRPC GrpcCleanupRule + JUnit 5 (jupiter)