| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
| |
Previously, if an artifact proto had no files at all in it, we would
fail at pushing it, making BuildStream crash.
When no files are part of an artifact proto, we can short-circuit
the call and avoid pushing them unecessarily.
- Add a test to ensure this doesn't come back.
|
|
|
|
|
|
|
| |
It's sufficient to check the capabilities once per bst session. This
avoids the extra round trip in remote.init().
This also adds a check for allow_updates for push remotes.
|
|
|
|
|
| |
There is no need to create a new stub for every request. This also
matches what SourceRemote does.
|
|
|
|
|
|
|
| |
This is now split into storage/index remotes, where the former is
expected to be a CASRemote and the latter a BuildStream-specific
remote with the extensions required to store BuildStream artifact
protos.
|
|
|
|
| |
This was almost entirely just historical code duplication.
|
|
|
|
|
|
| |
If remotes exist, each remote will be checked for the target
artifacts. If an artifact is cached remotely, we make a
record of this.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
This is used in the remote initialisation to check that artifact service
is supported. This should allow us to seperate the endpoints of
different services more easily in future.
Part of #915
|
|
|
|
|
|
|
| |
This never will have worked because digests aren't hashable, and this
method wasn't being covered in any tests. Also changed
`remote_missing_blobs` to ensure the blobs list is an iterator and
updated its docs.
|
|
|
|
|
|
|
|
|
| |
This creates a new ArtifactRemote class, derived from CASRemote that
extends initialisation to check for an artifact service. This drops the
remote early rather than raising an error on method not found each time
it tries to use it.
Fixes #1025
|
| |
|
|
This was discussed in #1008.
Fixes #1009.
|