CI开发的最佳实践是什么?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CI开发的最佳实践是什么?相关的知识,希望对你有一定的参考价值。

我们正在开始为我公司的系统开发CI工作流程。

目前我们只做几个基本任务,比如构建,测试和上传到Nexus

技术堆栈是一个Java项目,它构建在GradleJenkins构建。

目前我正在使用一些基本的Groovy脚本来制作我们需要的东西,但每次我将我更新的代码复制并粘贴到Jenkins并从Jenkins UI运行工作以查看结果,对我而言似乎不是开发此类自动化代码的非常好的方法。

我的问题是,构建和运行Jenkins工作的最佳做​​法是什么?

  • 是否有可能直接从Intellij运行?
  • 我们是否需要创建一个Jenkins项目,该项目应保存为存储库,然后将其部署到Jenkins机器上?
  • 我们是否需要使用一些Intellij插件才能与Jenkins合作?

欢迎更多最佳实践:)

答案

Jenkins有一个API - 所以你可以做任何你想做的事!

但总的来说,对于中小型团队,最好使用Jenkinsfile并让Jenkins从SCM中提取代码更改(或拉取请求)并触发构建。如果你的SCM支持这个,你也可以配置钩子来触发构建(Github和bitbucket支持这个)。

如果你最终将你的文物推到码头图像,我强烈推荐docker multi-stage builds

如果你是CI / CD的新手 - Atlassian有很多很好的资源https://www.atlassian.com/continuous-delivery/principles/continuous-integration-vs-delivery-vs-deployment

以上是关于CI开发的最佳实践是什么?的主要内容,如果未能解决你的问题,请参考以下文章

持续集成CI/CD之CD的完整版最佳实践

持续集成CI&CD之CI的完整版最佳实践

每周一书《OpenStack最佳实践——测试与CI/CD》留言送书

Gitlab CI/CD 中设置 Python 虚拟环境的最佳实践是啥

AWS Lambda - 在 CI/CD 管道中版本控制和提升 lambda 的最佳实践是啥

android片段-数据传递-最佳实践[重复]