-
Notifications
You must be signed in to change notification settings - Fork 1.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Dependency Cache] Use Custom Init Gradle Task to Download Dependencies #21610
[Dependency Cache] Use Custom Init Gradle Task to Download Dependencies #21610
Conversation
📲 You can test the changes from this Pull Request in WordPress by scanning the QR code below to install the corresponding build.
|
📲 You can test the changes from this Pull Request in Jetpack by scanning the QR code below to install the corresponding build.
|
This custom 'downloadDependencies' task is part of the Android AMI, that is utilized by the 'android' agents, and it is becoming available to all project via the 'init.gradle.kts' script that is included in it.
ed9d74f
to
6d74fe5
Compare
👋 @nbradbury , I am not sure why this and its accompanying test #21609 PR got closed, it being a work-in-progress PR, so I just restored the branch and reopened it. Let me know if I am missing something. 🙏 FYI: About the accompanying test #21609 PR I can keep this closed, we are done with testing it. I would have closed that after merging this PR, but doing that now doesn't hurt. |
… into ci/use-custom-init-gradle-task-to-download-dependencies
… into ci/use-custom-init-gradle-task-to-download-dependencies
Quality Gate passedIssues Measures |
Project Thread: paaHJt-7CE-p2
Test PR: #21609
Depends On: buildkite-ci#585
Description
This PR uses the custom
init.gradle.kts
related file, defined within the Android AMI itself (see buildkite-ci#585), which now contains this customdownloadDependencies
task.With this change, instead of individually calling a number of
assemble/lint
related tasks to download as many dependencies as possible prior to saving the cache, any project can now utilize this globally defineddownloadDependencies
task to replace all this boilerplate and streamline the overall dependency cache process.Notably, with this change, the dependency cache process:
assemble/lint
tasks, just that singledownloadDependencies
task, making the build process faster (for scheduled builds).To Test:
Just verify the below:
dependency cache
job to complete: 7m 18sNote
The only drawback to this change, but an expected one, is that the size of the dependency cache is considerably bigger than before,
1573.37 MB
now,1076.74
before, which is more than500 MB
a diff, and this makes the cache restoration a few seconds slower (20s
before,30s
now, ish). Having said that, we believe that the low cost of maintaining the cache saving process is worth the extra seconds (context).Merge Instructions
Do Not Merge
label.ami-0953ca1d949c23a58
->ami-0f976e0b4de96aa28
#21609 and a8c-ci-toolkit-buildkite-plugin#142test-only PRs.
Regression Notes
Potential unintended areas of impact
What I did to test those areas of impact (or what existing automated tests I relied on)
To Test
section above.What automated tests I added (or what prevented me from doing so)
PR Submission Checklist:
RELEASE-NOTES.txt
if necessary.Testing Checklist (strike-out the not-applying and unnecessary ones):
N/A