diff --git a/cmd/image-builder/main.go b/cmd/image-builder/main.go index 043fdb9..5fd4629 100644 --- a/cmd/image-builder/main.go +++ b/cmd/image-builder/main.go @@ -101,7 +101,7 @@ type cmdManifestWrapperOptions struct { useBootstrapIfNeeded bool } -func cmdManifestWrapper(pbar progress.ProgressBar, cmd *cobra.Command, args []string, w io.Writer, wrapperOpts *cmdManifestWrapperOptions) (*imagefilter.Result, error) { +func cmdManifestWrapper(pbar progress.ProgressBar, cmd *cobra.Command, args []string, w io.Writer, wd io.Writer, wrapperOpts *cmdManifestWrapperOptions) (*imagefilter.Result, error) { if wrapperOpts == nil { wrapperOpts = &cmdManifestWrapperOptions{} } @@ -207,7 +207,7 @@ func cmdManifestWrapper(pbar progress.ProgressBar, cmd *cobra.Command, args []st fmt.Fprintf(os.Stderr, "WARNING: using experimental cross-architecture building to build %q\n", img.Arch.Name()) } - err = generateManifest(dataDir, extraRepos, img, w, opts) + err = generateManifest(dataDir, extraRepos, img, w, wd, opts) return img, err } @@ -216,7 +216,7 @@ func cmdManifest(cmd *cobra.Command, args []string) error { if err != nil { return err } - _, err = cmdManifestWrapper(pbar, cmd, args, osStdout, nil) + _, err = cmdManifestWrapper(pbar, cmd, args, osStdout, osStderr, nil) return err } @@ -287,7 +287,10 @@ func cmdBuild(cmd *cobra.Command, args []string) error { opts := &cmdManifestWrapperOptions{ useBootstrapIfNeeded: true, } - res, err := cmdManifestWrapper(pbar, cmd, args, &mf, opts) + + // We discard any warnings from the depsolver until we figure out a better + // idea (likely in manifestgen) + res, err := cmdManifestWrapper(pbar, cmd, args, &mf, io.Discard, opts) if err != nil { return err } diff --git a/cmd/image-builder/manifest.go b/cmd/image-builder/manifest.go index 4d9e884..2508bd6 100644 --- a/cmd/image-builder/manifest.go +++ b/cmd/image-builder/manifest.go @@ -46,17 +46,18 @@ func sbomWriter(outputDir, filename string, content io.Reader) error { return nil } -func generateManifest(dataDir string, extraRepos []string, img *imagefilter.Result, output io.Writer, opts *manifestOptions) error { +func generateManifest(dataDir string, extraRepos []string, img *imagefilter.Result, output io.Writer, depsolveWarningsOutput io.Writer, opts *manifestOptions) error { repos, err := newRepoRegistry(dataDir, extraRepos) if err != nil { return err } // XXX: add --rpmmd/cachedir option like bib manifestGenOpts := &manifestgen.Options{ - Output: output, - RpmDownloader: opts.RpmDownloader, - UseBootstrapContainer: opts.UseBootstrapContainer, - CustomSeed: opts.CustomSeed, + Output: output, + DepsolveWarningsOutput: depsolveWarningsOutput, + RpmDownloader: opts.RpmDownloader, + UseBootstrapContainer: opts.UseBootstrapContainer, + CustomSeed: opts.CustomSeed, } if opts.WithSBOM { outputDir := basenameFor(img, opts.OutputDir)