Skip to content

ateapi: require external_volume_class for external volumes and remove StorageClass support - #3816

Draft
Vu Le (lekhoavu2909) wants to merge 25 commits into
agent-substrate:mainfrom
lekhoavu2909:evc-pr9-retire-sc
Draft

Vu Le (lekhoavu2909) wants to merge 25 commits into
agent-substrate:mainfrom
lekhoavu2909:evc-pr9-retire-sc

Conversation

@lekhoavu2909

@lekhoavu2909 Vu Le (lekhoavu2909) commented Nov 12, 2026 •

Copy link
Copy Markdown
Collaborator

External volumes must now name an ExternalVolumeClass. ExternalVolumeTemplate.storage_class_name is no longer accepted, and ate-api-server stops reading Kubernetes StorageClasses. Stacked on #3806, which moved the repo's demos, e2e tests and benchmarks to ExternalVolumeClasses.

  • swap remaining volume test templates in functionaltest and workload_spec_test to EVC
  • remove StorageClass provisioning branch, informer, lister, and ClusterRole RBAC from ateapi
  • forbid storage_class_name and require external_volume_class in ateapi.proto and apivalidation

Part of #3754

AI use: AI-assisted, I reviewed and tested it.

Breaking change: yes, for the ExternalVolumes preview. Templates must use external_volume_class; storage_class_name is rejected. Before upgrading, create an ExternalVolumeClass for each StorageClass your templates use (same driver, parameters and mount options), then recreate those templates with external_volume_class. Stored templates that still use storage_class_name fail at CreateActor until they are recreated. Actors whose volumes are already provisioned keep working.

  • Tests pass
  • Docs updated

regenerate ateapi.go, and register ExternalVolumeClass in apitool
TestBuild_Annotations.

Signed-off-by: Vu Le <vulk@google.com>
controlapi.ServiceImpl store pass-throughs

Signed-off-by: Vu Le <vulk@google.com>
table truncation and driver_name column test

Signed-off-by: Vu Le <vulk@google.com>
Signed-off-by: Vu Le <vulk@google.com>
Signed-off-by: Vu Le <vulk@google.com>
apitool example

Signed-off-by: Vu Le <vulk@google.com>
Signed-off-by: Vu Le <vulk@google.com>
Signed-off-by: Vu Le <vulk@google.com>
Signed-off-by: Vu Le <vulk@google.com>
Signed-off-by: Vu Le <vulk@google.com>
Signed-off-by: Vu Le <vulk@google.com>
Signed-off-by: Vu Le <vulk@google.com>
Signed-off-by: Vu Le <vulk@google.com>
Signed-off-by: Vu Le <vulk@google.com>
Signed-off-by: Vu Le <vulk@google.com>
Signed-off-by: Vu Le <vulk@google.com>
Signed-off-by: Vu Le <vulk@google.com>
@lekhoavu2909 Vu Le (lekhoavu2909) added the breaking-change PRs with breaking changes label Nov 12, 2026
@lekhoavu2909 Vu Le (lekhoavu2909) changed the title evc pr9 retire sc ateapi: require external_volume_class for external volumes and remove StorageClass support Nov 12, 2026
workload_spec_test to EVC

Signed-off-by: Vu Le <vulk@google.com>
…rRole RBAC from ateapi

Signed-off-by: Vu Le <vulk@google.com>
….proto and apivalidation

Signed-off-by: Vu Le <vulk@google.com>

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

breaking-change PRs with breaking changes

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant