From d588092be2e2b3f7bdc429eadfc64f788486b6c8 Mon Sep 17 00:00:00 2001 From: Austin Vazquez Date: Tue, 19 Aug 2025 07:56:23 -0500 Subject: [PATCH 1/4] api/types/build: move internal to daemon backend Signed-off-by: Austin Vazquez --- api/types/build/disk_usage.go | 8 -------- daemon/server/backend/disk_usage.go | 9 ++++++++- daemon/server/router/system/system_routes.go | 2 +- .../github.com/moby/moby/api/types/build/disk_usage.go | 8 -------- 4 files changed, 9 insertions(+), 18 deletions(-) delete mode 100644 api/types/build/disk_usage.go delete mode 100644 vendor/github.com/moby/moby/api/types/build/disk_usage.go diff --git a/api/types/build/disk_usage.go b/api/types/build/disk_usage.go deleted file mode 100644 index e969b6d615..0000000000 --- a/api/types/build/disk_usage.go +++ /dev/null @@ -1,8 +0,0 @@ -package build - -// CacheDiskUsage contains disk usage for the build cache. -type CacheDiskUsage struct { - TotalSize int64 - Reclaimable int64 - Items []*CacheRecord -} diff --git a/daemon/server/backend/disk_usage.go b/daemon/server/backend/disk_usage.go index 9e0c070035..0d186b56e0 100644 --- a/daemon/server/backend/disk_usage.go +++ b/daemon/server/backend/disk_usage.go @@ -25,5 +25,12 @@ type DiskUsage struct { Images *image.DiskUsage Containers *container.DiskUsage Volumes *volume.DiskUsage - BuildCache *build.CacheDiskUsage + BuildCache *BuildCacheDiskUsage +} + +// BuildCacheDiskUsage contains disk usage for the build cache. +type BuildCacheDiskUsage struct { + TotalSize int64 + Reclaimable int64 + Items []*build.CacheRecord } diff --git a/daemon/server/router/system/system_routes.go b/daemon/server/router/system/system_routes.go index ed0c7d4778..e0708b3831 100644 --- a/daemon/server/router/system/system_routes.go +++ b/daemon/server/router/system/system_routes.go @@ -237,7 +237,7 @@ func (s *systemRouter) getDiskUsage(ctx context.Context, w http.ResponseWriter, du := backend.DiskUsage{} if getBuildCache { - du.BuildCache = &buildtypes.CacheDiskUsage{ + du.BuildCache = &backend.BuildCacheDiskUsage{ TotalSize: builderSize, Items: buildCache, } diff --git a/vendor/github.com/moby/moby/api/types/build/disk_usage.go b/vendor/github.com/moby/moby/api/types/build/disk_usage.go deleted file mode 100644 index e969b6d615..0000000000 --- a/vendor/github.com/moby/moby/api/types/build/disk_usage.go +++ /dev/null @@ -1,8 +0,0 @@ -package build - -// CacheDiskUsage contains disk usage for the build cache. -type CacheDiskUsage struct { - TotalSize int64 - Reclaimable int64 - Items []*CacheRecord -} From 566c44edfe62713cf4f27535f2db479e53865bfd Mon Sep 17 00:00:00 2001 From: Austin Vazquez Date: Tue, 19 Aug 2025 07:59:46 -0500 Subject: [PATCH 2/4] api/types/container: move `DiskUsage` type internal to daemon backend Signed-off-by: Austin Vazquez --- api/types/container/disk_usage.go | 8 -------- daemon/daemon.go | 2 +- daemon/disk_usage.go | 6 +++--- daemon/server/backend/disk_usage.go | 9 ++++++++- .../moby/moby/api/types/container/disk_usage.go | 8 -------- 5 files changed, 12 insertions(+), 21 deletions(-) delete mode 100644 api/types/container/disk_usage.go delete mode 100644 vendor/github.com/moby/moby/api/types/container/disk_usage.go diff --git a/api/types/container/disk_usage.go b/api/types/container/disk_usage.go deleted file mode 100644 index 05b6cbe9c7..0000000000 --- a/api/types/container/disk_usage.go +++ /dev/null @@ -1,8 +0,0 @@ -package container - -// DiskUsage contains disk usage for containers. -type DiskUsage struct { - TotalSize int64 - Reclaimable int64 - Items []*Summary -} diff --git a/daemon/daemon.go b/daemon/daemon.go index 93b4a2b553..d4bb90296a 100644 --- a/daemon/daemon.go +++ b/daemon/daemon.go @@ -134,7 +134,7 @@ type Daemon struct { seccompProfile []byte seccompProfilePath string - usageContainers singleflight.Group[struct{}, *containertypes.DiskUsage] + usageContainers singleflight.Group[struct{}, *backend.ContainerDiskUsage] usageImages singleflight.Group[struct{}, []*imagetypes.Summary] usageVolumes singleflight.Group[struct{}, *volumetypes.DiskUsage] usageLayer singleflight.Group[struct{}, int64] diff --git a/daemon/disk_usage.go b/daemon/disk_usage.go index ac0466a547..754ba57de6 100644 --- a/daemon/disk_usage.go +++ b/daemon/disk_usage.go @@ -15,8 +15,8 @@ import ( // containerDiskUsage obtains information about container data disk usage // and makes sure that only one calculation is performed at the same time. -func (daemon *Daemon) containerDiskUsage(ctx context.Context) (*container.DiskUsage, error) { - res, _, err := daemon.usageContainers.Do(ctx, struct{}{}, func(ctx context.Context) (*container.DiskUsage, error) { +func (daemon *Daemon) containerDiskUsage(ctx context.Context) (*backend.ContainerDiskUsage, error) { + res, _, err := daemon.usageContainers.Do(ctx, struct{}{}, func(ctx context.Context) (*backend.ContainerDiskUsage, error) { // Retrieve container list containers, err := daemon.Containers(ctx, &container.ListOptions{ Size: true, @@ -38,7 +38,7 @@ func (daemon *Daemon) containerDiskUsage(ctx context.Context) (*container.DiskUs ctr.State == container.StateRestarting } - du := &container.DiskUsage{Items: containers} + du := &backend.ContainerDiskUsage{Items: containers} for _, ctr := range du.Items { du.TotalSize += ctr.SizeRw if !isActive(ctr) { diff --git a/daemon/server/backend/disk_usage.go b/daemon/server/backend/disk_usage.go index 0d186b56e0..4d70cf90d1 100644 --- a/daemon/server/backend/disk_usage.go +++ b/daemon/server/backend/disk_usage.go @@ -23,7 +23,7 @@ type DiskUsageOptions struct { // GET "/system/df" endpoint. type DiskUsage struct { Images *image.DiskUsage - Containers *container.DiskUsage + Containers *ContainerDiskUsage Volumes *volume.DiskUsage BuildCache *BuildCacheDiskUsage } @@ -34,3 +34,10 @@ type BuildCacheDiskUsage struct { Reclaimable int64 Items []*build.CacheRecord } + +// ContainerDiskUsage contains disk usage for containers. +type ContainerDiskUsage struct { + TotalSize int64 + Reclaimable int64 + Items []*container.Summary +} diff --git a/vendor/github.com/moby/moby/api/types/container/disk_usage.go b/vendor/github.com/moby/moby/api/types/container/disk_usage.go deleted file mode 100644 index 05b6cbe9c7..0000000000 --- a/vendor/github.com/moby/moby/api/types/container/disk_usage.go +++ /dev/null @@ -1,8 +0,0 @@ -package container - -// DiskUsage contains disk usage for containers. -type DiskUsage struct { - TotalSize int64 - Reclaimable int64 - Items []*Summary -} From 0d61b55add6c0494ac8d07a32728319aad7429c0 Mon Sep 17 00:00:00 2001 From: Austin Vazquez Date: Tue, 19 Aug 2025 08:08:34 -0500 Subject: [PATCH 3/4] api/types/image: move `DiskUsage` type internal to daemon backend Signed-off-by: Austin Vazquez --- api/types/image/disk_usage.go | 8 -------- daemon/disk_usage.go | 2 +- daemon/server/backend/disk_usage.go | 9 ++++++++- .../github.com/moby/moby/api/types/image/disk_usage.go | 8 -------- 4 files changed, 9 insertions(+), 18 deletions(-) delete mode 100644 api/types/image/disk_usage.go delete mode 100644 vendor/github.com/moby/moby/api/types/image/disk_usage.go diff --git a/api/types/image/disk_usage.go b/api/types/image/disk_usage.go deleted file mode 100644 index b29d925cac..0000000000 --- a/api/types/image/disk_usage.go +++ /dev/null @@ -1,8 +0,0 @@ -package image - -// DiskUsage contains disk usage for images. -type DiskUsage struct { - TotalSize int64 - Reclaimable int64 - Items []*Summary -} diff --git a/daemon/disk_usage.go b/daemon/disk_usage.go index 754ba57de6..1c5ee1ae3b 100644 --- a/daemon/disk_usage.go +++ b/daemon/disk_usage.go @@ -150,7 +150,7 @@ func (daemon *Daemon) SystemDiskUsage(ctx context.Context, opts backend.DiskUsag } } - du.Images = &image.DiskUsage{ + du.Images = &backend.ImageDiskUsage{ TotalSize: layersSize, Reclaimable: reclaimable, Items: images, diff --git a/daemon/server/backend/disk_usage.go b/daemon/server/backend/disk_usage.go index 4d70cf90d1..211c874d56 100644 --- a/daemon/server/backend/disk_usage.go +++ b/daemon/server/backend/disk_usage.go @@ -22,7 +22,7 @@ type DiskUsageOptions struct { // DiskUsage contains the information returned by the backend for the // GET "/system/df" endpoint. type DiskUsage struct { - Images *image.DiskUsage + Images *ImageDiskUsage Containers *ContainerDiskUsage Volumes *volume.DiskUsage BuildCache *BuildCacheDiskUsage @@ -41,3 +41,10 @@ type ContainerDiskUsage struct { Reclaimable int64 Items []*container.Summary } + +// ImageDiskUsage contains disk usage for images. +type ImageDiskUsage struct { + TotalSize int64 + Reclaimable int64 + Items []*image.Summary +} diff --git a/vendor/github.com/moby/moby/api/types/image/disk_usage.go b/vendor/github.com/moby/moby/api/types/image/disk_usage.go deleted file mode 100644 index b29d925cac..0000000000 --- a/vendor/github.com/moby/moby/api/types/image/disk_usage.go +++ /dev/null @@ -1,8 +0,0 @@ -package image - -// DiskUsage contains disk usage for images. -type DiskUsage struct { - TotalSize int64 - Reclaimable int64 - Items []*Summary -} From c4e82bab7041a30205ed8a528cf43c46fce0173c Mon Sep 17 00:00:00 2001 From: Austin Vazquez Date: Tue, 19 Aug 2025 08:12:34 -0500 Subject: [PATCH 4/4] api/types/volume: move `DiskUsage` type internal to daemon backend Signed-off-by: Austin Vazquez --- api/types/volume/disk_usage.go | 8 -------- daemon/daemon.go | 3 +-- daemon/disk_usage.go | 7 +++---- daemon/server/backend/disk_usage.go | 9 ++++++++- .../github.com/moby/moby/api/types/volume/disk_usage.go | 8 -------- 5 files changed, 12 insertions(+), 23 deletions(-) delete mode 100644 api/types/volume/disk_usage.go delete mode 100644 vendor/github.com/moby/moby/api/types/volume/disk_usage.go diff --git a/api/types/volume/disk_usage.go b/api/types/volume/disk_usage.go deleted file mode 100644 index 3d716c6e00..0000000000 --- a/api/types/volume/disk_usage.go +++ /dev/null @@ -1,8 +0,0 @@ -package volume - -// DiskUsage contains disk usage for volumes. -type DiskUsage struct { - TotalSize int64 - Reclaimable int64 - Items []*Volume -} diff --git a/daemon/daemon.go b/daemon/daemon.go index d4bb90296a..a8dae6d64a 100644 --- a/daemon/daemon.go +++ b/daemon/daemon.go @@ -38,7 +38,6 @@ import ( networktypes "github.com/moby/moby/api/types/network" registrytypes "github.com/moby/moby/api/types/registry" "github.com/moby/moby/api/types/swarm" - volumetypes "github.com/moby/moby/api/types/volume" "github.com/moby/sys/user" "github.com/moby/sys/userns" "github.com/pkg/errors" @@ -136,7 +135,7 @@ type Daemon struct { usageContainers singleflight.Group[struct{}, *backend.ContainerDiskUsage] usageImages singleflight.Group[struct{}, []*imagetypes.Summary] - usageVolumes singleflight.Group[struct{}, *volumetypes.DiskUsage] + usageVolumes singleflight.Group[struct{}, *backend.VolumeDiskUsage] usageLayer singleflight.Group[struct{}, int64] pruneRunning atomic.Bool diff --git a/daemon/disk_usage.go b/daemon/disk_usage.go index 1c5ee1ae3b..1ba3990ba4 100644 --- a/daemon/disk_usage.go +++ b/daemon/disk_usage.go @@ -7,7 +7,6 @@ import ( "github.com/moby/moby/api/types/container" "github.com/moby/moby/api/types/filters" "github.com/moby/moby/api/types/image" - "github.com/moby/moby/api/types/volume" "github.com/moby/moby/v2/daemon/server/backend" "github.com/pkg/errors" "golang.org/x/sync/errgroup" @@ -70,14 +69,14 @@ func (daemon *Daemon) imageDiskUsage(ctx context.Context) ([]*image.Summary, err // localVolumesSize obtains information about volume disk usage from volumes service // and makes sure that only one size calculation is performed at the same time. -func (daemon *Daemon) localVolumesSize(ctx context.Context) (*volume.DiskUsage, error) { - volumes, _, err := daemon.usageVolumes.Do(ctx, struct{}{}, func(ctx context.Context) (*volume.DiskUsage, error) { +func (daemon *Daemon) localVolumesSize(ctx context.Context) (*backend.VolumeDiskUsage, error) { + volumes, _, err := daemon.usageVolumes.Do(ctx, struct{}{}, func(ctx context.Context) (*backend.VolumeDiskUsage, error) { volumes, err := daemon.volumes.LocalVolumesSize(ctx) if err != nil { return nil, err } - du := &volume.DiskUsage{Items: volumes} + du := &backend.VolumeDiskUsage{Items: volumes} for _, v := range du.Items { if v.UsageData.Size != -1 { if v.UsageData.RefCount == 0 { diff --git a/daemon/server/backend/disk_usage.go b/daemon/server/backend/disk_usage.go index 211c874d56..6edb47c4f5 100644 --- a/daemon/server/backend/disk_usage.go +++ b/daemon/server/backend/disk_usage.go @@ -24,7 +24,7 @@ type DiskUsageOptions struct { type DiskUsage struct { Images *ImageDiskUsage Containers *ContainerDiskUsage - Volumes *volume.DiskUsage + Volumes *VolumeDiskUsage BuildCache *BuildCacheDiskUsage } @@ -48,3 +48,10 @@ type ImageDiskUsage struct { Reclaimable int64 Items []*image.Summary } + +// VolumeDiskUsage contains disk usage for volumes. +type VolumeDiskUsage struct { + TotalSize int64 + Reclaimable int64 + Items []*volume.Volume +} diff --git a/vendor/github.com/moby/moby/api/types/volume/disk_usage.go b/vendor/github.com/moby/moby/api/types/volume/disk_usage.go deleted file mode 100644 index 3d716c6e00..0000000000 --- a/vendor/github.com/moby/moby/api/types/volume/disk_usage.go +++ /dev/null @@ -1,8 +0,0 @@ -package volume - -// DiskUsage contains disk usage for volumes. -type DiskUsage struct { - TotalSize int64 - Reclaimable int64 - Items []*Volume -}