From bab4ec30af45110521f086a1d37519a12d0d7045 Mon Sep 17 00:00:00 2001 From: Evan Lezar Date: Thu, 8 Feb 2024 14:53:46 +0100 Subject: [PATCH] Improve error reporting for cdi list Signed-off-by: Evan Lezar --- CHANGELOG.md | 2 ++ cmd/nvidia-ctk/cdi/list/list.go | 12 ++++++++---- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 7f46ca5a..6a195917 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,7 @@ # NVIDIA Container Toolkit Changelog +* Add a `--spec-dir` option to the `nvidia-ctk cdi generate` command. This allows specs outside of `/etc/cdi` and `/var/run/cdi` to be processed. + ## v1.15.0-rc.3 * Fix bug in `nvidia-ctk hook update-ldcache` where default `--ldconfig-path` value was not applied. diff --git a/cmd/nvidia-ctk/cdi/list/list.go b/cmd/nvidia-ctk/cdi/list/list.go index 74f4e48a..886da6e9 100644 --- a/cmd/nvidia-ctk/cdi/list/list.go +++ b/cmd/nvidia-ctk/cdi/list/list.go @@ -86,12 +86,16 @@ func (m command) run(c *cli.Context, cfg *config) error { return fmt.Errorf("failed to create CDI cache: %v", err) } - refreshErr := registry.Refresh() + _ = registry.Refresh() + if errors := registry.GetErrors(); len(errors) > 0 { + m.logger.Warningf("The following registry errors were reported:") + for k, err := range errors { + m.logger.Warningf("%v: %v", k, err) + } + } + devices := registry.ListDevices() m.logger.Infof("Found %d CDI devices", len(devices)) - if refreshErr != nil { - m.logger.Warningf("Refreshing the CDI registry returned the following error(s): %v", refreshErr) - } for _, device := range devices { fmt.Printf("%s\n", device) }