You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by vk...@apache.org on 2020/12/28 19:55:57 UTC
[ignite-3] branch ignite-3.0.0-alpha1 updated: IGNITE-13923 - Added
custom Maven repo support to the 'init' command
This is an automated email from the ASF dual-hosted git repository.
vkulichenko pushed a commit to branch ignite-3.0.0-alpha1
in repository https://gitbox.apache.org/repos/asf/ignite-3.git
The following commit(s) were added to refs/heads/ignite-3.0.0-alpha1 by this push:
new 984855d IGNITE-13923 - Added custom Maven repo support to the 'init' command
984855d is described below
commit 984855d6c10a53258c1da6049710e29b62d7c535
Author: Valentin Kulichenko <va...@gmail.com>
AuthorDate: Mon Dec 28 11:54:59 2020 -0800
IGNITE-13923 - Added custom Maven repo support to the 'init' command
---
.../apache/ignite/cli/builtins/init/InitIgniteCommand.java | 12 ++++++++----
.../org/apache/ignite/cli/spec/InitIgniteCommandSpec.java | 10 ++++++++--
.../java/org/apache/ignite/cli/IgniteCliInterfaceTest.java | 2 +-
.../ignite/cli/builtins/init/InitIgniteCommandTest.java | 12 ++++--------
4 files changed, 21 insertions(+), 15 deletions(-)
diff --git a/modules/cli/src/main/java/org/apache/ignite/cli/builtins/init/InitIgniteCommand.java b/modules/cli/src/main/java/org/apache/ignite/cli/builtins/init/InitIgniteCommand.java
index 108a329..a88199a 100644
--- a/modules/cli/src/main/java/org/apache/ignite/cli/builtins/init/InitIgniteCommand.java
+++ b/modules/cli/src/main/java/org/apache/ignite/cli/builtins/init/InitIgniteCommand.java
@@ -21,8 +21,10 @@ import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;
+import java.net.URL;
import java.nio.file.Files;
import java.nio.file.Path;
+import java.util.Arrays;
import java.util.Collections;
import java.util.Optional;
import java.util.Properties;
@@ -54,7 +56,7 @@ public class InitIgniteCommand {
this.cliPathsConfigLoader = cliPathsConfigLoader;
}
- public void init(PrintWriter out, ColorScheme cs) {
+ public void init(URL[] urls, PrintWriter out, ColorScheme cs) {
moduleManager.setOut(out);
Optional<IgnitePaths> ignitePathsOpt = cliPathsConfigLoader.loadIgnitePathsConfig();
if (ignitePathsOpt.isEmpty())
@@ -73,8 +75,9 @@ public class InitIgniteCommand {
out.println(table);
out.println();
- installIgnite(cfg);
+ installIgnite(cfg, urls);
initDefaultServerConfigs(cfg.serverDefaultConfigFile());
+
out.println();
out.println("Apache Ignite is successfully initialized. Use the " +
cs.commandText("ignite node start") + " command to start a new local node.");
@@ -92,8 +95,9 @@ public class InitIgniteCommand {
}
}
- private void installIgnite(IgnitePaths ignitePaths) {
- moduleManager.addModule("_server", ignitePaths, Collections.emptyList());
+ private void installIgnite(IgnitePaths ignitePaths, URL[] urls) {
+ moduleManager.addModule("_server", ignitePaths,
+ urls == null ? Collections.emptyList() : Arrays.asList(urls));
}
private File initConfigFile() {
diff --git a/modules/cli/src/main/java/org/apache/ignite/cli/spec/InitIgniteCommandSpec.java b/modules/cli/src/main/java/org/apache/ignite/cli/spec/InitIgniteCommandSpec.java
index b53d430..9ef614b 100644
--- a/modules/cli/src/main/java/org/apache/ignite/cli/spec/InitIgniteCommandSpec.java
+++ b/modules/cli/src/main/java/org/apache/ignite/cli/spec/InitIgniteCommandSpec.java
@@ -17,6 +17,7 @@
package org.apache.ignite.cli.spec;
+import java.net.URL;
import javax.inject.Inject;
import org.apache.ignite.cli.common.IgniteCommand;
import org.apache.ignite.cli.builtins.init.InitIgniteCommand;
@@ -28,8 +29,13 @@ public class InitIgniteCommandSpec extends CommandSpec implements IgniteCommand
@Inject
InitIgniteCommand command;
+ @CommandLine.Option(
+ names = "--repo",
+ description = "Additional Maven repository URL"
+ )
+ public URL[] urls;
+
@Override public void run() {
- command.init(spec.commandLine().getOut(), spec.commandLine().getColorScheme());
+ command.init(urls, spec.commandLine().getOut(), spec.commandLine().getColorScheme());
}
-
}
diff --git a/modules/cli/src/test/java/org/apache/ignite/cli/IgniteCliInterfaceTest.java b/modules/cli/src/test/java/org/apache/ignite/cli/IgniteCliInterfaceTest.java
index 498df94..0709570 100644
--- a/modules/cli/src/test/java/org/apache/ignite/cli/IgniteCliInterfaceTest.java
+++ b/modules/cli/src/test/java/org/apache/ignite/cli/IgniteCliInterfaceTest.java
@@ -89,7 +89,7 @@ public class IgniteCliInterfaceTest {
applicationContext.registerSingleton(InitIgniteCommand.class, initIgniteCommand);
CommandLine cli = commandLine(applicationContext);
assertEquals(0, cli.execute("init"));
- verify(initIgniteCommand).init(any(), any());
+ verify(initIgniteCommand).init(any(), any(), any());
}
}
diff --git a/modules/cli/src/test/java/org/apache/ignite/cli/builtins/init/InitIgniteCommandTest.java b/modules/cli/src/test/java/org/apache/ignite/cli/builtins/init/InitIgniteCommandTest.java
index 0c2c10e..ceddc40 100644
--- a/modules/cli/src/test/java/org/apache/ignite/cli/builtins/init/InitIgniteCommandTest.java
+++ b/modules/cli/src/test/java/org/apache/ignite/cli/builtins/init/InitIgniteCommandTest.java
@@ -17,9 +17,7 @@
package org.apache.ignite.cli.builtins.init;
-import java.io.ByteArrayOutputStream;
import java.io.File;
-import java.io.FileInputStream;
import java.io.IOException;
import java.io.PrintWriter;
import java.nio.file.Files;
@@ -27,7 +25,6 @@ import java.nio.file.Path;
import java.util.Arrays;
import java.util.Collections;
import java.util.Comparator;
-import java.util.jar.Manifest;
import javax.inject.Inject;
import io.micronaut.test.annotation.MockBean;
import io.micronaut.test.extensions.junit5.annotation.MicronautTest;
@@ -41,7 +38,6 @@ import org.junit.jupiter.api.io.TempDir;
import org.mockito.junit.jupiter.MockitoExtension;
import picocli.CommandLine.Help.ColorScheme;
-import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertFalse;
import static org.junit.jupiter.api.Assertions.assertTrue;
import static org.mockito.ArgumentMatchers.any;
@@ -67,8 +63,8 @@ public class InitIgniteCommandTest {
when(mavenArtifactResolver.resolve(any(), any(), any(), any(), any()))
.thenReturn(new ResolveResult(Arrays.asList()));
- var out = new ByteArrayOutputStream();
- initIgniteCommand.init(new PrintWriter(System.out, true), new ColorScheme.Builder().build());
+ var out = new PrintWriter(System.out, true);
+ initIgniteCommand.init(null, out, new ColorScheme.Builder().build());
var ignitePaths = cliPathsConfigLoader.loadIgnitePathsConfig().get();
assertTrue(ignitePaths.validateDirs());
@@ -82,14 +78,14 @@ public class InitIgniteCommandTest {
.thenReturn(new ResolveResult(Collections.emptyList()));
var out = new PrintWriter(System.out, true);
- initIgniteCommand.init(out, new ColorScheme.Builder().build());
+ initIgniteCommand.init(null, out, new ColorScheme.Builder().build());
var ignitePaths = cliPathsConfigLoader.loadIgnitePathsOrThrowError();
recursiveDirRemove(ignitePaths.binDir);
assertFalse(ignitePaths::validateDirs);
- initIgniteCommand.init(out, new ColorScheme.Builder().build());
+ initIgniteCommand.init(null, out, new ColorScheme.Builder().build());
assertTrue(ignitePaths::validateDirs);
}