折腾jenkins系列(前言)

         近期由于项目需要搞了一段世家近的jenkins,踩了无数的坑,也发现了里面一些比较好玩的东西,特此记录下。

         本文作为此系列博客的第一篇仅说明使用的环境和现状 需求及遇到的问题,后续会详细展开,敬请期待

         环境:     docker V18.09 + jenkins V2.204 + nginx Vxxx

         现状:

                项目是以springboot为架构框架实现的微服务。

                微服务比较多,有时候需要编译某个微服务却需要把整个父pom里面的所有项目编译一遍,效率比较低。

               目前使用jenkins主要使用了git代码同步和maven编译打包 生成镜像及上传。修改编译的模块要进到配置进行相关修改,很是不方便。考虑到后续要交给测试或者运维人员等,故打算研究下这个持续集成领域的老大哥jenkins

         期望的目标:

              1.编译 打包 生成镜像并上传 部署到服务器 一键完成

               2.支持选择指定模块进行上述操作,只编译及打包选择的模块

               3.支持打包编译所有模块

        遇到的问题;

               1.jenkins参数化构建第一次涉及,好在网上资料比较多,看一看操作下还可以,比较好的地方是参数化构建里面定义的参数可以直接在构建步骤中通过${param} 使用

               2.jenkins默认带的参数只能做单选,多选需要使用jenkins插件

               3.每一个步骤(shell)中定义的变量只能在当前步骤生效,即使通过export加入到环境变量在下一个shell打印的环境变量也不会出现,也就是说步骤中通过shell定义的变量即使是环境变量也是有使用范围限制的

              4.有成熟的jenkins插件可以实现多选的功能,但需要做更多操作的话需要编写groovy脚本,如果对该语言不熟悉的话学习成本比较高

      

猜你喜欢

转载自blog.csdn.net/u010361276/article/details/103940381