| 
									
										
										
										
											2021-12-08 10:50:08 +09:00
										 |  |  | #!/bin/bash
 | 
					
						
							| 
									
										
										
										
											2022-12-01 22:33:54 -06:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-12-14 10:49:03 -08:00
										 |  |  | # Add default URI (http) scheme if needed | 
					
						
							|  |  |  | if ! echo $NEO4J_HOST | grep -q "://" ; then | 
					
						
							|  |  |  |     NEO4J_HOST="http://$NEO4J_HOST" | 
					
						
							| 
									
										
										
										
											2021-02-27 06:28:22 +01:00
										 |  |  | 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 | 
					
						
							| 
									
										
										
										
											2021-09-07 23:06:15 -07:00
										 |  |  |   ELASTICSEARCH_AUTH_HEADER="Accept: */*" | 
					
						
							| 
									
										
										
										
											2021-03-28 06:21:10 +03:00
										 |  |  | fi | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | if [[ $ELASTICSEARCH_USE_SSL == true ]]; then | 
					
						
							| 
									
										
										
										
											2021-09-07 23:06:15 -07:00
										 |  |  |   ELASTICSEARCH_PROTOCOL=https | 
					
						
							| 
									
										
										
										
											2021-03-28 06:21:10 +03:00
										 |  |  | else | 
					
						
							| 
									
										
										
										
											2021-09-07 23:06:15 -07:00
										 |  |  |   ELASTICSEARCH_PROTOCOL=http | 
					
						
							| 
									
										
										
										
											2021-03-28 06:21:10 +03:00
										 |  |  | fi | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-12-08 10:50:08 +09:00
										 |  |  | WAIT_FOR_EBEAN="" | 
					
						
							|  |  |  | if [[ $SKIP_EBEAN_CHECK != true ]]; then | 
					
						
							| 
									
										
										
										
											2022-04-26 01:29:24 +01:00
										 |  |  |   if [[ $ENTITY_SERVICE_IMPL == ebean ]] || [[ -z $ENTITY_SERVICE_IMPL ]]; then | 
					
						
							|  |  |  |     WAIT_FOR_EBEAN=" -wait tcp://$EBEAN_DATASOURCE_HOST " | 
					
						
							|  |  |  |   fi | 
					
						
							|  |  |  | fi | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | WAIT_FOR_CASSANDRA="" | 
					
						
							|  |  |  | if [[ $ENTITY_SERVICE_IMPL == cassandra ]] && [[ $SKIP_CASSANDRA_CHECK != true ]]; then | 
					
						
							|  |  |  |   WAIT_FOR_CASSANDRA=" -wait tcp://$CASSANDRA_DATASOURCE_HOST " | 
					
						
							| 
									
										
										
										
											2021-12-08 10:50:08 +09:00
										 |  |  | fi | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | WAIT_FOR_KAFKA="" | 
					
						
							|  |  |  | if [[ $SKIP_KAFKA_CHECK != true ]]; then | 
					
						
							|  |  |  |   WAIT_FOR_KAFKA=" -wait tcp://$(echo $KAFKA_BOOTSTRAP_SERVER | sed 's/,/ -wait tcp:\/\//g') " | 
					
						
							|  |  |  | fi | 
					
						
							| 
									
										
										
										
											2021-07-02 20:45:42 -07:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-12-14 10:49:03 -08:00
										 |  |  | WAIT_FOR_NEO4J="" | 
					
						
							|  |  |  | if [[ $GRAPH_SERVICE_IMPL != elasticsearch ]] && [[ $SKIP_NEO4J_CHECK != true ]]; then | 
					
						
							|  |  |  |   WAIT_FOR_NEO4J=" -wait $NEO4J_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 | 
					
						
							| 
									
										
										
										
											2022-11-29 10:59:38 -06:00
										 |  |  |   OTEL_AGENT="-javaagent:opentelemetry-javaagent.jar " | 
					
						
							| 
									
										
										
										
											2021-09-07 23:06:15 -07:00
										 |  |  | fi | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | PROMETHEUS_AGENT="" | 
					
						
							|  |  |  | if [[ $ENABLE_PROMETHEUS == true ]]; then | 
					
						
							|  |  |  |   PROMETHEUS_AGENT="-javaagent:jmx_prometheus_javaagent.jar=4318:/datahub/datahub-gms/scripts/prometheus-config.yaml " | 
					
						
							|  |  |  | fi | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-12-08 10:50:08 +09:00
										 |  |  | COMMON="
 | 
					
						
							|  |  |  |     $WAIT_FOR_EBEAN \
 | 
					
						
							| 
									
										
										
										
											2022-04-26 01:29:24 +01:00
										 |  |  |     $WAIT_FOR_CASSANDRA \
 | 
					
						
							| 
									
										
										
										
											2021-12-08 10:50:08 +09:00
										 |  |  |     $WAIT_FOR_KAFKA \
 | 
					
						
							| 
									
										
										
										
											2021-12-14 10:49:03 -08:00
										 |  |  |     $WAIT_FOR_NEO4J \
 | 
					
						
							| 
									
										
										
										
											2021-12-08 10:50:08 +09:00
										 |  |  |     -timeout 240s \
 | 
					
						
							|  |  |  |     java $JAVA_OPTS $JMX_OPTS \
 | 
					
						
							|  |  |  |     $OTEL_AGENT \
 | 
					
						
							|  |  |  |     $PROMETHEUS_AGENT \
 | 
					
						
							|  |  |  |     -jar /jetty-runner.jar \
 | 
					
						
							| 
									
										
										
										
											2024-05-07 12:13:40 -07:00
										 |  |  |     --stats unsecure \
 | 
					
						
							| 
									
										
										
										
											2021-12-08 10:50:08 +09:00
										 |  |  |     --jar jetty-util.jar \
 | 
					
						
							| 
									
										
										
										
											2022-12-06 23:52:41 +05:30
										 |  |  |     --jar jetty-jmx.jar \
 | 
					
						
							| 
									
										
										
										
											2022-03-31 01:10:47 +08:00
										 |  |  |     --config /datahub/datahub-gms/scripts/jetty.xml \
 | 
					
						
							| 
									
										
										
										
											2024-05-07 12:13:40 -07:00
										 |  |  |     --config /datahub/datahub-gms/scripts/jetty-jmx.xml \
 | 
					
						
							| 
									
										
										
										
											2021-12-08 10:50:08 +09:00
										 |  |  |     /datahub/datahub-gms/bin/war.war"
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | if [[ $SKIP_ELASTICSEARCH_CHECK != true ]]; then | 
					
						
							| 
									
										
										
										
											2022-03-02 02:49:43 -03:00
										 |  |  |   exec dockerize \
 | 
					
						
							| 
									
										
										
										
											2021-12-08 10:50:08 +09:00
										 |  |  |     -wait $ELASTICSEARCH_PROTOCOL://$ELASTICSEARCH_HOST:$ELASTICSEARCH_PORT -wait-http-header "$ELASTICSEARCH_AUTH_HEADER" \
 | 
					
						
							|  |  |  |     $COMMON | 
					
						
							|  |  |  | else | 
					
						
							| 
									
										
										
										
											2022-03-02 02:49:43 -03:00
										 |  |  |   exec dockerize $COMMON | 
					
						
							| 
									
										
										
										
											2021-12-08 10:50:08 +09:00
										 |  |  | fi |