Build perf: enable Gradle configure-on-demand, Fixes AB#3609347#434
Open
fadidurah wants to merge 2 commits into
Open
Build perf: enable Gradle configure-on-demand, Fixes AB#3609347#434fadidurah wants to merge 2 commits into
fadidurah wants to merge 2 commits into
Conversation
|
❌ Work item link check failed. Description does not contain AB#{ID}. Click here to Learn more. |
Test app builds (BrokerHost, msalTestApp, msalAutomationApp) and other meta-builds rooted at android-complete were spending 10-17 minutes per Gradle invocation just configuring sibling subprojects (e.g. :common, :common4j, :msal, :LabApiUtilities) that the requested task did not actually depend on. configure-on-demand makes Gradle only configure projects that are in the dependency graph of the requested tasks. This matches the same flag already added to common, broker, and msal repos for their library builds. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
0b02199 to
21a18ae
Compare
|
✅ Work item link check complete. Description contains link AB#3609347 to an Azure Boards work item. |
|
❌ Invalid work item number: AB#3609347 ##. Work item number must be a valid integer. Click here to learn more. |
p3dr0rv
approved these changes
May 20, 2026
rpdome
approved these changes
May 20, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
AB#3609347
Why
Test app builds (BrokerHost, msalTestApp, msalAutomationApp) and other meta-builds rooted at android-complete were spending 10-17 minutes per Gradle invocation just configuring sibling subprojects that the requested task didn't actually depend on.
What
Adds
org.gradle.configureondemand=truetogradle.properties. When enabled, Gradle only configures projects that are in the dependency graph of the requested tasks.Companion changes
This matches the same flag already added to:
fadi/publish-libraries-to-newandroid-feed)Combined with pipeline-side changes in 1ES-Pipelines (drop
clean, add--build-cache --parallel, combine multi-Gradle invocations), expected to cut test app build times by 10-15 min per stage.Risk
Low. configure-on-demand is a long-stable Gradle feature; we use explicit dependency declarations throughout, not implicit cross-project task wiring.