mirror of
https://gitea.com/Lydanne/buildx.git
synced 2025-07-09 21:17:09 +08:00
vendor: update buildkit to master@31c870e82a48
Signed-off-by: Justin Chadwell <me@jedevc.com>
This commit is contained in:
33
vendor/github.com/moby/buildkit/client/llb/fileop.go
generated
vendored
33
vendor/github.com/moby/buildkit/client/llb/fileop.go
generated
vendored
@ -48,6 +48,7 @@ func NewFileOp(s State, action *FileAction, c Constraints) *FileOp {
|
||||
}
|
||||
|
||||
// CopyInput is either llb.State or *FileActionWithState
|
||||
// It is used by [Copy] to to specify the source of the copy operation.
|
||||
type CopyInput interface {
|
||||
isFileOpCopyInput()
|
||||
}
|
||||
@ -131,6 +132,10 @@ type fileActionWithState struct {
|
||||
|
||||
func (fas *fileActionWithState) isFileOpCopyInput() {}
|
||||
|
||||
// Mkdir creates a FileAction which creates a directory at the given path.
|
||||
// Example:
|
||||
//
|
||||
// llb.Scratch().File(llb.Mkdir("/foo", 0755))
|
||||
func Mkdir(p string, m os.FileMode, opt ...MkdirOption) *FileAction {
|
||||
var mi MkdirInfo
|
||||
for _, o := range opt {
|
||||
@ -181,6 +186,7 @@ func (fn mkdirOptionFunc) SetMkdirOption(mi *MkdirInfo) {
|
||||
|
||||
var _ MkdirOption = &MkdirInfo{}
|
||||
|
||||
// WithParents is an option for Mkdir which creates parent directories if they do not exist.
|
||||
func WithParents(b bool) MkdirOption {
|
||||
return mkdirOptionFunc(func(mi *MkdirInfo) {
|
||||
mi.MakeParents = b
|
||||
@ -282,6 +288,10 @@ func (up *UserOpt) marshal(base pb.InputIndex) *pb.UserOpt {
|
||||
return &pb.UserOpt{User: &pb.UserOpt_ByID{ByID: uint32(up.UID)}}
|
||||
}
|
||||
|
||||
// Mkfile creates a FileAction which creates a file at the given path with the provided contents.
|
||||
// Example:
|
||||
//
|
||||
// llb.Scratch().File(llb.Mkfile("/foo", 0644, []byte("hello world!")))
|
||||
func Mkfile(p string, m os.FileMode, dt []byte, opts ...MkfileOption) *FileAction {
|
||||
var mi MkfileInfo
|
||||
for _, o := range opts {
|
||||
@ -332,6 +342,10 @@ func (a *fileActionMkfile) toProtoAction(ctx context.Context, parent string, bas
|
||||
}, nil
|
||||
}
|
||||
|
||||
// Rm creates a FileAction which removes a file or directory at the given path.
|
||||
// Example:
|
||||
//
|
||||
// llb.Scratch().File(Mkfile("/foo", 0644, []byte("not around for long..."))).File(llb.Rm("/foo"))
|
||||
func Rm(p string, opts ...RmOption) *FileAction {
|
||||
var mi RmInfo
|
||||
for _, o := range opts {
|
||||
@ -394,6 +408,25 @@ func (a *fileActionRm) toProtoAction(ctx context.Context, parent string, base pb
|
||||
}, nil
|
||||
}
|
||||
|
||||
// Copy produces a FileAction which copies a file or directory from the source to the destination.
|
||||
// The "input" parameter is the contents to copy from.
|
||||
// "src" is the path to copy from within the "input".
|
||||
// "dest" is the path to copy to within the destination (the state being operated on).
|
||||
// See [CopyInput] for the valid types of input.
|
||||
//
|
||||
// Example:
|
||||
//
|
||||
// st := llb.Local(".")
|
||||
// llb.Scratch().File(llb.Copy(st, "/foo", "/bar"))
|
||||
//
|
||||
// The example copies the local (client) directory "./foo" to a new empty directory at /bar.
|
||||
//
|
||||
// Note: Copying directories can have different behavior based on if the destination exists or not.
|
||||
// When the destination already exists, the contents of the source directory is copied underneath the destination, including the directory itself.
|
||||
// You may need to supply a copy option to copy the dir contents only.
|
||||
// You may also need to pass in a [CopyOption] which creates parent directories if they do not exist.
|
||||
//
|
||||
// See [CopyOption] for more details on what options are available.
|
||||
func Copy(input CopyInput, src, dest string, opts ...CopyOption) *FileAction {
|
||||
var state *State
|
||||
var fas *fileActionWithState
|
||||
|
Reference in New Issue
Block a user