From 41b42cdd6844898d7ceaed4d39b1fbea6c60df85 Mon Sep 17 00:00:00 2001 From: Alex Goodman Date: Tue, 8 Oct 2019 10:06:14 -0400 Subject: [PATCH] only podman via docker archive support --- Makefile | 13 ++++++++++--- dive/image/podman/resolver_linux.go | 14 ++++++-------- runtime/run.go | 1 + 3 files changed, 17 insertions(+), 11 deletions(-) diff --git a/Makefile b/Makefile index 5fd62c7..e9a2f8c 100644 --- a/Makefile +++ b/Makefile @@ -8,12 +8,19 @@ all: clean build run: build $(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 $(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: go build -o $(BUILD_PATH) diff --git a/dive/image/podman/resolver_linux.go b/dive/image/podman/resolver_linux.go index 83e8a12..19e25d2 100644 --- a/dive/image/podman/resolver_linux.go +++ b/dive/image/podman/resolver_linux.go @@ -26,15 +26,13 @@ func (r *resolver) Build(args []string) (*image.Image, error) { } func (r *resolver) Fetch(id string) (*image.Image, error) { - img, err := r.resolveFromDisk(id) - if err == nil { - return img, err - } + // todo: there are still a number of bugs remaining with this approach --stick with the docker archive for now + // img, err := r.resolveFromDisk(id) + // if err == nil { + // return img, err + // } - // todo: remove print of error - fmt.Println(err) - - img, err = r.resolveFromDockerArchive(id) + img, err := r.resolveFromDockerArchive(id) if err == nil { return img, err } diff --git a/runtime/run.go b/runtime/run.go index a48267a..024b4ca 100644 --- a/runtime/run.go +++ b/runtime/run.go @@ -59,6 +59,7 @@ func Run(options Options) { os.Exit(1) } } else { + fmt.Println(utils.TitleFormat("Fetching image...") + " (this can take a while for large images)") img, err = imageResolver.Fetch(options.ImageId) if err != nil { fmt.Printf("cannot fetch image: %v\n", err)