我试图以编程方式重新启动Pod。首先,我通过oc命令行找到了一些方法:
oc delete pod postgresql-2-wz989
oc rollout latest dc/postgresql
我认为第二种方式更好,因为部署配置名称是静态的,并且不会像pod的名称那样改变。
我的问题是如何使用Java Rest Client执行此操作?我不太清楚如何使用此客户端API。
提前致谢。
答案 0 :(得分:1)
考虑到Graham Dumpleton关于使用--loglevel=9
的提示,我使用java客户端找到了解决方案:
IClient client = new ClientBuilder("https://10.0.75.2:8443")
.withUserName("developer")
.withPassword("developer")
.build();
IProject project = client.getResourceFactory().stub(ResourceKind.PROJECT, "prj4testing");
IDeploymentConfig deploymentConfig = client.getResourceFactory().stub(ResourceKind.DEPLOYMENT_CONFIG, "postgresql", project.getName());
IDeploymentTriggerable capability = deploymentConfig.getCapability(IDeploymentTriggerable.class);
capability.setForce(true);
capability.setLatest(true);
capability.trigger();
我通过研究客户端的源代码来解决这个问题。我不知道是否有更好的方法来实现这一目标。欢迎提出任何意见。