mirror of
https://gitea.com/Lydanne/buildx.git
synced 2025-07-09 21:17:09 +08:00
vendor: update buildkit to master@b49a8873179b
Signed-off-by: Justin Chadwell <me@jedevc.com>
This commit is contained in:
24
vendor/github.com/moby/buildkit/frontend/dockerfile/dockerignore/dockerignore.go
generated
vendored
24
vendor/github.com/moby/buildkit/frontend/dockerfile/dockerignore/dockerignore.go
generated
vendored
@ -6,23 +6,31 @@ import (
|
||||
"io"
|
||||
"path/filepath"
|
||||
"strings"
|
||||
|
||||
"github.com/pkg/errors"
|
||||
)
|
||||
|
||||
// ReadAll reads a .dockerignore file and returns the list of file patterns
|
||||
// to ignore. Note this will trim whitespace from each line as well
|
||||
// as use GO's "clean" func to get the shortest/cleanest path for each.
|
||||
// ReadAll reads an ignore file from a reader and returns the list of file
|
||||
// patterns to ignore, applying the following rules:
|
||||
//
|
||||
// - An UTF8 BOM header (if present) is stripped.
|
||||
// - Lines starting with "#" are considered comments and are skipped.
|
||||
//
|
||||
// For remaining lines:
|
||||
//
|
||||
// - Leading and trailing whitespace is removed from each ignore pattern.
|
||||
// - It uses [filepath.Clean] to get the shortest/cleanest path for
|
||||
// ignore patterns.
|
||||
// - Leading forward-slashes ("/") are removed from ignore patterns,
|
||||
// so "/some/path" and "some/path" are considered equivalent.
|
||||
func ReadAll(reader io.Reader) ([]string, error) {
|
||||
if reader == nil {
|
||||
return nil, nil
|
||||
}
|
||||
|
||||
scanner := bufio.NewScanner(reader)
|
||||
var excludes []string
|
||||
currentLine := 0
|
||||
|
||||
utf8bom := []byte{0xEF, 0xBB, 0xBF}
|
||||
|
||||
scanner := bufio.NewScanner(reader)
|
||||
for scanner.Scan() {
|
||||
scannedBytes := scanner.Bytes()
|
||||
// We trim UTF8 BOM
|
||||
@ -59,7 +67,7 @@ func ReadAll(reader io.Reader) ([]string, error) {
|
||||
excludes = append(excludes, pattern)
|
||||
}
|
||||
if err := scanner.Err(); err != nil {
|
||||
return nil, errors.Wrap(err, "error reading .dockerignore")
|
||||
return nil, err
|
||||
}
|
||||
return excludes, nil
|
||||
}
|
||||
|
7
vendor/github.com/moby/buildkit/frontend/dockerui/config.go
generated
vendored
7
vendor/github.com/moby/buildkit/frontend/dockerui/config.go
generated
vendored
@ -80,7 +80,8 @@ type Client struct {
|
||||
g flightcontrol.Group[*buildContext]
|
||||
bopts client.BuildOpts
|
||||
|
||||
dockerignore []byte
|
||||
dockerignore []byte
|
||||
dockerignoreName string
|
||||
}
|
||||
|
||||
type SBOM struct {
|
||||
@ -375,6 +376,7 @@ func (bc *Client) ReadEntrypoint(ctx context.Context, lang string, opts ...llb.L
|
||||
})
|
||||
if err == nil {
|
||||
bc.dockerignore = dt
|
||||
bc.dockerignoreName = bctx.filename + ".dockerignore"
|
||||
}
|
||||
|
||||
return &Source{
|
||||
@ -435,13 +437,14 @@ func (bc *Client) MainContext(ctx context.Context, opts ...llb.LocalOption) (*ll
|
||||
dt = []byte{}
|
||||
}
|
||||
bc.dockerignore = dt
|
||||
bc.dockerignoreName = DefaultDockerignoreName
|
||||
}
|
||||
|
||||
var excludes []string
|
||||
if len(bc.dockerignore) != 0 {
|
||||
excludes, err = dockerignore.ReadAll(bytes.NewBuffer(bc.dockerignore))
|
||||
if err != nil {
|
||||
return nil, errors.Wrap(err, "failed to parse dockerignore")
|
||||
return nil, errors.Wrapf(err, "failed parsing %s", bc.dockerignoreName)
|
||||
}
|
||||
}
|
||||
|
||||
|
2
vendor/github.com/moby/buildkit/frontend/dockerui/namedcontext.go
generated
vendored
2
vendor/github.com/moby/buildkit/frontend/dockerui/namedcontext.go
generated
vendored
@ -208,7 +208,7 @@ func (bc *Client) namedContextRecursive(ctx context.Context, name string, nameWi
|
||||
if len(dt) != 0 {
|
||||
excludes, err = dockerignore.ReadAll(bytes.NewBuffer(dt))
|
||||
if err != nil {
|
||||
return nil, nil, err
|
||||
return nil, nil, errors.Wrapf(err, "failed parsing %s", DefaultDockerignoreName)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user