2021-12-08 10:50:08 +09:00
|
|
|
#!/bin/bash
|
2022-09-29 13:13:45 +02:00
|
|
|
set -euo pipefail
|
2020-06-08 13:37:14 -07:00
|
|
|
|
2021-12-14 10:49:03 -08:00
|
|
|
# Add default URI (http) scheme if needed
|
2022-09-29 13:13:45 +02:00
|
|
|
if [[ -n ${NEO4J_HOST:-} ]] && [[ ${NEO4J_HOST} != *"://"* ]]; then
|
|
|
|
NEO4J_HOST="http://$NEO4J_HOST"
|
2021-02-27 06:28:22 +01:00
|
|
|
fi
|
|
|
|
|
2022-09-29 13:13:45 +02:00
|
|
|
if [[ -n ${ELASTICSEARCH_USERNAME:-} ]] && [[ -z ${ELASTICSEARCH_AUTH_HEADER:-} ]]; then
|
2021-12-08 10:50:08 +09:00
|
|
|
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
|
2022-09-29 13:13:45 +02:00
|
|
|
: "${ELASTICSEARCH_AUTH_HEADER="Accept: */*"}"
|
2021-03-28 06:21:10 +03:00
|
|
|
|
2022-09-29 13:13:45 +02:00
|
|
|
if [[ ${ELASTICSEARCH_USE_SSL:-false} == true ]]; then
|
2021-03-28 06:21:10 +03:00
|
|
|
ELASTICSEARCH_PROTOCOL=https
|
|
|
|
else
|
|
|
|
ELASTICSEARCH_PROTOCOL=http
|
|
|
|
fi
|
|
|
|
|
2022-09-29 13:13:45 +02:00
|
|
|
dockerize_args=("-timeout" "240s")
|
|
|
|
if [[ ${SKIP_KAFKA_CHECK:-false} != true ]]; then
|
|
|
|
IFS=',' read -ra KAFKAS <<< "$KAFKA_BOOTSTRAP_SERVER"
|
|
|
|
for i in "${KAFKAS[@]}"; do
|
|
|
|
dockerize_args+=("-wait" "tcp://$i")
|
|
|
|
done
|
2021-12-08 10:50:08 +09:00
|
|
|
fi
|
2022-09-29 13:13:45 +02:00
|
|
|
if [[ ${SKIP_ELASTICSEARCH_CHECK:-false} != true ]]; then
|
|
|
|
dockerize_args+=("-wait" "$ELASTICSEARCH_PROTOCOL://$ELASTICSEARCH_HOST:$ELASTICSEARCH_PORT" "-wait-http-header" "$ELASTICSEARCH_AUTH_HEADER")
|
2021-12-08 10:50:08 +09:00
|
|
|
fi
|
2022-09-29 13:13:45 +02:00
|
|
|
if [[ ${GRAPH_SERVICE_IMPL:-} != elasticsearch ]] && [[ ${SKIP_NEO4J_CHECK:-false} != true ]]; then
|
|
|
|
dockerize_args+=("-wait" "$NEO4J_HOST")
|
2021-07-02 20:45:42 -07:00
|
|
|
fi
|
2024-01-23 14:49:39 -08:00
|
|
|
if [[ "${KAFKA_SCHEMAREGISTRY_URL:-}" && ${SKIP_SCHEMA_REGISTRY_CHECK:-false} != true ]]; then
|
|
|
|
dockerize_args+=("-wait" "$KAFKA_SCHEMAREGISTRY_URL")
|
|
|
|
fi
|
2021-07-02 20:45:42 -07:00
|
|
|
|
2022-11-15 19:03:33 +01:00
|
|
|
JAVA_TOOL_OPTIONS="${JDK_JAVA_OPTIONS:-}${JAVA_OPTS:+ $JAVA_OPTS}${JMX_OPTS:+ $JMX_OPTS}"
|
2022-09-29 13:13:45 +02:00
|
|
|
if [[ ${ENABLE_OTEL:-false} == true ]]; then
|
2022-11-29 10:59:38 -06:00
|
|
|
JAVA_TOOL_OPTIONS="$JAVA_TOOL_OPTIONS -javaagent:opentelemetry-javaagent.jar"
|
2021-09-07 23:06:15 -07:00
|
|
|
fi
|
2022-09-29 13:13:45 +02:00
|
|
|
if [[ ${ENABLE_PROMETHEUS:-false} == true ]]; then
|
2022-10-04 18:07:44 +02:00
|
|
|
JAVA_TOOL_OPTIONS="$JAVA_TOOL_OPTIONS -javaagent:jmx_prometheus_javaagent.jar=4318:/datahub/datahub-mae-consumer/scripts/prometheus-config.yaml"
|
2021-09-07 23:06:15 -07:00
|
|
|
fi
|
|
|
|
|
2022-10-04 18:07:44 +02:00
|
|
|
export JAVA_TOOL_OPTIONS
|
2022-09-29 13:13:45 +02:00
|
|
|
exec dockerize "${dockerize_args[@]}" java -jar /datahub/datahub-mae-consumer/bin/mae-consumer-job.jar
|