Jenkins - 构建项目的类型
Jenkis 中自动构建项目的类型有很多,常用的有以下三种:
- 自由风格软件项目 (FreeStyle Project)
- Maven项目
- 流水线项目(Pipeline Project)
每种类型的构建其实都可以完成一样的构建过程与结果,只是在操作方式、灵活度等方面有所区别,在实际
开发中可以根据自己的需求和习惯来选择。(PS:个人推荐使用流水线类型,因为灵活度非常高)
构建自由风格软件项目
过程: 拉取代码 -> 编译 -> 部署到tomcat
部署到 tomcat要kenkins 下载一个插件:
- 源码管理
2.构建
构建后操作:
具体填写:
构建时一直报错:
排查了好久才找到原因:
conf/tomcat-users.xml 配置的时候少了一个分隔符
3.构建成功
Windows 访问:
MAVEN 项目
需要安装插件:
与自由风格的不同点如下,其他都一样
Pipeline 项目
下载插件:PipeLine
拉取代码
创建一个流水线项目,其他位置不用填,在流水线 位置做如下操作
生成器片段可以帮我们生成scripts:
其他保持默认
生成脚本:
添加到pipeline scripts:
pipeline {
agent any
stages {
stage('pull code') {
steps {
# 生成器片段生成的scripts
checkout([$class: 'GitSCM', branches: [[name: '*/master']], extensions: [], userRemoteConfigs: [[credentialsId: 'ee60cdd4-119c-4e3c-9814-ddd54b5b81ff', url: 'git@192.168.184.149:test_group/web_demo.git']]])
}
}
}
}
Build
生成器片段:
Pipeline scripts:
deploy
注意选择deploy:xxx 就可以了,其他和其他类型的构建,再配置发布容器的时候一致
最终的Pipeline scripts:
pipeline {
agent any
stages {
stage('pull code') {
steps {
checkout([$class: 'GitSCM', branches: [[name: '*/master']], extensions: [], userRemoteConfigs: [[credentialsId: 'ee60cdd4-119c-4e3c-9814-ddd54b5b81ff', url: 'git@192.168.184.149:test_group/web_demo.git']]])
}
}
stage('build project') {
steps {
sh 'mvn clean package'
}
}
stage('deploy project') {
# 部署
steps {
deploy adapters: [tomcat8(credentialsId: '8d65df2f-94f0-4d74-b775-dbe807b2b2d9', path: '', url: 'http://192.168.184.151:8080/')], contextPath: null, war: 'target/*.war'
}
}
}
}
Pipeline Scripts from SCM
之前我们都是在Jenkins的UI 界面写Pipeline代码,这样不方便脚本维护,建议把Pipeline脚本放在项目中,一起进行版本控制
在项目中添加scripts:
Jenkins - PipeLine - 高级项目选项
本文来自博客园,作者:chuangzhou,转载请注明原文链接:https://www.cnblogs.com/czzz/p/15996665.html