运维|devops|jenkins构建分支选择及执行日志展示
运维|devops|jenkins构建分支选择及执行日志展示基于 jenkins Version 2.541.3 实操案例主要操作分支选择git提交日志展示远程shell执行日志展示展示应用日志分支选择分支的选择,核心插件 Git Parameter Plugin插件安装分支参数配置拉取git源码地
运维|devops|jenkins构建分支选择及执行日志展示
基于 jenkins Version 2.541.3 实操案例主要操作
分支选择
git提交日志展示
远程shell执行日志展示
展示应用日志分支选择
分支的选择,核心插件 Git Parameter Plugin插件安装

分支参数配置

拉取git源码地方
将上面参数名BRANCH,录入到Branches to build 地方(${BRANCH})
构建前后功能变化
- 配置前

- 配置后

git提交日志展示

执行命令日志结果展示
插件ssh安装

系统配置ssh

任务配置调整
- 点击 【增加构建步骤】 不是 【增加构建后操作步骤】

先把【SSH Server】配置好,然后再继续配置【SSH site】。
注意 SSH Publishers 里面【Exec command】 为空- SSH Server

- SSH site

#!/bin/bash
app_name="app"
app_pattern="${app_name}-*.jar"
port=8081
temp_path=/usr/local/temp
deploy_path=/usr/local
JA VA_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 ((i=0;i<10;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 "ja va -jar" | grep "${app_name}" | grep -v grep | awk '{print $2}')
if [ -n "${run_pid}" ]; then
log "终止旧进程 ${run_pid}"
kill -15 "${run_pid}"
for ((i=0;i<8;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 ${JA VA_HOME}/bin/ja va -jar
-Dserver.port=${port}
-Xmx512m -Xms256m
"${target_jar}" >> "${log_file}" 2>&1 &
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 命令的方式来实现。
配置如下

命令
#!/bin/bash
# 等待5秒,让服务完成启动输出日志
sleep 5
# 查看最后300行日志,自行调整行数
tail -n 300 /data/log/app.log展示结果

Blender 是一款免费开源、跨平台的专业 3D 创作软件,集建模、动画、渲染、视频编辑与视觉合成等功能于一体,广泛应用于影视动画、游戏设计和建筑可视化等领域。软件支持 Cycles 物理渲染器与 Eevee 实时渲染引擎,并提供多边形建模、骨骼绑定、物理模拟等专业工具。Blender 兼容 Windows、macOS 和 Linux 系统,安装包轻巧、运行流畅,依托活跃的全球开发者社区持续更新,是从初学者到专业创作者都值得选择的正版 3D 创作工具。
赤友清理大师是一款为 Mac 设计的智能清理优化工具,可精准扫描垃圾、大文件、重复文件等,释放磁盘空间。做扫描整理、文字提取和表格转换时,它能把识别后的处理步骤接得更顺,资料录入这类场景会省下不少时间。
Blender 是一款免费开源、跨平台的专业 3D 创作软件,集建模、动画、渲染、视频编辑与视觉合成等功能于一体,广泛应用于影视动画、游戏设计和建筑可视化等领域。软件支持 Cycles 物理渲染器与 Eevee 实时渲染引擎,并提供多边形建模、骨骼绑定、物理模拟等专业工具。Blender 兼容 Windows、macOS 和 Linux 系统,安装包轻巧、运行流畅,依托活跃的全球开发者社区持续更新,是从初学者到专业创作者都值得选择的正版 3D 创作工具。
Windows 10 是一款微软推出的经典操作系统,拥有硬件兼容性与多任务处理能力。它更偏向把系统状态查看和常用调节动作放在一起,适合需要持续观察和微调设备状态的场景。
极度公式是一款跨平台专业LaTeX公式识别编辑软件,支持OCR公式识别和多平台编辑。和使用说明,避免使用,享受完整功能与稳定支持。做扫描整理、文字提取和表格转换时,它能把识别后的处理步骤接得更顺,资料录入这类场景会省下不少时间。














