From 4d7f8f7846960ffc111cf1aef2a5efb094114442 Mon Sep 17 00:00:00 2001 From: ulfjack Date: Wed, 29 Nov 2017 03:37:04 -0800 Subject: Clean up ExecutionRequirements - remove BaseSpawn.Local; instead, all callers pass in the full set of execution requirements they want to set - disable caching and sandboxing for the symlink tree action - it does not declare outputs, so it can't be cached or sandboxed (fixes #4041) - centralize the existing execution requirements in the ExecutionRequirements class - centralize checking for execution requirements in the Spawn class (it's possible that we may need a more decentralized, extensible design in the future, but for now having them in a single place is simple and effective) - update the documentation - forward the relevant tags to execution requirements in TargetUtils (progress on #3960) - this also contributes to #4153 PiperOrigin-RevId: 177288598 --- .../docgen/templates/attributes/common/tags.html | 17 ++++- .../devtools/build/lib/actions/BaseSpawn.java | 36 --------- .../devtools/build/lib/actions/DelegateSpawn.java | 10 --- .../build/lib/actions/ExecutionRequirements.java | 36 ++++++++- .../devtools/build/lib/actions/SimpleSpawn.java | 10 --- .../google/devtools/build/lib/actions/Spawn.java | 11 --- .../google/devtools/build/lib/actions/Spawns.java | 15 ++++ .../build/lib/analysis/config/BinTools.java | 36 +++++++-- .../devtools/build/lib/exec/SymlinkTreeHelper.java | 88 +++++++++++++--------- .../build/lib/exec/SymlinkTreeStrategy.java | 17 +++-- .../devtools/build/lib/exec/TestStrategy.java | 7 +- .../devtools/build/lib/packages/TargetUtils.java | 11 ++- .../build/lib/remote/RemoteSpawnRunner.java | 2 +- .../lib/sandbox/DarwinSandboxedSpawnRunner.java | 3 +- .../lib/sandbox/LinuxSandboxedSpawnRunner.java | 6 +- .../lib/sandbox/SandboxActionContextProvider.java | 3 +- .../devtools/build/lib/sandbox/SandboxHelpers.java | 14 +--- 17 files changed, 185 insertions(+), 137 deletions(-) (limited to 'src/main') diff --git a/src/main/java/com/google/devtools/build/docgen/templates/attributes/common/tags.html b/src/main/java/com/google/devtools/build/docgen/templates/attributes/common/tags.html index 5ccc56ba33..55b73d2560 100644 --- a/src/main/java/com/google/devtools/build/docgen/templates/attributes/common/tags.html +++ b/src/main/java/com/google/devtools/build/docgen/templates/attributes/common/tags.html @@ -21,6 +21,20 @@