dive/dive/image/docker/archive_resolver.go

33 lines
607 B
Go
Raw Normal View History

2019-10-09 00:55:03 +02:00
package docker
import (
"fmt"
"os"
"github.com/wagoodman/dive/dive/image"
2019-10-09 00:55:03 +02:00
)
type archiveResolver struct{}
func NewResolverFromArchive() *archiveResolver {
return &archiveResolver{}
}
func (r *archiveResolver) Fetch(path string) (*image.Image, error) {
reader, err := os.Open(path)
if err != nil {
return nil, err
}
defer reader.Close()
img, err := NewImageArchive(reader)
if err != nil {
return nil, err
}
return img.ToImage()
}
func (r *archiveResolver) Build(args []string) (*image.Image, error) {
return nil, fmt.Errorf("build option not supported for docker archive resolver")
}