feat(storage): add root volume expansion
test / go (push) Successful in 4m59s

This commit is contained in:
shiran
2026-09-01 15:02:21 +08:00
parent 4f7f1f0fba
commit 06b11d8121
4 changed files with 32 additions and 7 deletions
+7
View File
@@ -86,6 +86,10 @@ type ModifyVolumeRequest struct {
Throughput int32 `json:"throughput,omitempty"`
ExpectedConfigurationFingerprint string `json:"expected_configuration_fingerprint,omitempty"`
}
type ExpandRootVolumeRequest struct {
SizeGiB int32 `json:"size_gib"`
ExpectedConfigurationFingerprint string `json:"expected_configuration_fingerprint,omitempty"`
}
func (s *VolumeService) List(ctx context.Context, region, instanceID string) ([]Volume, error) {
var result struct {
@@ -106,6 +110,9 @@ func (s *VolumeService) Detach(ctx context.Context, region, instanceID, volumeID
func (s *VolumeService) Modify(ctx context.Context, region, instanceID, volumeID string, input ModifyVolumeRequest, options ...RequestOption) (*Operation, error) {
return (&InstancesService{client: s.client}).operation(ctx, http.MethodPatch, instancesPath(region, instanceID)+"/volumes/"+escaped(volumeID), input, options...)
}
func (s *VolumeService) ExpandRoot(ctx context.Context, region, instanceID string, input ExpandRootVolumeRequest, options ...RequestOption) (*Operation, error) {
return (&InstancesService{client: s.client}).operation(ctx, http.MethodPatch, instancesPath(region, instanceID)+"/root-volume", input, options...)
}
func (s *VolumeService) Delete(ctx context.Context, region, instanceID, volumeID string, force bool, options ...RequestOption) (*Operation, error) {
return (&InstancesService{client: s.client}).operation(ctx, http.MethodDelete, instancesPath(region, instanceID)+"/volumes/"+escaped(volumeID), map[string]bool{"force": force}, options...)
}