Home » Code » Linux » Jenkins持续集成

Jenkins持续集成

首先需要理解概念,持续集成(continuous integration)指的是,频繁地(一天多次)将代码集成到主干。与之相关的还有两个概念:持续交付(continuous delivery)与持续部署(continuous deployment)。详细可参考这篇文章

下载启动Jenkins非常简单,准备好Java环境后直接运行就可以了,诸如这样:nohub java -jar jenkins.war &。详细可查看官网文档。启动后就可以通过http://yourip:8080进行访问(默认使用8080端口),初始账号admin,密码在安装目录(默认:<home folder>/.jenkins)下的secrets/initialAdminPassword文件中。

登录后新建任务->构建一个自由风格的软件项目,源码管理使用git,埴写项目的仓库地址即可(记得在Jenkins所在服务器生成ssh登录密钥并添加到git仓库账号中,否则无法访问git仓库源码)。构建触发器可以是定时拉取,在Poll SCM项目填写,但最好还是使用webhook,在有推送的时候通知构建。我的项目是在开源中国的码云上,有webhook插件可以安装(见此),其他一些代码托管网站一般也有提供。

构建操作我的比较简单,直接同步代码到网站目录而已,而且还是跟Jenkins同台机器。这是一个Laravel项目,需要排除一些目录与文件。

构建后的操作,进行存档,并进行邮件通知。注意这个是失败才通知,我想要每次都通知,暂时不知道怎么搞,难道要写脚本?存档我是把全部文件进行存档,需要写**,只写一个*只会存档工作目录下的文件,不包含子目录及子目录下的文件。存档文件保存在jobs/{$PROJECT_NAME}/builds/{$BUILD_VERSION}/archive。

至此,当往远程仓库push代码时,就会触发构建,下载最新的代码,并同步到网站目录,最后进行存档。

如果想要进行回滚到某个构建需要怎么做?等搞好了再来更新!

Leave a Reply

Your email address will not be published. Required fields are marked *

*

Time limit is exhausted. Please reload CAPTCHA.