2021-12-08 10:50:08 +09:00
|
|
|
#!/bin/bash
|
2020-06-08 13:37:14 -07:00
|
|
|
|
2021-12-13 21:37:59 +01:00
|
|
|
# Add default URI (http) scheme to NEO4J_HOST if missing
|
|
|
|
if [[ -n "$NEO4J_HOST" && $NEO4J_HOST != *"://"* ]] ; then
|
2021-02-27 06:28:22 +01:00
|
|
|
NEO4J_HOST="http://$NEO4J_HOST"
|
|
|
|
fi
|
|
|
|
|
2021-12-08 10:50:08 +09:00
|
|
|
if [[ ! -z $ELASTICSEARCH_USERNAME ]] && [[ -z $ELASTICSEARCH_AUTH_HEADER ]]; then
|
|
|
|
AUTH_TOKEN=$(echo -ne "$ELASTICSEARCH_USERNAME:$ELASTICSEARCH_PASSWORD" | base64 --wrap 0)
|
|
|
|
ELASTICSEARCH_AUTH_HEADER="Authorization:Basic $AUTH_TOKEN"
|
2021-06-16 12:11:02 -04:00
|
|
|
fi
|
|
|
|
|
|
|
|
# Add default header if needed
|
|
|
|
if [[ -z $ELASTICSEARCH_AUTH_HEADER ]]; then
|
|
|
|
ELASTICSEARCH_AUTH_HEADER="Accept: */*"
|
2021-03-28 06:21:10 +03:00
|
|
|
fi
|
|
|
|
|
2021-12-13 21:37:59 +01:00
|
|
|
# Add elasticsearch protocol
|
2021-03-28 06:21:10 +03:00
|
|
|
if [[ $ELASTICSEARCH_USE_SSL == true ]]; then
|
|
|
|
ELASTICSEARCH_PROTOCOL=https
|
|
|
|
else
|
|
|
|
ELASTICSEARCH_PROTOCOL=http
|
|
|
|
fi
|
|
|
|
|
2021-12-08 10:50:08 +09:00
|
|
|
WAIT_FOR_KAFKA=""
|
|
|
|
if [[ $SKIP_KAFKA_CHECK != true ]]; then
|
|
|
|
WAIT_FOR_KAFKA=" -wait tcp://$(echo $KAFKA_BOOTSTRAP_SERVER | sed 's/,/ -wait tcp:\/\//g') "
|
|
|
|
fi
|
|
|
|
|
|
|
|
WAIT_FOR_ELASTICSEARCH=""
|
|
|
|
if [[ $SKIP_ELASTICSEARCH_CHECK != true ]]; then
|
|
|
|
WAIT_FOR_ELASTICSEARCH=" -wait $ELASTICSEARCH_PROTOCOL://$ELASTICSEARCH_HOST:$ELASTICSEARCH_PORT -wait-http-header \"$ELASTICSEARCH_AUTH_HEADER\""
|
|
|
|
fi
|
2021-07-02 20:45:42 -07:00
|
|
|
|
2021-12-13 21:37:59 +01:00
|
|
|
# Add dependency to graph service if needed
|
|
|
|
WAIT_FOR_GRAPH_SERVICE=""
|
|
|
|
if [[ $GRAPH_SERVICE_IMPL == neo4j ]] && [[ $SKIP_NEO4J_CHECK != true ]]; then
|
|
|
|
WAIT_FOR_GRAPH_SERVICE=" -wait $NEO4J_HOST "
|
|
|
|
elif [[ $GRAPH_SERVICE_IMPL == dgraph ]] && [[ $SKIP_DGRAPH_CHECK != true ]]; then
|
|
|
|
WAIT_FOR_GRAPH_SERVICE=" -wait $DGRAPH_HOST "
|
2021-07-02 20:45:42 -07:00
|
|
|
fi
|
|
|
|
|
2021-09-07 23:06:15 -07:00
|
|
|
OTEL_AGENT=""
|
|
|
|
if [[ $ENABLE_OTEL == true ]]; then
|
|
|
|
OTEL_AGENT="-javaagent:opentelemetry-javaagent-all.jar "
|
|
|
|
fi
|
|
|
|
|
|
|
|
PROMETHEUS_AGENT=""
|
|
|
|
if [[ $ENABLE_PROMETHEUS == true ]]; then
|
|
|
|
PROMETHEUS_AGENT="-javaagent:jmx_prometheus_javaagent.jar=4318:/datahub/datahub-mae-consumer/scripts/prometheus-config.yaml "
|
|
|
|
fi
|
|
|
|
|
2021-12-08 10:50:08 +09:00
|
|
|
COMMON="
|
|
|
|
$WAIT_FOR_KAFKA \
|
|
|
|
$WAIT_FOR_NEO4J \
|
2021-12-13 21:37:59 +01:00
|
|
|
$WAIT_FOR_GRAPH_SERVICE \
|
2021-12-08 10:50:08 +09:00
|
|
|
-timeout 240s \
|
|
|
|
java $JAVA_OPTS $JMX_OPTS $OTEL_AGENT $PROMETHEUS_AGENT -jar /datahub/datahub-mae-consumer/bin/mae-consumer-job.jar
|
|
|
|
"
|
|
|
|
if [[ $SKIP_ELASTICSEARCH_CHECK != true ]]; then
|
|
|
|
dockerize $COMMON
|
|
|
|
else
|
|
|
|
dockerize \
|
|
|
|
-wait $ELASTICSEARCH_PROTOCOL://$ELASTICSEARCH_HOST:$ELASTICSEARCH_PORT -wait-http-header "$ELASTICSEARCH_AUTH_HEADER" \
|
|
|
|
$COMMON
|
|
|
|
fi
|