Skip to content

Commit c00c116

Browse files
Fix CI Android SDK setup for functional tests
1 parent 3364280 commit c00c116

2 files changed

Lines changed: 22 additions & 2 deletions

File tree

.github/workflows/ci.yml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,12 @@ jobs:
2222
distribution: 'temurin'
2323
java-version: '17'
2424

25+
- name: Set up Android SDK
26+
uses: android-actions/setup-android@v3
27+
28+
- name: Install Android SDK packages
29+
run: sdkmanager "platforms;android-34" "build-tools;34.0.0" "platform-tools"
30+
2531
- name: Setup Gradle
2632
uses: gradle/gradle-build-action@v2
2733

src/test/kotlin/io/github/davideagostini/analyzer/PluginFunctionalTest.kt

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -161,9 +161,23 @@ class PluginFunctionalTest {
161161
}
162162

163163
private fun loadSdkDir(): String {
164+
val envSdkDir = System.getenv("ANDROID_SDK_ROOT")
165+
?: System.getenv("ANDROID_HOME")
166+
if (!envSdkDir.isNullOrBlank()) {
167+
return envSdkDir
168+
}
169+
164170
val props = Properties()
165-
File("local.properties").inputStream().use { props.load(it) }
166-
return props.getProperty("sdk.dir")
171+
val localProperties = File("local.properties")
172+
if (localProperties.exists()) {
173+
localProperties.inputStream().use { props.load(it) }
174+
val sdkDir = props.getProperty("sdk.dir")
175+
if (!sdkDir.isNullOrBlank()) {
176+
return sdkDir
177+
}
178+
}
179+
180+
error("Android SDK not found. Set ANDROID_SDK_ROOT or ANDROID_HOME, or provide sdk.dir in local.properties.")
167181
}
168182

169183
private fun writeFile(relativePath: String, content: String) {

0 commit comments

Comments
 (0)