From 04a874ac9572245314208fdeea485383d621fcf6 Mon Sep 17 00:00:00 2001 From: "Ing. Pavel Janousek" Date: Thu, 22 Oct 2015 12:27:33 +0200 Subject: [PATCH] [JENKINS-31098] Deletage remove a node back to Computer.doDoDelete() --- .../main/java/hudson/cli/DeleteNodeCommand.java | 16 +++++++--------- .../java/hudson/cli/DeleteNodeCommandTest.java | 2 +- 2 files changed, 8 insertions(+), 10 deletions(-) diff --git a/core/src/main/java/hudson/cli/DeleteNodeCommand.java b/core/src/main/java/hudson/cli/DeleteNodeCommand.java index fb35bf3dac..81e7a74003 100644 --- a/core/src/main/java/hudson/cli/DeleteNodeCommand.java +++ b/core/src/main/java/hudson/cli/DeleteNodeCommand.java @@ -29,6 +29,7 @@ import hudson.model.Node; import jenkins.model.Jenkins; import org.kohsuke.args4j.Argument; +import java.nio.file.AccessDeniedException; import java.util.HashSet; import java.util.List; import java.util.logging.Logger; @@ -77,15 +78,12 @@ public class DeleteNodeCommand extends CLICommand { continue; } - try { - node.checkPermission(Computer.DELETE); - } catch (Exception e) { - stderr.println(e.getMessage()); - errorOccurred = true; - continue; - } - - jenkins.removeNode(node); + node.toComputer().doDoDelete(); + } catch (AccessDeniedException e) { + stderr.println(e.getMessage()); + errorOccurred = true; + //noinspection UnnecessaryContinue + continue; } catch (Exception e) { final String errorMsg = String.format("Unexpected exception occurred during deletion of node '%s': %s", node == null ? "(null)" : node.toComputer().getName(), diff --git a/test/src/test/java/hudson/cli/DeleteNodeCommandTest.java b/test/src/test/java/hudson/cli/DeleteNodeCommandTest.java index 641768a054..60b3494e0a 100644 --- a/test/src/test/java/hudson/cli/DeleteNodeCommandTest.java +++ b/test/src/test/java/hudson/cli/DeleteNodeCommandTest.java @@ -48,7 +48,7 @@ public class DeleteNodeCommandTest { @Before public void setUp() { - command = new CLICommandInvoker(j, new DeleteNodeCommand()); + command = new CLICommandInvoker(j, "delete-node"); } @Test public void deleteNodeShouldFailWithoutNodeDeletePermission() throws Exception { -- GitLab