Commit Graph

476 Commits

Author SHA1 Message Date
Treehugger Robot 9ba871bbe9 Add FAILED: prefix to RBE Fatal error message" am: 907bbdfc9f
Original change: https://googleplex-android-review.googlesource.com/c/platform/build/soong/+/15625816

Change-Id: I9e55824b4e8359eb514c6cb3d31b8e0a98c55a7d
2021-08-19 19:09:04 +00:00
Treehugger Robot 907bbdfc9f Add FAILED: prefix to RBE Fatal error message"
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1560871

Bug: b/195592452
Change-Id: I00e2cb26eb3e1e3b695ba067cad24f45169f3a58
(cherry picked from commit ab2803a870)
Merged-In: Ie0c9acee2739acf149384e33804b5fca3273c24f
2021-08-19 17:08:49 +00:00
Kousik Kumar e992416430 Print the output from RBE bootstrap shutdown am: 91a46d0ef4 am: 1f3a7f6ccf am: 6874a5b8d0
Original change: https://googleplex-android-review.googlesource.com/c/platform/build/soong/+/14371203

Change-Id: I7a0c74d03a14f0d6e4ec320306d965dd13b10b2e
2021-04-30 05:23:14 +00:00
Kousik Kumar 6874a5b8d0 Print the output from RBE bootstrap shutdown am: 91a46d0ef4 am: 1f3a7f6ccf
Original change: https://googleplex-android-review.googlesource.com/c/platform/build/soong/+/14371203

Change-Id: I7d8dd627fd0e93c2ae1a48bb635beb06089dd80a
2021-04-30 05:07:38 +00:00
Kousik Kumar 91a46d0ef4 Print the output from RBE bootstrap shutdown
The output from bootstrap would contain the a one-line summary of RBE
download / upload stats.

Bug: b/183007125
Change-Id: I90082a8433504e40bbf92992c3c8d1d656c49429
Merged-In: I90082a8433504e40bbf92992c3c8d1d656c49429
2021-04-29 20:49:13 -04:00
Patrice Arruda c5563628f0 [DO NOT MERGE] Capture the build command that executed the build system.
We need to capture the user build command to understand what additional
arguments is passed in to Soong. This data is useful to know which
targets are being executed and have statistics on top build targets
are specified.

Bug: b/169453712
Test: ran "m blueprint_tools", "m nothing", "lunch 1" and checked
      in soong_metrics proto.
Change-Id: I7ab94dcf037211f1abffe6afd012b03ffbf99756
Merged-In: I7ab94dcf037211f1abffe6afd012b03ffbf99756
Merged-In: If9a1443eff6b48cee865ea914370261f5e0cfee6
2020-11-02 12:16:56 -08:00
Patrice Arruda 807a8f9142 [DO NOT MERGE] Capture the build command that executed the build system.
We need to capture the user build command to understand what additional
arguments is passed in to Soong. This data is useful to know which
targets are being executed and have statistics on top build targets
are specified.

Bug: b/169453712
Test: ran "m blueprint_tools", "m nothing", "lunch 1" and checked
      in soong_metrics proto.
Change-Id: I7ab94dcf037211f1abffe6afd012b03ffbf99756
Merged-In: I7ab94dcf037211f1abffe6afd012b03ffbf99756
2020-11-02 09:50:47 -08:00
Kousik Kumar 72fd2abc5c Deprecate both USE_GOMA and FORCE_USE_GOMA flags am: 6d0034f49f am: 04f6efa716
Original change: https://googleplex-android-review.googlesource.com/c/platform/build/soong/+/12886656

Change-Id: Ib4848042fdc9926a9929e6eebf416e01d045fd90
2020-10-21 04:01:35 +00:00
Kousik Kumar 6d0034f49f Deprecate both USE_GOMA and FORCE_USE_GOMA flags
Test:
m USE_GOMA=true GOMA_DIR=$(goma_ctl goma_dir) toybox
m FORCE_USE_GOMA=true GOMA_DIR=$(goma_ctl goma_dir) toybox
both result in error message being printed.

Bug: b/171325288
Change-Id: I94ccaf217dba71aca990d88d205bad669a49a2f5
Merged-In: I94ccaf217dba71aca990d88d205bad669a49a2f5
2020-10-20 19:51:14 +00:00
Patrice Arruda a24c3479a8 resolve merge conflicts of e32b384719 to rvc-dev
Test: I solemnly swear I tested this conflict resolution.
Bug: b/169395325
Change-Id: Iaac2f8ef4b452c95bdc4584697c3e4e9ed69aa5c
Merged-In: Ib6898b49c16a830d814efe74581bde463caedf76
Merged-In: I3e5d64f948ae43c5dda60de1d4a52b187e36dff8
2020-10-19 18:09:54 +00:00
Patrice Arruda af7b75b8db Collect the hostname of the machine as a metric.
The hostname is collected during a build to determine where the user
is build from (from office workstation, cloudtop, etc...). This is a
useful metrics for RBE related builds.

Bug: b/169395325
Test: m nothing, ran printproto to verify that soong_metrics has the
      hostname.
Change-Id: I3e5d64f948ae43c5dda60de1d4a52b187e36dff8
Merged-In: I3e5d64f948ae43c5dda60de1d4a52b187e36dff8
Merged-In: Ib6898b49c16a830d814efe74581bde463caedf76
2020-10-15 17:39:49 +00:00
Patrice Arruda 925c9f2983 resolve merge conflicts of 87deed46bf to rvc-dev
Test: I solemnly swear I tested this conflict resolution.
Bug: b/169423400
Merged-In: If801d23c431a71eddcf332c100b00eacd97ced5a
Merged-In: Ifcce83e3d424a5eaaea38068a9cda79dc8c4b747
Merged-In: I2d3b790f8e031d0607a32cae9a21c6bc9fc3238a
Merged-In: If3cabaf2058844fceaa8366ce3592e8ebd69736e
Change-Id: I8a9768f23a0ebf221a969cebf620e6bd604c7458
2020-09-30 21:14:33 +00:00
Patrice Arruda 68805280f0 resolve merge conflicts of 64d43056ac to rvc-dev
Test: I solemnly swear I tested this conflict resolution.
Bug: b/169423400
Change-Id: I9e4bf3784a1ba5ae49793dbf367347106b997461
Merged-In: I67b229fbf52e913b0c4f5e7932021132ddc0598f
2020-09-30 16:16:23 +00:00
Patrice Arruda 3fc4c98bd9 Collect FORCE_USE_GOMA environment variable as a metric.
FORCE_USE_GOMA is needed to be collected as a metric for the
deprecation of GOMA on Android builds.

Bug: b/169423400
Test: m nothing, ran printproto command
Change-Id: I12300389f1f27239d8f21875d1b6e4ad069d95d7
Merged-In: I12300389f1f27239d8f21875d1b6e4ad069d95d7
2020-09-29 16:40:54 +00:00
Kousik Kumar dbe59cdd81 Deprecate USE_GOMA and replace with FORCE_USE_GOMA
Bug: b/163361527
Test: Ran builds with USE_GOMA / FORCE_USE_GOMA flags
Change-Id: I67b229fbf52e913b0c4f5e7932021132ddc0598f
Merged-In: I67b229fbf52e913b0c4f5e7932021132ddc0598f
2020-09-29 16:40:38 +00:00
TreeHugger Robot 3f4bdf5015 Merge "[DO NOT MERGE] Add Goma deprecation PSA to soong." into qt-dev 2020-09-16 22:28:05 +00:00
Patrice Arruda 5eae8cdca1 Start collecting build configuration metrics.
This is an initial CL that collects the environment variables
USE_GOMA and USE_RBE. This is a needed metric to determine how
many users are currently using GOMA so we can help them migrate
to RBE.

Bug: b/163598127
Test: m nothing and checked soong_metrics
Change-Id: I39536eabad01aafbb3bd7182515d72230b36f658
Merged-In: I39536eabad01aafbb3bd7182515d72230b36f658
2020-09-16 19:44:42 +00:00
Ramy Medhat ee50d5b5b0 [DO NOT MERGE] Add Goma deprecation PSA to soong.
Test: build with Goma
Bug: b/166273085
Change-Id: Ie7e146285afd40bc0a1dc17a0b898960f57a118b
Merged-In: Ie7e146285afd40bc0a1dc17a0b898960f57a118b
2020-09-16 17:53:46 +00:00
Ramy Medhat 26195be91c Add a default value for the RBE_log_dir variable.
Test: built simple target.
Bug: b/166273085
Change-Id: Id93dd80119037b594e5f8c370f4ac2fbc12a5144
Merged-In: Id93dd80119037b594e5f8c370f4ac2fbc12a5144
2020-09-15 20:35:36 +00:00
Ramy Medhat cbe9aa2c2a Do not generate a random socket address for RBE if NOSTART_RBE is set.
Test: A build with NOSTART_RBE=1
Bug: b/166273085
Change-Id: I5872632442c754b597901b7729eed597ee45859f
Merged-In: I5872632442c754b597901b7729eed597ee45859f
2020-09-15 20:35:06 +00:00
Ramy Medhat ee17f8c02e Add Goma deprecation PSA to soong.
Test: build with Goma
Bug: b/166273085
Change-Id: Ie7e146285afd40bc0a1dc17a0b898960f57a118b
Merged-In: Ie7e146285afd40bc0a1dc17a0b898960f57a118b
2020-09-15 20:33:53 +00:00
Ramy Medhat 54814ca5e6 Add reasonable defaults to RBE configuration parameters.
Test: simple one action build
Bug: b/140638454
Change-Id: Ic66ad2b89866a67008950035bc3b559dae4e3a3e
Merged-In: I060e46f228493d1793f727840cf320815a55d3fa
2020-09-15 20:19:59 +00:00
Ramy Medhat 8229916e1f [DO NOT MERGE] Add a default value for the RBE_log_dir variable.
Bug: b/166182389
Test: built simple target.
Change-Id: Id93dd80119037b594e5f8c370f4ac2fbc12a5144
Merged-In: Id93dd80119037b594e5f8c370f4ac2fbc12a5144
2020-09-15 18:10:24 +00:00
Ramy Medhat 00ff4cc1ef [DO NOT MERGE] Do not generate a random socket address for RBE if NOSTART_RBE is set.
Bug: b/166182389
Test: A build with NOSTART_RBE=1
Change-Id: I5872632442c754b597901b7729eed597ee45859f
Merged-In: I5872632442c754b597901b7729eed597ee45859f
2020-09-15 18:10:24 +00:00
Ramy Medhat 19c39230e9 [DO NOT MERGE] Add reasonable defaults to RBE configuration parameters.
Bug: b/166182389
Test: simple one action build
Change-Id: Ic66ad2b89866a67008950035bc3b559dae4e3a3e
Merged-In: Ic66ad2b89866a67008950035bc3b559dae4e3a3e
2020-09-15 18:10:24 +00:00
Patrice Arruda b258d9367c [DO NOT MERGE] Add newline to each generated bash script in rbe_test.go.
"exec format error" showed up on Mac when running the rbe_test.go.
The generated bash scripts did not have a newline at the end of
the file.

Bug: b/162600461
Fixes: b/162600461

Test: "m blueprint_tools" on Android Mac builder.
Change-Id: I425fa5f428733b6569c3fcdaa312023f9761d020
Merged-In: I425fa5f428733b6569c3fcdaa312023f9761d020
2020-09-15 18:10:13 +00:00
Ramy Medhat b7cfc8eabd Generate RBE socket address randomly for each invocation of soong.
Test: started soong multiple times and saw different socket files in
out/soong/.temp

Bug: b/140638454
Change-Id: Ib0087dd3867bdbf584c6868196070840cff291aa
Merged-In: Ib0087dd3867bdbf584c6868196070840cff291aa
2020-09-15 18:10:00 +00:00
Ola Rozenfeld 11c7e806f6 Migrating RBE flags to RBE_ variables.
Test: N/A, this only adds new variables.

Bug: b/167405184
Change-Id: Iad09352090ec255af82e77941e6e050137f1e83b
Merged-In: Iad09352090ec255af82e77941e6e050137f1e83b
2020-09-15 18:08:01 +00:00
Patrice Arruda fbc4e3f9b6 [DO NOT MERGE] Add RBE metrics dump in Soong UI.
From aosp/1329396, the RBE metrics protobuf file is part of the
metrics uploading process. The RBE metrics protobuf file is
generated by running the bootstrap shutdown command. A new function
named DumpRBEMetrics was written in order to generate the RBE metrics
protobuf file before sending to the uploading process.

Bug: b/140638454
Test: * Unit test cases
      * Ran RBE build on my local host and verified the
        metrics protobuf file is created.
      * Ran non-RBE build after RBE build and verified that
        the previous metrics protobuf file was deleted.

Change-Id: I4b8068905cb67c4b8c2d94793917b98974fed707
Merged-In: I4b8068905cb67c4b8c2d94793917b98974fed707
2020-09-15 13:05:11 +00:00
Ramy Medhat 498a732edb [DO NOT MERGE] Generate RBE socket address randomly for each invocation of soong.
Test: started soong multiple times and saw different socket files in
out/soong/.temp

Bug: b/166182389
Change-Id: Ib0087dd3867bdbf584c6868196070840cff291aa
Merged-In: Ib0087dd3867bdbf584c6868196070840cff291aa
2020-09-15 10:22:12 +00:00
Ramy Medhat fc5a03c85c [DO NOT MERGE] Refactor RBE support for Javac/R8/D8 to use the remoteexec package.
Bug: b/166182389
Test: build with and without RBE_JAVAC/RBE_R8/RBE_D8 set.
Change-Id: I1607f8cfb4d2c3cbb3672152bbeb561d9968bc60
Merged-In: I1607f8cfb4d2c3cbb3672152bbeb561d9968bc60
2020-09-15 10:16:51 +00:00
Ramy Medhat c726ab533c [DO NOT MERGE] Allow remote execution of link actions.
This CL adds a remoteexec package that allows adding a configurable RBE
prefix to the template.

Bug: b/166182389
Test: built aosp crosshatch userdebug with and without RBE_CXX_LINKS.
Change-Id: Ica920c3d7f79f2996210b9cbd448126451c1707c
Merged-In: Ica920c3d7f79f2996210b9cbd448126451c1707c
2020-09-15 09:57:07 +00:00
Patrice Arruda 55b5e42581 Set the OS name in the metrics protobuf file
There are cases where the developer is not building a product so
the metadata information is not being set. For now, set the OS
name so we can track which OS the user is using it.

Fixes: b/163118212
Test: m nothing and checked the blueprint
Change-Id: I9b521eee2d266b50625aa8e916ddaacb4e2feaea
Merged-In: I9b521eee2d266b50625aa8e916ddaacb4e2feaea
2020-09-11 14:20:37 +00:00
Patrice Arruda f53a655b75 Use the build start time from Soong main UI for metrics build timestamp.
Currently, the build timestamp saved to the build_date_timestamp
field in the MetricsBase metrics protobuf usually comes from a text
file named build_date.txt. It may not be accurate for metrics purposes.
Instead, use the build start time from Soong main UI for a better
timestamp.

Bug: b/140638454
Test: Ran and checked the build_date_timestamp by running the printproto
      command.
Change-Id: I4d893fbbf9830ba21911e56ae13bc5272be47ae6
Merged-In: I4d893fbbf9830ba21911e56ae13bc5272be47ae6
2020-09-11 14:20:37 +00:00
Patrice Arruda 6b9cdfa9b2 Use monotonic clock instead of wall time clock for metrics.
From several dashboards, there are high spikes from several
builds where the real time of executing a part of the build
system took many many hours. This is due to using the wall
time clock when calculating the duration. For metrics, the
monotonic clock should be used for more accurate measurement.
Also, cleaned up the time.go file to use the proper proto
functions when marshalling perf protobuf and deleted
unnecessary functions.

Bug: b/143492984
Test: Wrote and ran unit test case.
Change-Id: I1540cfbf37915e3045ecedaa2595c1f9429bcd62
Merged-In: I1540cfbf37915e3045ecedaa2595c1f9429bcd62
2020-09-11 14:20:36 +00:00
Patrice Arruda c3cec87275 Run the metrics uploader in the background.
The metrics uploader was currently running on foreground where it
would copy the metrics files in a separate directory and then forked
into the background for the upload process. As a result, running the
lunch command would take a second longer to run since each metrics
uploader run had an average of half a second.

Bug: 140638454
Test: * Wrote and updated unit test cases.
      * Set ANDROID_ENABLE_METRICS_UPLOAD to point to the latest
        metrics_uploader bash script. Executed the "lunch 1" command
	and measured the running time. Executed "m nothing" command
	and checked that the metrics were uploaded.
      * Ran "lunch 1" and "m nothing" with
        ANDROID_ENABLE_METRICS_UPLOAD=""
      * Removed oauth from metrics_uploader and ran "m nothing" and
        "lunch 1". The oauth Message appeared only to "m nothing"

Change-Id: I13c61e666c8f44613dee291a704cef6a27335188
Merged-In: I13c61e666c8f44613dee291a704cef6a27335188
2020-09-11 14:20:36 +00:00
Patrice Arruda d519a71f97 Upload build metrics after a build is completed.
Soong now supports the ability to upload metrics to another location
by setting the ANDROID_ENABLE_METRICS_UPLOAD to an uploader that
accepts the upload.proto proto buffer message. When the environment
variable is set, a set of build metrics files (soong_metrics,
rbe_metrics.pb and build_error) is uploaded.

Bug: 140638454
Test: * Wrote unit test cases
      * Setup the uploader, built a succcessful and failed aosp_arm-eng
        target and monitor the uploading of the metrics.
Change-Id: I76a65739c557dc90345e098ca03119a950ece2d2
Merged-In: I76a65739c557dc90345e098ca03119a950ece2d2
2020-09-11 14:20:28 +00:00
Patrice Arruda b48be3a2c1 Add a new protobuf message named Upload to upload build metrics.
A new protobuf message named Upload is defined to send build metrics
to the Android Build Server API after a build is completed. These
metrics are collected from googlers only, as described in
go/local-developers-metrics-wfh.

Bug: b/140638454
Test: m nothing
Change-Id: I5e49b5ace053913be2b75673cb1375f4cef37825
Merged-In: I5e49b5ace053913be2b75673cb1375f4cef37825
2020-09-11 14:05:15 +00:00
Patrice Arruda 09a832cb11 Start collecting build configuration metrics.
This is an initial CL that collects the environment variables
USE_GOMA and USE_RBE. This is a needed metric to determine how
many users are currently using GOMA so we can help them migrate
to RBE.

Bug: b/163598127
Test: m nothing and checked soong_metrics
Change-Id: I39536eabad01aafbb3bd7182515d72230b36f658
Merged-In: I39536eabad01aafbb3bd7182515d72230b36f658
2020-08-31 20:53:16 +00:00
Patrice Arruda 0db3d35c51 Set the OS name in the metrics protobuf file
There are cases where the developer is not building a product so
the metadata information is not being set. For now, set the OS
name so we can track which OS the user is using it.

Fixes: b/163118212
Test: m nothing and checked the blueprint
Change-Id: I9b521eee2d266b50625aa8e916ddaacb4e2feaea
Merged-In: I9b521eee2d266b50625aa8e916ddaacb4e2feaea
2020-08-31 20:53:16 +00:00
Patrice Arruda dd3020f351 Use the build start time from Soong main UI for metrics build timestamp.
Currently, the build timestamp saved to the build_date_timestamp
field in the MetricsBase metrics protobuf usually comes from a text
file named build_date.txt. It may not be accurate for metrics purposes.
Instead, use the build start time from Soong main UI for a better
timestamp.

Bug: b/140638454
Test: Ran and checked the build_date_timestamp by running the printproto
      command.
Change-Id: I4d893fbbf9830ba21911e56ae13bc5272be47ae6
Merged-In: I4d893fbbf9830ba21911e56ae13bc5272be47ae6
2020-08-31 20:53:16 +00:00
Patrice Arruda ac91c3f796 Use monotonic clock instead of wall time clock for metrics.
From several dashboards, there are high spikes from several
builds where the real time of executing a part of the build
system took many many hours. This is due to using the wall
time clock when calculating the duration. For metrics, the
monotonic clock should be used for more accurate measurement.
Also, cleaned up the time.go file to use the proper proto
functions when marshalling perf protobuf and deleted
unnecessary functions.

Bug: b/143492984
Test: Wrote and ran unit test case.
Change-Id: I1540cfbf37915e3045ecedaa2595c1f9429bcd62
Merged-In: I1540cfbf37915e3045ecedaa2595c1f9429bcd62
2020-08-31 20:53:16 +00:00
Patrice Arruda 70ca506da3 Add newline to each generated bash script in rbe_test.go.
"exec format error" showed up on Mac when running the rbe_test.go.
The generated bash scripts did not have a newline at the end of
the file.

Bug: b/162600461
Fixes: b/162600461

Test: "m blueprint_tools" on Android Mac builder.
Change-Id: I425fa5f428733b6569c3fcdaa312023f9761d020
Merged-In: I425fa5f428733b6569c3fcdaa312023f9761d020
2020-08-31 20:53:02 +00:00
Patrice Arruda e7836594ec Add RBE metrics dump in Soong UI.
From aosp/1329396, the RBE metrics protobuf file is part of the
metrics uploading process. The RBE metrics protobuf file is
generated by running the bootstrap shutdown command. A new function
named DumpRBEMetrics was written in order to generate the RBE metrics
protobuf file before sending to the uploading process.

Bug: b/140638454
Test: * Unit test cases
      * Ran RBE build on my local host and verified the
        metrics protobuf file is created.
      * Ran non-RBE build after RBE build and verified that
        the previous metrics protobuf file was deleted.

Change-Id: I4b8068905cb67c4b8c2d94793917b98974fed707
Merged-In: I4b8068905cb67c4b8c2d94793917b98974fed707
2020-08-31 20:50:13 +00:00
Patrice Arruda de44afac93 Run the metrics uploader in the background.
The metrics uploader was currently running on foreground where it
would copy the metrics files in a separate directory and then forked
into the background for the upload process. As a result, running the
lunch command would take a second longer to run since each metrics
uploader run had an average of half a second.

Bug: 140638454
Test: * Wrote and updated unit test cases.
      * Set ANDROID_ENABLE_METRICS_UPLOAD to point to the latest
        metrics_uploader bash script. Executed the "lunch 1" command
	and measured the running time. Executed "m nothing" command
	and checked that the metrics were uploaded.
      * Ran "lunch 1" and "m nothing" with
        ANDROID_ENABLE_METRICS_UPLOAD=""
      * Removed oauth from metrics_uploader and ran "m nothing" and
        "lunch 1". The oauth Message appeared only to "m nothing"

Change-Id: I13c61e666c8f44613dee291a704cef6a27335188
Merged-In: I13c61e666c8f44613dee291a704cef6a27335188
2020-08-31 20:49:37 +00:00
Patrice Arruda 4f7f60b54b Upload build metrics after a build is completed.
Soong now supports the ability to upload metrics to another location
by setting the ANDROID_ENABLE_METRICS_UPLOAD to an uploader that
accepts the upload.proto proto buffer message. When the environment
variable is set, a set of build metrics files (soong_metrics,
rbe_metrics.pb and build_error) is uploaded.

Bug: 140638454
Test: * Wrote unit test cases
      * Setup the uploader, built a succcessful and failed aosp_arm-eng
        target and monitor the uploading of the metrics.
Change-Id: I76a65739c557dc90345e098ca03119a950ece2d2
Merged-In: I76a65739c557dc90345e098ca03119a950ece2d2
2020-08-31 20:49:05 +00:00
Patrice Arruda 2ce077605a Pass the TMPDIR directly to the command when dumping makefile variables.
External applications such as metrics uploader depends on the TMPDIR.
DumpMakeVars is changing the TMPDIR environment variable value. Once
the work is done, TMPDIR directory is deleted. Additional flow of
the tool or external applications can panic since TMPDIR directory
does not exist. Since this is an isolated case, pass the TMPDIR
directory to the command of dumping the makefile variables.

Bug: b/140638454
Test: * Ran lunch command with ANDROID_ENABLE_METRICS_UPLOAD set
        and metrics_uploader did not crash.
      * m nothing
Change-Id: Ib78a3f8cfb5da48f65bd9bce1511e9abdf3d9cca
Merged-In: Ib78a3f8cfb5da48f65bd9bce1511e9abdf3d9cca
2020-08-31 20:48:28 +00:00
Patrice Arruda b2da01d455 Add a new protobuf message named Upload to upload build metrics.
A new protobuf message named Upload is defined to send build metrics
to the Android Build Server API after a build is completed. These
metrics are collected from googlers only, as described in
go/local-developers-metrics-wfh.

Bug: b/140638454
Test: m nothing
Change-Id: I5e49b5ace053913be2b75673cb1375f4cef37825
Merged-In: I5e49b5ace053913be2b75673cb1375f4cef37825
2020-08-31 20:46:26 +00:00
Ramy Medhat 4807a1b5ec [DO NOT MERGE] Add support for experimentally enabling RBE support on specific rules.
This CL adds RBE support to javac, r8, and d8 rules which is only
enabled if respective environment variables are set.

Test: an aosp_crosshatch build with and without the new variables.

Bug: b/166182389
Change-Id: Ic82f3627944f6a5ee7b9f3228170c2709b1bfcb8
Merged-In: Ic82f3627944f6a5ee7b9f3228170c2709b1bfcb8
2020-08-31 12:32:31 +00:00
Ramy Medhat adf591a505 [DO NOT MERGE] Add USE_RBE support to soong.
Test: Built aosp_arm-user with and without USE_RBE. USE_RBE uses
a proxy script in place of rewrapper.

Bug: b/166182389
Change-Id: I5bf008a940513872d70b5b215bd6209f759826ae
Merged-In: I5bf008a940513872d70b5b215bd6209f759826ae
2020-08-31 12:29:15 +00:00