rabbitmq-server/ci/scripts/rabbitmq_cli.sh

50 lines
1.6 KiB
Bash
Executable File

#!/bin/bash
set -euo pipefail
cd /workspace/rabbitmq/deps/$project
trap 'catch $?' EXIT
SPAN_ID=${GITHUB_RUN_ID}-${project}
catch() {
buildevents cmd ${GITHUB_RUN_ID} ${SPAN_ID} stop-node -- \
make stop-node -C ../.. \
DEPS_DIR=/workspace/rabbitmq/deps \
PLUGINS='rabbitmq_federation rabbitmq_stomp'
if [ "$1" != "0" ]; then
tar -c -f - /tmp/rabbitmq-test-instances/*/log | \
xz > /workspace/broker-logs/broker-logs.tar.xz
fi
buildevents step ${GITHUB_RUN_ID} ${SPAN_ID} ${STEP_START} ${project}
}
buildevents cmd ${GITHUB_RUN_ID} ${SPAN_ID} make -- \
make DEPS_DIR=/workspace/rabbitmq/deps
buildevents cmd ${GITHUB_RUN_ID} ${SPAN_ID} start-background-broker -- \
make start-background-broker \
-C ../.. \
DEPS_DIR=/workspace/rabbitmq/deps \
PLUGINS='rabbitmq_federation rabbitmq_stomp'
buildevents cmd ${GITHUB_RUN_ID} ${SPAN_ID} rebar -- \
mix local.rebar --force
# due to https://github.com/elixir-lang/elixir/issues/7699 we
# "run" the tests, but skip them all, in order to trigger
# compilation of all *_test.exs files before we actually run themq
buildevents cmd ${GITHUB_RUN_ID} ${SPAN_ID} compile-tests -- \
make tests \
MIX_TEST_OPTS="--exclude test" \
DEPS_DIR=/workspace/rabbitmq/deps
# rabbitmq-diagnostics erlang-cookie-sources reads USER from then env
export USER=$(whoami)
buildevents cmd ${GITHUB_RUN_ID} ${SPAN_ID} tests -- \
make tests \
DEPS_DIR=/workspace/rabbitmq/deps