运维|devops|jenkins构建分支选择及执行日志展示 运维|devops|jenkins构建分支选择及执行日志展示 目录1. 运维|devops|jenkins构建分支选择及执行日志展示1.1 主要操作1.2 分支选择1.2.1 插件安装1.2.2 分支参数配置1.2.3 拉取git源码地方1.2.4 构建前后功能变化1.3 git提交日志展示1.4 执行命令日志结果展示1.4.1 插件ssh安装1.4.2 系统配置ssh1.4.3 任务配置调整1.4.4 执行命令日志1.5 展示应用日志1.5.1 配置如下1.5.2 命令1.5.3 展示结果基于 jenkins Version 2.541.3 实操案例主要操作text分支选择 git提交日志展示 远程shell执行日志展示 展示应用日志分支选择分支的选择核心插件 Git Parameter Plugin插件安装分支参数配置拉取git源码地方将上面参数名BRANCH录入到Branches to build 地方(${BRANCH})构建前后功能变化配置前配置后git提交日志展示执行命令日志结果展示插件ssh安装系统配置ssh任务配置调整点击 【增加构建步骤】 不是 【增加构建后操作步骤】先配置【SSH Server】再配置 【SSH site】注意 SSH Publishers 里面【Exec command】 为空SSH ServerSSH site配置脚本如下:bash#!/bin/bash app_nameapp app_pattern${app_name}-*.jar port8081 temp_path/usr/local/temp deploy_path/usr/local JAVA_HOME/usr/local/jdk-21.0.11 log_path/data/log log_file${log_path}/app.log deploy_log${log_path}/deploy-app-$(date %Y%m%d_%H%M%S).log mkdir -p ${log_path} # 定义日志函数同时输出到控制台和日志文件带时间戳 log() { echo $(date %Y-%m-%d %H:%M:%S) $* | tee -a ${deploy_log} } log 部署开始 ${app_name} # 等待Jar包上传完成最多10s new_jar for ((i0;i10;i)); do new_jar$(find ${temp_path} -maxdepth 1 -name ${app_pattern} | head -1) [ -f ${new_jar} ] break log 等待Jar包上传 $i/10 sleep 1 done [ ! -f ${new_jar} ] log 错误未找到Jar包 exit 1 jar_name$(basename ${new_jar}) target_jar${deploy_path}/${jar_name} log 待部署包${new_jar} # 停止旧进程并等待进程消亡 run_pid$(ps -ef | grep java -jar | grep ${app_name} | grep -v grep | awk {print $2}) if [ -n ${run_pid} ]; then log 终止旧进程 ${run_pid} kill -15 ${run_pid} for ((i0;i8;i)); do ! ps -p ${run_pid} /dev/null break log 等待旧进程退出... sleep 2 done if ps -p ${run_pid} /dev/null; then log 超时强制杀死 ${run_pid} kill -9 ${run_pid} sleep 2 fi fi # 端口兜底释放 while lsof -t -i:${port} /dev/null; do log 端口${port}占用等待释放 sleep 2 done # 更新jar rm -f ${deploy_path}/${app_pattern} mv ${new_jar} ${target_jar} # 启动服务 log 启动应用 port:${port} nohup ${JAVA_HOME}/bin/java -jar \ -Dserver.port${port} \ -Xmx512m -Xms256m \ ${target_jar} ${log_file} 21 new_pid$! log 新进程PID: ${new_pid} sleep 3 if ! ps -p ${new_pid} /dev/null; then log 警告进程启动异常请查看日志 ${log_file} fi rm -rf ${temp_path:?}/* log 部署完成 exit 0执行命令日志展示应用日志通过增加ssh 命令方式配置如下命令bash#!/bin/bash # 等待5秒让服务完成启动输出日志 sleep 5 # 查看最后300行日志自行调整行数 tail -n 300 /data/log/app.log展示结果

相关新闻

最新新闻

游戏音频提取完全指南:5步轻松解密ACB/AWB到WAV格式

游戏音频提取完全指南:5步轻松解密ACB/AWB到WAV格式

游戏音频提取完全指南:5步轻松解密ACB/AWB到WAV格式 【免费下载链接】acbDecrypter 项目地址: https://gitcode.com/gh_mirrors/ac/acbDecrypter acbDecrypter是一款专业的游戏音频解密工具,专门用于提取和转换游戏中的加密音频文件。无论你是游…

2026/7/29 3:57:53
STM32 HAL库实现SPWM正弦波生成:从原理到工程实践

STM32 HAL库实现SPWM正弦波生成:从原理到工程实践

1. 项目概述与核心价值最近在做一个需要精密交流信号源的小项目,手头正好有块STM32F103的开发板,就琢磨着能不能直接用MCU生成一个干净的正弦波。直接上DAC输出阶梯波当然可以,但想要波形质量好、频率稳定,还得上SPWM(…

2026/7/29 3:57:53
基于Bluno Beetle的避障小车:从硬件搭建、滤波算法到蓝牙调试全解析

基于Bluno Beetle的避障小车:从硬件搭建、滤波算法到蓝牙调试全解析

1. 项目缘起:从“玩具”到“学习平台”的转变最近在整理工作室的物料,翻出来几个之前玩智能硬件剩下的Bluno Beetle主控板。这玩意儿个头小得像个硬币,但集成了蓝牙4.0和Arduino兼容的核心,当年买来是想做点穿戴式小玩意儿&#x…

2026/7/29 3:57:53
2026年企业薪酬体系如何科学设计?这5家专业公司值得关注

2026年企业薪酬体系如何科学设计?这5家专业公司值得关注

在2026年的人才市场竞争中,薪酬体系早已不是简单的“发多少钱”的问题,而是企业战略落地的核心杠杆。然而,超过60%的企业HR在年度薪酬设计时都面临同样的困境:报告数据不准、更新太慢、缺乏定制化解读,导致薪酬方案要么…

2026/7/29 3:57:53
NBM7100A双级DC-DC架构在物联网低功耗设计中的应用

NBM7100A双级DC-DC架构在物联网低功耗设计中的应用

1. 项目背景与核心挑战在物联网终端设备设计中,CR2032等不可充电纽扣电池的寿命瓶颈一直是困扰工程师的难题。这类电池的典型容量在220mAh左右,当负载电流超过10mA时,输出电压会急剧下降。而现代低功耗无线模块(如BLE、LoRa&#…

2026/7/29 3:57:53
SpringBoot+Vue2智能垃圾分类系统开发实战

SpringBoot+Vue2智能垃圾分类系统开发实战

1. 项目概述:SpringBoot智能垃圾分类管理系统的核心价值这套基于SpringBootVue2的智能垃圾分类管理系统源码,是我在参与某市智慧社区建设项目时沉淀下来的实战成果。系统通过图像识别与数据联动,实现了从垃圾投放到清运调度的全流程数字化管理…

2026/7/29 3:52:53

月新闻