build: support for saving local state by build ref

Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
This commit is contained in:
CrazyMax
2023-04-03 11:09:17 +02:00
committed by Tonis Tiigi
parent 672eeed9a6
commit 200058b505
5 changed files with 155 additions and 0 deletions

View File

@ -7,6 +7,7 @@ import (
"sort"
"time"
"github.com/docker/buildx/localstate"
"github.com/docker/docker/pkg/ioutils"
"github.com/gofrs/flock"
"github.com/opencontainers/go-digest"
@ -120,6 +121,13 @@ func (t *Txn) Remove(name string) error {
if err := t.RemoveLastActivity(name); err != nil {
return err
}
ls, err := localstate.New(t.s.root)
if err != nil {
return err
}
if err := ls.RemoveBuilder(name); err != nil {
return err
}
return os.RemoveAll(filepath.Join(t.s.root, instanceDir, name))
}