MCPcopy
hub / github.com/lxc/incus / storagePoolBucketDelete

Function storagePoolBucketDelete

cmd/incusd/storage_buckets.go:928–964  ·  view source on GitHub ↗

swagger:operation DELETE /1.0/storage-pools/{name}/buckets/{bucketName} storage storage_pool_bucket_delete Delete the storage bucket Removes the storage bucket. --- produces: - application/json parameters: - in: path name: name description: Resource name type: string

(d *Daemon, r *http.Request)

Source from the content-addressed store, hash-verified

926// "500":
927// $ref: "#/responses/InternalServerError"
928func storagePoolBucketDelete(d *Daemon, r *http.Request) response.Response {
929 s := d.State()
930
931 resp := forwardedResponseIfTargetIsRemote(s, r)
932 if resp != nil {
933 return resp
934 }
935
936 bucketProjectName, err := project.StorageBucketProject(r.Context(), s.DB.Cluster, request.ProjectParam(r))
937 if err != nil {
938 return response.SmartError(err)
939 }
940
941 poolName, err := pathVar(r, "poolName")
942 if err != nil {
943 return response.SmartError(err)
944 }
945
946 pool, err := storagePools.LoadByName(s, poolName)
947 if err != nil {
948 return response.SmartError(fmt.Errorf("Failed loading storage pool: %w", err))
949 }
950
951 bucketName, err := pathVar(r, "bucketName")
952 if err != nil {
953 return response.SmartError(err)
954 }
955
956 err = pool.DeleteBucket(bucketProjectName, bucketName, nil)
957 if err != nil {
958 return response.SmartError(fmt.Errorf("Failed deleting storage bucket: %w", err))
959 }
960
961 s.Events.SendLifecycle(bucketProjectName, lifecycle.StorageBucketDeleted.Event(pool, bucketProjectName, bucketName, request.CreateRequestor(r), nil))
962
963 return response.EmptySyncResponse
964}
965
966// API endpoints
967

Callers

nothing calls this directly

Calls 12

StorageBucketProjectFunction · 0.92
ProjectParamFunction · 0.92
SmartErrorFunction · 0.92
CreateRequestorFunction · 0.92
pathVarFunction · 0.85
ContextMethod · 0.80
ErrorfMethod · 0.80
SendLifecycleMethod · 0.80
StateMethod · 0.65
DeleteBucketMethod · 0.65
EventMethod · 0.45

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…