Skip to content

Build perf: enable Gradle configure-on-demand, Fixes AB#3609347#434

Open
fadidurah wants to merge 2 commits into
masterfrom
fadi/build-perf-configureondemand
Open

Build perf: enable Gradle configure-on-demand, Fixes AB#3609347#434
fadidurah wants to merge 2 commits into
masterfrom
fadi/build-perf-configureondemand

Conversation

@fadidurah
Copy link
Copy Markdown
Contributor

@fadidurah fadidurah commented May 15, 2026

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=true to gradle.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:

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.

@fadidurah fadidurah requested a review from a team as a code owner May 15, 2026 04:09
@github-actions
Copy link
Copy Markdown

❌ 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>
@fadidurah fadidurah force-pushed the fadi/build-perf-configureondemand branch from 0b02199 to 21a18ae Compare May 15, 2026 15:40
@github-actions
Copy link
Copy Markdown

✅ Work item link check complete. Description contains link AB#3609347 to an Azure Boards work item.

@github-actions
Copy link
Copy Markdown

❌ Invalid work item number: AB#3609347

##. Work item number must be a valid integer.

Click here to learn more.

@github-actions github-actions Bot changed the title Build perf: enable Gradle configure-on-demand Build perf: enable Gradle configure-on-demand, Fixes AB#3609347 May 19, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants