From 3ad7cce595d36cefdd64176be72a99ee182aa6ac Mon Sep 17 00:00:00 2001 From: Helin Shiah Date: Mon, 8 Dec 2025 10:55:29 -0800 Subject: [PATCH 1/6] Check memory of verify bot --- tool/github.sh | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/tool/github.sh b/tool/github.sh index 44137abb0..d914296b8 100755 --- a/tool/github.sh +++ b/tool/github.sh @@ -73,9 +73,17 @@ elif [ "UNIT_TEST_BOT" = "$BOT" ] ; then elif [ "VERIFY_BOT" = "$BOT" ] ; then # Run the verifier + echo "Check on space before verifyPluginProjectConfiguration\n" + df -h ./gradlew verifyPluginProjectConfiguration + echo "Check on space before verifyPluginStructure\n" + df -h ./gradlew verifyPluginStructure + echo "Check on space before verifyPluginSignature\n" + df -h ./gradlew verifyPluginSignature + echo "Check on space before verifyPlugin\n" + df -h ./gradlew verifyPlugin elif [ "INTEGRATION_BOT" = "$BOT" ]; then From 1c15d823cdf37ce237f65a6980f23e80c72563cc Mon Sep 17 00:00:00 2001 From: Helin Shiah Date: Mon, 8 Dec 2025 15:50:12 -0800 Subject: [PATCH 2/6] Verify single version at a time --- build.gradle.kts | 23 +++++++++++++++++++++-- tool/github.sh | 13 +++++++++++-- 2 files changed, 32 insertions(+), 4 deletions(-) diff --git a/build.gradle.kts b/build.gradle.kts index f17d9de79..09dea6d96 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -292,11 +292,31 @@ intellijPlatform { ignoredProblemsFile.set(project.file("verify-ignore-problems.txt")) ides { - recommended() + if (project.hasProperty("singleIdeVersion")) { + val singleIdeVersion = project.property("singleIdeVersion") as String + select { + types = listOf(IntelliJPlatformType.AndroidStudio) + channels = listOf(ProductRelease.Channel.RELEASE) + sinceBuild = singleIdeVersion + untilBuild = "$singleIdeVersion.*" + } + } else { + recommended() + } } } } +//tasks.named("verifyPlugin") { +// doLast { +// val ideDirFile = ideDir.get().asFile +// if (ideDirFile.exists()) { +// println("Deleting IDE directory: " + ideDirFile.absolutePath) +// ideDirFile.deleteRecursively() +// } +// } +//} + tasks { register("integration") { description = "Runs only the UI integration tests that start the IDE" @@ -418,4 +438,3 @@ tasks.withType().configureEach { exclude("jxbrowser/jxbrowser.properties") } } - diff --git a/tool/github.sh b/tool/github.sh index d914296b8..9b54a6315 100755 --- a/tool/github.sh +++ b/tool/github.sh @@ -82,9 +82,18 @@ elif [ "VERIFY_BOT" = "$BOT" ] ; then echo "Check on space before verifyPluginSignature\n" df -h ./gradlew verifyPluginSignature - echo "Check on space before verifyPlugin\n" + + echo "Check on space before verifyPlugin for 243\n" + df -h + ./gradlew verifyPlugin -PsingleIdeVersion=243 + + echo "Check on space before verifyPlugin for 251\n" + df -h + ./gradlew verifyPlugin -PsingleIdeVersion=251 + + echo "Check on space before verifyPlugin for 252\n" df -h - ./gradlew verifyPlugin + ./gradlew verifyPlugin -PsingleIdeVersion=252 elif [ "INTEGRATION_BOT" = "$BOT" ]; then # Run the integration tests From 25d8d9c51e01b7cab0045d8b301e023fdef07814 Mon Sep 17 00:00:00 2001 From: Helin Shiah Date: Mon, 8 Dec 2025 16:27:46 -0800 Subject: [PATCH 3/6] Add gradle clean after each verify --- tool/github.sh | 3 +++ 1 file changed, 3 insertions(+) diff --git a/tool/github.sh b/tool/github.sh index 9b54a6315..be104fe4b 100755 --- a/tool/github.sh +++ b/tool/github.sh @@ -86,14 +86,17 @@ elif [ "VERIFY_BOT" = "$BOT" ] ; then echo "Check on space before verifyPlugin for 243\n" df -h ./gradlew verifyPlugin -PsingleIdeVersion=243 + ./gradlew clean echo "Check on space before verifyPlugin for 251\n" df -h ./gradlew verifyPlugin -PsingleIdeVersion=251 + ./gradlew clean echo "Check on space before verifyPlugin for 252\n" df -h ./gradlew verifyPlugin -PsingleIdeVersion=252 + ./gradlew clean elif [ "INTEGRATION_BOT" = "$BOT" ]; then # Run the integration tests From 5d6f7df8fed935b72de3b90525ac5826f4589b6f Mon Sep 17 00:00:00 2001 From: Helin Shiah Date: Tue, 9 Dec 2025 12:55:52 -0800 Subject: [PATCH 4/6] Add code to delete IDE dependency --- CHANGELOG.md | 2 +- build.gradle.kts | 21 ++++++++++++--------- tool/github.sh | 9 +++------ 3 files changed, 16 insertions(+), 16 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index a02391390..c5d7e98d5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,7 +4,7 @@ ### Changed -- Made log file `dash.log` (instead of `flutter.log`). +- Made log file `dash.log` (instead of `flutter.log`). (#8638) ### Removed diff --git a/build.gradle.kts b/build.gradle.kts index 09dea6d96..0a5f14ced 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -307,15 +307,18 @@ intellijPlatform { } } -//tasks.named("verifyPlugin") { -// doLast { -// val ideDirFile = ideDir.get().asFile -// if (ideDirFile.exists()) { -// println("Deleting IDE directory: " + ideDirFile.absolutePath) -// ideDirFile.deleteRecursively() -// } -// } -//} +// If we don't delete old versions of the IDE during `verifyPlugin`, then GitHub action bots can run out of space. +tasks.withType { + doLast { + ides.forEach { ide -> + if (ide.exists()) { + println("Deleting IDE directory at ${ide.path}") + val result = ide.deleteRecursively() + println("IDE was deleted? $result") + } + } + } +} tasks { register("integration") { diff --git a/tool/github.sh b/tool/github.sh index be104fe4b..a6a5bb3c9 100755 --- a/tool/github.sh +++ b/tool/github.sh @@ -85,18 +85,15 @@ elif [ "VERIFY_BOT" = "$BOT" ] ; then echo "Check on space before verifyPlugin for 243\n" df -h - ./gradlew verifyPlugin -PsingleIdeVersion=243 - ./gradlew clean + ./gradlew verifyPlugin -PsingleIdeVersion=243 --refresh-dependencies echo "Check on space before verifyPlugin for 251\n" df -h - ./gradlew verifyPlugin -PsingleIdeVersion=251 - ./gradlew clean + ./gradlew verifyPlugin -PsingleIdeVersion=251 --refresh-dependencies echo "Check on space before verifyPlugin for 252\n" df -h - ./gradlew verifyPlugin -PsingleIdeVersion=252 - ./gradlew clean + ./gradlew verifyPlugin -PsingleIdeVersion=252 --refresh-dependencies elif [ "INTEGRATION_BOT" = "$BOT" ]; then # Run the integration tests From 334494e9980bb9c7df4b03c84bb58e26c5df1aeb Mon Sep 17 00:00:00 2001 From: Helin Shiah Date: Tue, 9 Dec 2025 12:56:50 -0800 Subject: [PATCH 5/6] Forcing refresh doesn't work --- tool/github.sh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/tool/github.sh b/tool/github.sh index a6a5bb3c9..9b54a6315 100755 --- a/tool/github.sh +++ b/tool/github.sh @@ -85,15 +85,15 @@ elif [ "VERIFY_BOT" = "$BOT" ] ; then echo "Check on space before verifyPlugin for 243\n" df -h - ./gradlew verifyPlugin -PsingleIdeVersion=243 --refresh-dependencies + ./gradlew verifyPlugin -PsingleIdeVersion=243 echo "Check on space before verifyPlugin for 251\n" df -h - ./gradlew verifyPlugin -PsingleIdeVersion=251 --refresh-dependencies + ./gradlew verifyPlugin -PsingleIdeVersion=251 echo "Check on space before verifyPlugin for 252\n" df -h - ./gradlew verifyPlugin -PsingleIdeVersion=252 --refresh-dependencies + ./gradlew verifyPlugin -PsingleIdeVersion=252 elif [ "INTEGRATION_BOT" = "$BOT" ]; then # Run the integration tests From a18209125aade740a635bce600a061e334856e34 Mon Sep 17 00:00:00 2001 From: Helin Shiah Date: Tue, 9 Dec 2025 15:20:11 -0800 Subject: [PATCH 6/6] Add some comments --- build.gradle.kts | 18 ++++++++++++------ gradle.properties | 1 + tool/github.sh | 15 ++++++--------- 3 files changed, 19 insertions(+), 15 deletions(-) diff --git a/build.gradle.kts b/build.gradle.kts index 0a5f14ced..6e69c057a 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -292,6 +292,7 @@ intellijPlatform { ignoredProblemsFile.set(project.file("verify-ignore-problems.txt")) ides { + // `singleIdeVersion` is only intended for use by GitHub actions to enable deleting instances of IDEs after testing. if (project.hasProperty("singleIdeVersion")) { val singleIdeVersion = project.property("singleIdeVersion") as String select { @@ -309,12 +310,17 @@ intellijPlatform { // If we don't delete old versions of the IDE during `verifyPlugin`, then GitHub action bots can run out of space. tasks.withType { - doLast { - ides.forEach { ide -> - if (ide.exists()) { - println("Deleting IDE directory at ${ide.path}") - val result = ide.deleteRecursively() - println("IDE was deleted? $result") + if (project.hasProperty("singleIdeVersion")) { + doLast { + ides.forEach { ide -> + if (ide.exists()) { + // This isn't a clean deletion because gradle has internal logic for tagging that it has downloaded something, and the tagging + // isn't deleted. So if we were to run `./gradlew verifyPlugin -PsingleIdeVersion=