Refactor `_artifactcache` folder
As it stands, the
_artifactcache folder contains all the CAS logic, but #440 (closed) proposes using a remote
SourceCache that is CAS based. The
CASCache class implements a lot of the remote logic, with
CASRemote being more of a data structure containing GRPC stubs and such.
I propose to refactor the
_artifactcache folder making it a
_cas folder, moving
ArtifactCache into a buildstream root module, and separating out remote and local CAS logic. This will make it easier to add the
SourceCache, reusing the remote logic while writing out in a separate format.
_artifactcache.pyin the buildstream root, changing relevant imports.
CASRemoteinto it's own file and change relevant imports.
Move remote logic from
ArtifactCacheto work with new changes.
Behavior should remain exactly the same with refactored
This when done will allow work to start on #440 (closed)