tree ebda7308c4c4c04f72dc7adb685f57f266548350
parent 1e845f0508751f699b739ba2267ad0cf154b4dc3
author Sergio Soares <sergiosoares@google.com> 1761772699 -0400
committer GitHub <noreply@github.com> 1761772699 +0000
gpgsig -----BEGIN PGP SIGNATURE-----
 
 wsFcBAABCAAQBQJpAoSbCRC1aQ7uu5UhlAAAD0kQAIkwkFUKvxnVnrtKnFP21g/x
 WGOdPMI1KvQUbzL5tn+AirdakaRnixHzfFE3PjEDI2IujlJj4KAYaHxko4HLPdm1
 l+CTv3q5HtDfw9gIsCsuSQF8rKU0G60IVgbfQf+QRbXcOy+pK+6vbYnbMtdXLmJG
 FK45cY2b10cq0EYf6tsF+t8hFBw2LsxS3fI/QmAnxswOdIc5Lj3bcdywtt5U2839
 kGSuH5yKBTDd9Qno005CDL/paBb26o8kuRQ/WJ+8RCrFTDZBg9pu8diUalMnSdH7
 qgNy+MJPudMeNatjusmuADRZLTKX01Gw3cfBB9hFroNE+Ie2nC+tgmfByj2JEO1k
 0Opub/ynOnq3nUNAP6U2bsJozLq096ZN5MpjcPp6nKDZnulMLtTcGl5wZ8tThjB1
 HFDJeelBEIeh1CbQztRlHxkiNsVZ0ibFlhjV/nZB2zAPceJ21oII/41KZXKaUrJW
 Cx9mp21tFjJqvbQ7X7OBRKwPwp2mhgX4WOp0RmkitEVzXYUf9hy3xY4qLls4ZH/w
 PlMhUrpQjKN/EJdnznfac7ioTM95cZ2K3N4NSQg4aGe5NcoSxCEGVT15mhdBH75R
 vdWzeoNNltFXYymbgKF5KEqjzENhlQS2oZonyweupnkwRfBHRFpYnbnYh5h5t/zC
 YxY/y07d81PPEgcnuDuK
 =KsdU
 -----END PGP SIGNATURE-----
 

Speed up REPL Tests in CI by grouping apps in a single target (#41501)

* Attempt at parallelizing builds in REPL workflow

* Measure build time and parallelize build_examples.py

* Remove parallel exec, didn't help much.

* add a few more apps to root build.gn

* attempt to use unified build for most linux apps in CI

* Restyled by gn

* Don't rm out because other tests need out/venv

* Fix paths to executables

* Fix fabric sync dep

* undo fabric-admin and fabric-bridge app dep changes

* Add conditional for linux_apps_for_ci

* Restyled by gn

* Try to fix out of space issues by building apps that use build_examples.py in separate calls and deleting out dir

* add more args to gn gen to attempt to fix apps test failures

* Add support for unified builds in build_examples for host builds.

* Restyled by autopep8

* Restyled by isort

* Use build_examples.py again in CI for unified builds

* Fix build_examples.py to work with both unified and non unified targets

* Fix tv casting app target

* Undo unwanted formatting changes in targets.py

* remove unwanted formatting from host.py

* lit icd it not generated under standalone...

* Update all_targets_linux for unit testing.

* Fix paths to unified build artifacts

* fix missing tsan modifier

* Add trace support to standalone build

* Restyled by gn

* Attempted to scrape apps and aggregate args.gni options in standalone args.ngi

* Need chip_eanble_read_client=true

* Add missing define, disable test event triggers

* attempt to conditionally import the right args.gni

* Restyled by gn

* Remove tv casting app from unified build

* Disable lit-icd and ota-requestor from unified build

* Restyled by gn

* Removed all_clusters, energy-mgmt, energy-gateway and terms-and-conditions from unified build in CI as they require special args.gni

* Restyled by gn

* fix paths

* Add unified build back, accidentally removed in the last commit

* Removed network management app from unified build

* fix braces

* Clean up commented out code

* removed unused app builds from unified

* restyle

* remove changes to standalone args.gni

* Enable specific args.gni for linux or mac

* add host_args.gni back as it breaks other platforms when removed

* Revert unintended change to all-clusters-app/linux/diagnostic-logs-provider-delegate-impl.cpp

* address code review suggestions

* Remove targets that didn't pass CI from build_examples.py

---------

Co-authored-by: Restyled.io <commits@restyled.io>
Co-authored-by: Andrei Litvin <andy314@gmail.com>