diff --git a/plan/task/copy.go b/plan/task/copy.go index ff79e3c2..a9df4ccd 100644 --- a/plan/task/copy.go +++ b/plan/task/copy.go @@ -2,9 +2,7 @@ package task import ( "context" - "fmt" - "cuelang.org/go/cue" "github.com/moby/buildkit/client/llb" "go.dagger.io/dagger/compiler" "go.dagger.io/dagger/plancontext" @@ -40,14 +38,11 @@ func (t *copyTask) Run(ctx context.Context, pctx *plancontext.Context, s solver. } sourceState, err := sourceRoot.Result().ToState() - if err != nil { return nil, err } sourcePath, err := v.Lookup("source.path").String() - fmt.Println(sourcePath) - if err != nil { return nil, err } @@ -82,11 +77,15 @@ func (t *copyTask) Run(ctx context.Context, pctx *plancontext.Context, s solver. fs := pctx.FS.New(result) - output := compiler.NewValue() + return compiler.NewValue().FillFields(map[string]interface{}{ + "output": fs.MarshalCUE(), + }) - if err := output.FillPath(cue.ParsePath("output"), fs.MarshalCUE()); err != nil { - return nil, err - } + // output := compiler.NewValue() - return output, nil + // if err := output.FillPath(cue.ParsePath("output"), fs.MarshalCUE()); err != nil { + // return nil, err + // } + + // return output, nil } diff --git a/stdlib/europa/dagger/engine/fs.cue b/stdlib/europa/dagger/engine/fs.cue index ee5fd875..49f1919c 100644 --- a/stdlib/europa/dagger/engine/fs.cue +++ b/stdlib/europa/dagger/engine/fs.cue @@ -59,11 +59,15 @@ package engine // Copy files from one FS tree to another #Copy: { - @dagger(notimplemented) + // @dagger(notimplemented) $dagger: task: _name: "Copy" input: #FS - #CopyInfo + source: { + root: #FS + path: string | *"/" + } + dest: string output: #FS } @@ -84,19 +88,3 @@ package engine layers: [...#CopyInfo] output: #FS } - -#Copy: { - _type: "Copy" - - input: #FS - #CopyInfo - output: #FS -} - -#CopyInfo: { - source: { - root: #FS - path: string | *"/" - } - dest: string -}