CentOS Jenkins配置中如何使用脚本
导读:CentOS环境下Jenkins配置中使用脚本的常见方式 1. Freestyle Project执行Shell脚本 Freestyle Project是Jenkins的传统项目类型,适合简单的脚本执行需求。 创建项目:登录Jenkins...
CentOS环境下Jenkins配置中使用脚本的常见方式
1. Freestyle Project执行Shell脚本
Freestyle Project是Jenkins的传统项目类型,适合简单的脚本执行需求。
- 创建项目:登录Jenkins控制台,点击“New Item”,输入项目名称,选择“Freestyle project”类型并完成创建。
- 配置构建步骤:在项目配置页面的“Build” section,点击“Add build step”,选择“Execute shell”(针对Shell脚本)或“Execute Windows batch command”(针对批处理脚本)。
- 编写脚本:在弹出的文本框中直接输入脚本内容(如打印信息、安装软件、克隆代码等)。示例如下:
#!/bin/bash echo "Starting build process..." sudo yum update -y # 更新系统包(需确保Jenkins用户有sudo权限) git clone https://github.com/example/repo.git # 克隆代码仓库 cd repo & & mvn clean install # 进入项目目录并执行Maven构建
- 触发与查看结果:保存配置后,点击“Build Now”手动触发构建,或在“Build Triggers” section配置定时构建(如
H/5 * * * *
表示每5分钟构建一次)。构建完成后,可通过“Build History”查看日志,确认脚本执行结果。
2. Pipeline脚本(声明式/脚本式)
Pipeline是Jenkins的自动化流程编排工具,支持通过代码定义构建、测试、部署全流程,适合复杂项目。
- 创建Pipeline项目:在Jenkins控制台点击“New Item”,输入项目名称,选择“Pipeline”类型并创建。
- 编写Pipeline脚本:有两种方式添加脚本:
- 直接编写(Pipeline script):在项目配置的“Pipeline” section,选择“Pipeline script”,直接输入Groovy脚本。示例如下:
pipeline { agent any // 使用任意可用的Jenkins节点 stages { stage('Build') { steps { echo 'Compiling code...' sh './gradlew build' // 执行Gradle构建 } } stage('Test') { steps { echo 'Running tests...' sh './gradlew test' // 执行单元测试 } } stage('Deploy') { steps { echo 'Deploying to production...' sh 'ansible-playbook deploy.yml' # 使用Ansible部署 } } } }
- 从SCM获取(Pipeline script from SCM):选择“Pipeline script from SCM”,指定代码仓库(如Git)的URL、分支及Jenkinsfile路径(通常为项目根目录下的
Jenkinsfile
)。这种方式将脚本与代码版本绑定,便于统一管理。
- 直接编写(Pipeline script):在项目配置的“Pipeline” section,选择“Pipeline script”,直接输入Groovy脚本。示例如下:
- 运行与监控:保存配置后,点击“Build Now”触发构建。构建过程中,可通过“Console Output”查看详细日志,或在“Pipeline”页面可视化查看各阶段执行状态。
3. 通过SSH插件远程执行脚本
若需要在远程CentOS服务器上执行脚本(如部署到测试/生产环境),可使用Jenkins的SSH插件。
- 安装SSH插件:进入Jenkins控制台的“Manage Jenkins” -> “Manage Plugins”,在“Available” tab搜索“SSH Plugin”,点击“Install without restart”。
- 配置SSH凭据:进入“Manage Jenkins” ->
“Manage Credentials”,点击“System” ->
“Global credentials”,选择“Add Credentials”,添加SSH私钥(类型选择“SSH Username with private key”),并关联对应的用户名(如
root
或部署用户)。 - 创建远程任务:在Jenkins中创建Freestyle Project,进入“Build” section,点击“Add build step”,选择“Execute shell script on remote host using ssh”。
- 配置远程执行:在“SSH Remote Hosts”中添加远程主机信息(如
192.168.1.100:22
),选择之前配置的SSH凭据,在“Command”输入框中编写远程执行的脚本(如重启服务、更新代码等)。示例如下:cd /var/www/app & & git pull origin main # 拉取最新代码 systemctl restart nginx # 重启Nginx服务
- 触发与验证:保存配置后,点击“Build Now”即可远程执行脚本。构建日志会显示远程命令的执行结果,便于排查问题。
注意事项
- 权限问题:确保Jenkins用户(通常为
jenkins
)对脚本执行目录、代码仓库、目标服务器有足够的访问权限(如通过sudo
或调整目录权限)。 - 环境变量:若脚本依赖特定环境变量(如
JAVA_HOME
、PATH
),需在Jenkins的全局配置(“Manage Jenkins” -> “Configure System”)或项目配置中添加,避免脚本因环境缺失而失败。 - 日志管理:定期清理构建日志(位于
/var/log/jenkins/jenkins.log
),避免日志过大占用磁盘空间;对于敏感信息(如密码、私钥),建议使用Jenkins的“Mask Passwords”插件隐藏。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: CentOS Jenkins配置中如何使用脚本
本文地址: https://pptw.com/jishu/725140.html