github.com/containers/podman/v2@v2.2.2-0.20210501105131-c1e07d070c4c/pkg/bindings/images/diff.go (about)

     1  package images
     2  
     3  import (
     4  	"context"
     5  	"net/http"
     6  
     7  	"github.com/containers/podman/v2/pkg/bindings"
     8  	"github.com/containers/storage/pkg/archive"
     9  )
    10  
    11  // Diff provides the changes between two container layers
    12  func Diff(ctx context.Context, nameOrID string) ([]archive.Change, error) {
    13  	conn, err := bindings.GetClient(ctx)
    14  	if err != nil {
    15  		return nil, err
    16  	}
    17  
    18  	response, err := conn.DoRequest(nil, http.MethodGet, "/images/%s/changes", nil, nil, nameOrID)
    19  	if err != nil {
    20  		return nil, err
    21  	}
    22  	var changes []archive.Change
    23  	return changes, response.Process(&changes)
    24  }