mirror of
https://gitea.com/Lydanne/buildx.git
synced 2025-07-09 21:17:09 +08:00
vendor: update buildkit to master@cbfd4023383d
Signed-off-by: Justin Chadwell <me@jedevc.com>
This commit is contained in:
@ -27,7 +27,10 @@ func ParseSSHSpecs(sl []string) ([]*controllerapi.SSH, error) {
|
||||
}
|
||||
|
||||
// IsGitSSH returns true if the given repo URL is accessed over ssh
|
||||
func IsGitSSH(url string) bool {
|
||||
_, gitProtocol := gitutil.ParseProtocol(url)
|
||||
return gitProtocol == gitutil.SSHProtocol
|
||||
func IsGitSSH(repo string) bool {
|
||||
url, err := gitutil.ParseURL(repo)
|
||||
if err != nil {
|
||||
return false
|
||||
}
|
||||
return url.Scheme == gitutil.SSHProtocol
|
||||
}
|
||||
|
@ -2,7 +2,6 @@ package progress
|
||||
|
||||
import (
|
||||
"context"
|
||||
"io"
|
||||
"os"
|
||||
"sync"
|
||||
|
||||
@ -11,17 +10,9 @@ import (
|
||||
"github.com/moby/buildkit/client"
|
||||
"github.com/moby/buildkit/util/progress/progressui"
|
||||
"github.com/opencontainers/go-digest"
|
||||
"github.com/pkg/errors"
|
||||
"github.com/sirupsen/logrus"
|
||||
)
|
||||
|
||||
const (
|
||||
PrinterModeAuto = "auto"
|
||||
PrinterModeTty = "tty"
|
||||
PrinterModePlain = "plain"
|
||||
PrinterModeQuiet = "quiet"
|
||||
)
|
||||
|
||||
type Printer struct {
|
||||
status chan *client.SolveStatus
|
||||
|
||||
@ -89,28 +80,19 @@ func (p *Printer) ClearLogSource(v interface{}) {
|
||||
}
|
||||
}
|
||||
|
||||
func NewPrinter(ctx context.Context, w io.Writer, out console.File, mode string, opts ...PrinterOpt) (*Printer, error) {
|
||||
func NewPrinter(ctx context.Context, out console.File, mode progressui.DisplayMode, opts ...PrinterOpt) (*Printer, error) {
|
||||
opt := &printerOpts{}
|
||||
for _, o := range opts {
|
||||
o(opt)
|
||||
}
|
||||
|
||||
if v := os.Getenv("BUILDKIT_PROGRESS"); v != "" && mode == PrinterModeAuto {
|
||||
mode = v
|
||||
if v := os.Getenv("BUILDKIT_PROGRESS"); v != "" && mode == progressui.AutoMode {
|
||||
mode = progressui.DisplayMode(v)
|
||||
}
|
||||
|
||||
var c console.Console
|
||||
switch mode {
|
||||
case PrinterModeQuiet:
|
||||
w = io.Discard
|
||||
case PrinterModeAuto, PrinterModeTty:
|
||||
if cons, err := console.ConsoleFromFile(out); err == nil {
|
||||
c = cons
|
||||
} else {
|
||||
if mode == PrinterModeTty {
|
||||
return nil, errors.Wrap(err, "failed to get console")
|
||||
}
|
||||
}
|
||||
d, err := progressui.NewDisplay(out, mode, opt.displayOpts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
pw := &Printer{
|
||||
@ -128,7 +110,7 @@ func NewPrinter(ctx context.Context, w io.Writer, out console.File, mode string,
|
||||
resumeLogs := logutil.Pause(logrus.StandardLogger())
|
||||
close(pw.ready)
|
||||
// not using shared context to not disrupt display but let is finish reporting errors
|
||||
pw.warnings, pw.err = progressui.DisplaySolveStatus(ctx, c, w, pw.status, opt.displayOpts...)
|
||||
pw.warnings, pw.err = d.UpdateFrom(ctx, pw.status)
|
||||
resumeLogs()
|
||||
close(pw.done)
|
||||
|
||||
@ -162,7 +144,7 @@ func (p *Printer) BuildRefs() map[string]string {
|
||||
}
|
||||
|
||||
type printerOpts struct {
|
||||
displayOpts []progressui.DisplaySolveStatusOpt
|
||||
displayOpts []progressui.DisplayOpt
|
||||
|
||||
onclose func()
|
||||
}
|
||||
|
Reference in New Issue
Block a user