Skip to content

Commit

Permalink
Merge pull request #1295 from kannon92/crictl-imagefsinfo
Browse files Browse the repository at this point in the history
adding imagefsinfo endpoint for both container and image filesystems
  • Loading branch information
k8s-ci-robot authored Dec 4, 2023
2 parents 13efbe8 + c5e443a commit 046e620
Showing 1 changed file with 28 additions and 19 deletions.
47 changes: 28 additions & 19 deletions cmd/crictl/image.go
Original file line number Diff line number Diff line change
Expand Up @@ -494,28 +494,37 @@ var imageFsInfoCommand = &cli.Command{
if err != nil {
return fmt.Errorf("image filesystem info request: %w", err)
}
for _, info := range r.ImageFilesystems {
status, err := protobufObjectToJSON(info)
if err != nil {
return fmt.Errorf("marshal image filesystem info to json: %w", err)
}
fileSystemReport := func(filesystem []*pb.FilesystemUsage) error {
for _, info := range filesystem {
status, err := protobufObjectToJSON(info)
if err != nil {
return fmt.Errorf("marshal filesystem info to json: %w", err)
}

switch output {
case "json", "yaml", "go-template":
if err := outputStatusInfo(status, nil, output, tmplStr); err != nil {
return fmt.Errorf("output image filesystem info: %w", err)
switch output {
case "json", "yaml", "go-template":
if err := outputStatusInfo(status, nil, output, tmplStr); err != nil {
return fmt.Errorf("output filesystem info: %w", err)
}
continue
case "table": // table output is after this switch block
default:
return fmt.Errorf("output option cannot be %s", output)
}
continue
case "table": // table output is after this switch block
default:
return fmt.Errorf("output option cannot be %s", output)
}

// otherwise output in table format
fmt.Printf("TimeStamp: %d\n", info.Timestamp)
fmt.Printf("Disk: %s\n", units.HumanSize(float64(info.UsedBytes.GetValue())))
fmt.Printf("Inodes: %d\n", info.InodesUsed.GetValue())
fmt.Printf("Mountpoint: %s\n", info.FsId.Mountpoint)
// otherwise output in table format
fmt.Printf("TimeStamp: %d\n", info.Timestamp)
fmt.Printf("Disk: %s\n", units.HumanSize(float64(info.UsedBytes.GetValue())))
fmt.Printf("Inodes: %d\n", info.InodesUsed.GetValue())
fmt.Printf("Mountpoint: %s\n", info.FsId.Mountpoint)
}
return nil
}
if err := fileSystemReport(r.ImageFilesystems); err != nil {
return err
}
if err := fileSystemReport(r.ContainerFilesystems); err != nil {
return err
}

return nil
Expand Down

0 comments on commit 046e620

Please sign in to comment.