summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorBill Ruddock2018-01-05 04:15:02 +0000
committerBill Ruddock2018-01-05 04:15:02 +0000
commitf13773f32032e947820b939c2ca7fbbf6e9b7cba (patch)
treeb6e0d3cdc73b464d9bdba5e49da5fc76813f4a51
downloadaur-f13773f32032e947820b939c2ca7fbbf6e9b7cba.tar.gz
Initial commit elasticsearch 5.6.5
Based on official PKGBUILD of 5.6.4.
-rw-r--r--.SRCINFO33
-rw-r--r--PKGBUILD84
-rw-r--r--elasticsearch-sysctl.conf1
-rw-r--r--elasticsearch-tmpfile.conf6
-rw-r--r--elasticsearch-user.conf1
-rw-r--r--elasticsearch.default13
-rw-r--r--elasticsearch.install14
-rw-r--r--elasticsearch.service34
-rw-r--r--elasticsearch@.service34
9 files changed, 220 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..1bb2605316f7
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,33 @@
+pkgbase = elasticsearch5
+ pkgdesc = Distributed RESTful search engine built on top of Lucene
+ pkgver = 5.6.5
+ pkgrel = 1
+ url = https://www.elastic.co/products/elasticsearch
+ install = elasticsearch.install
+ arch = any
+ license = APACHE
+ depends = java-runtime-headless=8
+ depends = systemd
+ provides = elasticsearch=5.6.5
+ conflicts = elasticsearch
+ backup = etc/elasticsearch/elasticsearch.yml
+ backup = etc/elasticsearch/log4j2.properties
+ backup = etc/elasticsearch/jvm.options
+ backup = etc/default/elasticsearch
+ source = https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.6.5.tar.gz
+ source = elasticsearch.service
+ source = elasticsearch@.service
+ source = elasticsearch-sysctl.conf
+ source = elasticsearch-user.conf
+ source = elasticsearch-tmpfile.conf
+ source = elasticsearch.default
+ sha256sums = baffbc799e8457575f250176b58923cccc4de561d3439045ccbed72344397ab2
+ sha256sums = f228b588345780cfc84c229dd92722e024c0da155976afc96fc5e5970428a9e4
+ sha256sums = 4dc14262b67399f741c303cce7d18f9d3d220285778a2deb50fb0640161179c7
+ sha256sums = b3feb1e9c7e7ce6b33cea6c727728ed700332aae942ca475c3bcc1d56b9f113c
+ sha256sums = 815f6a39db6f54bb40750c382ffbdc298d2c4c187ee8ea7e2f855923e2ff354b
+ sha256sums = 3173e3efa429507e6329f518699a072dfd442d9b5da7c62452a55f82334dd2b5
+ sha256sums = bb74e5fb8bc28f2125e015395ab05bea117b72bfc6dadbca827694b362ee0bf8
+
+pkgname = elasticsearch5
+
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..14fc09036df5
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,84 @@
+# Maintainer: Bill Ruddock <https://github.com/biinari>
+# Contributor: Massimiliano Torromeo <massimiliano.torromeo@gmail.com>
+# Contributor: Marcello "mererghost" Rocha <https://github.com/mereghost>
+# Refactored by Blaž "Speed" Hrastnik <https://github.com/archSeer>
+
+_pkgname=elasticsearch
+pkgname=elasticsearch5
+pkgver=5.6.5
+pkgrel=1
+pkgdesc="Distributed RESTful search engine built on top of Lucene"
+arch=('any')
+url="https://www.elastic.co/products/elasticsearch"
+license=('APACHE')
+depends=('java-runtime-headless=8' 'systemd')
+conflicts=('elasticsearch')
+provides=("elasticsearch=$pkgver")
+install='elasticsearch.install'
+source=(
+ "https://artifacts.elastic.co/downloads/$_pkgname/$_pkgname-$pkgver.tar.gz"
+ elasticsearch.service
+ elasticsearch@.service
+ elasticsearch-sysctl.conf
+ elasticsearch-user.conf
+ elasticsearch-tmpfile.conf
+ elasticsearch.default
+)
+sha256sums=('baffbc799e8457575f250176b58923cccc4de561d3439045ccbed72344397ab2'
+ 'f228b588345780cfc84c229dd92722e024c0da155976afc96fc5e5970428a9e4'
+ '4dc14262b67399f741c303cce7d18f9d3d220285778a2deb50fb0640161179c7'
+ 'b3feb1e9c7e7ce6b33cea6c727728ed700332aae942ca475c3bcc1d56b9f113c'
+ '815f6a39db6f54bb40750c382ffbdc298d2c4c187ee8ea7e2f855923e2ff354b'
+ '3173e3efa429507e6329f518699a072dfd442d9b5da7c62452a55f82334dd2b5'
+ 'bb74e5fb8bc28f2125e015395ab05bea117b72bfc6dadbca827694b362ee0bf8')
+
+backup=('etc/elasticsearch/elasticsearch.yml'
+ 'etc/elasticsearch/log4j2.properties'
+ 'etc/elasticsearch/jvm.options'
+ 'etc/default/elasticsearch')
+
+prepare() {
+ cd "$srcdir"/$_pkgname-$pkgver
+
+ for script in elasticsearch{,-plugin,-translog}; do
+ sed -e 's|^ES_HOME=.*dirname.*|ES_HOME=/usr/share/elasticsearch|' \
+ -e '/^ES_HOME=.*pwd/d' \
+ -e 's|$ES_HOME/config|/etc/elasticsearch|' \
+ -i bin/$script
+ done
+
+ sed -re 's;#\s*(path\.conf:).*$;\1 /etc/elasticsearch;' \
+ -e '0,/#\s*(path\.data:).*$/s;;\1 /var/lib/elasticsearch;' \
+ -e 's;#\s*(path\.work:).*$;\1 /tmp/elasticsearch;' \
+ -e 's;#\s*(path\.logs:).*$;\1 /var/log/elasticsearch;' \
+ -i config/elasticsearch.yml
+}
+
+package() {
+ cd "$pkgdir"
+ install -dm750 etc/elasticsearch/scripts
+ install -dm755 usr/share/elasticsearch/plugins
+ install -dm755 var/lib/elasticsearch
+ install -dm755 var/log/elasticsearch
+
+ install -Dm644 "$srcdir"/elasticsearch.service usr/lib/systemd/system/elasticsearch.service
+ install -Dm644 "$srcdir"/elasticsearch@.service usr/lib/systemd/system/elasticsearch@.service
+ install -Dm644 "$srcdir"/elasticsearch-user.conf usr/lib/sysusers.d/elasticsearch.conf
+ install -Dm644 "$srcdir"/elasticsearch-tmpfile.conf usr/lib/tmpfiles.d/elasticsearch.conf
+ install -Dm644 "$srcdir"/elasticsearch-sysctl.conf usr/lib/sysctl.d/elasticsearch.conf
+ install -Dm644 "$srcdir"/elasticsearch.default etc/default/elasticsearch
+
+ cd "$srcdir"/$_pkgname-$pkgver
+ cp -R lib modules "$pkgdir"/usr/share/elasticsearch/
+
+ cd config
+ for conf in *; do
+ install -Dm644 "$conf" "$pkgdir/etc/elasticsearch/$conf"
+ done
+ cd ..
+
+ for script in elasticsearch{,-plugin,-translog}; do
+ install -Dm755 bin/$script "$pkgdir"/usr/bin/$script
+ done
+ install -Dm644 bin/elasticsearch.in.sh "$pkgdir"/usr/share/elasticsearch/bin/elasticsearch.in.sh
+}
diff --git a/elasticsearch-sysctl.conf b/elasticsearch-sysctl.conf
new file mode 100644
index 000000000000..32da2c91cf27
--- /dev/null
+++ b/elasticsearch-sysctl.conf
@@ -0,0 +1 @@
+vm.max_map_count=262144 \ No newline at end of file
diff --git a/elasticsearch-tmpfile.conf b/elasticsearch-tmpfile.conf
new file mode 100644
index 000000000000..5a869cc06103
--- /dev/null
+++ b/elasticsearch-tmpfile.conf
@@ -0,0 +1,6 @@
+d /var/log/elasticsearch 0755 elasticsearch elasticsearch -
+d /var/lib/elasticsearch 0755 elasticsearch elasticsearch -
+d /usr/share/elasticsearch/plugins 0755 elasticsearch elasticsearch -
+
+d /etc/elasticsearch 0750 - elasticsearch -
+d /etc/elasticsearch/scripts 0750 - elasticsearch -
diff --git a/elasticsearch-user.conf b/elasticsearch-user.conf
new file mode 100644
index 000000000000..d67b6c3fdde1
--- /dev/null
+++ b/elasticsearch-user.conf
@@ -0,0 +1 @@
+u elasticsearch - "Elasticsearch user"
diff --git a/elasticsearch.default b/elasticsearch.default
new file mode 100644
index 000000000000..ade7ae924ddd
--- /dev/null
+++ b/elasticsearch.default
@@ -0,0 +1,13 @@
+JAVA_HOME=/usr/lib/jvm/default-runtime
+
+# Heap Size (defaults to 256m min, 1g max)
+#ES_HEAP_SIZE=1g
+
+# Heap new generation
+#ES_HEAP_NEWSIZE=
+
+# max direct memory
+#ES_DIRECT_SIZE=
+
+# Additional Java OPTS
+#ES_JAVA_OPTS=
diff --git a/elasticsearch.install b/elasticsearch.install
new file mode 100644
index 000000000000..f198e73ec4c1
--- /dev/null
+++ b/elasticsearch.install
@@ -0,0 +1,14 @@
+post_install() {
+ systemd-sysusers elasticsearch.conf
+ systemd-tmpfiles --create elasticsearch.conf
+}
+
+post_upgrade(){
+ systemd-tmpfiles --create elasticsearch.conf
+
+ if [ "$(vercmp $2 5.0.0)" -lt 0 ]; then
+ echo " >> "
+ echo " >> Major version update. Please take a look at breaking changes https://www.elastic.co/guide/en/elasticsearch/reference/5.0/breaking-changes-5.0.html and remove incompatible plugins from /usr/share/elasticsearch/plugins"
+ echo " >> "
+ fi
+}
diff --git a/elasticsearch.service b/elasticsearch.service
new file mode 100644
index 000000000000..534b71b8663e
--- /dev/null
+++ b/elasticsearch.service
@@ -0,0 +1,34 @@
+[Unit]
+Description=Elasticsearch
+Documentation=http://www.elastic.co
+Wants=network.target
+After=network.target
+
+[Service]
+Type=forking
+RuntimeDirectory=elasticsearch
+PIDFile=/run/elasticsearch/elasticsearch.pid
+
+Environment=JAVA_HOME=/usr/lib/jvm/default-runtime
+Environment=CONF_DIR=/etc/elasticsearch
+EnvironmentFile=-/etc/default/elasticsearch
+
+WorkingDirectory=/usr/share/elasticsearch
+
+User=elasticsearch
+Group=elasticsearch
+
+ExecStart=/usr/bin/elasticsearch -d \
+ -p /run/elasticsearch/elasticsearch.pid \
+ -E path.conf=${CONF_DIR}
+
+LimitNOFILE=65536
+LimitMEMLOCK=infinity
+
+Restart=on-failure
+SendSIGKILL=no
+TimeoutStopSec=0
+SuccessExitStatus=143
+
+[Install]
+WantedBy=multi-user.target
diff --git a/elasticsearch@.service b/elasticsearch@.service
new file mode 100644
index 000000000000..a5e3df99944d
--- /dev/null
+++ b/elasticsearch@.service
@@ -0,0 +1,34 @@
+[Unit]
+Description=Elasticsearch
+Documentation=http://www.elastic.co
+Wants=network.target
+After=network.target
+
+[Service]
+Type=forking
+RuntimeDirectory=elasticsearch
+PIDFile=/run/elasticsearch/%I.pid
+
+Environment=JAVA_HOME=/usr/lib/jvm/default-runtime
+Environment=CONF_DIR=/etc/elasticsearch/%I
+EnvironmentFile=-/etc/default/elasticsearch
+
+WorkingDirectory=/usr/share/elasticsearch
+
+User=elasticsearch
+Group=elasticsearch
+
+ExecStart=/usr/bin/elasticsearch -d \
+ -p /run/elasticsearch/%I.pid \
+ -E path.conf=${CONF_DIR}
+
+LimitNOFILE=65536
+LimitMEMLOCK=infinity
+
+Restart=on-failure
+SendSIGKILL=no
+TimeoutStopSec=0
+SuccessExitStatus=143
+
+[Install]
+WantedBy=multi-user.target