Skip to content

feat(api): add the S3 storage identity type - #662

Merged
oleg-kushniriov merged 1 commit into
feat/pvc-restorefrom
feat/s3-store-identity
Oct 22, 2026
Merged

oleg-kushniriov merged 1 commit into
feat/pvc-restorefrom
feat/s3-store-identity

Conversation

@oleg-kushniriov

@oleg-kushniriov oleg-kushniriov commented Oct 20, 2026 •

Copy link
Copy Markdown
Contributor

Adds storage.S3, hashing endpoint/region/bucket/prefix into a store ID with the same length-prefixed encoding as storage.PVC. storage.Config gains an S3 field alongside PVC.

Part of a stack targeting S3 support in the operator, agent and chart without depending on PageBroker's own S3 implementation (which lands independently). Base is #492.

S3 has no PageBroker-side identity computation to cross-check against: PageBroker reads storeId as a literal config field rather than deriving it (see the next PR in this stack), so unlike PVC there is no shared cross-language fixture to pin here.

Which issue(s) this PR addresses

Part of #237.

How was this tested?

  • go build, go vet, gofmt -l, go test ./storage/... (containerized, golang:1.27.2) — all clean.

Does this PR introduce an API change?

NONE

S3 store IDs hash endpoint, region, bucket and prefix, matching the
PVC identity's length-prefixed encoding. PageBroker does not compute
this itself for S3 (unlike PVC's ComputeStoreID): #416 reads storeId
as a literal config field, so there is no cross-language parity
vector to pin here, unlike testdata/identity.json for PVC.

Signed-off-by: Oleg Kushniriov <okushniriov@nvidia.com>
@coderabbitai

coderabbitai Bot commented Oct 20, 2026

Copy link
Copy Markdown
Contributor

Important

Draft PR not reviewed

Draft PRs are not automatically reviewed by default.

  • Trigger a manual review

To automatically review draft PRs, update your CodeRabbit configuration:

reviews:
  auto_review:
    drafts: true
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Comment @coderabbitai help to get the list of available commands.

@coderabbitai

coderabbitai Bot commented Oct 20, 2026 •

Copy link
Copy Markdown
Contributor

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

🗂️ Base branches to auto review: 1
  • main

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration
  • Configuration used: Repository: ai-dynamo/snapshot/.coderabbit.yaml
  • Review profile: ASSERTIVE
  • Plan: Enterprise
  • Run ID: 147a30ac-245c-41e2-a647-f9e3bff10754

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Comment @coderabbitai help to get the list of available commands.

@oleg-kushniriov
oleg-kushniriov merged commit 9feba49 into feat/pvc-restore Oct 22, 2026
9 checks passed
oleg-kushniriov added a commit that referenced this pull request Oct 22, 2026
S3 store IDs hash endpoint, region, bucket and prefix, matching the
PVC identity's length-prefixed encoding. PageBroker does not compute
this itself for S3 (unlike PVC's ComputeStoreID): #416 reads storeId
as a literal config field, so there is no cross-language parity
vector to pin here, unlike testdata/identity.json for PVC.

Signed-off-by: Oleg Kushniriov <okushniriov@nvidia.com>
oleg-kushniriov added a commit that referenced this pull request Oct 25, 2026
S3 store IDs hash endpoint, region, bucket and prefix, matching the
PVC identity's length-prefixed encoding. PageBroker does not compute
this itself for S3 (unlike PVC's ComputeStoreID): #416 reads storeId
as a literal config field, so there is no cross-language parity
vector to pin here, unlike testdata/identity.json for PVC.

Signed-off-by: Oleg Kushniriov <okushniriov@nvidia.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants