2017-03-01 14:55:27 +00:00
|
|
|
# /bin/bash
|
|
|
|
|
2017-10-10 11:02:39 +01:00
|
|
|
# Downloads, installs and runs a kafka instance
|
|
|
|
|
2017-03-01 14:55:27 +00:00
|
|
|
set -eu
|
|
|
|
|
2017-12-19 14:09:15 +00:00
|
|
|
cd `dirname $0`/..
|
|
|
|
|
|
|
|
mkdir -p .downloads
|
|
|
|
|
2017-03-01 14:55:27 +00:00
|
|
|
# The mirror to download kafka from is picked from the list of mirrors at
|
2017-11-21 12:13:01 +00:00
|
|
|
# https://www.apache.org/dyn/closer.cgi?path=/kafka/0.10.2.0/kafka_2.11-0.11.0.2.tgz
|
2017-03-01 14:55:27 +00:00
|
|
|
# TODO: Check the signature since we are downloading over HTTP.
|
2017-11-21 12:13:01 +00:00
|
|
|
MIRROR=http://apache.mirror.anlx.net/kafka/0.11.0.2/kafka_2.11-0.11.0.2.tgz
|
2017-03-01 14:55:27 +00:00
|
|
|
|
|
|
|
# Only download the kafka if it isn't already downloaded.
|
2017-12-19 14:09:15 +00:00
|
|
|
test -f .downloads/kafka.tgz || wget $MIRROR -O .downloads/kafka.tgz
|
2017-03-01 14:55:27 +00:00
|
|
|
# Unpack the kafka over the top of any existing installation
|
2017-12-19 14:09:15 +00:00
|
|
|
mkdir -p kafka && tar xzf .downloads/kafka.tgz -C kafka --strip-components 1
|
2017-03-01 14:55:27 +00:00
|
|
|
# Start the zookeeper running in the background.
|
|
|
|
# By default the zookeeper listens on localhost:2181
|
|
|
|
kafka/bin/zookeeper-server-start.sh -daemon kafka/config/zookeeper.properties
|
|
|
|
# Enable topic deletion so that the integration tests can create a fresh topic
|
|
|
|
# for each test run.
|
2017-11-21 12:13:01 +00:00
|
|
|
echo -e "\n\ndelete.topic.enable=true" >> kafka/config/server.properties
|
2017-03-01 14:55:27 +00:00
|
|
|
# Start the kafka server running in the background.
|
|
|
|
# By default the kafka listens on localhost:9092
|
|
|
|
kafka/bin/kafka-server-start.sh -daemon kafka/config/server.properties
|