Files
ODrive/dockerbuild.sh
InNoobWeTrust e7f5f907ad Update docker build for v0.5.1
- Docker image now only contain the build environment, not the code.
  This save development time by not rebuilding docker image everytime
  source code change.
- Build by mounting repo's directory into container, build output and
  intermediate artifacts is available for inspecting if build fail
  midway.
2020-09-15 19:17:43 +07:00

45 lines
842 B
Bash
Executable File

function cleanup {
echo "Removing previous build artifacts"
rm -rf build/ Firmware/autogen Firmware/build Firmware/.tup
docker rm odrive-build-cont
}
function gc {
cleanup
docker rmi odrive-build-img
docker image prune
}
function build {
cleanup
echo "Building the build-environment image"
docker build -t odrive-build-img .
echo "Build in container"
docker run -v $(pwd):/ODrive --name odrive-build-cont odrive-build-img:latest
}
function usage {
echo "usage: $0 (build | cleanup | gc)"
echo
echo "build -- build in docker and extract the artifacts."
echo "cleanup -- remove build artifacts from previous build"
echo "gc -- remove all build images and containers"
}
case $1 in
build)
build
;;
cleanup)
cleanup
;;
gc)
gc
;;
*)
usage
;;
esac