func render()

in internal/commands/install/manifest/manifest.go [111:138]


func render(repoName string, ctx *cli.Context, base, overlay runtime.Object) error {
	if ctx.String("f") != "" {
		if err := applyOverlay(ctx, base, overlay); err != nil {
			return err
		}
	}
	r := repo.NewRepo(repoName)
	ff, err := r.GetFilesRecursive("templates")
	if err != nil {
		return fmt.Errorf("failed to load resource templates: %v", err)
	}

	for _, f := range ff {
		manifests, err := r.ReadFile(f)
		if err != nil {
			fmt.Fprintf(os.Stderr, "failed to read template file content: %v", err)
			continue
		}
		bb, err := kubernetes.GenerateManifests(string(manifests), base, nil)
		if err != nil && err != kubernetes.ErrNothingLoaded {
			fmt.Fprintf(os.Stderr, "failed to generate manifest: %v", err)
			continue
		}
		fmt.Println(string(bb))
		fmt.Println("---")
	}
	return nil
}