首页
学习
活动
专区
圈层
工具
发布

openshift/origin工作记录(2)——RESTful编程接口使用

由于工作原因,需要对openshift进行二次开发,初步研究了一下RESTful编程接口使用。

本部分内容借鉴了开源项目https://github.com/fabric8io/kubernetes-client,目前是引用开源项目的jar包对openshift集群进行操作。

demo工程放在了我的github上,地址为https://github.com/hu12081/openshiftDemo.git

代码如下:

代码语言:javascript
复制
import io.fabric8.kubernetes.api.model.NamespaceList;
import io.fabric8.kubernetes.api.model.Namespace;
import io.fabric8.openshift.client.DefaultOpenShiftClient;
import io.fabric8.openshift.client.OpenShiftClient;
import io.fabric8.openshift.client.OpenShiftConfig;
import io.fabric8.openshift.client.OpenShiftConfigBuilder;
public class openshiftDemo {
  public static void main(String[] args) {
    OpenShiftConfig config = new OpenShiftConfigBuilder()
      .withOpenShiftUrl("https://master.example.com:8443")
      .withMasterUrl("https://master.example.com:8443")
      .withUsername("dev")
      .withPassword("dev")
      .withTrustCerts(true).build();
    OpenShiftClient client = new DefaultOpenShiftClient(config);
    String token = client.oAuthAccessTokens().list().getItems().get(0).getMetadata().getName();
    System.out.println("用户账号的token为:" + token);
    //获取工程列表
    NamespaceList myNs = client.namespaces().list();
    //遍历打印工程名
    for(Namespace ns: myNs.getItems())
      System.out.println(ns.getMetadata().getName());
  }
}

代码执行结果输出如下:

这里能够获取用户账号的token。

可以自己基于openshift官方RESTful编程接口进行二次开发,也可以直接使用开源项目fabric8io/kubernetes-client的jar包提供的功能进行开发,甚至可以修改开源项目fabric8io/kubernetes-client的源码。

下一篇
举报
领券