Snapshots in object storage can be owned by either Actor or Tag resources. Who owns the resource dictates the base path under which they are stored.
- Actor:
<base-location>/atespaces/<actor-atespace>/actors/<actor-uid>/snapshots/<snapshot-name>
- Tag:
<base-location>/atespaces/<tag-atespace>/tags/<tag-name>
(both snapshot-name and tag-name are random UUID generated at snapshot creation time)
I think we should change the Tag case to be:
<base-location>/atespaces/<tag-atespace>/tags/<tag-uid>
This has a much nicer property, which for both resources that can own snapshots, you can find all the blobs they ever referenced under a given path.
I think using deterministic naming like this will also allow us to remove the Tag.status.in_progress_snapshot_uri field.
Luiz Oliveira (@laoj2)
Snapshots in object storage can be owned by either
ActororTagresources. Who owns the resource dictates the base path under which they are stored.<base-location>/atespaces/<actor-atespace>/actors/<actor-uid>/snapshots/<snapshot-name><base-location>/atespaces/<tag-atespace>/tags/<tag-name>(both
snapshot-nameandtag-nameare random UUID generated at snapshot creation time)I think we should change the Tag case to be:
<base-location>/atespaces/<tag-atespace>/tags/<tag-uid>This has a much nicer property, which for both resources that can own snapshots, you can find all the blobs they ever referenced under a given path.
I think using deterministic naming like this will also allow us to remove the
Tag.status.in_progress_snapshot_urifield.Luiz Oliveira (@laoj2)