DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" >/dev/null 2>&1 && pwd)"
. "$DIR/prelude.sh"
set -o errexit
set -o verbose
set -o pipefail
. "$DIR/bazel_evergreen_shutils.sh"
bazel_evergreen_shutils::activate_and_cd_src
bazel_evergreen_shutils::export_ssl_paths_if_needed
eval echo "Execution environment: Args: ${args} Target: ${target} redact_args: ${redact_args}"
BAZEL_BINARY="$(bazel_evergreen_shutils::bazel_get_binary_path)"
export BAZEL_BINARY
LOCAL_ARG="$(bazel_evergreen_shutils::compute_local_arg run)"
ALL_FLAGS=""
if [[ -f .bazel_build_flags ]]; then
ALL_FLAGS="$(<.bazel_build_flags)"
fi
CONFIG_FLAGS="$(bazel_evergreen_shutils::extract_config_flags "${ALL_FLAGS}")"
LOCAL_ARG="${CONFIG_FLAGS} ${LOCAL_ARG}"
INVOCATION_WITH_REDACTION="${target}"
if [[ -z "${redact_args:-}" ]]; then
INVOCATION_WITH_REDACTION+=" ${args}"
fi
echo "bazel run --verbose_failures ${LOCAL_ARG} ${INVOCATION_WITH_REDACTION}" >bazel-invocation.txt
set +o errexit
export RETRY_ON_FAIL=0
bazel_evergreen_shutils::retry_bazel_cmd 3 "$BAZEL_BINARY" \
run --verbose_failures ${LOCAL_ARG} ${target} ${args} 2>&1 | tee -a bazel_output.log
RET=${PIPESTATUS[0]}
: "${RET:=1}"
set -o errexit
$python ./buildscripts/simple_report.py \
--test-name "bazel run ${INVOCATION_WITH_REDACTION}" \
--log-file bazel_output.log \
--exit-code "${RET}"
exit "${RET}"