@Override public void stopContainer(String containerId) { client.pods().withName(containerId).delete(); }
public static void main(String[] args) { String master = "https://localhost:8443/"; if (args.length == 1) { master = args[0]; } Config config = new ConfigBuilder().withMasterUrl(master).build(); KubernetesClient client = new DefaultKubernetesClient(config); try { log("Create namespace:", client.namespaces().create(new NamespaceBuilder().withNewMetadata().withName("thisisatest").endMetadata().build())); log("Deleted namespace:", client.namespaces().withName("test").delete()); log("Deleted testPod:", client.pods().inNamespace("thisisatest").withName("testpod").delete()); log("Deleted pod by label:", client.pods().withLabel("this", "works").delete()); } catch (KubernetesClientException e) { logger.error(e.getMessage(), e); } finally { client.namespaces().withName("thisisatest").delete(); client.close(); } }
public Boolean deletePod(String name) { LOGGER.info("Deleting pod with name:" + name); if (client.pods().withName(name).delete()) { synchronized (closeables) { for (Closeable c : closeables) { closeQuietly(c); } closeables.clear(); } return true; } else { return false; } }
/*** * Delete pod by name * @param namespace * @param podName * @throws Exception */ public void deletePod(String namespace, String podName) { client.pods().inNamespace(namespace).withName(podName).delete(); log.info("Pod {} removed", podName); }
@VisibleForTesting void deletePod(WorkflowInstance workflowInstance, Pod pod, String reason) { final String name = pod.getMetadata().getName(); if (!debug.get()) { client.pods().withName(name).delete(); LOG.info("Deleted {} pod: {}, reason: '{}'", workflowInstance, name, reason); } else { LOG.info("Keeping {} pod: {}, reason: '{}'", workflowInstance, name, reason); } }
protected void doDeletePod(Exchange exchange, String operation) throws Exception { String podName = exchange.getIn().getHeader( KubernetesConstants.KUBERNETES_POD_NAME, String.class); String namespaceName = exchange.getIn().getHeader( KubernetesConstants.KUBERNETES_NAMESPACE_NAME, String.class); if (ObjectHelper.isEmpty(podName)) { LOG.error("Delete a specific pod require specify a pod name"); throw new IllegalArgumentException( "Delete a specific pod require specify a pod name"); } if (ObjectHelper.isEmpty(namespaceName)) { LOG.error("Delete a specific pod require specify a namespace name"); throw new IllegalArgumentException( "Delete a specific pod require specify a namespace name"); } boolean podDeleted = getEndpoint().getKubernetesClient().pods() .inNamespace(namespaceName).withName(podName).delete(); MessageHelper.copyHeaders(exchange.getIn(), exchange.getOut(), true); exchange.getOut().setBody(podDeleted); } }
Boolean deleted = client.pods().inNamespace(actualNamespace).withName(name).delete(); if (!Boolean.TRUE.equals(deleted)) { String msg = String.format("Failed to delete pod for agent %s/%s: not found", actualNamespace, name);
@Override /** * Remove the template after step is done */ protected void finished(StepContext context) throws Exception { Cloud cloud = Jenkins.getInstance().getCloud(cloudName); if (cloud == null) { LOGGER.log(Level.WARNING, "Cloud {0} no longer exists, cannot delete pod template {1}", new Object[] { cloudName, podTemplate.getName() }); return; } if (cloud instanceof KubernetesCloud) { LOGGER.log(Level.INFO, "Removing pod template and deleting pod {1} from cloud {0}", new Object[] { cloud.name, podTemplate.getName() }); KubernetesCloud kubernetesCloud = (KubernetesCloud) cloud; kubernetesCloud.removeDynamicTemplate(podTemplate); KubernetesClient client = kubernetesCloud.connect(); Boolean deleted = client.pods().withName(podTemplate.getName()).delete(); if (!Boolean.TRUE.equals(deleted)) { LOGGER.log(Level.WARNING, "Failed to delete pod for agent {0}/{1}: not found", new String[] { client.getNamespace(), podTemplate.getName() }); return; } } else { LOGGER.log(Level.WARNING, "Cloud is not a KubernetesCloud: {0} {1}", new String[] { cloud.name, cloud.getClass().getName() }); } } }
@After public void removeBuildPod() { final List<String> pods = kubernetesClient.pods().inNamespace(namespace).list().getItems().stream() .filter(pod -> pod.getMetadata().getName().startsWith("spring-boot-rest-http-s2i")) .map(pod -> pod.getMetadata().getName()) .collect(Collectors.toList()); for (String pod : pods) { kubernetesClient.pods().inNamespace(namespace).withName(pod).delete(); } } }
String name = KubernetesHelper.getName(pod); try { kubernetes.pods().inNamespace(namespace).withName(KubernetesHelper.getName(pod)).delete(); message = "Chaos Monkey killed pod " + name + " in namespace " + namespace; killed = true;
if (isRecreateMode()) { log.info("Deleting Pod: " + id); kubernetesClient.pods().inNamespace(namespace).withName(id).delete(); doCreatePod(pod, namespace, sourceName); } else {