From 0c19fb8470ee2402936cb7378dc84ebbb2870e45 Mon Sep 17 00:00:00 2001 From: Albert Hopkins Date: Fri, 7 Aug 2015 22:39:59 +0000 Subject: [PATCH] New appliance: elasticsearch This is an elasticsearch image/appliance. --- appliances/elasticsearch/Makefile | 31 +++++++++++++++++++ .../elasticsearch/elasticsearch.service | 12 +++++++ appliances/elasticsearch/package.keywords | 1 + appliances/elasticsearch/package.use | 12 +++++++ appliances/elasticsearch/world | 1 + 5 files changed, 57 insertions(+) create mode 100644 appliances/elasticsearch/Makefile create mode 100644 appliances/elasticsearch/elasticsearch.service create mode 100644 appliances/elasticsearch/package.keywords create mode 100644 appliances/elasticsearch/package.use create mode 100644 appliances/elasticsearch/world diff --git a/appliances/elasticsearch/Makefile b/appliances/elasticsearch/Makefile new file mode 100644 index 0000000..094574a --- /dev/null +++ b/appliances/elasticsearch/Makefile @@ -0,0 +1,31 @@ +ES_HOME ?= /var/lib/elasticsearch +ES_VER ?= 1.7.1 +ES_TARBALL = elasticsearch-$(ES_VER).tar.gz +ES_URL = https://download.elastic.co/elasticsearch/elasticsearch/$(ES_TARBALL) + +preinstall: + +create_user: + -$(inroot) useradd --system \ + --comment "Elastic Search" \ + --home-dir=$(ES_HOME) \ + --create-home \ + elastic + +install_elasticsearch: + $(inroot) test -f /usr/portage/distfiles/$(ES_TARBALL) || \ + wget -P /usr/portage/distfiles $(ES_URL) + $(inroot) tar xf /usr/portage/distfiles/$(ES_TARBALL) -C $(ES_HOME) + $(inroot) sh -c 'cd $(ES_HOME) && ln -s elasticsearch-$(ES_VER)/* .' + +postinstall: elasticsearch.service + $(MAKE) create_user + $(inroot) rm -rf $(ES_HOME) + $(inroot) mkdir -p $(ES_HOME) + $(MAKE) install_elasticsearch + $(inroot) chown -R elastic:elastic $(ES_HOME) + cp elasticsearch.service $(CHROOT)/etc/systemd/system + $(inroot) systemctl enable elasticsearch.service + +clean: + diff --git a/appliances/elasticsearch/elasticsearch.service b/appliances/elasticsearch/elasticsearch.service new file mode 100644 index 0000000..43dba87 --- /dev/null +++ b/appliances/elasticsearch/elasticsearch.service @@ -0,0 +1,12 @@ +[Unit] +Description = ElasticSearch full-text search and analytics engine +After = network.target + +[Service] +User = elastic +Group = elastic +Environment=ES_HOME=/var/lib/elasticsearch +ExecStart = /var/lib/elasticsearch/bin/elasticsearch + +[Install] +WantedBy = multi-user.target diff --git a/appliances/elasticsearch/package.keywords b/appliances/elasticsearch/package.keywords new file mode 100644 index 0000000..daa1737 --- /dev/null +++ b/appliances/elasticsearch/package.keywords @@ -0,0 +1 @@ +sys-kernel/gentoo-sources ~amd64 ~x86 diff --git a/appliances/elasticsearch/package.use b/appliances/elasticsearch/package.use new file mode 100644 index 0000000..9cc3d7b --- /dev/null +++ b/appliances/elasticsearch/package.use @@ -0,0 +1,12 @@ +app-editors/nano ncurses +dev-lang/python ssl threads xml +dev-libs/libpcre cxx +dev-util/pkgconfig internal-glib +net-misc/openssh ssl +net-misc/wget ssl +sys-apps/hwids udev +sys-apps/kmod tools +sys-apps/portage ipc +sys-auth/pambase nullok sha512 +sys-devel/gcc cxx nptl +sys-kernel/gentoo-sources symlink diff --git a/appliances/elasticsearch/world b/appliances/elasticsearch/world new file mode 100644 index 0000000..591433a --- /dev/null +++ b/appliances/elasticsearch/world @@ -0,0 +1 @@ +dev-java/icedtea-bin