forked from freebsd/freebsd-ports
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
OpenSearch is a fork of Elasticsearch which aims to be a Distributed, RESTful, Search Engine built on top of Apache Lucene. WWW: http://opensearch.org PR: 257558 With hat: opensearch
- Loading branch information
Showing
11 changed files
with
289 additions
and
2 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,84 @@ | ||
# Created by: Sven R <[email protected]> | ||
|
||
PORTNAME= opensearch | ||
DISTVERSION= 1.0.1 | ||
DISTVERSIONSUFFIX= -linux-x64 | ||
CATEGORIES= textproc java devel | ||
MASTER_SITES= https://artifacts.opensearch.org/releases/bundle/${PORTNAME}/${PORTVERSION}/ | ||
|
||
MAINTAINER= [email protected] | ||
COMMENT= Full-text search engine for Java | ||
|
||
LICENSE= APACHE20 | ||
|
||
BUILD_DEPENDS= jna>0:devel/jna | ||
RUN_DEPENDS= bash>0:shells/bash \ | ||
jna>0:devel/jna | ||
|
||
USES= cpe shebangfix | ||
USE_JAVA= yes | ||
JAVA_VERSION= 11+ | ||
USE_RC_SUBR= ${PORTNAME} | ||
|
||
SHEBANG_FILES= bin/opensearch bin/opensearch-cli \ | ||
bin/opensearch-env bin/opensearch-env-from-file \ | ||
bin/opensearch-keystore bin/opensearch-node \ | ||
bin/opensearch-plugin bin/opensearch-shard \ | ||
bin/performance-analyzer-agent-cli | ||
|
||
NO_BUILD= yes | ||
WRKSRC= ${WRKDIR}/${PORTNAME}-${PORTVERSION} | ||
|
||
OPTIONS_DEFINE= PLUGINS | ||
OPTIONS_DEFAULT=PLUGINS | ||
|
||
.include <bsd.port.options.mk> | ||
|
||
CONFIG_FILES= opensearch.yml jvm.options log4j2.properties | ||
|
||
BINS= opensearch opensearch-cli opensearch-env \ | ||
opensearch-env-from-file opensearch-keystore \ | ||
opensearch-node opensearch-plugin \ | ||
opensearch-shard performance-analyzer-agent-cli | ||
|
||
SEARCHUSER?= opensearch | ||
SEARCHGROUP?= ${SEARCHUSER} | ||
USERS= ${SEARCHUSER} | ||
GROUPS= ${SEARCHGROUP} | ||
|
||
SUB_FILES= pkg-message | ||
SUB_LIST= ETCDIR=${ETCDIR} \ | ||
JAVA_HOME=${JAVA_HOME} | ||
|
||
post-patch: | ||
${RM} ${WRKSRC}/lib/jna-*.jar | ||
|
||
do-install: | ||
${MKDIR} ${STAGEDIR}${PREFIX}/etc/opensearch | ||
.for f in ${CONFIG_FILES} | ||
${INSTALL} ${WRKSRC}/config/${f} ${STAGEDIR}${ETCDIR}/${f}.sample | ||
.endfor | ||
${MKDIR} ${STAGEDIR}${PREFIX}/lib/opensearch/bin | ||
.for f in ${BINS} | ||
${INSTALL_SCRIPT} ${WRKSRC}/bin/${f} ${STAGEDIR}${PREFIX}/lib/opensearch/bin | ||
.endfor | ||
${MKDIR} ${STAGEDIR}${PREFIX}/lib/opensearch/lib | ||
(cd ${WRKSRC}/ && ${COPYTREE_SHARE} "lib modules" ${STAGEDIR}${PREFIX}/lib/opensearch/) | ||
${MKDIR} ${STAGEDIR}${PREFIX}/libexec/opensearch | ||
${INSTALL} -lrs ${STAGEDIR}${ETCDIR} ${STAGEDIR}${PREFIX}/lib/opensearch/config | ||
${LN} -s ${JAVASHAREDIR}/classes/jna.jar ${STAGEDIR}${PREFIX}/lib/opensearch/lib/jna.jar | ||
|
||
do-install-PLUGINS-on: | ||
(cd ${WRKSRC}/ && ${COPYTREE_SHARE} "plugins" ${STAGEDIR}${PREFIX}/lib/opensearch/) | ||
|
||
post-install: | ||
.for f in ${CONFIG_FILES} | ||
${ECHO} "@sample ${ETCDIR}/${f}.sample" >> ${TMPPLIST} | ||
.endfor | ||
${FIND} -s ${STAGEDIR}${PREFIX}/lib/opensearch -not -type d | ${SORT} | \ | ||
${SED} -e 's#^${STAGEDIR}${PREFIX}/##' >> ${TMPPLIST} | ||
${ECHO} "@dir lib/opensearch/plugins" >> ${TMPPLIST} | ||
${ECHO} "@dir libexec/opensearch" >> ${TMPPLIST} | ||
${ECHO} "@dir(opensearch,opensearch,0755) ${ETCDIR}" >> ${TMPPLIST} | ||
|
||
.include <bsd.port.mk> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
TIMESTAMP = 1630980635 | ||
SHA256 (opensearch-1.0.1-linux-x64.tar.gz) = 86816266f5b6a129e301b18168ff6b96cf54e1d712f903c6985dabe51e230655 | ||
SIZE (opensearch-1.0.1-linux-x64.tar.gz) = 431148224 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,115 @@ | ||
#!/bin/sh | ||
|
||
# PROVIDE: opensearch | ||
# REQUIRE: DAEMON | ||
# BEFORE: LOGIN | ||
# KEYWORD: shutdown | ||
# | ||
# Add the following line to /etc/rc.conf to enable opensearch: | ||
# | ||
# opensearch_enable="YES" | ||
# | ||
# opensearch_user (username): Set to opensearch by default. | ||
# Set it to required username. | ||
# opensearch_group (group): Set to opensearch by default. | ||
# Set it to required group. | ||
# opensearch_config (path): Set to %%PREFIX%%/etc/opensearch/opensearch.yml by default. | ||
# Set it to the config file location. | ||
# opensearch_java_home (path): Set to %%JAVA_HOME%% by default. | ||
# Set it to the root of the JDK to use. | ||
# | ||
. /etc/rc.subr | ||
|
||
name=opensearch | ||
rcvar=opensearch_enable | ||
|
||
load_rc_config ${name} | ||
|
||
: ${opensearch_enable:=NO} | ||
: ${opensearch_user=opensearch} | ||
: ${opensearch_group=opensearch} | ||
: ${opensearch_config=%%PREFIX%%/etc/opensearch} | ||
: ${opensearch_login_class=root} | ||
: ${opensearch_java_home="%%JAVA_HOME%%"} | ||
|
||
required_files="${opensearch_config}/opensearch.yml" | ||
_pidprefix=/var/run/opensearch/opensearch | ||
pidfile=${_pidprefix}.pid | ||
procname=${opensearch_java_home}/bin/java | ||
|
||
extra_commands="console status" | ||
console_cmd=opensearch_console | ||
start_precmd=opensearch_precmd | ||
command=%%PREFIX%%/lib/opensearch/bin/opensearch | ||
command_args="-d --pidfile=${pidfile}" | ||
|
||
export OPENSEARCH_PATH_CONF=${opensearch_config} | ||
export JAVA_HOME=${opensearch_java_home} | ||
|
||
opensearch_precmd() | ||
{ | ||
/usr/bin/install -d -o ${opensearch_user} -g ${opensearch_group} -m 755 ${pidfile%/*} | ||
/usr/bin/install -d -o ${opensearch_user} -g ${opensearch_group} -m 755 /var/db/opensearch | ||
/usr/bin/install -d -o ${opensearch_user} -g ${opensearch_group} -m 755 /var/log/opensearch | ||
} | ||
|
||
opensearch_console() | ||
{ | ||
command_args="" | ||
run_rc_command "start" | ||
} | ||
|
||
if [ -n "$2" ]; then | ||
profile="$2" | ||
if [ "x${opensearch_profiles}" != "x" ]; then | ||
eval opensearch_config="\${opensearch_${profile}_config:-}" | ||
if [ "x${opensearch_config}" = "x" ]; then | ||
echo "You must define a configuration (opensearch_${profile}_config)" | ||
exit 1 | ||
fi | ||
export OPENSEARCH_PATH_CONF=${opensearch_config} | ||
required_files="${opensearch_config}/opensearch.yml" | ||
required_files="${opensearch_config}/jvm.options" | ||
eval opensearch_enable="\${opensearch_${profile}_enable:-${opensearch_enable}}" | ||
pidfile="${_pidprefix}.${profile}.pid" | ||
command_args="-d --pidfile=${pidfile}" | ||
echo "===> opensearch profile: ${profile}" | ||
else | ||
echo "$0: extra argument ignored" | ||
fi | ||
else | ||
if [ "x${opensearch_profiles}" != "x" -a "x$1" != "x" ]; then | ||
for profile in ${opensearch_profiles}; do | ||
eval _enable="\${opensearch_${profile}_enable}" | ||
case "x${_enable:-${opensearch_enable}}" in | ||
x|x[Nn][Oo]|x[Nn][Oo][Nn][Ee]) | ||
continue | ||
;; | ||
x[Yy][Ee][Ss]) | ||
;; | ||
*) | ||
if test -z "$_enable"; then | ||
_var=opensearch_enable | ||
else | ||
_var=opensearch_"${profile}"_enable | ||
fi | ||
echo "Bad value" \ | ||
"'${_enable:-${opensearch_enable}}'" \ | ||
"for ${_var}. " \ | ||
"Profile ${profile} skipped." | ||
continue | ||
;; | ||
esac | ||
%%PREFIX%%/etc/rc.d/opensearch $1 ${profile} | ||
retcode="$?" | ||
if [ "0${retcode}" -ne 0 ]; then | ||
failed="${profile} (${retcode}) ${failed:-}" | ||
else | ||
success="${profile} ${success:-}" | ||
fi | ||
done | ||
exit 0 | ||
fi | ||
fi | ||
|
||
run_rc_command "$1" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
--- bin/opensearch-env.orig 2021-07-30 13:39:40 UTC | ||
+++ bin/opensearch-env | ||
@@ -40,13 +40,7 @@ if [ ! -z "$JAVA_HOME" ]; then | ||
JAVA="$JAVA_HOME/bin/java" | ||
JAVA_TYPE="JAVA_HOME" | ||
else | ||
- if [ "$(uname -s)" = "Darwin" ]; then | ||
- # macOS has a different structure | ||
- JAVA="$OPENSEARCH_HOME/jdk.app/Contents/Home/bin/java" | ||
- else | ||
- JAVA="$OPENSEARCH_HOME/jdk/bin/java" | ||
- fi | ||
- JAVA_TYPE="bundled jdk" | ||
+ JAVA="/usr/local/bin/java" | ||
fi | ||
|
||
if [ ! -x "$JAVA" ]; then |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
--- config/jvm.options.orig 2021-07-30 14:01:34 UTC | ||
+++ config/jvm.options | ||
@@ -61,17 +61,17 @@ | ||
-XX:HeapDumpPath=data | ||
|
||
# specify an alternative path for JVM fatal error logs | ||
--XX:ErrorFile=logs/hs_err_pid%p.log | ||
+-XX:ErrorFile=/hs_err_pid%p.log | ||
|
||
## JDK 8 GC logging | ||
8:-XX:+PrintGCDetails | ||
8:-XX:+PrintGCDateStamps | ||
8:-XX:+PrintTenuringDistribution | ||
8:-XX:+PrintGCApplicationStoppedTime | ||
-8:-Xloggc:logs/gc.log | ||
+8:-Xloggc:${OPENSEARCH_TMPDIR}/gc.log | ||
8:-XX:+UseGCLogFileRotation | ||
8:-XX:NumberOfGCLogFiles=32 | ||
8:-XX:GCLogFileSize=64m | ||
|
||
# JDK 9+ GC logging | ||
-9-:-Xlog:gc*,gc+age=trace,safepoint:file=logs/gc.log:utctime,pid,tags:filecount=32,filesize=64m | ||
+9-:-Xlog:gc*,gc+age=trace,safepoint:file=${OPENSEARCH_TMPDIR}/gc.log:utctime,pid,tags:filecount=32,filesize=64m |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
--- config/opensearch.yml.orig 2021-07-02 23:22:08 UTC | ||
+++ config/opensearch.yml | ||
@@ -31,10 +31,12 @@ | ||
# Path to directory where to store the data (separate multiple locations by comma): | ||
# | ||
#path.data: /path/to/data | ||
+path.data: /var/db/opensearch | ||
# | ||
# Path to log files: | ||
# | ||
#path.logs: /path/to/logs | ||
+path.logs: /var/log/opensearch | ||
# | ||
# ----------------------------------- Memory ----------------------------------- | ||
# |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,25 @@ | ||
[ | ||
{ type: install | ||
message: <<EOM | ||
Please see %%ETCDIR%% for a sample version of | ||
opensearch.yml. | ||
|
||
OpenSearch requires memory locking of large amounts of RAM. | ||
You may need to set: | ||
|
||
sysctl security.bsd.unprivileged_mlock=1 | ||
|
||
When running within a jail, it's highly advisable to set: | ||
|
||
enforce_statfs = 1 | ||
|
||
for the jail running opensearch instance. | ||
|
||
If OpenSearch was built with the PLUGINS option enabled (default) it will not | ||
start until the security plugin is properly configured. Please refer to the | ||
OpenSearch documentation for setting-up TLS: | ||
|
||
https://opensearch.org/docs/security-plugin/configuration/tls | ||
EOM | ||
} | ||
] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
OpenSearch is a fork of Elasticsearch which aims to be a Distributed, | ||
RESTful, Search Engine built on top of Apache Lucene. | ||
|
||
WWW: http://opensearch.org |