Class PodUtils

java.lang.Object
org.csanchez.jenkins.plugins.kubernetes.PodUtils

public final class PodUtils extends Object
  • Field Details

    • CONTAINER_IS_TERMINATED

      public static final Predicate<io.fabric8.kubernetes.api.model.ContainerStatus> CONTAINER_IS_TERMINATED
    • CONTAINER_IS_WAITING

      public static final Predicate<io.fabric8.kubernetes.api.model.ContainerStatus> CONTAINER_IS_WAITING
  • Method Details

    • getTerminatedContainers

      @NonNull public static List<io.fabric8.kubernetes.api.model.ContainerStatus> getTerminatedContainers(io.fabric8.kubernetes.api.model.Pod pod)
    • getWaitingContainers

      public static List<io.fabric8.kubernetes.api.model.ContainerStatus> getWaitingContainers(io.fabric8.kubernetes.api.model.Pod pod)
    • getContainerStatus

      public static List<io.fabric8.kubernetes.api.model.ContainerStatus> getContainerStatus(io.fabric8.kubernetes.api.model.Pod pod)
    • getContainers

      public static List<io.fabric8.kubernetes.api.model.ContainerStatus> getContainers(io.fabric8.kubernetes.api.model.Pod pod, Predicate<io.fabric8.kubernetes.api.model.ContainerStatus> predicate)
    • cancelQueueItemFor

      public static void cancelQueueItemFor(io.fabric8.kubernetes.api.model.Pod pod, String reason)

      Cancel queue items matching the given pod.

      The queue item has to have a task url matching the pod "runUrl"-annotation and the queue item assigned label needs to match the label jenkins/label of the pod.

      It uses the current thread context to list item queues, so make sure to be in the right context before calling this method.

      Parameters:
      pod - The pod to cancel items for.
      reason - The reason the item are being cancelled.
    • cancelQueueItemFor

      public static void cancelQueueItemFor(@NonNull String runUrl, @NonNull String label, @CheckForNull String reason, @CheckForNull String podDisplayName)
    • logLastLines

      @CheckForNull public static String logLastLines(@NonNull io.fabric8.kubernetes.api.model.Pod pod, @NonNull io.fabric8.kubernetes.client.KubernetesClient client)