summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app-misc/elasticsearch')
-rw-r--r--app-misc/elasticsearch/Manifest13
-rw-r--r--app-misc/elasticsearch/elasticsearch-6.8.15.ebuild90
-rw-r--r--app-misc/elasticsearch/elasticsearch-6.8.16.ebuild90
-rw-r--r--app-misc/elasticsearch/elasticsearch-6.8.17.ebuild88
-rw-r--r--app-misc/elasticsearch/elasticsearch-7.12.0.ebuild84
-rw-r--r--app-misc/elasticsearch/elasticsearch-7.12.1.ebuild82
-rw-r--r--app-misc/elasticsearch/elasticsearch-7.13.2.ebuild82
-rw-r--r--app-misc/elasticsearch/elasticsearch-7.17.16.ebuild (renamed from app-misc/elasticsearch/elasticsearch-7.13.4.ebuild)10
-rw-r--r--app-misc/elasticsearch/elasticsearch-8.12.1.ebuild102
-rw-r--r--app-misc/elasticsearch/elasticsearch-8.12.2.ebuild102
-rw-r--r--app-misc/elasticsearch/files/elasticsearch-env.patch24
-rw-r--r--app-misc/elasticsearch/files/elasticsearch.conf.362
-rw-r--r--app-misc/elasticsearch/files/elasticsearch.init.9 (renamed from app-misc/elasticsearch/files/elasticsearch.init.6)10
-rw-r--r--app-misc/elasticsearch/files/elasticsearch.service.467
-rw-r--r--app-misc/elasticsearch/metadata.xml11
15 files changed, 313 insertions, 604 deletions
diff --git a/app-misc/elasticsearch/Manifest b/app-misc/elasticsearch/Manifest
index 0e4a9f947859..66dd9d1b7eea 100644
--- a/app-misc/elasticsearch/Manifest
+++ b/app-misc/elasticsearch/Manifest
@@ -1,10 +1,3 @@
-DIST elasticsearch-6.8.15.tar.gz 149102328 BLAKE2B 0ce9ba565d751cd27721f3d49dd24761937c3476cee4896ba1a4d84e4fc238296129481f18cad64270fe8af71a043c2e8e583df14f2a084850fb10c93fcea0ef SHA512 c62c4d9d1bb83e10d3e1079f56b834f2f89b1f712c29d9ce7e81786199c71d287ecbf6df158eca56a7af711eafe13dfb276e12b34e1a0a6cf6719e1fbb44a142
-DIST elasticsearch-6.8.16.tar.gz 149125098 BLAKE2B cafdb7fd97b3df087472c65ede9eb9c703f6499a03d70c5fcc497bdaafc0757d0b9e7fe84d0a8c710cdecbe85654fdad1f854209015a545e0bf43d8e585a481f SHA512 0b15f77ba5962970ef38869a233ee3d091a64b218cf42dc5f4bdd8a81322739992f75e3c438295435f28af20af1e138c2f5e3afed76a7ebc0f348764528dd0f3
-DIST elasticsearch-6.8.17.tar.gz 149132823 BLAKE2B a83d4e81059a717e48ac54e7565efe282f42103718ba9cef9994a6970769bb01248e99ffbfe061ca85a7b44890604c6174dc11046a94c455dc01da7f495524ea SHA512 5eb365efccff4e371d9ac873b45684c36cfd7f25ec51a86c3cd74beff4491dbc0097dba22f91335c35478e3b25decc6ae4bc5d538add0e17a39eb063dfa2d88c
-DIST elasticsearch-7.12.0-no-jdk-linux-x86_64.tar.gz 173069694 BLAKE2B 5de74b1e6de743246cf48e32254f9646fa25c2820d0be9df886fdefe131a302ddb8906546147f0d284e2fc0faf8cc0238bf854fe1611d28bf1e7cb1518bd4e31 SHA512 205aa2a2fa2ab7eb7b54087420e0123aa97e5456e2e1f31cad9ea7b84be3f9823a2a7c47d4cf1697833e5f795359477d3a3b0ea4955a8f92583cf2228071827e
-DIST elasticsearch-7.12.1-no-jdk-linux-x86_64.tar.gz 173079845 BLAKE2B 98214508c2c1dcb631f59d9e51d5949f9a7c5d1f68ff78c8d93af04c6a21fa1e1c6e2051f04bbdb8154443d6295ad54af2016695fcb9193b7595e1486777ba98 SHA512 c91fd66668977280d7339caf6b4fef9fce5640492f0e2a65bc537c6da8397c801a3727f1ff56b7a1591b11ea47195720c588a4eba473043f829a87cd3dcc0af4
-DIST elasticsearch-7.13.2-no-jdk-linux-x86_64.tar.gz 174688419 BLAKE2B e8541581dfc856b9b005bc7fda29c9aaf82d61c406df1f7e06ea8997a71567047d4822e5e873aee41f7a295f2eba10508c966e9ebc4e8b7c734f1c100f4a05f3 SHA512 4d02faf019eab1fc590d76fdc50c6396cfe5bc4363baaa3d1e63ca7210942cbdf5c08d28e5d4b7d2cf47fb18ee83b94529ecb2bdaba6521798721398c8a06165
-DIST elasticsearch-7.13.4-no-jdk-linux-x86_64.tar.gz 174690446 BLAKE2B bab17a006f14d262ee85918c8b2e5f610a1e726d158cf423bf306971826f182963e0231456539253f5054069b82672e8803c0da06166215d128bdea02e6738db SHA512 5d6d53d9d6c6faf5d6599019882aa4b5d91f04944ab26c496cab033880b71f1ce2addb98bcf12b21891c005e810ce4a0493627b9ec9f0f78b4f7786efa398eab
-DIST elasticsearch-oss-6.8.15.tar.gz 68240776 BLAKE2B 431d845e02f2118a98021af4422ece34274b6d0811a32c5a3e679da3f8f56ca9cd45949307268811edbb83327a4a80fb84866cbbaaf01f7d3af042412b1e1bfa SHA512 7e6a819339ac6043af218f9d97d5d68c50ac46900e4293e7fa18992f7a50b10b0ab2434e26ff0dc1546204ae7526de8ac6ef6545fc0db9c862ceeaa0d96c56f5
-DIST elasticsearch-oss-6.8.16.tar.gz 68248767 BLAKE2B 2c8c14a6e2f837bc547de2e8c97f2fbe2dbf7743978a00e2fc37cd61eb46144df2a24f67360761e0342987b9194176109cfbd07545d2e8f88cae48f9508c659c SHA512 0f46c69136312d535ccff4663655500538ffc924bbe50350c2eed3372609a28e642bb906cbb9a631af5fa10568a16c1a630ef181c383ee247c98325ddc85e04c
-DIST elasticsearch-oss-6.8.17.tar.gz 68247749 BLAKE2B 12e85804a7d58dc27d85fbed6501831d92428405cb4636355c523a370863e00301bd75d7d12404ee0c7eefc32c53bc4b23e8fc1fecf2f606faf85369b2262cc7 SHA512 0f165357b1f389fbd01f07397a2b3ea5d493fae720c15213f2ee47a0c2c75bc4a448384767646d7585a18d4577899b840121c1829a987a16d2de68f216b28f7c
+DIST elasticsearch-7.17.16-no-jdk-linux-x86_64.tar.gz 168795535 BLAKE2B 642ae6f07db953e7fa783dcd63c6dcebab61e85ea600bede09e9596bf9dee2d71c43e5c28b80bd4c091d792ed3a95d10cc75ffb1074ad4b3cfceb081ed25027f SHA512 3755373f5068a08e4619b4e922bc2d3d97d41791dbf5aa84564574fc84abee9c567b16095cf0e11d48910627e3c183ff1193bf2d5ade59891bea2b3f994aa7df
+DIST elasticsearch-8.12.1-linux-x86_64.tar.gz 621183584 BLAKE2B e168cf9549a22c2c8b049638f7039b5f43f6384da0a10627fbe0671a0a5a99f8a4e40f7c914d820d94dd42b2d328f3e20425eca3363478526d5faf07f9c5d782 SHA512 dcaea1ddb499724be40da936f6b7309e66458f0ac2852c63109cc8bd8fb6c88dbea0d8c9ce451c2fb0441a25fc137f5dc2894b7bea0242e0067bf29ffad48f54
+DIST elasticsearch-8.12.2-linux-x86_64.tar.gz 621185674 BLAKE2B 9e4d62bcbc0fcc6d545572e5c076af24e5363a6c5aabd87e9836005863013f08445c64877d78c5c5c71aed481c5dd2bb766a8b13eab5fe3398ab3624ab8a14ef SHA512 d4791e2e30221d5e6e0284089ba3347c0232c49173caccc64b6548aafac94066af1ba05c3f2f4635bc016004195371bb79864d331996f8cea76fc290976b4638
diff --git a/app-misc/elasticsearch/elasticsearch-6.8.15.ebuild b/app-misc/elasticsearch/elasticsearch-6.8.15.ebuild
deleted file mode 100644
index e090a2d2fede..000000000000
--- a/app-misc/elasticsearch/elasticsearch-6.8.15.ebuild
+++ /dev/null
@@ -1,90 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit systemd tmpfiles
-
-DESCRIPTION="Open Source, Distributed, RESTful, Search Engine"
-HOMEPAGE="https://www.elastic.co/products/elasticsearch"
-SRC_URI="x-pack? ( https://artifacts.elastic.co/downloads/${PN}/${P}.tar.gz )
- !x-pack? ( https://artifacts.elastic.co/downloads/${PN}/${PN}-oss-${PV}.tar.gz )"
-LICENSE="Apache-2.0 BSD-2 LGPL-3 MIT public-domain x-pack? ( Elastic )"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE="x-pack"
-
-RDEPEND="acct-group/elasticsearch
- acct-user/elasticsearch
- virtual/jre:1.8"
-
-QA_PRESTRIPPED="usr/share/elasticsearch/modules/x-pack-ml/platform/linux-x86_64/\(bin\|lib\)/.*"
-
-src_prepare() {
- default
-
- rm bin/*.{bat,exe} LICENSE.txt NOTICE.txt || die
- rmdir logs || die
-
- if use x-pack; then
- rm bin/x-pack/*.bat || die
- rm -r modules/x-pack-ml/platform/{darwin,windows}-x86_64 || die
- fi
-}
-
-src_install() {
- keepdir /etc/${PN}
- keepdir /etc/${PN}/scripts
-
- insinto /etc/${PN}
- doins -r config/.
- rm -r config || die
-
- fowners root:${PN} /etc/${PN}
- fperms 2750 /etc/${PN}
-
- insinto /usr/share/${PN}
- doins -r .
-
- exeinto /usr/share/${PN}/bin
- doexe "${FILESDIR}/elasticsearch-systemd-pre-exec"
-
- chmod +x "${ED}"/usr/share/${PN}/bin/* || die
-
- if use x-pack; then
- chmod +x "${ED}"/usr/share/${PN}/modules/x-pack-ml/platform/linux-x86_64/bin/* || die
- fi
-
- keepdir /var/{lib,log}/${PN}
- fowners ${PN}:${PN} /var/{lib,log}/${PN}
- fperms 0750 /var/{lib,log}/${PN}
- dodir /usr/share/${PN}/plugins
-
- insinto /etc/sysctl.d
- newins "${FILESDIR}/${PN}.sysctl.d" ${PN}.conf
-
- newconfd "${FILESDIR}/${PN}.conf.3" ${PN}
- newinitd "${FILESDIR}/${PN}.init.6" ${PN}
-
- systemd_install_serviced "${FILESDIR}/${PN}.service.conf"
- newtmpfiles "${FILESDIR}/${PN}.tmpfiles.d" ${PN}.conf
- systemd_newunit "${FILESDIR}"/${PN}.service.3 ${PN}.service
-}
-
-pkg_postinst() {
- tmpfiles_process ${PN}.conf
-
- elog
- elog "You may create multiple instances of ${PN} by"
- elog "symlinking the init script:"
- elog "ln -sf /etc/init.d/${PN} /etc/init.d/${PN}.instance"
- elog
- elog "Please make sure you put elasticsearch.yml, log4j2.properties and scripts"
- elog "from /etc/${PN} into the configuration directory of the instance:"
- elog "/etc/${PN}/instance"
- elog
- ewarn "Please make sure you have proper permissions on /etc/${PN}"
- ewarn "prior to keystore generation or you may experience startup fails."
- ewarn "chown root:${PN} /etc/${PN} && chmod 2750 /etc/${PN}"
- ewarn "chown root:${PN} /etc/${PN}/${PN}.keystore && chmod 0660 /etc/${PN}/${PN}.keystore"
-}
diff --git a/app-misc/elasticsearch/elasticsearch-6.8.16.ebuild b/app-misc/elasticsearch/elasticsearch-6.8.16.ebuild
deleted file mode 100644
index e090a2d2fede..000000000000
--- a/app-misc/elasticsearch/elasticsearch-6.8.16.ebuild
+++ /dev/null
@@ -1,90 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit systemd tmpfiles
-
-DESCRIPTION="Open Source, Distributed, RESTful, Search Engine"
-HOMEPAGE="https://www.elastic.co/products/elasticsearch"
-SRC_URI="x-pack? ( https://artifacts.elastic.co/downloads/${PN}/${P}.tar.gz )
- !x-pack? ( https://artifacts.elastic.co/downloads/${PN}/${PN}-oss-${PV}.tar.gz )"
-LICENSE="Apache-2.0 BSD-2 LGPL-3 MIT public-domain x-pack? ( Elastic )"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE="x-pack"
-
-RDEPEND="acct-group/elasticsearch
- acct-user/elasticsearch
- virtual/jre:1.8"
-
-QA_PRESTRIPPED="usr/share/elasticsearch/modules/x-pack-ml/platform/linux-x86_64/\(bin\|lib\)/.*"
-
-src_prepare() {
- default
-
- rm bin/*.{bat,exe} LICENSE.txt NOTICE.txt || die
- rmdir logs || die
-
- if use x-pack; then
- rm bin/x-pack/*.bat || die
- rm -r modules/x-pack-ml/platform/{darwin,windows}-x86_64 || die
- fi
-}
-
-src_install() {
- keepdir /etc/${PN}
- keepdir /etc/${PN}/scripts
-
- insinto /etc/${PN}
- doins -r config/.
- rm -r config || die
-
- fowners root:${PN} /etc/${PN}
- fperms 2750 /etc/${PN}
-
- insinto /usr/share/${PN}
- doins -r .
-
- exeinto /usr/share/${PN}/bin
- doexe "${FILESDIR}/elasticsearch-systemd-pre-exec"
-
- chmod +x "${ED}"/usr/share/${PN}/bin/* || die
-
- if use x-pack; then
- chmod +x "${ED}"/usr/share/${PN}/modules/x-pack-ml/platform/linux-x86_64/bin/* || die
- fi
-
- keepdir /var/{lib,log}/${PN}
- fowners ${PN}:${PN} /var/{lib,log}/${PN}
- fperms 0750 /var/{lib,log}/${PN}
- dodir /usr/share/${PN}/plugins
-
- insinto /etc/sysctl.d
- newins "${FILESDIR}/${PN}.sysctl.d" ${PN}.conf
-
- newconfd "${FILESDIR}/${PN}.conf.3" ${PN}
- newinitd "${FILESDIR}/${PN}.init.6" ${PN}
-
- systemd_install_serviced "${FILESDIR}/${PN}.service.conf"
- newtmpfiles "${FILESDIR}/${PN}.tmpfiles.d" ${PN}.conf
- systemd_newunit "${FILESDIR}"/${PN}.service.3 ${PN}.service
-}
-
-pkg_postinst() {
- tmpfiles_process ${PN}.conf
-
- elog
- elog "You may create multiple instances of ${PN} by"
- elog "symlinking the init script:"
- elog "ln -sf /etc/init.d/${PN} /etc/init.d/${PN}.instance"
- elog
- elog "Please make sure you put elasticsearch.yml, log4j2.properties and scripts"
- elog "from /etc/${PN} into the configuration directory of the instance:"
- elog "/etc/${PN}/instance"
- elog
- ewarn "Please make sure you have proper permissions on /etc/${PN}"
- ewarn "prior to keystore generation or you may experience startup fails."
- ewarn "chown root:${PN} /etc/${PN} && chmod 2750 /etc/${PN}"
- ewarn "chown root:${PN} /etc/${PN}/${PN}.keystore && chmod 0660 /etc/${PN}/${PN}.keystore"
-}
diff --git a/app-misc/elasticsearch/elasticsearch-6.8.17.ebuild b/app-misc/elasticsearch/elasticsearch-6.8.17.ebuild
deleted file mode 100644
index 6b347e7957c4..000000000000
--- a/app-misc/elasticsearch/elasticsearch-6.8.17.ebuild
+++ /dev/null
@@ -1,88 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit systemd tmpfiles
-
-DESCRIPTION="Open Source, Distributed, RESTful, Search Engine"
-HOMEPAGE="https://www.elastic.co/products/elasticsearch"
-SRC_URI="x-pack? ( https://artifacts.elastic.co/downloads/${PN}/${P}.tar.gz )
- !x-pack? ( https://artifacts.elastic.co/downloads/${PN}/${PN}-oss-${PV}.tar.gz )"
-LICENSE="Apache-2.0 BSD-2 LGPL-3 MIT public-domain x-pack? ( Elastic )"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE="x-pack"
-
-RDEPEND="acct-group/elasticsearch
- acct-user/elasticsearch
- virtual/jre:1.8"
-
-QA_PRESTRIPPED="usr/share/elasticsearch/modules/x-pack-ml/platform/linux-x86_64/\(bin\|lib\)/.*"
-
-src_prepare() {
- default
-
- rm bin/*.{bat,exe} LICENSE.txt NOTICE.txt || die
- rmdir logs || die
-
- if use x-pack; then
- rm bin/x-pack/*.bat || die
- rm -r modules/x-pack-ml/platform/{darwin,windows}-x86_64 || die
- fi
-}
-
-src_install() {
- keepdir /etc/${PN}
- keepdir /etc/${PN}/scripts
-
- insinto /etc/${PN}
- doins -r config/.
- rm -r config || die
-
- fowners root:${PN} /etc/${PN}
- fperms 2750 /etc/${PN}
-
- insinto /usr/share/${PN}
- doins -r .
-
- exeinto /usr/share/${PN}/bin
- doexe "${FILESDIR}/elasticsearch-systemd-pre-exec"
-
- chmod +x "${ED}"/usr/share/${PN}/bin/* || die
-
- if use x-pack; then
- chmod +x "${ED}"/usr/share/${PN}/modules/x-pack-ml/platform/linux-x86_64/bin/* || die
- fi
-
- keepdir /var/{lib,log}/${PN}
- fowners ${PN}:${PN} /var/{lib,log}/${PN}
- fperms 0750 /var/{lib,log}/${PN}
- dodir /usr/share/${PN}/plugins
-
- insinto /etc/sysctl.d
- newins "${FILESDIR}/${PN}.sysctl.d" ${PN}.conf
-
- newconfd "${FILESDIR}/${PN}.conf.3" ${PN}
- newinitd "${FILESDIR}/${PN}.init.6" ${PN}
-
- systemd_install_serviced "${FILESDIR}/${PN}.service.conf"
- newtmpfiles "${FILESDIR}/${PN}.tmpfiles.d" ${PN}.conf
- systemd_newunit "${FILESDIR}"/${PN}.service.3 ${PN}.service
-}
-
-pkg_postinst() {
- elog
- elog "You may create multiple instances of ${PN} by"
- elog "symlinking the init script:"
- elog "ln -sf /etc/init.d/${PN} /etc/init.d/${PN}.instance"
- elog
- elog "Please make sure you put elasticsearch.yml, log4j2.properties and scripts"
- elog "from /etc/${PN} into the configuration directory of the instance:"
- elog "/etc/${PN}/instance"
- elog
- ewarn "Please make sure you have proper permissions on /etc/${PN}"
- ewarn "prior to keystore generation or you may experience startup fails."
- ewarn "chown root:${PN} /etc/${PN} && chmod 2750 /etc/${PN}"
- ewarn "chown root:${PN} /etc/${PN}/${PN}.keystore && chmod 0660 /etc/${PN}/${PN}.keystore"
-}
diff --git a/app-misc/elasticsearch/elasticsearch-7.12.0.ebuild b/app-misc/elasticsearch/elasticsearch-7.12.0.ebuild
deleted file mode 100644
index 45949c1449de..000000000000
--- a/app-misc/elasticsearch/elasticsearch-7.12.0.ebuild
+++ /dev/null
@@ -1,84 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit systemd tmpfiles
-
-DESCRIPTION="Free and Open, Distributed, RESTful Search Engine"
-HOMEPAGE="https://www.elastic.co/elasticsearch/"
-SRC_URI="https://artifacts.elastic.co/downloads/${PN}/${P}-no-jdk-linux-x86_64.tar.gz"
-LICENSE="Apache-2.0 BSD-2 Elastic-2.0 LGPL-3 MIT public-domain"
-SLOT="0"
-KEYWORDS="~amd64"
-
-RDEPEND="acct-group/elasticsearch
- acct-user/elasticsearch
- virtual/jre"
-
-QA_PRESTRIPPED="usr/share/elasticsearch/modules/x-pack-ml/platform/linux-x86_64/\(bin\|lib\)/.*"
-QA_PREBUILT="
- usr/share/elasticsearch/modules/x-pack-ml/platform/linux-x86_64/bin/.*
- usr/share/elasticsearch/modules/x-pack-ml/platform/linux-x86_64/lib/.*"
-
-src_prepare() {
- default
-
- rm LICENSE.txt NOTICE.txt || die
- rmdir logs || die
-}
-
-src_install() {
- keepdir /etc/${PN}
- keepdir /etc/${PN}/scripts
-
- insinto /etc/${PN}
- doins -r config/.
- rm -r config || die
-
- fowners root:${PN} /etc/${PN}
- fperms 2750 /etc/${PN}
-
- insinto /usr/share/${PN}
- doins -r .
-
- exeinto /usr/share/${PN}/bin
- doexe "${FILESDIR}/elasticsearch-systemd-pre-exec"
-
- fperms -R +x /usr/share/${PN}/bin
- fperms -R +x /usr/share/${PN}/modules/x-pack-ml/platform/linux-x86_64/bin
-
- keepdir /var/{lib,log}/${PN}
- fowners ${PN}:${PN} /var/{lib,log}/${PN}
- fperms 0750 /var/{lib,log}/${PN}
- dodir /usr/share/${PN}/plugins
-
- insinto /etc/sysctl.d
- newins "${FILESDIR}/${PN}.sysctl.d" ${PN}.conf
-
- newconfd "${FILESDIR}/${PN}.conf.4" ${PN}
- newinitd "${FILESDIR}/${PN}.init.8" ${PN}
-
- systemd_install_serviced "${FILESDIR}/${PN}.service.conf"
- systemd_newunit "${FILESDIR}"/${PN}.service.3 ${PN}.service
-
- newtmpfiles "${FILESDIR}"/${PN}.tmpfiles.d ${PN}.conf
-}
-
-pkg_postinst() {
- tmpfiles_process ${PN}.conf
-
- elog
- elog "You may create multiple instances of ${PN} by"
- elog "symlinking the init script:"
- elog "ln -sf /etc/init.d/${PN} /etc/init.d/${PN}.instance"
- elog
- elog "Please make sure you put elasticsearch.yml, log4j2.properties and scripts"
- elog "from /etc/${PN} into the configuration directory of the instance:"
- elog "/etc/${PN}/instance"
- elog
- ewarn "Please make sure you have proper permissions on /etc/${PN}"
- ewarn "prior to keystore generation or you may experience startup fails."
- ewarn "chown root:${PN} /etc/${PN} && chmod 2750 /etc/${PN}"
- ewarn "chown root:${PN} /etc/${PN}/${PN}.keystore && chmod 0660 /etc/${PN}/${PN}.keystore"
-}
diff --git a/app-misc/elasticsearch/elasticsearch-7.12.1.ebuild b/app-misc/elasticsearch/elasticsearch-7.12.1.ebuild
deleted file mode 100644
index bdf9f6e767d4..000000000000
--- a/app-misc/elasticsearch/elasticsearch-7.12.1.ebuild
+++ /dev/null
@@ -1,82 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit systemd tmpfiles
-
-DESCRIPTION="Free and Open, Distributed, RESTful Search Engine"
-HOMEPAGE="https://www.elastic.co/elasticsearch/"
-SRC_URI="https://artifacts.elastic.co/downloads/${PN}/${P}-no-jdk-linux-x86_64.tar.gz"
-LICENSE="Apache-2.0 BSD-2 Elastic-2.0 LGPL-3 MIT public-domain"
-SLOT="0"
-KEYWORDS="~amd64"
-
-RDEPEND="acct-group/elasticsearch
- acct-user/elasticsearch
- virtual/jre"
-
-QA_PREBUILT="usr/share/elasticsearch/modules/x-pack-ml/platform/linux-x86_64/\(bin\|lib\)/.*"
-QA_PRESTRIPPED="usr/share/elasticsearch/modules/x-pack-ml/platform/linux-x86_64/\(bin\|lib\)/.*"
-
-src_prepare() {
- default
-
- rm LICENSE.txt NOTICE.txt || die
- rmdir logs || die
-}
-
-src_install() {
- keepdir /etc/${PN}
- keepdir /etc/${PN}/scripts
-
- insinto /etc/${PN}
- doins -r config/.
- rm -r config || die
-
- fowners root:${PN} /etc/${PN}
- fperms 2750 /etc/${PN}
-
- insinto /usr/share/${PN}
- doins -r .
-
- exeinto /usr/share/${PN}/bin
- doexe "${FILESDIR}/elasticsearch-systemd-pre-exec"
-
- fperms -R +x /usr/share/${PN}/bin
- fperms -R +x /usr/share/${PN}/modules/x-pack-ml/platform/linux-x86_64/bin
-
- keepdir /var/{lib,log}/${PN}
- fowners ${PN}:${PN} /var/{lib,log}/${PN}
- fperms 0750 /var/{lib,log}/${PN}
- dodir /usr/share/${PN}/plugins
-
- insinto /etc/sysctl.d
- newins "${FILESDIR}/${PN}.sysctl.d" ${PN}.conf
-
- newconfd "${FILESDIR}/${PN}.conf.4" ${PN}
- newinitd "${FILESDIR}/${PN}.init.8" ${PN}
-
- systemd_install_serviced "${FILESDIR}/${PN}.service.conf"
- systemd_newunit "${FILESDIR}"/${PN}.service.3 ${PN}.service
-
- newtmpfiles "${FILESDIR}"/${PN}.tmpfiles.d ${PN}.conf
-}
-
-pkg_postinst() {
- tmpfiles_process ${PN}.conf
-
- elog
- elog "You may create multiple instances of ${PN} by"
- elog "symlinking the init script:"
- elog "ln -sf /etc/init.d/${PN} /etc/init.d/${PN}.instance"
- elog
- elog "Please make sure you put elasticsearch.yml, log4j2.properties and scripts"
- elog "from /etc/${PN} into the configuration directory of the instance:"
- elog "/etc/${PN}/instance"
- elog
- ewarn "Please make sure you have proper permissions on /etc/${PN}"
- ewarn "prior to keystore generation or you may experience startup fails."
- ewarn "chown root:${PN} /etc/${PN} && chmod 2750 /etc/${PN}"
- ewarn "chown root:${PN} /etc/${PN}/${PN}.keystore && chmod 0660 /etc/${PN}/${PN}.keystore"
-}
diff --git a/app-misc/elasticsearch/elasticsearch-7.13.2.ebuild b/app-misc/elasticsearch/elasticsearch-7.13.2.ebuild
deleted file mode 100644
index bdf9f6e767d4..000000000000
--- a/app-misc/elasticsearch/elasticsearch-7.13.2.ebuild
+++ /dev/null
@@ -1,82 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit systemd tmpfiles
-
-DESCRIPTION="Free and Open, Distributed, RESTful Search Engine"
-HOMEPAGE="https://www.elastic.co/elasticsearch/"
-SRC_URI="https://artifacts.elastic.co/downloads/${PN}/${P}-no-jdk-linux-x86_64.tar.gz"
-LICENSE="Apache-2.0 BSD-2 Elastic-2.0 LGPL-3 MIT public-domain"
-SLOT="0"
-KEYWORDS="~amd64"
-
-RDEPEND="acct-group/elasticsearch
- acct-user/elasticsearch
- virtual/jre"
-
-QA_PREBUILT="usr/share/elasticsearch/modules/x-pack-ml/platform/linux-x86_64/\(bin\|lib\)/.*"
-QA_PRESTRIPPED="usr/share/elasticsearch/modules/x-pack-ml/platform/linux-x86_64/\(bin\|lib\)/.*"
-
-src_prepare() {
- default
-
- rm LICENSE.txt NOTICE.txt || die
- rmdir logs || die
-}
-
-src_install() {
- keepdir /etc/${PN}
- keepdir /etc/${PN}/scripts
-
- insinto /etc/${PN}
- doins -r config/.
- rm -r config || die
-
- fowners root:${PN} /etc/${PN}
- fperms 2750 /etc/${PN}
-
- insinto /usr/share/${PN}
- doins -r .
-
- exeinto /usr/share/${PN}/bin
- doexe "${FILESDIR}/elasticsearch-systemd-pre-exec"
-
- fperms -R +x /usr/share/${PN}/bin
- fperms -R +x /usr/share/${PN}/modules/x-pack-ml/platform/linux-x86_64/bin
-
- keepdir /var/{lib,log}/${PN}
- fowners ${PN}:${PN} /var/{lib,log}/${PN}
- fperms 0750 /var/{lib,log}/${PN}
- dodir /usr/share/${PN}/plugins
-
- insinto /etc/sysctl.d
- newins "${FILESDIR}/${PN}.sysctl.d" ${PN}.conf
-
- newconfd "${FILESDIR}/${PN}.conf.4" ${PN}
- newinitd "${FILESDIR}/${PN}.init.8" ${PN}
-
- systemd_install_serviced "${FILESDIR}/${PN}.service.conf"
- systemd_newunit "${FILESDIR}"/${PN}.service.3 ${PN}.service
-
- newtmpfiles "${FILESDIR}"/${PN}.tmpfiles.d ${PN}.conf
-}
-
-pkg_postinst() {
- tmpfiles_process ${PN}.conf
-
- elog
- elog "You may create multiple instances of ${PN} by"
- elog "symlinking the init script:"
- elog "ln -sf /etc/init.d/${PN} /etc/init.d/${PN}.instance"
- elog
- elog "Please make sure you put elasticsearch.yml, log4j2.properties and scripts"
- elog "from /etc/${PN} into the configuration directory of the instance:"
- elog "/etc/${PN}/instance"
- elog
- ewarn "Please make sure you have proper permissions on /etc/${PN}"
- ewarn "prior to keystore generation or you may experience startup fails."
- ewarn "chown root:${PN} /etc/${PN} && chmod 2750 /etc/${PN}"
- ewarn "chown root:${PN} /etc/${PN}/${PN}.keystore && chmod 0660 /etc/${PN}/${PN}.keystore"
-}
diff --git a/app-misc/elasticsearch/elasticsearch-7.13.4.ebuild b/app-misc/elasticsearch/elasticsearch-7.17.16.ebuild
index e2035c21e8ff..d8370e7f9001 100644
--- a/app-misc/elasticsearch/elasticsearch-7.13.4.ebuild
+++ b/app-misc/elasticsearch/elasticsearch-7.17.16.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
inherit systemd tmpfiles
@@ -9,11 +9,12 @@ DESCRIPTION="Free and Open, Distributed, RESTful Search Engine"
HOMEPAGE="https://www.elastic.co/elasticsearch/"
SRC_URI="https://artifacts.elastic.co/downloads/${PN}/${P}-no-jdk-linux-x86_64.tar.gz"
LICENSE="Apache-2.0 BSD-2 Elastic-2.0 LGPL-3 MIT public-domain"
-SLOT="0"
+SLOT="0/7"
KEYWORDS="~amd64"
RDEPEND="acct-group/elasticsearch
acct-user/elasticsearch
+ sys-libs/zlib
virtual/jre"
QA_PREBUILT="usr/share/elasticsearch/modules/x-pack-ml/platform/linux-x86_64/\(bin\|lib\)/.*"
@@ -49,13 +50,12 @@ src_install() {
keepdir /var/{lib,log}/${PN}
fowners ${PN}:${PN} /var/{lib,log}/${PN}
fperms 0750 /var/{lib,log}/${PN}
- dodir /usr/share/${PN}/plugins
insinto /etc/sysctl.d
newins "${FILESDIR}/${PN}.sysctl.d" ${PN}.conf
newconfd "${FILESDIR}/${PN}.conf.4" ${PN}
- newinitd "${FILESDIR}/${PN}.init.8" ${PN}
+ newinitd "${FILESDIR}/${PN}.init.9" ${PN}
systemd_install_serviced "${FILESDIR}/${PN}.service.conf"
systemd_newunit "${FILESDIR}"/${PN}.service.3 ${PN}.service
diff --git a/app-misc/elasticsearch/elasticsearch-8.12.1.ebuild b/app-misc/elasticsearch/elasticsearch-8.12.1.ebuild
new file mode 100644
index 000000000000..8498fcbccc2a
--- /dev/null
+++ b/app-misc/elasticsearch/elasticsearch-8.12.1.ebuild
@@ -0,0 +1,102 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit systemd tmpfiles
+
+DESCRIPTION="Free and Open, Distributed, RESTful Search Engine"
+HOMEPAGE="https://www.elastic.co/elasticsearch/"
+SRC_URI="https://artifacts.elastic.co/downloads/${PN}/${P}-linux-x86_64.tar.gz"
+
+LICENSE="Apache-2.0 BSD-2 Elastic-2.0 LGPL-3 MIT public-domain"
+SLOT="0/8"
+KEYWORDS="~amd64"
+
+DEPEND="acct-group/elasticsearch
+ acct-user/elasticsearch"
+RDEPEND="acct-group/elasticsearch
+ acct-user/elasticsearch
+ sys-libs/zlib
+ virtual/jre:17"
+
+QA_PREBUILT="usr/share/elasticsearch/modules/x-pack-ml/platform/linux-x86_64/\(bin\|lib\)/.*"
+QA_PRESTRIPPED="usr/share/elasticsearch/modules/x-pack-ml/platform/linux-x86_64/\(bin\|lib\)/.*"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-env.patch"
+)
+
+src_prepare() {
+ default
+
+ rm -rf jdk || die
+ sed -i -e "s:logs/:${EPREFIX}/var/log/${PN}/:g" config/jvm.options || die "Unable to set Elasticsearch log location"
+ # elasticsearch-env sets the envvar for the config location if not specified elsewhere;
+ # certain utilities try and source this. Although we patch ES_JAVA_HOME for Gentoo slightly earlier,
+ # it's easier to respect EPREFIX for the config location using sed.
+ sed -i "s:ES_PATH_CONF=\"\$ES_HOME\"/config:ES_PATH_CONF=\"${EPREFIX}/etc/${PN}\":" bin/elasticsearch-env \
+ || die "Unable to set Elasticsearch config directory"
+ rm LICENSE.txt NOTICE.txt || die
+ rmdir logs || die
+}
+
+src_install() {
+ keepdir /etc/${PN}
+ keepdir /etc/${PN}/scripts
+
+ insinto /etc/${PN}
+ doins -r config/.
+ rm -r config || die
+
+ fowners -R root:${PN} /etc/${PN}
+ fperms -R 2750 /etc/${PN}
+
+ insinto /usr/share/${PN}
+ doins -r .
+
+ keepdir /usr/share/${PN}/plugins
+
+ exeinto /usr/share/${PN}/bin
+ doexe "${FILESDIR}"/elasticsearch-systemd-pre-exec
+
+ fperms -R +x /usr/share/${PN}/bin
+ fperms -R +x /usr/share/${PN}/modules/x-pack-ml/platform/linux-x86_64/bin
+
+ keepdir /var/{lib,log}/${PN}
+ fowners ${PN}:${PN} /var/{lib,log}/${PN}
+ fperms 0750 /var/{lib,log}/${PN}
+
+ insinto /etc/sysctl.d
+ newins "${FILESDIR}/${PN}.sysctl.d" ${PN}.conf
+
+ newconfd "${FILESDIR}/${PN}.conf.4" ${PN}
+ newinitd "${FILESDIR}/${PN}.init.8" ${PN}
+
+ systemd_install_serviced "${FILESDIR}/${PN}.service.conf"
+ systemd_newunit "${FILESDIR}"/${PN}.service.4 ${PN}.service
+
+ newtmpfiles "${FILESDIR}"/${PN}.tmpfiles.d ${PN}.conf
+}
+
+pkg_postinst() {
+ # Elasticsearch will choke on our keep file and dodir will not preserve the empty dir
+ local KEEPFILE
+ KEEPFILE=$(find "${EROOT}/usr/share/${PN}/plugins/" -type f -name '.keep*')
+ rm "${KEEPFILE}" || die
+ tmpfiles_process /usr/lib/tmpfiles.d/${PN}.conf
+ if ! systemd_is_booted ; then
+ elog "You may create multiple instances of ${PN} by"
+ elog "symlinking the init script:"
+ elog "ln -sf /etc/init.d/${PN} /etc/init.d/${PN}.instance"
+ elog
+ elog "Please make sure you put elasticsearch.yml, log4j2.properties and scripts"
+ elog "from /etc/${PN} into the configuration directory of the instance:"
+ elog "/etc/${PN}/instance"
+ elog
+ fi
+ ewarn "Please make sure you have proper permissions on /etc/${PN}"
+ ewarn "prior to keystore generation or you may experience startup failures."
+ ewarn "chown root:${PN} /etc/${PN} && chmod 2750 /etc/${PN}"
+ ewarn "chown root:${PN} /etc/${PN}/${PN}.keystore && chmod 0660 /etc/${PN}/${PN}.keystore"
+}
diff --git a/app-misc/elasticsearch/elasticsearch-8.12.2.ebuild b/app-misc/elasticsearch/elasticsearch-8.12.2.ebuild
new file mode 100644
index 000000000000..8498fcbccc2a
--- /dev/null
+++ b/app-misc/elasticsearch/elasticsearch-8.12.2.ebuild
@@ -0,0 +1,102 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit systemd tmpfiles
+
+DESCRIPTION="Free and Open, Distributed, RESTful Search Engine"
+HOMEPAGE="https://www.elastic.co/elasticsearch/"
+SRC_URI="https://artifacts.elastic.co/downloads/${PN}/${P}-linux-x86_64.tar.gz"
+
+LICENSE="Apache-2.0 BSD-2 Elastic-2.0 LGPL-3 MIT public-domain"
+SLOT="0/8"
+KEYWORDS="~amd64"
+
+DEPEND="acct-group/elasticsearch
+ acct-user/elasticsearch"
+RDEPEND="acct-group/elasticsearch
+ acct-user/elasticsearch
+ sys-libs/zlib
+ virtual/jre:17"
+
+QA_PREBUILT="usr/share/elasticsearch/modules/x-pack-ml/platform/linux-x86_64/\(bin\|lib\)/.*"
+QA_PRESTRIPPED="usr/share/elasticsearch/modules/x-pack-ml/platform/linux-x86_64/\(bin\|lib\)/.*"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-env.patch"
+)
+
+src_prepare() {
+ default
+
+ rm -rf jdk || die
+ sed -i -e "s:logs/:${EPREFIX}/var/log/${PN}/:g" config/jvm.options || die "Unable to set Elasticsearch log location"
+ # elasticsearch-env sets the envvar for the config location if not specified elsewhere;
+ # certain utilities try and source this. Although we patch ES_JAVA_HOME for Gentoo slightly earlier,
+ # it's easier to respect EPREFIX for the config location using sed.
+ sed -i "s:ES_PATH_CONF=\"\$ES_HOME\"/config:ES_PATH_CONF=\"${EPREFIX}/etc/${PN}\":" bin/elasticsearch-env \
+ || die "Unable to set Elasticsearch config directory"
+ rm LICENSE.txt NOTICE.txt || die
+ rmdir logs || die
+}
+
+src_install() {
+ keepdir /etc/${PN}
+ keepdir /etc/${PN}/scripts
+
+ insinto /etc/${PN}
+ doins -r config/.
+ rm -r config || die
+
+ fowners -R root:${PN} /etc/${PN}
+ fperms -R 2750 /etc/${PN}
+
+ insinto /usr/share/${PN}
+ doins -r .
+
+ keepdir /usr/share/${PN}/plugins
+
+ exeinto /usr/share/${PN}/bin
+ doexe "${FILESDIR}"/elasticsearch-systemd-pre-exec
+
+ fperms -R +x /usr/share/${PN}/bin
+ fperms -R +x /usr/share/${PN}/modules/x-pack-ml/platform/linux-x86_64/bin
+
+ keepdir /var/{lib,log}/${PN}
+ fowners ${PN}:${PN} /var/{lib,log}/${PN}
+ fperms 0750 /var/{lib,log}/${PN}
+
+ insinto /etc/sysctl.d
+ newins "${FILESDIR}/${PN}.sysctl.d" ${PN}.conf
+
+ newconfd "${FILESDIR}/${PN}.conf.4" ${PN}
+ newinitd "${FILESDIR}/${PN}.init.8" ${PN}
+
+ systemd_install_serviced "${FILESDIR}/${PN}.service.conf"
+ systemd_newunit "${FILESDIR}"/${PN}.service.4 ${PN}.service
+
+ newtmpfiles "${FILESDIR}"/${PN}.tmpfiles.d ${PN}.conf
+}
+
+pkg_postinst() {
+ # Elasticsearch will choke on our keep file and dodir will not preserve the empty dir
+ local KEEPFILE
+ KEEPFILE=$(find "${EROOT}/usr/share/${PN}/plugins/" -type f -name '.keep*')
+ rm "${KEEPFILE}" || die
+ tmpfiles_process /usr/lib/tmpfiles.d/${PN}.conf
+ if ! systemd_is_booted ; then
+ elog "You may create multiple instances of ${PN} by"
+ elog "symlinking the init script:"
+ elog "ln -sf /etc/init.d/${PN} /etc/init.d/${PN}.instance"
+ elog
+ elog "Please make sure you put elasticsearch.yml, log4j2.properties and scripts"
+ elog "from /etc/${PN} into the configuration directory of the instance:"
+ elog "/etc/${PN}/instance"
+ elog
+ fi
+ ewarn "Please make sure you have proper permissions on /etc/${PN}"
+ ewarn "prior to keystore generation or you may experience startup failures."
+ ewarn "chown root:${PN} /etc/${PN} && chmod 2750 /etc/${PN}"
+ ewarn "chown root:${PN} /etc/${PN}/${PN}.keystore && chmod 0660 /etc/${PN}/${PN}.keystore"
+}
diff --git a/app-misc/elasticsearch/files/elasticsearch-env.patch b/app-misc/elasticsearch/files/elasticsearch-env.patch
new file mode 100644
index 000000000000..fb150bb51db3
--- /dev/null
+++ b/app-misc/elasticsearch/files/elasticsearch-env.patch
@@ -0,0 +1,24 @@
+Since ES 8.0.0 upstream stopped distributing a 'no-JDK' package.
+This requires us to set `ES_JAVA_HOME` else it fails to find the
+JDK that we unbundled and will not start.
+--- a/bin/elasticsearch-env
++++ b/bin/elasticsearch-env
+@@ -36,6 +36,18 @@ ES_HOME=`dirname "$ES_HOME"`
+ ES_CLASSPATH="$ES_HOME/lib/*"
+ LAUNCHERS_CLASSPATH="$ES_CLASSPATH:$ES_HOME/lib/launchers/*"
+
++# Set our JVM in a Gentoo-specific manner
++if [ -z "$ES_JAVA_HOME" ]; then
++ GENTOO_VM=$(depend-java-query --get-vm virtual/jre:17)
++ if [ ! -z "$GENTOO_VM" ]; then
++ ES_JAVA_HOME=$(java-config-2 --select-vm=${GENTOO_VM} --jre-home)
++ else
++ echo "Unable to automatically detect a supported Java 17 VM. Elasticsearch is unlikely to launch."
++ echo "Please ensure that you have installed an appropriate Java VM using portage"
++ echo "OR pass the ES_JAVA_HOME environment variable."
++ fi
++fi
++
+ # now set the path to java
+ if [ ! -z "$ES_JAVA_HOME" ]; then
+ JAVA="$ES_JAVA_HOME/bin/java"
diff --git a/app-misc/elasticsearch/files/elasticsearch.conf.3 b/app-misc/elasticsearch/files/elasticsearch.conf.3
deleted file mode 100644
index 70c052a64cce..000000000000
--- a/app-misc/elasticsearch/files/elasticsearch.conf.3
+++ /dev/null
@@ -1,62 +0,0 @@
-################################
-# Elasticsearch
-################################
-
-# Elasticsearch home directory
-#ES_HOME=/usr/share/elasticsearch
-
-# Elasticsearch Java path
-#JAVA_HOME=
-
-# Elasticsearch configuration directory
-#CONF_DIR=/etc/elasticsearch
-
-# Elasticsearch data directory
-#DATA_DIR=/var/lib/elasticsearch
-
-# Elasticsearch logs directory
-#LOG_DIR=/var/log/elasticsearch
-
-# Additional Java OPTS
-#ES_JAVA_OPTS=
-
-################################
-# Elasticsearch service
-################################
-
-# When executing the init script, this user will be used to run the elasticsearch service.
-# The default value is 'elasticsearch' and is declared in the init.d file.
-# Note that this setting is only used by the init script. If changed, make sure that
-# the configured user can read and write into the data, work, plugins and log directories.
-# For systemd service, the user is usually configured in file /usr/lib/systemd/system/elasticsearch.service
-#ES_USER=elasticsearch
-#ES_GROUP=elasticsearch
-
-# The number of seconds to wait before checking if Elasticsearch started successfully as a daemon process
-#ES_STARTUP_SLEEP_TIME=5
-
-################################
-# System properties
-################################
-
-# Specifies the maximum file descriptor number that can be opened by this process
-# When using Systemd, this setting is ignored and the LimitNOFILE defined in
-# /usr/lib/systemd/system/elasticsearch.service takes precedence
-MAX_OPEN_FILES=65536
-
-# The maximum number of bytes of memory that may be locked into RAM
-# Set to "unlimited" if you use the 'bootstrap.memory_lock: true' option
-# in elasticsearch.yml.
-# When using Systemd, the LimitMEMLOCK property must be set
-# in /usr/lib/systemd/system/elasticsearch.service
-MAX_LOCKED_MEMORY=unlimited
-
-# Maximum number of VMA (Virtual Memory Areas) a process can own
-# When using Systemd, this setting is ignored and the 'vm.max_map_count'
-# property is set at boot time in /usr/lib/sysctl.d/elasticsearch.conf
-#MAX_MAP_COUNT=262144
-
-# https://www.elastic.co/guide/en/elasticsearch/reference/master/max-number-of-threads.html
-MAX_THREADS=4096
-
-rc_ulimit="-l $MAX_LOCKED_MEMORY -n $MAX_OPEN_FILES -u $MAX_THREADS"
diff --git a/app-misc/elasticsearch/files/elasticsearch.init.6 b/app-misc/elasticsearch/files/elasticsearch.init.9
index 046941d407e5..5e4f2a70f41d 100644
--- a/app-misc/elasticsearch/files/elasticsearch.init.6
+++ b/app-misc/elasticsearch/files/elasticsearch.init.9
@@ -19,7 +19,7 @@ ES_HOME=${ES_HOME:="/usr/share/elasticsearch"}
ES_USER=${ES_USER:="elasticsearch"}
ES_GROUP=${ES_GROUP:="elasticsearch"}
ES_STARTUP_SLEEP_TIME=${ES_STARTUP_TIME:=5}
-JAVA_HOME=${JAVA_HOME:=$(java-config -g JAVA_HOME)}
+ES_JAVA_HOME=${ES_JAVA_HOME:=$(java-config -g JAVA_HOME)}
MAX_OPEN_FILES=${MAX_OPEN_FILES:=65536}
MAX_MAP_COUNT=${MAX_MAP_COUNT:=262144}
@@ -31,10 +31,9 @@ if [ -f "${CONF_DIR}/elasticsearch.in.sh" ]; then
fi
export ES_INCLUDE
-export JAVA_HOME
-export JAVA_OPTS
-export ES_JVM_OPTIONS
+export ES_JAVA_HOME
export ES_JAVA_OPTS
+export ES_JVM_OPTIONS
export ES_STARTUP_SLEEP_TIME
export ES_PATH_CONF="${CONF_DIR}"
@@ -59,11 +58,14 @@ start_pre() {
checkpath -d -o "${ES_USER}:${ES_GROUP}" -m750 "/var/lib/elasticsearch"
checkpath -d -o "${ES_USER}:${ES_GROUP}" -m750 "/var/log/elasticsearch"
checkpath -d -o "${ES_USER}:${ES_GROUP}" -m750 "/run/elasticsearch"
+ checkpath -d -o "${ES_USER}:${ES_GROUP}" -m750 "${ES_HOME}/plugins"
checkpath -d -o "${ES_USER}:${ES_GROUP}" -m750 "${ES_BASE_PATH}"
checkpath -d -o "${ES_USER}:${ES_GROUP}" -m750 "${LOG_DIR}"
# fails to start without keystore
if [ ! -f "${CONF_DIR}/elasticsearch.keystore" ]; then
"${ES_HOME}/bin/elasticsearch-keystore" create
+ else
+ "${ES_HOME}/bin/elasticsearch-keystore" upgrade
fi
}
diff --git a/app-misc/elasticsearch/files/elasticsearch.service.4 b/app-misc/elasticsearch/files/elasticsearch.service.4
new file mode 100644
index 000000000000..6c5b256706c9
--- /dev/null
+++ b/app-misc/elasticsearch/files/elasticsearch.service.4
@@ -0,0 +1,67 @@
+[Unit]
+Description=Elasticsearch
+Documentation=https://www.elastic.co
+Wants=network-online.target
+After=network-online.target
+
+[Service]
+Type=simple
+RuntimeDirectory=elasticsearch
+PrivateTmp=true
+Environment=ES_HOME=/usr/share/elasticsearch
+Environment=ES_PATH_CONF=/etc/elasticsearch
+
+WorkingDirectory=/usr/share/elasticsearch
+
+ExecStartPre=+"/usr/share/elasticsearch/bin/elasticsearch-systemd-pre-exec"
+
+User=elasticsearch
+Group=elasticsearch
+
+ExecStart=/usr/share/elasticsearch/bin/elasticsearch \
+ -p ${PID_DIR}/elasticsearch.pid \
+ -Epath.logs=${LOG_DIR} \
+ -Epath.data=${DATA_DIR} \
+ --quiet
+
+# StandardOutput is configured to redirect to journalctl since
+# some error messages may be logged in standard output before
+# elasticsearch logging system is initialized. Elasticsearch
+# stores its logs in /var/log/elasticsearch and does not use
+# journalctl by default. If you also want to enable journalctl
+# logging, you can simply remove the "quiet" option from ExecStart.
+StandardOutput=journal
+StandardError=inherit
+
+# Specifies the maximum file descriptor number that can be opened by this process
+LimitNOFILE=65535
+
+# Specifies the maximum number of processes
+LimitNPROC=4096
+
+# Specifies the maximum size of virtual memory
+LimitAS=infinity
+
+# Specifies the maximum file size
+LimitFSIZE=infinity
+
+# Disable timeout logic and wait until process is stopped
+TimeoutStopSec=0
+
+# SIGTERM signal is used to stop the Java process
+KillSignal=SIGTERM
+
+# Send the signal only to the JVM rather than its control group
+KillMode=process
+
+# Java process is never killed
+SendSIGKILL=no
+
+# When a JVM receives a SIGTERM signal it exits with code 143
+SuccessExitStatus=143
+
+# Allow a slow startup before the systemd notifier module kicks in to extend the timeout
+TimeoutStartSec=75
+
+[Install]
+WantedBy=multi-user.target
diff --git a/app-misc/elasticsearch/metadata.xml b/app-misc/elasticsearch/metadata.xml
index 08964a1b836c..cbd660b825ba 100644
--- a/app-misc/elasticsearch/metadata.xml
+++ b/app-misc/elasticsearch/metadata.xml
@@ -1,19 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
+ <maintainer type="person">
+ <email>kangie@gentoo.org</email>
+ <name>Matt Jolly</name>
+ </maintainer>
<maintainer type="person" proxied="yes">
<email>hydrapolic@gmail.com</email>
<name>Tomáš Mózes</name>
</maintainer>
- <maintainer type="person" proxied="yes">
- <email>erkiferenc@gmail.com</email>
- <name>Ferenc Erki</name>
- </maintainer>
<maintainer type="project" proxied="proxy">
<email>proxy-maint@gentoo.org</email>
<name>Proxy Maintainers</name>
</maintainer>
- <use>
- <flag name="x-pack">Enable additional features (may need a license)</flag>
- </use>
</pkgmetadata>