Continue switching from libkpod to libpod

Refactored rmi, images, diff, and history.
Made fixes to kpod images in the way it was handing the templates as well as printing the image names

Signed-off-by: umohnani8 <umohnani@redhat.com>
This commit is contained in:
umohnani8 2017-09-21 15:21:56 -04:00
parent cfd7aec1c3
commit 356df5d18e
18 changed files with 820 additions and 837 deletions

View file

@ -1,54 +0,0 @@
package libkpod
import (
"github.com/containers/storage/pkg/archive"
"github.com/kubernetes-incubator/cri-o/libpod/images"
"github.com/kubernetes-incubator/cri-o/libpod/layers"
"github.com/pkg/errors"
)
// GetDiff returns the differences between the two images, layers, or containers
func (c *ContainerServer) GetDiff(from, to string) ([]archive.Change, error) {
toLayer, err := c.getLayerID(to)
if err != nil {
return nil, err
}
fromLayer := ""
if from != "" {
fromLayer, err = c.getLayerID(from)
if err != nil {
return nil, err
}
}
return c.Store().Changes(fromLayer, toLayer)
}
// GetLayerID gets a full layer id given a full or partial id
// If the id matches a container or image, the id of the top layer is returned
// If the id matches a layer, the top layer id is returned
func (c *ContainerServer) getLayerID(id string) (string, error) {
var toLayer string
toImage, err := images.FindImage(c.store, id)
if err != nil {
toCtr, err := c.store.Container(id)
if err != nil {
toLayer, err = layers.FullID(c.store, id)
if err != nil {
return "", errors.Errorf("layer, image, or container %s does not exist", id)
}
} else {
toLayer = toCtr.LayerID
}
} else {
toLayer = toImage.TopLayer
}
return toLayer, nil
}
func (c *ContainerServer) getLayerParent(layerID string) (string, error) {
layer, err := c.store.Layer(layerID)
if err != nil {
return "", err
}
return layer.Parent, nil
}