当前位置: 首页>>代码示例>>Java>>正文


Java PodResource类代码示例

本文整理汇总了Java中io.fabric8.kubernetes.client.dsl.PodResource的典型用法代码示例。如果您正苦于以下问题:Java PodResource类的具体用法?Java PodResource怎么用?Java PodResource使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


PodResource类属于io.fabric8.kubernetes.client.dsl包,在下文中一共展示了PodResource类的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: getState

import io.fabric8.kubernetes.client.dsl.PodResource; //导入依赖的package包/类
@Override
public State getState(String id) throws FrameworkException {
    PodResource<Pod, DoneablePod> podResource = client.pods().inNamespace(KUBERNETES_NAMESPACE).withName(id);
    String exitCode = Optional.ofNullable(podResource.get().getStatus().getContainerStatuses().get(0).getState().getTerminated())
            .map(stateTerminated -> stateTerminated.getExitCode().toString())
            .orElse("");

    String log = podResource.getLog();
    State state = new State();
    state.setCode(String.valueOf(exitCode));
    state.setDescription(podResource.get().getMetadata().toString());
    state.setId(id);
    state.setStderr(log);
    state.setStdout(log);
    return state;
}
 
开发者ID:BiBiServ,项目名称:jobproxy,代码行数:17,代码来源:Kubernetes.java

示例2: doDelete

import io.fabric8.kubernetes.client.dsl.PodResource; //导入依赖的package包/类
private CompletableFuture<Void> doDelete(String name) throws InfrastructureException {
  try {
    final PodResource<Pod, DoneablePod> podResource =
        clientFactory.create().pods().inNamespace(namespace).withName(name);
    final CompletableFuture<Void> deleteFuture = new CompletableFuture<>();
    final Watch watch = podResource.watch(new DeleteWatcher(deleteFuture));

    podResource.delete();
    return deleteFuture.whenComplete(
        (v, e) -> {
          if (e != null) {
            LOG.warn("Failed to remove pod {} cause {}", name, e.getMessage());
          }
          watch.close();
        });
  } catch (KubernetesClientException ex) {
    throw new InfrastructureException(ex.getMessage(), ex);
  }
}
 
开发者ID:eclipse,项目名称:che,代码行数:20,代码来源:OpenShiftPods.java

示例3: withDefaultUserPod

import io.fabric8.kubernetes.client.dsl.PodResource; //导入依赖的package包/类
private PodResource<Pod, DoneablePod> withDefaultUserPod(Pod pod) {
	if (pod.getMetadata().getNamespace() != null) {
		return withDefaultUser(c -> c.pods().inNamespace(pod.getMetadata().getNamespace()).withName(pod.getMetadata().getName()));
	} else {
		return withDefaultUser(c -> c.pods().withName(pod.getMetadata().getName()));
	}
}
 
开发者ID:syndesisio,项目名称:syndesis-qe,代码行数:8,代码来源:OpenShiftUtils.java

示例4: mockPodsByName

import io.fabric8.kubernetes.client.dsl.PodResource; //导入依赖的package包/类
private void mockPodsByName(String namespace, String name, Pod pod) {
    when(this.mixedOperationMock.inNamespace(namespace)).thenReturn(this.nonNamespaceOperationMock);
    @SuppressWarnings("unchecked")
    PodResource<Pod, DoneablePod> podResource = Mockito.mock(PodResource.class);
    when(podResource.get()).thenReturn(pod);

    when(this.nonNamespaceOperationMock.withName(name)).thenReturn(podResource);
}
 
开发者ID:opensecuritycontroller,项目名称:osc-core,代码行数:9,代码来源:KubernetesPodApiTest.java

示例5: withDefaultUserPod

import io.fabric8.kubernetes.client.dsl.PodResource; //导入依赖的package包/类
private PodResource<Pod, DoneablePod> withDefaultUserPod(Pod pod) {
	if (pod.getMetadata().getNamespace() != null) {
		return withDefaultUser(c -> c.pods().inNamespace(pod.getMetadata().getNamespace()).withName(pod.getMetadata().getName()));
	}
	else {
		return withDefaultUser(c -> c.pods().withName(pod.getMetadata().getName()));
	}
}
 
开发者ID:xtf-cz,项目名称:xtf,代码行数:9,代码来源:OpenshiftUtil.java

示例6: blockUntilComplete

import io.fabric8.kubernetes.client.dsl.PodResource; //导入依赖的package包/类
private Optional<URI> blockUntilComplete(final String podName) throws InterruptedException {
  LOG.debug("Checking running statuses");

  boolean nodeAssigned = false;

  while (true) {
    final PodResource<Pod, DoneablePod> pod = client.pods().withName(podName);
    final PodStatus status = pod.get().getStatus();

    if (!nodeAssigned && pod.get().getSpec().getNodeName() != null) {
      LOG.info("Pod {} assigned to node {}", podName, pod.get().getSpec().getNodeName());
      nodeAssigned = true;
    }

    switch (status.getPhase()) {
      case "Succeeded":
        LOG.info("Kubernetes pod {} exited with status {}", podName, status.getPhase());

        final Optional<ContainerStatus> containerStatus = status.getContainerStatuses().stream()
            .filter(c -> HYPE_RUN.equals(c.getName()))
            .findFirst();

        final Optional<String> terminated = containerStatus
            .flatMap(s -> Optional.ofNullable(s.getState().getTerminated()))
            .flatMap(t -> Optional.ofNullable(t.getMessage()));

        if (terminated.isPresent()) {
          String message = terminated.get();
          LOG.info("Got termination message: {}", message);
          return Optional.of(URI.create(message));
        }
        break;

      case "Failed":
        LOG.info("Kubernetes pod {} failed with status {}", podName, status);
        return Optional.empty();

      default:
        break;
    }
    Thread.sleep(TimeUnit.SECONDS.toMillis(POLL_PODS_INTERVAL_SECONDS));
  }
}
 
开发者ID:spotify,项目名称:hype,代码行数:44,代码来源:KubernetesDockerRunner.java


注:本文中的io.fabric8.kubernetes.client.dsl.PodResource类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。