Jenkins一个Java开源项目
- 部署和运行需要安装Java 8以上环境。
- 作为一个CI持续集成服务器,Jenkins可以从版本控制系统自动拉取最新的代码,构建和进行测试,并将过程信息通知到开发人员。
项目源代码修改的检测,jenkins能够从项目的Subversion/CVS生成最近修改的集合列表,且不会增加Subversion/CVS Repository的负载。
具体可以做什么:
- 持续的软件版本发布/测试项目。
- 监控外部调用执行的工作。
Jenkins下载并运行
docker安装(另一篇文章分享)
- 下载 Jenkins,打开终端进入到下载目录.
- 运行命令 java -jar jenkins.war --httpPort=8080.
- 打开浏览器进入链接 http://localhost:8080.
开始使用 Jenkins!
Jenkins Pipeline
- 是一套插件,将持续交付的实现和实施集成到 Jenkins 中。
- 一套可扩展的工具,用于将“简单到复杂”的交付流程实现为“持续交付即代码”。
- 被写入到一个文本文件Jenkinsfile 中,该文件可以被放入项目的源代码控制库中。
Jenkinsfile 示例
Pipelines 由多个步骤组成,允许你构建、测试和部署应用。 Jenkins Pipeline 允许您使用一种简单的方式组合多个步骤, 以帮助您实现多种类型的自动化构建过程。
可以把“步骤step”看作一个执行单一动作的单一的命令。 当一个步骤运行成功时继续运行下一个步骤。 当任何一个步骤执行失败时,Pipeline 的执行结果也为失败。
当所有的步骤都执行完成并且为成功时,Pipeline 的执行结果为成功
- 文件命名为 Jenkinsfile
Jenkinsfile (Declarative Pipeline)
pipeline {
agent { docker 'maven:3.3.3' }
stages {
stage('build') {
steps {
sh 'mvn --version'
sh 'echo "Hello World"'
}}}
- 单击Jenkins中的 New Item 菜单
- 新工程命名,选择 Multibranch Pipeline
- 单击 Add Source 按钮,选择您想要使用的仓库类型并填写详细信息.
- 单击 Save 按钮,Pipeline运行
修改 Jenkinsfile 以便应用在您自己的项目中。尝试修改 sh 命令,使其与您本地运行的命令相同。
在配置好 Pipeline 之后,Jenkins 会自动检测您仓库中创建的任何新的分支或合并请求。
Jenkins 部署方式
- Jenkins触发式构建:用于开发环境部署,开发人员push代码或者合并代码到gitlab项目的master分支,jenkins就部署代码到对应服务器。
- Jenkins参数化构建:用于测试环境预上线环境部署,开发push代码或者合并代码到gitlab项目的master分支之后,并不会部署代码,而是需要登录到jenkins的web界面,点击构建按钮,传入对应的参数,然后才会部署。
- Jenkins定时构建:用于APP自动打包,定时构建是在参数化构建的基础上添加的,开发人员可以登录jenkins手动传入tag进行打包,如果不手动打包,那么jenkins就每天凌晨从gitlab拉取最新的APP代码打包。
Jenkins 用户架构
- 每当代码改变的时候,这个工具自动的编译和测试你的应用。
- 如果出现错误,立即通知开发者,能够立即修复问题。
- 能自动地监测代码质量和测试覆盖率。可视化的代码质量度量方案能够鼓励开发者不断地改进他们的代码。
閱讀更多 天天面試題 的文章
關鍵字: 下载 可视化技术 Subversion