Browse code

builder-next: clear temp leases on startup

Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>

Tonis Tiigi authored on 2019/10/22 15:15:56
Showing 3 changed files
... ...
@@ -75,8 +75,6 @@ func NewSnapshotter(opt Opt, prevLM leases.Manager) (snapshot.Snapshotter, lease
75 75
 
76 76
 	lm := newLeaseManager(s, prevLM)
77 77
 
78
-	// TODO: temp-leases
79
-
80 78
 	ll, err := lm.List(context.TODO())
81 79
 	if err != nil {
82 80
 		return nil, nil, err
... ...
@@ -1,6 +1,7 @@
1 1
 package buildkit
2 2
 
3 3
 import (
4
+	"context"
4 5
 	"net/http"
5 6
 	"os"
6 7
 	"path/filepath"
... ...
@@ -166,6 +167,14 @@ func newController(rt http.RoundTripper, opt Opt) (*control.Controller, error) {
166 166
 		return nil, err
167 167
 	}
168 168
 
169
+	leases, err := lm.List(context.TODO(), "labels.\"buildkit/lease.temporary\"")
170
+	if err != nil {
171
+		return nil, err
172
+	}
173
+	for _, l := range leases {
174
+		lm.Delete(context.TODO(), l)
175
+	}
176
+
169 177
 	wopt := mobyworker.Opt{
170 178
 		ID:                "moby",
171 179
 		MetadataStore:     md,
... ...
@@ -59,7 +59,6 @@ type checker struct {
59 59
 }
60 60
 
61 61
 func (c *checker) Exists(key string, chain []digest.Digest) bool {
62
-	// TODO: neeeds update
63 62
 	if c.opt.ImageStore == nil {
64 63
 		return false
65 64
 	}