#!/bin/bash set -e if ! docker inspect busybox &> /dev/null; then hardCodedDir='/docker-busybox' if [ -d "$hardCodedDir" ]; then ( set -x; tar -cC "$hardCodedDir" . | docker load ) elif [ -e Dockerfile ] && command -v curl > /dev/null; then # testing for "curl" because "download-frozen-image.sh" is built around curl dir="$DEST/busybox" # extract the exact "download-frozen-image.sh" line from the Dockerfile itself for consistency awk '$1 == "RUN" && $2 == "./contrib/download-frozen-image.sh" && /busybox@/ { for (i = 2; i < NF; i++) printf ( $i == "'"$hardCodedDir"'" ? "'"$dir"'" : $i ) " "; print $NF; }' Dockerfile | sh -x ( set -x; tar -cC "$dir" . | docker load ) else ( set -x; docker pull busybox ) fi fi