Skip to content

Commit aa38ca6

Browse files
authored
porch: Added renderstatus to packagerevisionresources update api (#3522)
1 parent 2781133 commit aa38ca6

28 files changed

+1723
-193
lines changed

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ kpt/kpt
2020
*.exe
2121
*.gif
2222
bin/
23+
**/__debug_bin
2324

2425
# Emacs temp files
2526
*~

commands/fn/render/cmdrender.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -135,7 +135,7 @@ func (r *Runner) runE(c *cobra.Command, _ []string) error {
135135
RunnerOptions: r.RunnerOptions,
136136
FileSystem: filesys.FileSystemOrOnDisk{},
137137
}
138-
if err := executor.Execute(r.ctx); err != nil {
138+
if _, err := executor.Execute(r.ctx); err != nil {
139139
return err
140140
}
141141

internal/util/render/executor.go

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -66,14 +66,14 @@ type Renderer struct {
6666
}
6767

6868
// Execute runs a pipeline.
69-
func (e *Renderer) Execute(ctx context.Context) error {
69+
func (e *Renderer) Execute(ctx context.Context) (*fnresult.ResultList, error) {
7070
const op errors.Op = "fn.render"
7171

7272
pr := printer.FromContextOrDie(ctx)
7373

7474
root, err := newPkgNode(e.FileSystem, e.PkgPath, nil)
7575
if err != nil {
76-
return errors.E(op, types.UniquePath(e.PkgPath), err)
76+
return nil, errors.E(op, types.UniquePath(e.PkgPath), err)
7777
}
7878

7979
// initialize hydration context
@@ -91,17 +91,17 @@ func (e *Renderer) Execute(ctx context.Context) error {
9191
// to avoid masking the hydration error.
9292
// don't disable the CLI output in case of error
9393
_ = e.saveFnResults(ctx, hctx.fnResults)
94-
return errors.E(op, root.pkg.UniquePath, err)
94+
return hctx.fnResults, errors.E(op, root.pkg.UniquePath, err)
9595
}
9696

9797
// adjust the relative paths of the resources.
9898
err = adjustRelPath(hctx)
9999
if err != nil {
100-
return err
100+
return nil, err
101101
}
102102

103103
if err = trackOutputFiles(hctx); err != nil {
104-
return err
104+
return nil, err
105105
}
106106

107107
// add metrics annotation to output resources to track the usage as the resources
@@ -122,11 +122,11 @@ func (e *Renderer) Execute(ctx context.Context) error {
122122
}
123123
err = pkgWriter.Write(hctx.root.resources)
124124
if err != nil {
125-
return fmt.Errorf("failed to save resources: %w", err)
125+
return nil, fmt.Errorf("failed to save resources: %w", err)
126126
}
127127

128128
if err = pruneResources(e.FileSystem, hctx); err != nil {
129-
return err
129+
return nil, err
130130
}
131131
pr.Printf("Successfully executed %d function(s) in %d package(s).\n", hctx.executedFunctionCnt, len(hctx.pkgs))
132132
} else {
@@ -140,11 +140,11 @@ func (e *Renderer) Execute(ctx context.Context) error {
140140
}
141141
err = writer.Write(hctx.root.resources)
142142
if err != nil {
143-
return fmt.Errorf("failed to write resources: %w", err)
143+
return nil, fmt.Errorf("failed to write resources: %w", err)
144144
}
145145
}
146146

147-
return e.saveFnResults(ctx, hctx.fnResults)
147+
return hctx.fnResults, e.saveFnResults(ctx, hctx.fnResults)
148148
}
149149

150150
func (e *Renderer) saveFnResults(ctx context.Context, fnResults *fnresult.ResultList) error {

pkg/fn/render.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ package fn
1717
import (
1818
"context"
1919

20+
fnresult "github.com/GoogleContainerTools/kpt/pkg/api/fnresult/v1"
2021
"sigs.k8s.io/kustomize/kyaml/filesys"
2122
)
2223

@@ -26,5 +27,5 @@ type RenderOptions struct {
2627
}
2728

2829
type Renderer interface {
29-
Render(ctx context.Context, pkg filesys.FileSystem, opts RenderOptions) error
30+
Render(ctx context.Context, pkg filesys.FileSystem, opts RenderOptions) (*fnresult.ResultList, error)
3031
}

porch/api/generated/clientset/versioned/typed/porch/v1alpha1/fake/fake_packagerevisionresources.go

Lines changed: 12 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

porch/api/generated/clientset/versioned/typed/porch/v1alpha1/packagerevisionresources.go

Lines changed: 17 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)