[arch-commits] Commit in opensearch/trunk (PKGBUILD opensearch-tmpfile.conf)
Justin Kromlinger
hashworks at gemini.archlinux.org
Fri Jan 7 16:22:33 UTC 2022
Date: Friday, January 7, 2022 @ 16:22:32
Author: hashworks
Revision: 1095925
upgpkg: opensearch 1.2.3-3: cleanup, fix -cli conflict, fixed jre version, plugins
Modified:
opensearch/trunk/PKGBUILD
opensearch/trunk/opensearch-tmpfile.conf
-------------------------+
PKGBUILD | 288 ++++++++++++++++++++++++++++++++++++++++------
opensearch-tmpfile.conf | 18 +-
2 files changed, 260 insertions(+), 46 deletions(-)
Modified: PKGBUILD
===================================================================
--- PKGBUILD 2022-01-07 16:21:55 UTC (rev 1095924)
+++ PKGBUILD 2022-01-07 16:22:32 UTC (rev 1095925)
@@ -3,31 +3,40 @@
# Contributor: Marcello "mererghost" Rocha <https://github.com/mereghost>
# Contributor: Blaž "Speed" Hrastnik <https://github.com/archSeer>
-pkgname=opensearch
+pkgbase=opensearch
+pkgname=(
+ opensearch
+ opensearch-analysis-icu-plugin
+ opensearch-analysis-kuromoji-plugin
+ opensearch-analysis-nori-plugin
+ opensearch-analysis-phonetic-plugin
+ opensearch-analysis-smartcn-plugin
+ opensearch-analysis-stempel-plugin
+ opensearch-analysis-ukrainian-plugin
+ opensearch-discovery-azure-classic-plugin
+ opensearch-discovery-ec2-plugin
+ opensearch-discovery-gce-plugin
+ opensearch-ingest-attachment-plugin
+ opensearch-mapper-annotated-text-plugin
+ opensearch-mapper-murmur3-plugin
+ opensearch-mapper-size-plugin
+ opensearch-repository-azure-plugin
+ opensearch-repository-gcs-plugin
+ opensearch-repository-hdfs-plugin
+ opensearch-repository-s3-plugin
+ opensearch-store-smb-plugin
+ opensearch-transport-nio-plugin
+)
pkgver=1.2.3
-pkgrel=2
-pkgdesc="Open source distributed and RESTful search engine"
+pkgrel=3
+# See https://github.com/opensearch-project/OpenSearch/blob/main/.ci/java-versions.properties
+# https://github.com/opensearch-project/OpenSearch/issues/1689
+_jrever=11
+_jdkver=11
arch=('x86_64')
url="https://opensearch.org/docs/opensearch/index/"
license=('Apache')
-depends=('java-runtime-headless<=16' 'systemd' 'libxml2')
-optdepends=(
- 'opensearch-dashboards'
- 'opensearch-alerting-plugin'
- 'opensearch-anomaly-detection-plugin'
- 'opensearch-asynchronous-search-plugin'
- 'opensearch-cross-cluster-replication-plugin'
- 'opensearch-index-management-plugin'
- 'opensearch-job-scheduler-plugin'
- 'opensearch-knn-plugin'
- 'opensearch-observability-plugin'
- 'opensearch-performance-analyzer-plugin'
- 'opensearch-reports-scheduler-plugin'
- 'opensearch-security-plugin'
- 'opensearch-sql-plugin'
-)
-# See https://github.com/opensearch-project/OpenSearch/blob/main/.ci/java-versions.properties
-makedepends=('java-environment=11')
+makedepends=("jdk${_jdkver}-openjdk" 'unzip')
source=(
"OpenSearch-${pkgver}.tar.gz::https://github.com/opensearch-project/OpenSearch/archive/${pkgver}.tar.gz"
opensearch.service
@@ -47,15 +56,10 @@
'a133b8944d57d81224caf03f8d0e5b127f2570123b2a1e2d2f6eb199446448ae'
'b3feb1e9c7e7ce6b33cea6c727728ed700332aae942ca475c3bcc1d56b9f113c'
'79cb5856b7105da7f25c6da2a25be88ccba2b849fd92cc32c3204e2fad530efc'
- 'c9045725cf2d262257ae2d7074bb4f6d82bdfc1059725ee856440b695c23361a'
+ '12c4feb01c5c42e98e53f9d6fd457727ec0bf0b19bf9c4bc2ee216f31afe7afc'
'66401172f710e80e1f715c89bc6ed5a6d0ad567c58ad03101e59556c52245158'
'0d158e9fc2ac6375ae9c140eb79e0308794c1a0220d3634a2b98e94b37b6f8dc')
-backup=('etc/opensearch/opensearch.yml'
- 'etc/opensearch/log4j2.properties'
- 'etc/opensearch/jvm.options'
- 'etc/default/opensearch')
-
prepare() {
cd "OpenSearch-${pkgver}"
patch -Np1 -i "${srcdir}/remove-systemd-distribution-check.patch"
@@ -63,28 +67,103 @@
build() {
cd "OpenSearch-${pkgver}"
- export PATH=/usr/lib/jvm/default/bin:$PATH
+ export JAVA_HOME="/usr/lib/jvm/java-${_jdkver}-openjdk"
+ export PATH="/usr/lib/jvm/java-${_jdkver}-openjdk/bin:$PATH"
export GRADLE_OPTS="-Dbuild.snapshot=false"
+
+ # OpenSearch
./gradlew :distribution:buildSystemdModule
- ./gradlew :distribution:archives:linux-tar:build
+ ./gradlew :distribution:archives:no-jdk-linux-tar:build
+
+ # Plugins
+ for p in \
+ analysis-icu \
+ analysis-kuromoji \
+ analysis-nori \
+ analysis-phonetic \
+ analysis-smartcn \
+ analysis-stempel \
+ analysis-ukrainian \
+ discovery-azure-classic \
+ discovery-ec2 \
+ discovery-gce \
+ ingest-attachment \
+ mapper-annotated-text \
+ mapper-murmur3 \
+ mapper-size \
+ repository-azure \
+ repository-gcs \
+ repository-hdfs \
+ repository-s3 \
+ store-smb \
+ transport-nio; do
+ ./gradlew :plugin:${p}:build
+ done
}
-package() {
+package_opensearch() {
+ pkgdesc="Open source distributed and RESTful search engine"
+ depends=("jre${_jrever}-openjdk-headless" 'systemd' 'libxml2')
+ optdepends=(
+ 'opensearch-analysis-icu-plugin'
+ 'opensearch-analysis-kuromoji-plugin'
+ 'opensearch-analysis-nori-plugin'
+ 'opensearch-analysis-phonetic-plugin'
+ 'opensearch-analysis-smartcn-plugin'
+ 'opensearch-analysis-stempel-plugin'
+ 'opensearch-analysis-ukrainian-plugin'
+ 'opensearch-discovery-azure-classic-plugin'
+ 'opensearch-discovery-ec2-plugin'
+ 'opensearch-discovery-gce-plugin'
+ 'opensearch-ingest-attachment-plugin'
+ 'opensearch-mapper-annotated-text-plugin'
+ 'opensearch-mapper-murmur3-plugin'
+ 'opensearch-mapper-size-plugin'
+ 'opensearch-repository-azure-plugin'
+ 'opensearch-repository-gcs-plugin'
+ 'opensearch-repository-hdfs-plugin'
+ 'opensearch-repository-s3-plugin'
+ 'opensearch-store-smb-plugin'
+ 'opensearch-transport-nio-plugin'
+ 'opensearch-alerting-plugin'
+ 'opensearch-anomaly-detection-plugin'
+ 'opensearch-asynchronous-search-plugin'
+ 'opensearch-cross-cluster-replication-plugin'
+ 'opensearch-index-management-plugin'
+ 'opensearch-job-scheduler-plugin'
+ 'opensearch-knn-plugin'
+ 'opensearch-observability-plugin'
+ 'opensearch-performance-analyzer-plugin'
+ 'opensearch-reports-scheduler-plugin'
+ 'opensearch-security-plugin'
+ 'opensearch-sql-plugin'
+ )
+ backup=(
+ 'etc/opensearch/opensearch.yml'
+ 'etc/opensearch/log4j2.properties'
+ 'etc/opensearch/jvm.options'
+ 'etc/default/opensearch'
+ )
+
cd "OpenSearch-${pkgver}"
install -dm755 "${pkgdir}"/{usr/share,var/lib,var/log}/opensearch
install -dm755 "${pkgdir}/usr/bin"
- tar xf distribution/archives/linux-tar/build/distributions/opensearch-min-$pkgver-linux-x64.tar.gz \
+ tar xf distribution/archives/no-jdk-linux-tar/build/distributions/opensearch-min-$pkgver-no-jdk-linux-x64.tar.gz \
--strip 1 -C "${pkgdir}/usr/share/opensearch"
- rm -r "${pkgdir}"/usr/share/opensearch/{jdk,logs}
+ rm -r "${pkgdir}"/usr/share/opensearch/logs
install -dm755 "${pkgdir}/etc"
mv "${pkgdir}/usr/share/opensearch/config" "${pkgdir}/etc/opensearch"
- chmod 2750 "${pkgdir}/etc/opensearch"
+ chmod 2755 "${pkgdir}/etc/opensearch/"{,jvm.options.d}
+ chmod -R 644 "${pkgdir}/etc/opensearch/"{jvm.options,log4j2.properties}
+ chmod 640 "${pkgdir}/etc/opensearch/opensearch.yml" # Might contain sensitive information
- for bin in "${pkgdir}/usr/share/opensearch/bin/"*; do
- ln -sT "/usr/share/opensearch/bin/$(basename ${bin})" "${pkgdir}/usr/bin/$(basename ${bin})"
+ ln -sT "/usr/share/opensearch/bin/opensearch" "${pkgdir}/usr/bin/opensearch"
+ for b in opensearch-keystore opensearch-node opensearch-plugin opensearch-shard opensearch-upgrade; do
+ ln -sT "/usr/share/opensearch/bin/${b}" "${pkgdir}/usr/bin/${b}"
+ sed 's|"`dirname "$0"`"|/usr/share/opensearch/bin|' -i "${pkgdir}/usr/share/opensearch/bin/${b}"
done
ln -s /etc/opensearch "${pkgdir}/usr/share/opensearch/config"
@@ -102,8 +181,143 @@
cp -r distribution/build/outputs/systemd/modules/systemd "${pkgdir}/usr/share/opensearch/modules/"
- sed -i '2iJAVA_HOME=/usr/lib/jvm/default-runtime' "${pkgdir}/usr/share/opensearch/bin/opensearch-env"
- sed -i 's/OPENSEARCH_BUNDLED_JDK=true/OPENSEARCH_BUNDLED_JDK=false/g' "${pkgdir}/usr/share/opensearch/bin/opensearch-env"
+ sed -i "2iJAVA_HOME=/usr/lib/jvm/java-${_jrever}-openjdk" "${pkgdir}/usr/share/opensearch/bin/opensearch-env"
+ # Since this warning only affects official OpenSearch releases we can remove it on our end
+ sed -i 's/echo "warning: no-jdk distributions that do not bundle a JDK are deprecated and will be removed in a future release" >&2/:/g' "${pkgdir}/usr/share/opensearch/bin/opensearch-env"
+
install -Dm644 LICENSE.txt "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE.txt"
}
+
+_package_plugin() {
+ plugin="$1"
+
+ install -dm755 "${pkgdir}/usr/share/opensearch/plugins/${plugin}"
+ install -dm755 "${pkgdir}/usr/share/licenses/${pkgname}"
+
+ cd "${pkgdir}/usr/share/opensearch/plugins/${plugin}"
+ unzip "${srcdir}/OpenSearch-${pkgver}/plugins/${plugin}/build/distributions/${plugin}-${pkgver}.zip"
+
+ mv LICENSE.txt "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE.txt"
+ mv NOTICE.txt "${pkgdir}/usr/share/licenses/${pkgname}/NOTICE.txt"
+}
+
+package_opensearch-analysis-icu-plugin() {
+ pkgdesc="The ICU Analysis plugin integrates the Lucene ICU module into OpenSearch, adding ICU-related analysis components."
+ depends=("opensearch=${pkgver}")
+ _package_plugin analysis-icu
+}
+
+package_opensearch-analysis-kuromoji-plugin() {
+ pkgdesc="The Japanese (kuromoji) Analysis plugin integrates Lucene kuromoji analysis module into opensearch."
+ depends=("opensearch=${pkgver}")
+ _package_plugin analysis-kuromoji
+}
+
+package_opensearch-analysis-nori-plugin() {
+ pkgdesc="The Korean (nori) Analysis plugin integrates Lucene nori analysis module into opensearch."
+ depends=("opensearch=${pkgver}")
+ _package_plugin analysis-nori
+}
+
+package_opensearch-analysis-phonetic-plugin() {
+ pkgdesc="The Phonetic Analysis plugin integrates phonetic token filter analysis with opensearch."
+ depends=("opensearch=${pkgver}")
+ _package_plugin analysis-phonetic
+}
+
+package_opensearch-analysis-smartcn-plugin() {
+ pkgdesc="Smart Chinese Analysis plugin integrates Lucene Smart Chinese analysis module into opensearch."
+ depends=("opensearch=${pkgver}")
+ _package_plugin analysis-smartcn
+}
+
+package_opensearch-analysis-stempel-plugin() {
+ pkgdesc="The Stempel (Polish) Analysis plugin integrates Lucene stempel (polish) analysis module into opensearch."
+ depends=("opensearch=${pkgver}")
+ _package_plugin analysis-stempel
+}
+
+package_opensearch-analysis-ukrainian-plugin() {
+ pkgdesc="The Ukrainian Analysis plugin integrates the Lucene UkrainianMorfologikAnalyzer into opensearch."
+ depends=("opensearch=${pkgver}")
+ _package_plugin analysis-ukrainian
+}
+
+package_opensearch-discovery-azure-classic-plugin() {
+ pkgdesc="The Azure Classic Discovery plugin allows to use Azure Classic API for the unicast discovery mechanism"
+ depends=("opensearch=${pkgver}")
+ _package_plugin discovery-azure-classic
+}
+
+package_opensearch-discovery-ec2-plugin() {
+ pkgdesc="The EC2 discovery plugin allows to use AWS API for the unicast discovery mechanism."
+ depends=("opensearch=${pkgver}")
+ _package_plugin discovery-ec2
+}
+
+package_opensearch-discovery-gce-plugin() {
+ pkgdesc="The Google Compute Engine (GCE) Discovery plugin allows to use GCE API for the unicast discovery mechanism."
+ depends=("opensearch=${pkgver}")
+ _package_plugin discovery-gce
+}
+
+package_opensearch-ingest-attachment-plugin() {
+ pkgdesc="Ingest processor that uses Apache Tika to extract contents"
+ depends=("opensearch=${pkgver}")
+ _package_plugin ingest-attachment
+}
+
+package_opensearch-mapper-annotated-text-plugin() {
+ pkgdesc="The Mapper Annotated_text plugin adds support for text fields with markup used to inject annotation tokens into the index."
+ depends=("opensearch=${pkgver}")
+ _package_plugin mapper-annotated-text
+}
+
+package_opensearch-mapper-murmur3-plugin() {
+ pkgdesc="The Mapper Murmur3 plugin allows to compute hashes of a field\'s values at index-time and to store them in the index."
+ depends=("opensearch=${pkgver}")
+ _package_plugin mapper-murmur3
+}
+
+package_opensearch-mapper-size-plugin() {
+ pkgdesc="The Mapper Size plugin allows document to record their uncompressed size at index time."
+ depends=("opensearch=${pkgver}")
+ _package_plugin mapper-size
+}
+
+package_opensearch-repository-azure-plugin() {
+ pkgdesc="The Azure Repository plugin adds support for Azure storage repositories."
+ depends=("opensearch=${pkgver}")
+ _package_plugin repository-azure
+}
+
+package_opensearch-repository-gcs-plugin() {
+ pkgdesc="The GCS repository plugin adds Google Cloud Storage support for repositories."
+ depends=("opensearch=${pkgver}")
+ _package_plugin repository-gcs
+}
+
+package_opensearch-repository-hdfs-plugin() {
+ pkgdesc="The HDFS repository plugin adds support for Hadoop Distributed File-System (HDFS) repositories."
+ depends=("opensearch=${pkgver}")
+ _package_plugin repository-hdfs
+}
+
+package_opensearch-repository-s3-plugin() {
+ pkgdesc="The S3 repository plugin adds S3 repositories"
+ depends=("opensearch=${pkgver}")
+ _package_plugin repository-s3
+}
+
+package_opensearch-store-smb-plugin() {
+ pkgdesc="The Store SMB plugin adds support for SMB stores."
+ depends=("opensearch=${pkgver}")
+ _package_plugin store-smb
+}
+
+package_opensearch-transport-nio-plugin() {
+ pkgdesc="The nio transport."
+ depends=("opensearch=${pkgver}")
+ _package_plugin transport-nio
+}
Modified: opensearch-tmpfile.conf
===================================================================
--- opensearch-tmpfile.conf 2022-01-07 16:21:55 UTC (rev 1095924)
+++ opensearch-tmpfile.conf 2022-01-07 16:22:32 UTC (rev 1095925)
@@ -2,13 +2,13 @@
d /var/lib/opensearch 0755 opensearch opensearch -
d /usr/share/opensearch/plugins 0755 opensearch opensearch -
-d /etc/opensearch 2750 - opensearch -
-d /etc/opensearch/scripts 0750 - opensearch -
-d /etc/opensearch/jvm.options.d 0750 - opensearch -
-z /etc/opensearch/jvm.options 0640 root opensearch
+d /etc/opensearch 2755 - opensearch -
+d /etc/opensearch/scripts 0755 - opensearch -
+d /etc/opensearch/jvm.options.d 0755 - opensearch -
+z /etc/opensearch/jvm.options 0644 root opensearch
z /etc/opensearch/opensearch.yml 0640 root opensearch
-z /etc/opensearch/log4j2.properties 0640 root opensearch
-z /etc/opensearch/role_mapping.yml 0640 root opensearch
-z /etc/opensearch/roles.yml 0640 root opensearch
-z /etc/opensearch/users 0640 root opensearch
-z /etc/opensearch/users_roles 0640 root opensearch
+z /etc/opensearch/log4j2.properties 0644 root opensearch
+z /etc/opensearch/role_mapping.yml 0644 root opensearch
+z /etc/opensearch/roles.yml 0644 root opensearch
+z /etc/opensearch/users 0644 root opensearch
+z /etc/opensearch/users_roles 0644 root opensearch
More information about the arch-commits
mailing list