This repository has been archived by the owner on Nov 12, 2024. It is now read-only.
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.
This PR automates baseline profile generation, by running our Macrobenchmark tests on an Android emulator, and then committing the updated baseline profile back to the repository.
If you'd like to know more about baseline profiles, I recommend looking through the documentation.
Some notes
Trigger
This workflow does not try to avoid commit cycles, whereby the workflow commits a new baseline profile, which then triggers the action to run again, which commits a new profile... repeat. Instead, it is designed to run on a schedule where it doesn't really matter if another load of workflows are triggered. Currently, it is set to run nightly.
Runner
It uses the more commonly used reactivecircus/android-emulator-runner to run the emulator. I would have liked to use Gradle Managed Devices, but I couldn't get it to work at all on GitHub Actions.
However, using this runner seemed to break the automatic copy of the baseline profile from the emulator to the
build dir
. This is why there's a manualadb pull
in the workflow.