学无止境,气有浩然!

Jenkins配置http请求github,发布release

  • 前言
  • Jenkins配置
  • github配置
    • 在这里插入图片描述
  • 打完收工!

前言

工作中进行了github迁移,原先的gitlab中配置的JenkinsCI/CD步骤需要发布到Github发布release版本,使用的是http方式,配置pipline用的是groovy脚本。
之前没有从头到尾跟过,这个tokenapi找了半天。各种文档,现在记录一下。


Jenkins配置

  • 首先要确定请求的url,当然这个是要去github上找的,链接:githubUrl

    根据示例配置一下Headerbody即可
  • Jenkins中使用一个插件方法来发送请求,需要安装这个插件,这里不做介绍,具体用法请参考文档
httpRequest consoleLogResponseBody: true, customHeaders: [[maskValue: true, name: 'Authorization', value: "token ${TOKEN} "]], httpMode: 'POST', requestBody: body, responseHandle: 'NONE', url: env.HTTP_URL
  • json方法提可以用groovy里面自带的import groovy.json.JsonOutput
def body = JsonOutput.toJson([tag_name: tagName, target_commitish: commitSha, name: "${tagName} Release", body: bodyMessage, draft: false, prerelease: false])

github配置

  • github中还要配置相关的token们就是请求中使用的,没有这个会报错404,具体目录在个人信息=》setting

  • 拉到最下面有一个Developer Setting

  • 然后找到Personal access tokens,选择Tokens(classic)

  • 点击Generate new token,选择Generate new token(classic)

  • 填入note,这个将会展示在列表,选择scopeExpiration过期时间,生成即可,生成的token需要记住,后面将会不可见。这个token就是前面Jenkins所需要的哪个Token

  • 最后别忘记点一下Configure SSO,选择一下具体的组织即可。这里涉及公司仓库,不好展示。

打完收工!