use of com.sun.enterprise.config.serverbeans.Node in project Payara by payara.
the class DeleteNodeTempCommand method execute.
@Override
public void execute(AdminCommandContext context) {
ActionReport actionReport = context.getActionReport();
Node node = nodes.getNode(name);
if (node == null) {
// No node to delete nothing to do here
actionReport.setActionExitCode(FAILURE);
actionReport.setMessage("No node found with given name: " + name);
return;
}
if (!(node.getType().equals("TEMP"))) {
// No node to delete nothing to do here
actionReport.setActionExitCode(FAILURE);
actionReport.setMessage("Node with given name is not a temp node: " + name);
return;
}
CommandRunner.CommandInvocation commandInvocation = commandRunner.getCommandInvocation("_delete-node", actionReport, context.getSubject());
ParameterMap commandParameters = new ParameterMap();
commandParameters.add("DEFAULT", name);
commandInvocation.parameters(commandParameters);
commandInvocation.execute();
}
use of com.sun.enterprise.config.serverbeans.Node in project Payara by payara.
the class ListNodesDockerCommand method execute.
@Override
public void execute(AdminCommandContext adminCommandContext) {
ColumnFormatter columnFormatter = new ColumnFormatter(OUTPUT_HEADERS);
for (Node node : nodes.getNode()) {
if (node.getType().equals("DOCKER")) {
Object[] nodeInfo = new Object[] { node.getName(), node.getNodeHost(), node.getDockerImage(), node.getDockerPort(), node.getUseTls() };
columnFormatter.addRow(nodeInfo);
}
}
adminCommandContext.getActionReport().setMessage(columnFormatter.toString());
}
use of com.sun.enterprise.config.serverbeans.Node in project Payara by payara.
the class JsonRequestConstructorTest method testEnvConfig.
@Test
public void testEnvConfig() {
Node node = new NodeStub();
Server server = new ServerStub();
Properties properties = new Properties();
properties.put("Env", "[Wibble:Wobble|Humpty:Dumpty]");
JsonObject actual = JsonRequestConstructor.constructJsonRequest(properties, node, server, "localhost", "4848");
JsonObject expected = Json.createObjectBuilder().add(DockerConstants.DOCKER_IMAGE_KEY, node.getDockerImage()).add(DockerConstants.DOCKER_CONTAINER_ENV, Json.createArrayBuilder().add("Wibble=Wobble").add("Humpty=Dumpty").add(DockerConstants.PAYARA_DAS_HOST + "=" + "localhost").add(DockerConstants.PAYARA_DAS_PORT + "=" + "4848").add(DockerConstants.PAYARA_NODE_NAME + "=" + node.getName()).add(DockerConstants.PAYARA_CONFIG_NAME + "=" + server.getConfigRef()).add(DockerConstants.PAYARA_INSTANCE_NAME + "=" + server.getName())).add(DockerConstants.DOCKER_HOST_CONFIG_KEY, Json.createObjectBuilder().add(DockerConstants.DOCKER_MOUNTS_KEY, Json.createArrayBuilder().add(Json.createObjectBuilder().add(DockerConstants.DOCKER_MOUNTS_TYPE_KEY, "bind").add(DockerConstants.DOCKER_MOUNTS_SOURCE_KEY, node.getDockerPasswordFile()).add(DockerConstants.DOCKER_MOUNTS_TARGET_KEY, DockerConstants.PAYARA_PASSWORD_FILE).add(DockerConstants.DOCKER_MOUNTS_READONLY_KEY, true))).add(DockerConstants.DOCKER_NETWORK_MODE_KEY, "host")).build();
Assert.assertEquals(expected.toString(), actual.toString());
}
use of com.sun.enterprise.config.serverbeans.Node in project Payara by payara.
the class JsonRequestConstructorTest method testNestedProperties.
@Test
public void testNestedProperties() {
Node node = new NodeStub();
Server server = new ServerStub();
Properties properties = new Properties();
properties.put("Wibbly.Wobbly.Timey.Wimey", "Testy");
properties.put("Wibbly.Wobbly.Timey.Whiney", "Westy");
properties.put("Wibbly.Wobbly.Bobbly", "[Nibbly:Nubbly,Bibbly:Bubbly|Tibbly:Tobbly,Giggly:Goggly]");
properties.put("Wibbly.Wubbly", "[Bibbly|Bobbly]");
properties.put("Lovely", "Jabbly");
JsonObject actual = JsonRequestConstructor.constructJsonRequest(properties, node, server, "localhost", "4848");
JsonObject expected = Json.createObjectBuilder().add(DockerConstants.DOCKER_IMAGE_KEY, node.getDockerImage()).add("Wibbly", Json.createObjectBuilder().add("Wobbly", Json.createObjectBuilder().add("Bobbly", Json.createArrayBuilder().add(Json.createObjectBuilder().add("Nibbly", "Nubbly").add("Bibbly", "Bubbly")).add(Json.createObjectBuilder().add("Tibbly", "Tobbly").add("Giggly", "Goggly"))).add("Timey", Json.createObjectBuilder().add("Whiney", "Westy").add("Wimey", "Testy"))).add("Wubbly", Json.createArrayBuilder().add("Bibbly").add("Bobbly"))).add("Lovely", "Jabbly").add(DockerConstants.DOCKER_HOST_CONFIG_KEY, Json.createObjectBuilder().add(DockerConstants.DOCKER_MOUNTS_KEY, Json.createArrayBuilder().add(Json.createObjectBuilder().add(DockerConstants.DOCKER_MOUNTS_TYPE_KEY, "bind").add(DockerConstants.DOCKER_MOUNTS_SOURCE_KEY, node.getDockerPasswordFile()).add(DockerConstants.DOCKER_MOUNTS_TARGET_KEY, DockerConstants.PAYARA_PASSWORD_FILE).add(DockerConstants.DOCKER_MOUNTS_READONLY_KEY, true))).add(DockerConstants.DOCKER_NETWORK_MODE_KEY, "host")).add(DockerConstants.DOCKER_CONTAINER_ENV, Json.createArrayBuilder().add(DockerConstants.PAYARA_DAS_HOST + "=" + "localhost").add(DockerConstants.PAYARA_DAS_PORT + "=" + "4848").add(DockerConstants.PAYARA_NODE_NAME + "=" + node.getName()).add(DockerConstants.PAYARA_CONFIG_NAME + "=" + server.getConfigRef()).add(DockerConstants.PAYARA_INSTANCE_NAME + "=" + server.getName())).build();
Assert.assertEquals(expected.toString(), actual.toString());
}
use of com.sun.enterprise.config.serverbeans.Node in project Payara by payara.
the class DeleteNodeDockerCommand method execute.
/**
* Executes the command with the command parameters passed as Properties
* where the keys are the parameter names and the values are the parameter values
*
* @param context information
*/
@Override
public void execute(AdminCommandContext context) {
ActionReport actionReport = context.getActionReport();
Node node = nodes.getNode(name);
if (node == null) {
// No node to delete nothing to do here
actionReport.setActionExitCode(FAILURE);
actionReport.setMessage("No node found with given name: " + name);
return;
}
if (!(node.getType().equals("DOCKER"))) {
// No node to delete nothing to do here
actionReport.setActionExitCode(FAILURE);
actionReport.setMessage("Node with given name is not a docker node: " + name);
return;
}
CommandRunner.CommandInvocation commandInvocation = commandRunner.getCommandInvocation("_delete-node", actionReport, context.getSubject());
ParameterMap commandParameters = new ParameterMap();
commandParameters.add("DEFAULT", name);
commandInvocation.parameters(commandParameters);
commandInvocation.execute();
}
Aggregations