Skip to content

Commit

Permalink
Fixing extension dependency
Browse files Browse the repository at this point in the history
Signed-off-by: Sarat Vemulapalli <[email protected]>
  • Loading branch information
saratvemulapalli committed Feb 1, 2023
1 parent da30c35 commit 35d526d
Show file tree
Hide file tree
Showing 3 changed files with 17 additions and 6 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -565,6 +565,15 @@ private ExtensionsSettings readFromExtensionsYml(Path filePath) throws IOExcepti
List<HashMap<String, ?>> unreadExtensions = new ArrayList<>((Collection<HashMap<String, ?>>) obj.get("extensions"));
List<Extension> readExtensions = new ArrayList<Extension>();
for (HashMap<String, ?> extensionMap : unreadExtensions) {
// Parse extension dependencies
List<ExtensionDependency> extensionDependencyList = new ArrayList<ExtensionDependency>();
if(extensionMap.get("dependencies") != null) {
List<HashMap<String, ?>> extensionDependencies = new ArrayList<>((Collection<HashMap<String, ?>>) extensionMap.get("dependencies"));
for (HashMap<String, ?> dependency : extensionDependencies) {
extensionDependencyList.add(new ExtensionDependency(dependency.get("uniqueId").toString(), Version.fromString(dependency.get("version").toString())));
}
}
// Create extension read from yml config
readExtensions.add(
new Extension(
extensionMap.get("name").toString(),
Expand All @@ -573,7 +582,8 @@ private ExtensionsSettings readFromExtensionsYml(Path filePath) throws IOExcepti
extensionMap.get("port").toString(),
extensionMap.get("version").toString(),
extensionMap.get("opensearchVersion").toString(),
extensionMap.get("minimumCompatibleVersion").toString()
extensionMap.get("minimumCompatibleVersion").toString(),
extensionDependencyList
)
);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,8 @@ public Extension(
String port,
String version,
String opensearchVersion,
String minimumCompatibleVersion
String minimumCompatibleVersion,
List<ExtensionDependency> dependencies
) {
this.name = name;
this.uniqueId = uniqueId;
Expand All @@ -61,6 +62,7 @@ public Extension(
this.version = version;
this.opensearchVersion = opensearchVersion;
this.minimumCompatibleVersion = minimumCompatibleVersion;
this.dependencies = dependencies;
}

public Extension() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -124,7 +124,7 @@ public class ExtensionsManagerTests extends OpenSearchTestCase {
" minimumCompatibleVersion: '2.0.0'",
" dependencies:",
" - uniqueId: 'uniqueid0'",
" - version: '2.0.0'"
" version: '2.0.0'"
);

private DiscoveryExtensionNode extensionNode;
Expand Down Expand Up @@ -237,7 +237,7 @@ public void testDiscover() throws Exception {
assertEquals(extension.getVersion(), initializedExtension.getVersion());
assertEquals(extension.getMinimumCompatibleVersion(), initializedExtension.getMinimumCompatibleVersion());
// TODO: Will fail due to bug : https://github.com/opensearch-project/OpenSearch/issues/6115
// assertEquals(extension.getDependencies(), initializedExtension.getDependencies());
assertEquals(extension.getDependencies(), initializedExtension.getDependencies());
}
}

Expand Down Expand Up @@ -272,10 +272,9 @@ public void testNonUniqueExtensionsDiscovery() throws Exception {
assertEquals(extension.getAttributes(), initializedExtension.getAttributes());
assertEquals(extension.getVersion(), initializedExtension.getVersion());
assertEquals(extension.getMinimumCompatibleVersion(), initializedExtension.getMinimumCompatibleVersion());
assertEquals(extension.getDependencies(), initializedExtension.getDependencies());
}
assertTrue(expectedExtensions.containsAll(emptyList()));
// TODO: Will fail due to bug : https://github.com/opensearch-project/OpenSearch/issues/6115
// assertEquals(extension.getDependencies(), initializedExtension.getDependencies());
}

public void testDiscoveryExtension() throws Exception {
Expand Down

0 comments on commit 35d526d

Please sign in to comment.