news 2026/4/15 22:01:01

jenkins通过API获取FileBrowser管理的工程代码到工作空间

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
jenkins通过API获取FileBrowser管理的工程代码到工作空间

gogs临时故障,将代码临时存放到FileBrowser上进行拉取,保证后面的构建

#!/bin/bash # FileBrowser 源码下载和解压脚本 # 用于替代 Jenkins FreeStyle 项目的源码管理 set -e # 遇到错误时退出 # 配置参数 FILE_BROWSER_URL="http://192.168.1.11:81/api/" FILE_BROWSER_USERNAME="username" FILE_BROWSER_PASSWORD="password" SERVER_FILE_PATH="/code/wi-master.zip" LOCAL_ZIP_FILE="wi-master.zip" EXTRACT_DIR="extracted_source" TARGET_SOURCE_DIR="wi-master" # 清理之前的工作目录 echo "清理工作空间..." rm -rf "$LOCAL_ZIP_FILE" "$EXTRACT_DIR" # 登录 FileBrowser 获取 token echo "登录 FileBrowser..." TOKEN=$(curl -s -X POST \ -H "Content-Type: application/json" \ -d "{\"username\":\"$FILE_BROWSER_USERNAME\",\"password\":\"$FILE_BROWSER_PASSWORD\",\"recaptcha\":\"\"}" \ "${FILE_BROWSER_URL}login") if [ -z "$TOKEN" ] || [ "$TOKEN" = "null" ]; then echo "登录失败,无法获取 token" exit 1 fi echo "成功获取 token" # 下载源码包 echo "开始下载源码包: $SERVER_FILE_PATH" curl -s -H "Accept: */*" \ -H "User-Agent: Mozilla/5.0" \ "${FILE_BROWSER_URL}raw${SERVER_FILE_PATH}?auth=${TOKEN}" \ -o "$LOCAL_ZIP_FILE" # 检查文件是否下载成功 if [ ! -f "$LOCAL_ZIP_FILE" ]; then echo "文件下载失败" exit 1 fi echo "文件下载成功,大小: $(ls -lh "$LOCAL_ZIP_FILE" | awk '{print $5}')" # 创建解压目录 mkdir -p "$EXTRACT_DIR" # 解压源码包 echo "解压源码包..." unzip -q "$LOCAL_ZIP_FILE" -d "$EXTRACT_DIR" # 检查解压结果 if [ ! -d "$EXTRACT_DIR/$TARGET_SOURCE_DIR" ]; then echo "警告: 期望的源码目录 '$TARGET_SOURCE_DIR' 不存在" echo "实际解压的目录结构:" ls -la "$EXTRACT_DIR" exit 1 fi # 将源码移动到当前目录 echo "将源码移动到工作目录..." cp -r "$EXTRACT_DIR/$TARGET_SOURCE_DIR"/* . # 显示源码结构 echo "源码目录结构:" find . -maxdepth 3 -type f | head -10 # 清理临时文件 echo "清理临时文件..." rm -rf "$LOCAL_ZIP_FILE" "$EXTRACT_DIR" echo "源码下载和解压完成!"

将jenkins源码管理设置成无,构建里增加构建步骤添加Execute shell并移动到第一个,然后填入上面的代码,并修改为自己的url 账号 路径即可使用。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/15 16:24:00

34、Shell编程中的流程控制与位置参数使用

Shell编程中的流程控制与位置参数使用 1. 流程控制之case语句 在编程里,流程控制是非常重要的一部分。之前在处理用户选择时,我们会用一系列 if 命令来判断用户选了哪个选项。不过,这种结构在程序里经常出现,所以很多编程语言(像shell)都提供了用于多选择决策的流程控…

作者头像 李华
网站建设 2026/4/14 16:49:43

揭秘边缘端Agent数据持久化难题:4步实现低功耗高可靠存储

第一章:边缘端Agent数据持久化的挑战与意义在物联网和边缘计算快速发展的背景下,边缘端Agent作为连接终端设备与云端服务的核心组件,承担着数据采集、本地处理与状态同步等关键任务。由于边缘设备常面临网络不稳定、资源受限和突发断电等问题…

作者头像 李华
网站建设 2026/4/7 20:26:18

从采集到洞察:工业互联网Agent数据分析的7个必知步骤

第一章:工业互联网Agent数据分析的核心价值在工业互联网体系中,Agent作为部署于边缘设备或关键节点的智能代理程序,承担着数据采集、实时处理与本地决策的重要职责。其产生的数据不仅涵盖设备运行状态、环境参数和操作日志,还包含…

作者头像 李华
网站建设 2026/4/11 23:12:27

别再盲目部署!边缘AI推理速度优化的6大实战误区与避坑指南

第一章:边缘AI推理速度优化的核心挑战在边缘计算场景中,AI模型的推理速度直接影响用户体验与系统响应能力。受限于边缘设备的算力、内存和功耗,如何在资源约束下实现高效推理成为关键难题。硬件资源受限带来的性能瓶颈 边缘设备如树莓派、Jet…

作者头像 李华
网站建设 2026/4/14 19:52:01

从零开始:Keil5下载与STM32项目实战指南

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 开发一个基于STM32的LED闪烁项目,包含以下步骤:1. 提供Keil5的官方下载链接和安装指南;2. 配置Keil5开发环境,包括安装STM32支持包&a…

作者头像 李华