bake: allow overriding no-cache and pull per target via --set

Signed-off-by: Tibor Vass <tibor@docker.com>
This commit is contained in:
Tibor Vass
2019-10-16 22:10:17 +00:00
parent 0e1f0e3c73
commit 2a257a8252
5 changed files with 89 additions and 13 deletions

36
util/flagutil/flagutil.go Normal file
View File

@ -0,0 +1,36 @@
package flagutil
import "strconv"
type tristate struct {
opt *bool
}
// Tristate is a tri-state boolean flag type.
// It can be set, but not unset.
func Tristate(opt *bool) tristate {
return tristate{opt}
}
func (t tristate) Type() string {
return "tristate"
}
func (t tristate) String() string {
if t.opt == nil {
return "(unset)"
}
if *t.opt {
return "true"
}
return "false"
}
func (t tristate) Set(s string) error {
b, err := strconv.ParseBool(s)
if err != nil {
return err
}
t.opt = &b
return nil
}