only podman via docker archive support

This commit is contained in:
Alex Goodman 2019-10-08 10:06:14 -04:00
parent 5e4c3eedb7
commit 41b42cdd68
No known key found for this signature in database
GPG Key ID: 98AF011C5C78EB7E
3 changed files with 17 additions and 11 deletions

View File

@ -8,12 +8,19 @@ all: clean build
run: build run: build
$(BUILD_PATH) build -t dive-example:latest -f .data/Dockerfile.example . $(BUILD_PATH) build -t dive-example:latest -f .data/Dockerfile.example .
run-ci: build
CI=true $(BUILD_PATH) dive-example:latest --ci-config .data/.dive-ci
run-large: build run-large: build
$(BUILD_PATH) amir20/clashleaders:latest $(BUILD_PATH) amir20/clashleaders:latest
run-podman: build
podman build -t dive-example:latest -f .data/Dockerfile.example .
$(BUILD_PATH) localhost/dive-example:latest --engine podman
run-podman-large: build
$(BUILD_PATH) docker.io/amir20/clashleaders:latest --engine podman
run-ci: build
CI=true $(BUILD_PATH) dive-example:latest --ci-config .data/.dive-ci
build: build:
go build -o $(BUILD_PATH) go build -o $(BUILD_PATH)

View File

@ -26,15 +26,13 @@ func (r *resolver) Build(args []string) (*image.Image, error) {
} }
func (r *resolver) Fetch(id string) (*image.Image, error) { func (r *resolver) Fetch(id string) (*image.Image, error) {
img, err := r.resolveFromDisk(id) // todo: there are still a number of bugs remaining with this approach --stick with the docker archive for now
if err == nil { // img, err := r.resolveFromDisk(id)
return img, err // if err == nil {
} // return img, err
// }
// todo: remove print of error img, err := r.resolveFromDockerArchive(id)
fmt.Println(err)
img, err = r.resolveFromDockerArchive(id)
if err == nil { if err == nil {
return img, err return img, err
} }

View File

@ -59,6 +59,7 @@ func Run(options Options) {
os.Exit(1) os.Exit(1)
} }
} else { } else {
fmt.Println(utils.TitleFormat("Fetching image...") + " (this can take a while for large images)")
img, err = imageResolver.Fetch(options.ImageId) img, err = imageResolver.Fetch(options.ImageId)
if err != nil { if err != nil {
fmt.Printf("cannot fetch image: %v\n", err) fmt.Printf("cannot fetch image: %v\n", err)