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

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

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

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

代码如下:

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的源码。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏奔跑的蛙牛技术博客

Java网络知识之socket

当我们一个client连接一个套接字时,当前线程会被阻塞直到建立连接或者超时为止 同样的当通过套接字读写数据时,当前线程也会被阻塞或者直到超时 对于这种阻塞...

12340
来自专栏禁心尽力

Web层框架对网站中所有异常的统一处理

  一个网站的异常信息作为专业的人士,是不会轻易暴露给用户的,因为那样狠不安全,显得你漏是一回事,只要还是考虑到网站的数据安全问题,下面给大家分享一下一些常见的...

23180
来自专栏FreeBuf

秒爆十万字典:奇葩技巧快速枚举“一句话后门”密码

对于一句话大家都不陌生,有时会需要爆破。爆破的速度和目标的响应速度就有很大的关系了。那如果我们爆破的速度可以提升至少1000倍呢? 首先如下图↓ ? 变量=ec...

28970
来自专栏大内老A

WCF后续之旅(16): 消息是如何分发到Endpoint的--消息筛选(Message Filter)

在介绍终结点的ListenUriMode时,我们提到了两个特殊的对象ChannelDispatcher和ChannelListener。这两个对象在整个WCF的...

24370
来自专栏小灰灰

RabbitMQ基础教程之使用进阶篇

45040
来自专栏高爽的专栏

Java线程(三):线程协作-生产者/消费者问题

        上一篇讲述了线程的互斥(同步),但是在很多情况下,仅仅同步是不够的,还需要线程与线程协作(通信),生产者/消费者问题是一个经典的线程同步以及通信...

22600
来自专栏Flutter知识集

Flutter与Native通信 - PlatformChannel源码分析

Flutter是一个跨平台的方案,在UI、触控及基本的网络请求上已经基本做到平台无关,但是在某些平台特性的功能上,还是必须要对不同的平台做处理。这就涉及到与Na...

1.5K00
来自专栏FreeBuf

FuzzDomain域名爆破工具发布以及开源

前言 个人认为信息收集是渗透测试中最重要的部分,它将直接影响到渗透测试的结果。今天给大家分享的是信息收集中的一小部分,域名爆破。 域名爆破的重要性 域名爆破能...

30260
来自专栏跟着阿笨一起玩NET

url传递中文的解决方案

本文转载:http://www.cnblogs.com/ghd258/archive/2005/10/23/260241.html

35120
来自专栏DeveWork

(2013.09更新)最新W3School 离线完整版CHM 电子书下载

最近一直很忙,有网友在《(2013.07)最新W3School 离线完整版CHM 电子书下载》一文评论说W3School 已经有更新了,叫我也更新电子书。忙到现...

22770

扫码关注云+社区

领取腾讯云代金券