diff options
author | Ian Delaney <idella4@gentoo.org> | 2015-12-17 21:56:10 +0800 |
---|---|---|
committer | Ian Delaney <idella4@gentoo.org> | 2015-12-17 21:58:58 +0800 |
commit | 1a0ea0914d676d18ddc19c8f7b48cd6c22f68cf9 (patch) | |
tree | d2c71dbede9914145455a911e64dd1a335227e37 /app-misc | |
parent | 73ce06fe905a06fa25f71fc49cb063d547b6a3f0 (diff) | |
download | gentoo-1a0ea0914d676d18ddc19c8f7b48cd6c22f68cf9.tar.gz gentoo-1a0ea0914d676d18ddc19c8f7b48cd6c22f68cf9.tar.xz |
app-misc/elasticsearch: switch to correct file elasticsearch.init5
file mistakenly mixed with ".service5", now obsoleted in the gentoo bug
Gentoo bug: 564604
Package-Manager: portage-2.2.24
Diffstat (limited to 'app-misc')
-rw-r--r-- | app-misc/elasticsearch/files/elasticsearch.init4 | 2 | ||||
-rw-r--r-- | app-misc/elasticsearch/files/elasticsearch.init5 | 94 |
2 files changed, 86 insertions, 10 deletions
diff --git a/app-misc/elasticsearch/files/elasticsearch.init4 b/app-misc/elasticsearch/files/elasticsearch.init4 index 7110e584196..4ba42f63e18 100644 --- a/app-misc/elasticsearch/files/elasticsearch.init4 +++ b/app-misc/elasticsearch/files/elasticsearch.init4 @@ -67,7 +67,7 @@ start() { checkpath -d -o "${ES_USER}" -m750 "$(dirname "${PIDFILE}")" checkpath -d -o "${ES_USER}" -m750 "${ES_BASE_PATH}" checkpath -d -o "${ES_USER}" -m750 "${ES_LOG_PATH}" - + start-stop-daemon --start \ --background \ --chdir "${ES_BASE_PATH}" \ diff --git a/app-misc/elasticsearch/files/elasticsearch.init5 b/app-misc/elasticsearch/files/elasticsearch.init5 index 739c6f8888b..a7fb1851801 100644 --- a/app-misc/elasticsearch/files/elasticsearch.init5 +++ b/app-misc/elasticsearch/files/elasticsearch.init5 @@ -1,11 +1,87 @@ -[Unit] -Description=Elasticsearch -After=network.target +#!/sbin/runscript -[Service] -User=elasticsearch -Environment=ES_INCLUDE=/usr/share/elasticsearch/bin/elasticsearch.in.sh -ExecStart=/usr/share/elasticsearch/bin/elasticsearch -Des.default.path.conf=/etc/elasticsearch +name="Elasticsearch" +description="" -[Install] -WantedBy=multi-user.target +ES_USER=${ES_USER:="elasticsearch"} +ES_INSTANCE=${SVCNAME#*.} + +if [ -n "${ES_INSTANCE}" ] && [ ${SVCNAME} != "elasticsearch" ]; then + PIDFILE="/run/elasticsearch/elasticsearch.${ES_INSTANCE}.pid" + ES_BASE_PATH="/var/lib/elasticsearch/${ES_INSTANCE}" + ES_CONF_PATH="/etc/elasticsearch/${ES_INSTANCE}" + ES_LOG_PATH="/var/log/elasticsearch/${ES_INSTANCE}" +else + PIDFILE="/run/elasticsearch/elasticsearch.pid" + ES_BASE_PATH="/var/lib/elasticsearch/_default" + ES_CONF_PATH="/etc/elasticsearch" + ES_LOG_PATH="/var/log/elasticsearch/_default" +fi + +ES_DATA_PATH="${ES_BASE_PATH}/data" +ES_WORK_PATH="${ES_BASE_PATH}/work" + +export ES_INCLUDE="/usr/share/elasticsearch/bin/elasticsearch.in.sh" +export JAVA_OPTS +export ES_JAVA_OPTS +export ES_HEAP_SIZE +export ES_HEAP_NEWSIZE +export ES_DIRECT_SIZE +export ES_USE_IPV4 + +server_command="/usr/share/elasticsearch/bin/elasticsearch" +server_args=" -p ${PIDFILE} -Des.default.path.conf=${ES_CONF_PATH} -Des.default.path.data=${ES_DATA_PATH} -Des.default.path.work=${ES_WORK_PATH} -Des.default.path.logs=${ES_LOG_PATH}" + +depend() { + use net +} + +start() { + # elasticsearch -Des.config=/path/to/config/file + # elasticsearch -Des.network.host=10.0.0.4 + + [ ! -f "${ES_INCLUDE}" ] && { + eerror "${ES_INCLUDE} must be copied into place" + return 1 + } + + local conf + local conf_file + for conf in elasticsearch.yml logging.yml; do + conf_file="${ES_CONF_PATH}/${conf}" + if [ ! -f "${conf_file}" ]; then + eerror "${conf_file} must be copied into place" + return 1 + fi + done + + ebegin "Starting ${SVCNAME}" + + if [ -n "${ES_MAX_FD}" ]; then + ulimit -n ${ES_MAX_FD} + einfo "Max open filedescriptors : ${ES_MAX_FD}" + fi + + checkpath -d -o "${ES_USER}" -m750 "/var/lib/elasticsearch" + checkpath -d -o "${ES_USER}" -m750 "/var/log/elasticsearch" + checkpath -d -o "${ES_USER}" -m750 "$(dirname "${PIDFILE}")" + checkpath -d -o "${ES_USER}" -m750 "${ES_BASE_PATH}" + checkpath -d -o "${ES_USER}" -m750 "${ES_LOG_PATH}" + + start-stop-daemon --start \ + --background \ + --chdir "${ES_BASE_PATH}" \ + --user="${ES_USER}" \ + --pidfile="${PIDFILE}" \ + --exec ${server_command} -- ${server_args} + eend $? +} + +stop() { + ebegin "Stopping ${SVCNAME}" + start-stop-daemon --stop \ + --pidfile=${PIDFILE} \ + --user="${ES_USER}" \ + --retry=TERM/20/KILL/5 + eend $? +} |