- Create `LintConventionPlugin` to configure Lint on all compatible modules: Android applications, Android libraries and JVM modules.
- Run `lintProdRelease` in CI instead of the default `lintDemoDebug` which is less important compared to production code.
- Rearrange CI steps to make it more clear that Lint should is an additional step after build (build -> test -> lint).
- Enable SARIF support and upload results to GitHub's CodeQL to get inline feedback on PRs.
If we really need better perfs, we could restore `lint.checkDependencies = true` on the `:app` module and only execute `:app:lintProdRelease`.
But in practice, this does not change the total build time on this project.
- Add all generated lint reports (only app was archived)
- Add all unit tests reports (none were archived)
- Add all APKs (missing app-nia-catalog) and remove unnecessary files (logs, sdkDependencies, proguard's config/mapping/seeds etc. which are also quite large compared to APKs)
- Fixes missing tests reports from `AndroidCIWithGmd.yaml`
```
Warning: No files were found with the provided path: '**/*/build/reports/androidTests/'. No artifacts will be uploaded.
```
- Fixes missing tests reports from `Build.yaml`, where only top-level tests from `:app` were reported.
This should reduce the total CI time of `AndroidCIWithGmd` workflow.
Using the matrix strategy at the GitHub Actions level forces us to run the tests sequentially and download/rebuild everything from scratch at each iteration.
This PR is about updating the operating system to macOS-12 as the previous one was going to be deprecated, as well as updating the checkout to v3 to avoid the warnings in the panel; adding setup SDK action to accept the license which was missing from the beginning.
I also added imports instead of adding them directly with the codes.
As a reference, there was another PR with a similar topic, but it wasn't complete: #483
Introduce Gradle Managed Device definitions to modules that have instrumented tests.
At the moment, defining it as a convention plugin isn't possible due to the bug. That bug is now fixed and will be included in Android Studio Flamingo.
Once Flamingo becomes stable, convert the GMD definitions as a convention plugin (#523)
Change-Id: I0866369e3d0bbe148ca5ec1f92bad59239a347b8
Enables Gradle configuration cache.
Fix "no name set for build-config" warning.
Fix printing of test APKs due to AGP 7.3 changes
Change-Id: I65ec0cb9eba3d047417fc512ffeb66d378ba0c75
Using gradle/gradle-build-action which takes care of caching, we can remove the custom checksum calculation and files.
Change-Id: I190e4f911f6fa70199fd75a7335df12983157516
* Add github-specific setup
Change-Id: Iad8edf3c16182807eda6893c696244d9147f7cab
* Update Build.yaml
Replaces cC for cAT
* Filters out benchmark tests
* Trying to increase storage with disk.dataPartition.size
* Increasing size a bit more for API 23
* Remove API 23
* Reverting, using correct param name
* Increase again to 1500M
* heap=512M
java.lang.OutOfMemoryError: java.lang.OutOfMemoryError: OutOfMemoryError thrown while trying to throw an exception; no stack trace available
* replace 29 for 31
looks like 29 has memory issues https://github.com/google/android-fhir/issues/73
* API 30
* Arch x86_64 as there's no API 30 x86
Co-authored-by: Jose Alcérreca <JoseAlcerreca@users.noreply.github.com>