• java获取jenkins发布版本信息


    一.需求:

    系统cicd发布时首页需要展示jenkins发布的版本和优化内容

    二.思路:

    1.jenkins创建用户和秘钥

    2.找到对应构建任务信息的api

    3.RestTemplate发起http请求

    三.实现:

    1.创建用户和token

    2.查找jenkins API

    1. 创建 Job
    2. POST http://localhost:8080/createItem/api/json?name=xxx
    3. 更新 Job
    4. POST http://localhost:8080/job/{job_name}/config.xml/api/json
    5. 获取 Job
    6. GET http://localhost:8080/job/{job_name}/api/json
    7. 获取 JobXml
    8. GET http://localhost:8080/job/{job_name}/config.xml/api/json
    9. 创建 Build
    10. POST http://localhost:8080/job/{job_name}/build/api/json
    11. 获取 QueueItem
    12. GET http://localhost:8080/queue/item/17/api/json
    13. 获取 Build信息
    14. GET http://localhost:8080/job/test/6/api/json
    15. 获取TXT日志
    16. GET http://localhost:8080/job/test/{build_number}/logText/progressiveText/api/json
    17. 获取 Html 日志
    18. GET http://localhost:8080/job/test/{build_number}/logText/progressiveHtml/api/json

    3.java发起请求

    1. HttpHeaders requestHeaders = new HttpHeaders();
    2. requestHeaders.setAccept(Arrays.asList(MediaType.APPLICATION_JSON));
    3. requestHeaders.add("user-agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.99 Safari/537.36");
    4. HttpEntity entity = new HttpEntity<>(requestHeaders);
    5. String url = "http://localhost:8080/job/finance-admin/lastSuccessfulBuild/api/json?pretty=true";
    6. RestTemplate restTemplate = new RestTemplate();
    7. restTemplate.getInterceptors().add(new BasicAuthenticationInterceptor("deployer", "xxxxxxxxxxxxxxxxxxxxxxx"));
    8. JSONObject result = restTemplate.exchange(url, HttpMethod.GET, entity, JSONObject.class)
    9. .getBody();
    10. List> data = (List>) result.get("actions");
    11. List> restList = (List>) data.get(0).get("parameters");

  • 相关阅读:
    Linux下根目录都包含什么? 每个文件什么作用?
    小美的外卖订单编号---牛客周赛 Round 11
    [redis&jedis&maven]
    基于Java的高校宿舍管理系统设计与实现(源码+lw+部署文档+讲解等)
    libpqxx (PostgreSQL C++ API)——安装使用
    PowerManagerService(一)— 初始化
    ctf:kali工具ettercap,setoolkit
    远程访问技术是什么
    Shell脚本文本三剑客之sed编辑器
    79. 单词搜索
  • 原文地址:https://blog.csdn.net/yiye2017zhangmu/article/details/132717846