Skip to content

Commit 9a0e549

Browse files
authored
Merge pull request #5354 from JetBrains/playground/compose-110
chore: api compose 1.10
2 parents 4cc61a9 + e0169c2 commit 9a0e549

File tree

2 files changed

+57
-5
lines changed

2 files changed

+57
-5
lines changed

.teamcity/BuildParams.kt

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
import references.builds.compose.ComposeMultiplatformCore
22
import references.builds.kgp.KotlinGradleAPI
33
import common.extensions.VCS
4+
import references.builds.compose.AndroidSdk
45

56
object BuildParams {
67
const val KLANG_NODE_CONTAINER = "node:22-alpine"
@@ -44,7 +45,11 @@ object BuildParams {
4445
}
4546

4647
val API_COMPOSE = ComposeMultiplatformCore {
47-
addVersion("1.8.0", "api-reference/1.8")
48+
addVersion("1.10", "api-reference/1.10", AndroidSdk(
49+
compileSdk = "35",
50+
buildTools = "35.0.0",
51+
cmdToolsVersion = "13114758"
52+
))
4853
}
4954

5055
const val SEARCH_APP_ID = "7961PKYRXV"

.teamcity/references/builds/compose/ComposeMultiplatformCore.kt

Lines changed: 51 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -23,13 +23,60 @@ private fun BuildType.additionalParams(): BuildType = apply {
2323
}
2424
}
2525

26-
private fun BuildSteps.downloadAndroidSdk() = script {
26+
data class AndroidSdk(
27+
val compileSdk: String,
28+
val buildTools: String,
29+
val cmdToolsVersion: String,
30+
)
31+
32+
// Download Android SDK
33+
// https://code.jetbrains.team/p/ui/repositories/compose-teamcity-config/files/main/.teamcity/compose/scripts/downloadAndroidSdk.sh
34+
private fun BuildSteps.downloadAndroidSdk(androidSdk: AndroidSdk) = script {
2735
name = "Download Android SDK"
2836
// language=bash
2937
scriptContent = """
3038
#!/bin/bash
3139
set -euo pipefail
32-
./jbdeps/android-sdk/downloadAndroidSdk
40+
41+
ANDROID_COMPILE_SDK=${androidSdk.compileSdk}
42+
ANDROID_BUILD_TOOLS=${androidSdk.buildTools}
43+
ANDROID_CMD_TOOLS_VERSION=${androidSdk.cmdToolsVersion}
44+
45+
downloadLinuxSDK() {
46+
curl --silent --show-error -o commandlinetools-linux.zip https://dl.google.com/android/repository/commandlinetools-linux-${'$'}{ANDROID_CMD_TOOLS_VERSION}_latest.zip
47+
unzip -o -d android-sdk-linux commandlinetools-linux.zip
48+
rm commandlinetools-linux.zip
49+
echo y | "android-sdk-linux/cmdline-tools/bin/sdkmanager" --sdk_root=android-sdk-linux "platform-tools" "platforms;android-${'$'}ANDROID_COMPILE_SDK" "build-tools;${'$'}ANDROID_BUILD_TOOLS"
50+
echo y | "android-sdk-linux/cmdline-tools/bin/sdkmanager" --sdk_root=android-sdk-linux --licenses > /dev/null
51+
export ANDROID_HOME=${'$'}PWD/android-sdk-linux
52+
}
53+
54+
downloadMacOsSDK() {
55+
curl --silent --show-error -o commandlinetools-mac.zip https://dl.google.com/android/repository/commandlinetools-mac-${'$'}{ANDROID_CMD_TOOLS_VERSION}_latest.zip
56+
unzip -o -d android-sdk-darwin commandlinetools-mac.zip
57+
rm commandlinetools-mac.zip
58+
echo y | "android-sdk-darwin/cmdline-tools/bin/sdkmanager" --sdk_root=android-sdk-darwin "platform-tools" "platforms;android-${'$'}ANDROID_COMPILE_SDK" "build-tools;${'$'}ANDROID_BUILD_TOOLS"
59+
echo y | "android-sdk-darwin/cmdline-tools/bin/sdkmanager" --sdk_root=android-sdk-darwin --licenses > /dev/null
60+
export ANDROID_HOME=${'$'}PWD/android-sdk-darwin
61+
}
62+
63+
if [[ "${'$'}OSTYPE" == "linux-gnu"* ]]; then
64+
downloadLinuxSDK
65+
elif [[ "${'$'}OSTYPE" == "darwin"* ]]; then
66+
downloadMacOsSDK
67+
elif [[ "${'$'}OSTYPE" == "cygwin" ]]; then
68+
echo "Please download Android SDK manually (https://developer.android.com/studio)"
69+
elif [[ "${'$'}OSTYPE" == "msys" ]]; then
70+
echo "Please download Android SDK manually (https://developer.android.com/studio)"
71+
elif [[ "${'$'}OSTYPE" == "win32" ]]; then
72+
echo "Please download Android SDK manually (https://developer.android.com/studio)"
73+
else
74+
echo "Unknown OS"
75+
fi
76+
77+
# Export ANDROID_HOME as for other build steps
78+
echo "ANDROID_HOME=${'$'}ANDROID_HOME"
79+
echo "##teamcity[setParameter name='env.ANDROID_HOME' value='${'$'}ANDROID_HOME']"
3380
""".trimIndent()
3481
formatStderrAsError = true
3582
}
@@ -51,15 +98,15 @@ class ComposeMultiplatformCore(init: ComposeMultiplatformCore.() -> Unit) : Refe
5198
}
5299
}
53100

54-
fun addVersion(version: String, tagOrBranch: String) = addReference(version) {
101+
fun addVersion(version: String, tagOrBranch: String, androidSdk: AndroidSdk) = addReference(version) {
55102
apiReference(
56103
version,
57104
gitUrl = "git@github.com:JetBrains/compose-multiplatform-core.git",
58105
gitBranch = tagOrBranch,
59106
templateDir = "mpp/apiReferences/dokka-templates",
60107
pagesDir = "out/androidx/mpp/apiReferences/build/dokka/html",
61108
steps = {
62-
downloadAndroidSdk()
109+
downloadAndroidSdk(androidSdk)
63110
dokkaBuildHtml(version) {
64111
tasks = ":mpp:apiReferences:buildApiReferencesWithStories"
65112
gradleParams += " -PapiReferences.storiesRootPath=/api/${urlPart}/stories"

0 commit comments

Comments
 (0)