自动上线流程

自动上线流程_第1张图片

第一步:开发将完成的代码使用git push推送到代码库中,代码库采用的是gitlab
所有程序员开发的代码都需要发送到gitlab中,在gitlab中保存的是全部的项目代码,在gitlab中可以记录代码的每次更改,而且可以恢复到某个历史版本中。
在开发人员的主机上,仅仅需要安装git客户端,就可以连接和使用gitlab作为代码版本库。

第二步:代码中代码发生改变后自动触发钩子函数,然后通知jenkins有新代码产生
钩子功能就是我们向gitlab远程仓库push代码的时候,jenkins能立刻知道我们提交了代码。 钩子的实现原理是在远端仓库上配置一个Jenkins服务器的接口地址,当本地向远端仓库发起push时,远端仓库会向配置的Jenkins服务器的接口地址发起一个带参数的请求,jenkins收到后开始工作。
这里需要安装Webhook插件,然后配置上对应的触发器,这样就可以实现当有新代码以后,通过钩子触发配置的触发器,通过触发器执行具体的操作。

第三步:jenkins收到事件通知以后,会用过gitlab插件从代码块中拉取代码
这里需要安装gitlab插件,并创建一个job,在这个job中要执行的也操作就是从gitlab拉取代码。
第二步的钩子关联的触发器就会触发构建这个job,这个job执行完成以后,代码就从gitlab拉取下来了。

第四步:jenkins拉取代码以后,调用maven编译构建项目
第三步拉取下来的项目代码是都是程序java源码,需要调用maven插件对源码程序进行编译

第五步:jenkins调用ansible部署项目到目标服务器上线
编译好之后,需要调用ansible连链接远程主机,将远程主机上的源码的项目程序备份,并将新编译生成的包发送到远程服务器,最终完成新版本代码上线。

你可能感兴趣的:(自动上线流程)