You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

elasticsearch-env 2.2KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. #!/bin/bash
  2. set -e -o pipefail
  3. CDPATH=""
  4. SCRIPT="$0"
  5. # SCRIPT might be an arbitrarily deep series of symbolic links; loop until we
  6. # have the concrete path
  7. while [ -h "$SCRIPT" ] ; do
  8. ls=`ls -ld "$SCRIPT"`
  9. # Drop everything prior to ->
  10. link=`expr "$ls" : '.*-> \(.*\)$'`
  11. if expr "$link" : '/.*' > /dev/null; then
  12. SCRIPT="$link"
  13. else
  14. SCRIPT=`dirname "$SCRIPT"`/"$link"
  15. fi
  16. done
  17. # determine Elasticsearch home; to do this, we strip from the path until we find
  18. # bin, and then strip bin (there is an assumption here that there is no nested
  19. # directory under bin also named bin)
  20. ES_HOME=`dirname "$SCRIPT"`
  21. # now make ES_HOME absolute
  22. ES_HOME=`cd "$ES_HOME"; pwd`
  23. while [ "`basename "$ES_HOME"`" != "bin" ]; do
  24. ES_HOME=`dirname "$ES_HOME"`
  25. done
  26. ES_HOME=`dirname "$ES_HOME"`
  27. # now set the classpath
  28. ES_CLASSPATH="$ES_HOME/lib/*"
  29. # now set the path to java
  30. if [ -x "$JAVA_HOME/bin/java" ]; then
  31. JAVA="$JAVA_HOME/bin/java"
  32. else
  33. set +e
  34. JAVA=`which java`
  35. echo "warning: Falling back to java on path. This behavior is deprecated. Specify JAVA_HOME"
  36. set -e
  37. fi
  38. if [ ! -x "$JAVA" ]; then
  39. echo "could not find java; set JAVA_HOME" >&2
  40. exit 1
  41. fi
  42. # do not let JAVA_TOOL_OPTIONS slip in (as the JVM does by default)
  43. if [ ! -z "$JAVA_TOOL_OPTIONS" ]; then
  44. echo "warning: ignoring JAVA_TOOL_OPTIONS=$JAVA_TOOL_OPTIONS"
  45. unset JAVA_TOOL_OPTIONS
  46. fi
  47. # JAVA_OPTS is not a built-in JVM mechanism but some people think it is so we
  48. # warn them that we are not observing the value of $JAVA_OPTS
  49. if [ ! -z "$JAVA_OPTS" ]; then
  50. echo -n "warning: ignoring JAVA_OPTS=$JAVA_OPTS; "
  51. echo "pass JVM parameters via ES_JAVA_OPTS"
  52. fi
  53. # check the Java version
  54. "$JAVA" -cp "$ES_CLASSPATH" org.elasticsearch.tools.java_version_checker.JavaVersionChecker
  55. export HOSTNAME=$HOSTNAME
  56. if [ -z "$ES_PATH_CONF" ]; then ES_PATH_CONF="$ES_HOME"/config; fi
  57. if [ -z "$ES_PATH_CONF" ]; then
  58. echo "ES_PATH_CONF must be set to the configuration path"
  59. exit 1
  60. fi
  61. # now make ES_PATH_CONF absolute
  62. ES_PATH_CONF=`cd "$ES_PATH_CONF"; pwd`
  63. ES_DISTRIBUTION_FLAVOR=default
  64. ES_DISTRIBUTION_TYPE=tar
  65. if [ -z "$ES_TMPDIR" ]; then
  66. ES_TMPDIR=`"$JAVA" -cp "$ES_CLASSPATH" org.elasticsearch.tools.launchers.TempDirectory`
  67. fi