01ba0a935b
The image store abstracts image handling. It keeps track of the available images, and makes it possible to delete existing images or register new ones. The image store holds references to the underlying layers for each image. The image/v1 package provides compatibility functions for interoperating with older (non-content-addressable) image structures. Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
36 lines
713 B
Go
36 lines
713 B
Go
package tarexport
|
|
|
|
import (
|
|
"github.com/docker/docker/image"
|
|
"github.com/docker/docker/layer"
|
|
"github.com/docker/docker/tag"
|
|
)
|
|
|
|
const (
|
|
manifestFileName = "manifest.json"
|
|
legacyLayerFileName = "layer.tar"
|
|
legacyConfigFileName = "json"
|
|
legacyVersionFileName = "VERSION"
|
|
legacyRepositoriesFileName = "repositories"
|
|
)
|
|
|
|
type manifestItem struct {
|
|
Config string
|
|
RepoTags []string
|
|
Layers []string
|
|
}
|
|
|
|
type tarexporter struct {
|
|
is image.Store
|
|
ls layer.Store
|
|
ts tag.Store
|
|
}
|
|
|
|
// NewTarExporter returns new ImageExporter for tar packages
|
|
func NewTarExporter(is image.Store, ls layer.Store, ts tag.Store) image.Exporter {
|
|
return &tarexporter{
|
|
is: is,
|
|
ls: ls,
|
|
ts: ts,
|
|
}
|
|
}
|