8000 Use bundled JRE for Opensearch and Elasticsearch · localstack/localstack@c0c1829 · GitHub
[go: up one dir, main page]

Skip to content

Commit c0c1829

Browse files
Use bundled JRE for Opensearch and Elasticsearch
1 parent c9faf3d commit c0c1829

File tree

2 files changed

+5
-27
lines changed

2 files changed

+5
-27
lines changed

localstack-core/localstack/services/opensearch/cluster.py

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,6 @@
1616
)
1717
from localstack.http.client import SimpleRequestsClient
1818
from localstack.http.proxy import ProxyHandler
19-
from localstack.packages.java import java_package
2019
from localstack.services.edge import ROUTER
2120
from localstack.services.opensearch import versions
2221
from localstack.services.opensearch.packages import elasticsearch_package, opensearch_package
@@ -466,10 +465,8 @@ def _create_run_command(
466465
return cmd
467466

468467
def _create_env_vars(self, directories: Directories) -> Dict:
469-
elasticsearch_installer = elasticsearch_package.get_installer(self.version)
470-
java_home = java_package.get_installer(elasticsearch_installer.java_version).get_java_home()
471468
env_vars = {
472-
"JAVA_HOME": java_home,
469+
"JAVA_HOME": os.path.join(directories.install, "jdk"),
473470
"OPENSEARCH_JAVA_OPTS": os.environ.get("OPENSEARCH_JAVA_OPTS", "-Xms200m -Xmx600m"),
474471
"OPENSEARCH_TMPDIR": directories.tmp,
475472
}
@@ -692,10 +689,8 @@ def _base_settings(self, dirs) -> CommandSettings:
692689
return settings
693690

694691
def _create_env_vars(self, directories: Directories) -> Dict:
695-
opensearch_installer = opensearch_package.get_installer(self.version)
696-
java_home = java_package.get_installer(opensearch_installer.java_version).get_java_home()
697692
return {
698-
"JAVA_HOME": java_home,
693+
"JAVA_HOME": os.path.join(directories.install, "jdk"),
699694
"ES_JAVA_OPTS": os.environ.get("ES_JAVA_OPTS", "-Xms200m -Xmx600m"),
700695
"ES_TMPDIR": directories.tmp,
701696
}

localstack-core/localstack/services/opensearch/packages.py

Lines changed: 3 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
import shutil
66
import textwrap
77
import threading
8-
from typing import List
8+
from typing import List, Optional
99

1010
import semver
1111

@@ -18,7 +18,6 @@
1818
OPENSEARCH_PLUGIN_LIST,
1919
)
2020
from localstack.packages import InstallTarget, Package, PackageInstaller
21-
from localstack.packages.java import java_package
2221
from localstack.services.opensearch import versions
2322
from localstack.utils.archives import download_and_extract_with_retry
2423
from localstack.utils.files import chmod_r, load_file, mkdir, rm_rf, save_file
@@ -50,15 +49,6 @@ class OpensearchPackageInstaller(PackageInstaller):
5049
def __init__(self, version: str):
5150
super().__init__("opensearch", version)
5251

53-
# JRE version to use
54-
# OpenSearch has the widest compatibility with Java 11
55-
# See: https://opensearch.org/docs/latest/install-and-configure/install-opensearch/index/#java-compatibility
56-
self.java_version = "11"
57-
58-
def _prepare_installation(self, target: InstallTarget) -> None:
59-
# OpenSearch ships with a bundled JRE, but we still use LocalStack's JRE for predictability
60-
java_package.get_installer(self.java_version).install(target)
61-
6252
def _install(self, target: InstallTarget):
6353
# locally import to avoid having a dependency on ASF when starting the CLI
6454
from localstack.aws.api.opensearch import EngineType
@@ -223,18 +213,11 @@ def _get_opensearch_install_version(self) -> str:
223213

224214

225215
class ElasticsearchPackageInstaller(PackageInstaller):
216+
java_home: Optional[str]
217+
226218
def __init__(self, version: str):
227219
super().__init__("elasticsearch", version)
228220

229-
# JRE version to use
230-
# ElasticSearch has the widest compatibility with Java 8
231-
# See: https://www.elastic.co/support/matrix
232-
self.java_version = "8"
233-
234-
def _prepare_installation(self, target: InstallTarget) -> None:
235-
# ElasticSearch ships with a bundled JRE, but we still use LocalStack's JRE for predictability
236-
java_package.get_installer(self.java_version).install(target)
237-
238221
def _install(self, target: InstallTarget):
239222
# locally import to avoid having a dependency on ASF when starting the CLI
240223
from localstack.aws.api.opensearch import EngineType

0 commit comments

Comments
 (0)
0