Makefile: don't warn "outside container" for some targets
This change allows some make targets to be ran outside the dev-container for
easier discovery and use:
- `make clean` can be used on the host (as artifacts created from within the
development container are usually stored on the host).
- `make help` was already allowed
- `make dev` and `make shell` are added to the regular Makefile, to make it
easier to create and start the development container.
- When attempting to run `make dev` from within the development container, a
message is printed, and the target is cancelled:
root@docker-cli-dev$ make dev
you are already in the dev container
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
This commit is contained in:
@ -3,16 +3,25 @@ set -eu
|
||||
|
||||
target="${1:-}"
|
||||
|
||||
if [ "$target" != "help" ] && [ -z "${DISABLE_WARN_OUTSIDE_CONTAINER:-}" ]; then
|
||||
(
|
||||
echo
|
||||
echo
|
||||
echo "WARNING: you are not in a container."
|
||||
echo "Use \"make -f docker.Makefile $target\" or set"
|
||||
echo "DISABLE_WARN_OUTSIDE_CONTAINER=1 to disable this warning."
|
||||
echo
|
||||
echo "Press Ctrl+C now to abort."
|
||||
echo
|
||||
) >&2
|
||||
sleep 10
|
||||
if [ -z "${DISABLE_WARN_OUTSIDE_CONTAINER:-}" ]; then
|
||||
case $target in
|
||||
clean|dev|help|shell)
|
||||
# no warning needed for these targets
|
||||
;;
|
||||
*)
|
||||
(
|
||||
echo
|
||||
echo "\033[1mWARNING\033[0m: you are not in a container."
|
||||
echo
|
||||
echo 'Use "\033[1mmake dev\033[0m" to start an interactive development container,'
|
||||
echo "use \"\033[1mmake -f docker.Makefile $target\033[0m\" to execute this target"
|
||||
echo "in a container, or set \033[1mDISABLE_WARN_OUTSIDE_CONTAINER=1\033[0m to"
|
||||
echo "disable this warning."
|
||||
echo
|
||||
echo "Press \033[1mCtrl+C\033[0m now to abort, or wait for the script to continue.."
|
||||
echo
|
||||
) >&2
|
||||
sleep 5
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
|
||||
Reference in New Issue
Block a user