diff --git a/main.go b/main.go index 6701f429..8a101e62 100644 --- a/main.go +++ b/main.go @@ -26,11 +26,15 @@ import ( ) func main() { + if err := realMain(); err != nil { + os.Exit(1) + } +} + +func realMain() error { rootCmd := cmds.NewRootCmd() logs.Init(rootCmd, false) defer logs.FlushLogs() - if err := rootCmd.Execute(); err != nil { - os.Exit(1) - } + return rootCmd.Execute() } diff --git a/pkg/cmds/list.go b/pkg/cmds/list.go index ef003f7e..9e056e42 100644 --- a/pkg/cmds/list.go +++ b/pkg/cmds/list.go @@ -54,7 +54,7 @@ func NewCmdListImages() *cobra.Command { } cmd.Flags().StringVar(&rootDir, "root-dir", "", "Root directory") - cmd.Flags().StringVar(&rootDir, "output-dir", "", "Output directory") + cmd.Flags().StringVar(&outDir, "output-dir", "", "Output directory") _ = cobra.MarkFlagRequired(cmd.Flags(), "root-dir") _ = cobra.MarkFlagRequired(cmd.Flags(), "output-dir") diff --git a/pkg/lib/image.go b/pkg/lib/image.go index 24b0a55d..d734a11b 100644 --- a/pkg/lib/image.go +++ b/pkg/lib/image.go @@ -18,6 +18,7 @@ package lib import ( "os" + "path/filepath" "sort" "strings" @@ -43,7 +44,12 @@ func ListImages(rootDir string) ([]string, error) { continue } - out, err := sh.Command("helm", "template", entry.Name()).Output() + err := sh.SetDir(filepath.Join(rootDir, entry.Name())).Command("helm", "dependency", "build").Run() + if err != nil { + panic(err) + } + + out, err := sh.SetDir(rootDir).Command("helm", "template", entry.Name()).Output() if err != nil { panic(err) }