#!/bin/bash
ARCH=`uname -m`
DEFAULT_TAG="v1.0.1"
OUTPUT_BASE_DIR="${ROOT_DIR}/_output"
BINARY_DIR="${OUTPUT_BASE_DIR}/bin"
IMAGE_DIR="${OUTPUT_BASE_DIR}/image"
TAG=${TAG:-$DEFAULT_TAG}
FULL_IMAGE_NAME="ub-network-device-plugin-${ARCH}:${TAG}"
cd ${ROOT_DIR}/ || exit 1
mkdir -p "${IMAGE_DIR}"
if [ ! -f "${BINARY_DIR}/ub-network-device-plugin" ]; then
echo "binary file not exist in ${BINARY_DIR}, please build binary first"
exit 1
fi
echo "begin build image of ub-network-device-plugin"
cp hack/Dockerfile ${BINARY_DIR}/
cd ${BINARY_DIR} || exit 1
docker build -t "${FULL_IMAGE_NAME}" .
build_result=$?
if [[ ${build_result} != 0 ]]; then
echo "build image of ub-network-device-plugin failed, please check..."
exit ${build_result}
fi
EXPORT_FILE="${IMAGE_DIR}/ub-network-device-plugin-${TAG}-${ARCH}.tar"
docker save -o "${EXPORT_FILE}" "${FULL_IMAGE_NAME}"
save_result=$?
if [[ ${save_result} != 0 ]]; then
echo "save image of ${FULL_IMAGE_NAME} failed, please check..."
exit ${save_result}
fi
echo "build image ub-network-device-plugin-${TAG}-${ARCH}.tar succeed in directory ${IMAGE_DIR}"