嘿,我用Drone做CI

编程入门 行业动态 更新时间:2024-10-05 09:28:28

嘿,<a href=https://www.elefans.com/category/jswz/34/1770151.html style=我用Drone做CI"/>

嘿,我用Drone做CI

基于Drone来做CI/CD,个人感觉真的很棒,相对于业界老大哥jekins,我更喜欢drone,相比较而言,我觉得它主要有以下优势

  1. 插件不需要额外管理
  2. 基于yaml文件,易编写,配置可以进行版本管理
  3. 可以根据不同的条件进行构建
  4. 更人性化的UI界面

对于我们后端的java项目而言,我们CI要做什么呢?

一般提交代码流程如下

  1. Clone 项目到本地,创建一个分支来完成新功能的开发, git checkout -b feature/sync-status。在这个分支修改一些代码
  2. git add .,书写符合规范的 Commit 并提交代码, git commit -m "sync article status”
  3. 将代码推送到代码库的对应分支, git push origin feature/sync-status
  4. 如果功能已经开发完毕,可以向 Develop(或者Master) 分支发起一个 Pull Request,并让项目的负责人 Code Review
  5. Review 通过后,项目负责人将分支合并入主干分支

从上图中可以看到当我们提交代码时,会执行整个CI流程,需要注意的有以下2点

  1. 执行build或者unit test的时候,如果失败,会发送消息到Slack,这个时候开发人员就能注意到这个问题,当然也可以使用发送邮件或者微信的方式
  2. 执行SonarQube check的时候,如果存在问题会将结果回写到github中,开发人员就会去看这个问题

先看下SonarQube回写到github中的的检查结果是怎样的

当sonar qube检测完成之后,会将检查结果通过oauth的方式发送给github,所以你需要在github中创建Personal access token(这个要记下来)

当你激活你的代码仓库时,Drone会自动将Webhooks添加到版本控制系统中,例如GitHub,而无需手动配置

kind: pipeline
name: defaultsteps:
# build for push and pull_request
- name: build-primage: maven:latestpull: if-not-existscommands:- mvn clean org.jacoco:jacoco-maven-plugin:prepare-agent install -Dmaven.test.skip=true -s settings.xmlwhen:branch:- feature/*- issue/*- developeve

更多推荐

嘿,我用Drone做CI

本文发布于:2024-03-07 17:52:12,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1718505.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:我用   Drone   CI

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!