Skip to content

Commit

Permalink
Merge pull request #13872 from vrothberg/revert-size
Browse files Browse the repository at this point in the history
Revert "images --size"
  • Loading branch information
openshift-merge-robot authored Apr 14, 2022
2 parents 15712c7 + 97f93dc commit 001f619
Show file tree
Hide file tree
Showing 10 changed files with 11 additions and 56 deletions.
6 changes: 1 addition & 5 deletions cmd/podman/images/list.go
Original file line number Diff line number Diff line change
Expand Up @@ -87,7 +87,6 @@ func imageListFlagSet(cmd *cobra.Command) {
flags := cmd.Flags()

flags.BoolVarP(&listOptions.All, "all", "a", false, "Show all images (default hides intermediate images)")
flags.BoolVarP(&listOptions.Size, "size", "", true, "Compute the size of each image")

filterFlagName := "filter"
flags.StringSliceVarP(&listOptions.Filter, filterFlagName, "f", []string{}, "Filter output based on conditions provided (default [])")
Expand Down Expand Up @@ -321,10 +320,7 @@ func lsFormatFromFlags(flags listFlagType) string {
row = append(row, "{{.Digest}}")
}

row = append(row, "{{.ID}}", "{{.Created}}")
if listOptions.Size {
row = append(row, "{{.Size}}")
}
row = append(row, "{{.ID}}", "{{.Created}}", "{{.Size}}")

if flags.history {
row = append(row, "{{if .History}}{{.History}}{{else}}<none>{{end}}")
Expand Down
4 changes: 0 additions & 4 deletions docs/source/markdown/podman-images.1.md
Original file line number Diff line number Diff line change
Expand Up @@ -100,10 +100,6 @@ Omit the table headings from the listing of images.

Lists only the image IDs.

#### **--size**

Compute and display the size of each image. The default is true. Computing the size of images can be costly. If listing images is critical to performance, consider turning off size-computation via `--size=false`.

#### **--sort**=*sort*=*created*

Sort by created, id, repository, size or tag (default: created)
Expand Down
5 changes: 2 additions & 3 deletions pkg/api/handlers/compat/images.go
Original file line number Diff line number Diff line change
Expand Up @@ -415,9 +415,8 @@ func GetImages(w http.ResponseWriter, r *http.Request) {
All bool
Digests bool
Filter string // Docker 1.24 compatibility
Size bool
}{
Size: true,
// This is where you can override the golang default value for one of fields
}

if err := decoder.Decode(&query, r.URL.Query()); err != nil {
Expand All @@ -444,7 +443,7 @@ func GetImages(w http.ResponseWriter, r *http.Request) {

imageEngine := abi.ImageEngine{Libpod: runtime}

listOptions := entities.ImageListOptions{All: query.All, Filter: filterList, Size: query.Size}
listOptions := entities.ImageListOptions{All: query.All, Filter: filterList}
summaries, err := imageEngine.List(r.Context(), listOptions)
if err != nil {
utils.Error(w, http.StatusInternalServerError, err)
Expand Down
5 changes: 0 additions & 5 deletions pkg/api/server/register_images.go
Original file line number Diff line number Diff line change
Expand Up @@ -840,11 +840,6 @@ func (s *APIServer) registerImagesHandlers(r *mux.Router) error {
// - `id`=(`<image-id>`)
// - `since`=(`<image-name>[:<tag>]`, `<image id>` or `<image@digest>`)
// type: string
// - name: size
// in: query
// description: Compute the size of each image
// type: boolean
// default: true
// produces:
// - application/json
// responses:
Expand Down
2 changes: 0 additions & 2 deletions pkg/bindings/images/types.go
Original file line number Diff line number Diff line change
Expand Up @@ -31,8 +31,6 @@ type ListOptions struct {
All *bool
// filters that can be used to get a more specific list of images
Filters map[string][]string
// Compute the size of each image
Size *bool
}

//go:generate go run ../generator/generator.go GetOptions
Expand Down
15 changes: 0 additions & 15 deletions pkg/bindings/images/types_list_options.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 0 additions & 1 deletion pkg/domain/entities/images.go
Original file line number Diff line number Diff line change
Expand Up @@ -251,7 +251,6 @@ type ImageSearchReport struct {
type ImageListOptions struct {
All bool `json:"all" schema:"all"`
Filter []string `json:"Filter,omitempty"`
Size bool `json:"size" schema:"size"`
}

type ImagePruneOptions struct {
Expand Down
16 changes: 7 additions & 9 deletions pkg/domain/infra/abi/images_list.go
Original file line number Diff line number Diff line change
Expand Up @@ -60,16 +60,14 @@ func (ir *ImageEngine) List(ctx context.Context, opts entities.ImageListOptions)
}
e.Containers = len(ctnrs)

if opts.Size {
sz, err := img.Size()
if err != nil {
return nil, errors.Wrapf(err, "error retrieving size of image %q: you may need to remove the image to resolve the error", img.ID())
}
e.Size = sz
// This is good enough for now, but has to be
// replaced later with correct calculation logic
e.VirtualSize = sz
sz, err := img.Size()
if err != nil {
return nil, errors.Wrapf(err, "error retrieving size of image %q: you may need to remove the image to resolve the error", img.ID())
}
e.Size = sz
// This is good enough for now, but has to be
// replaced later with correct calculation logic
e.VirtualSize = sz

parent, err := img.Parent(ctx)
if err != nil {
Expand Down
2 changes: 1 addition & 1 deletion pkg/domain/infra/tunnel/images.go
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ func (ir *ImageEngine) List(ctx context.Context, opts entities.ImageListOptions)
f := strings.Split(filter, "=")
filters[f[0]] = f[1:]
}
options := new(images.ListOptions).WithAll(opts.All).WithFilters(filters).WithSize(opts.Size)
options := new(images.ListOptions).WithAll(opts.All).WithFilters(filters)
psImages, err := images.List(ir.ClientCtx, options)
if err != nil {
return nil, err
Expand Down
11 changes: 0 additions & 11 deletions test/system/010-images.bats
Original file line number Diff line number Diff line change
Expand Up @@ -312,15 +312,4 @@ Deleted: $pauseID"
is "$output" ""
}

@test "podman images --size" {
run_podman images
is "${lines[0]}" "REPOSITORY.*TAG.*IMAGE ID.*CREATED.*SIZE"
run_podman images --noheading --format "{{.Size}}"
is "$output" ".* MB"
run_podman images --size=false
is "${lines[0]}" "REPOSITORY.*TAG.*IMAGE ID.*CREATED"
run_podman images --noheading --format "{{.Size}}" --size=false
is "$output" "0 B"
}

# vim: filetype=sh

0 comments on commit 001f619

Please sign in to comment.