Initial partial CAS support for remote execution
This extends SandboxRemote
to support fetching blobs from the artifact server if they are missing both on the remote execution CAS server and in the local cache.
This branch doesn't skip download of artifact files yet, however, support for that is planned for a follow-up. I.e., with this branch it should still not be possible for artifacts to be incomplete in the local cache. However, I've manually tested this by removing a file blob of an artifact. This scenario should be tested in CI after #629 (closed).
This is based on !1225 (merged). The first commit to review in this MR is "_sandboxremote.py: Remove call to verify_digest_on_remote()".
Part of #832 (closed).
Edited by Jürg Billeter