Skip to content

Commit 2b30693

Browse files
committed
Provide CacheManager to Controller instead of CacheKeyManager.
This makes it possible for callers to customize the full CacheManager used by buildkitd without having to rewrite/fork the whole control package. Signed-off-by: Erik Sipsma <[email protected]>
1 parent e27a502 commit 2b30693

File tree

2 files changed

+5
-6
lines changed

2 files changed

+5
-6
lines changed

cmd/buildkitd/main.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@ import (
3939
"github.com/moby/buildkit/frontend/gateway"
4040
"github.com/moby/buildkit/frontend/gateway/forwarder"
4141
"github.com/moby/buildkit/session"
42+
"github.com/moby/buildkit/solver"
4243
"github.com/moby/buildkit/solver/bboltcachestorage"
4344
"github.com/moby/buildkit/util/apicaps"
4445
"github.com/moby/buildkit/util/appcontext"
@@ -687,7 +688,7 @@ func newController(c *cli.Context, cfg *config.Config) (*control.Controller, err
687688
Frontends: frontends,
688689
ResolveCacheExporterFuncs: remoteCacheExporterFuncs,
689690
ResolveCacheImporterFuncs: remoteCacheImporterFuncs,
690-
CacheKeyStorage: cacheStorage,
691+
CacheManager: solver.NewCacheManager(context.TODO(), "local", cacheStorage, worker.NewCacheResultStorage(wc)),
691692
Entitlements: cfg.Entitlements,
692693
TraceCollector: tc,
693694
HistoryDB: historyDB,

control/control.go

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ type Opt struct {
5252
SessionManager *session.Manager
5353
WorkerController *worker.Controller
5454
Frontends map[string]frontend.Frontend
55-
CacheKeyStorage solver.CacheKeyStorage
55+
CacheManager solver.CacheManager
5656
ResolveCacheExporterFuncs map[string]remotecache.ResolveCacheExporterFunc
5757
ResolveCacheImporterFuncs map[string]remotecache.ResolveCacheImporterFunc
5858
Entitlements []string
@@ -77,8 +77,6 @@ type Controller struct { // TODO: ControlService
7777
}
7878

7979
func NewController(opt Opt) (*Controller, error) {
80-
cache := solver.NewCacheManager(context.TODO(), "local", opt.CacheKeyStorage, worker.NewCacheResultStorage(opt.WorkerController))
81-
8280
gatewayForwarder := controlgateway.NewGatewayForwarder()
8381

8482
hq := llbsolver.NewHistoryQueue(llbsolver.HistoryQueueOpt{
@@ -91,7 +89,7 @@ func NewController(opt Opt) (*Controller, error) {
9189
s, err := llbsolver.New(llbsolver.Opt{
9290
WorkerController: opt.WorkerController,
9391
Frontends: opt.Frontends,
94-
CacheManager: cache,
92+
CacheManager: opt.CacheManager,
9593
CacheResolvers: opt.ResolveCacheImporterFuncs,
9694
GatewayForwarder: gatewayForwarder,
9795
SessionManager: opt.SessionManager,
@@ -106,7 +104,7 @@ func NewController(opt Opt) (*Controller, error) {
106104
opt: opt,
107105
solver: s,
108106
history: hq,
109-
cache: cache,
107+
cache: opt.CacheManager,
110108
gatewayForwarder: gatewayForwarder,
111109
}
112110
c.throttledGC = throttle.After(time.Minute, c.gc)

0 commit comments

Comments
 (0)