diff --git a/bin/compose-core b/bin/compose-core index f7d6986..b4f236e 100755 --- a/bin/compose-core +++ b/bin/compose-core @@ -87,6 +87,8 @@ $WHITE$exname$NORMAL reads '/etc/compose.conf' for global variables, and #[[ "${BASH_SOURCE[0]}" == "" ]] && SOURCED=true $(return >/dev/null 2>&1) && SOURCED=true +errlvl() { return "${1:-1}"; } +export -f errlvl if [ "$UID" == 0 ]; then CACHEDIR=${CACHEDIR:-/var/cache/compose} @@ -4272,6 +4274,10 @@ if [ -n "$full_init" ]; then fi fi | log +if [ "${PIPESTATUS[0]}" != 0 ]; then + exit 1 +fi + if [ "$action" == "run" -a "${#services_args}" != 0 ]; then charm=$(get_service_charm "${services_args[0]}") || exit 1 @@ -4337,6 +4343,7 @@ case "$action" in if [ "$is_service_action" ]; then run_service_action "$SERVICE_PACK" "$action" "${remainder_args[@]}" errlvl="$?" + errlvl "$errlvl" else launch_docker_compose "${compose_opts[@]}" "$action" "${action_opts[@]}" "${action_posargs[@]}" "${remainder_args[@]}" fi