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/11 12:56:59

基于Docker搭建kafka集群

在单台服务器上使用 Docker Compose 部署 Kafka 3.7 KRaft 集群(3 节点) 。所有 3 个 Kafka 节点(combined mode:broker controller)运行在同一台物理机上,通过不同端口区分,适用于开发、测试或…

作者头像 李华
网站建设 2026/3/25 7:44:25

电商网站商品图片选择器实战开发指南

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 开发一个电商后台的商品图片选择器,要求:1. 支持同时上传最多20张商品图片 2. 图片自动压缩至800px宽度 3. 生成不同尺寸缩略图 4. 实现图片排序功能 5. 支持…

作者头像 李华
网站建设 2026/4/5 15:09:29

揭秘云原生Agent崩溃真相:3步完成自动化故障恢复

第一章:揭秘云原生Agent崩溃真相:3步完成自动化故障恢复 在云原生环境中,Agent作为连接控制平面与工作负载的关键组件,频繁因资源争用、网络波动或配置异常导致崩溃。手动介入不仅响应滞后,还可能扩大故障影响面。实现…

作者头像 李华
网站建设 2026/4/15 11:41:37

新手必看:Makefile报错‘no rule to make target‘完全指南

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 开发一个面向新手的Makefile教学工具,要求:1. 解释Makefile基本概念;2. 用简单示例演示no rule to make target错误;3. 提供分步解决…

作者头像 李华
网站建设 2026/4/12 9:54:05

从数据采集到干预建议,一文讲透教育 Agent 的7步学情分析闭环

第一章:教育 Agent 学情分析的核心价值与演进路径在人工智能驱动教育变革的背景下,教育 Agent 作为智能化教学系统的核心组件,正逐步实现从“辅助工具”向“认知伙伴”的角色跃迁。其核心能力之一——学情分析,已成为精准教学与个…

作者头像 李华
网站建设 2026/4/16 2:29:51

AI如何帮你轻松掌握C语言结构体编程

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 创建一个C语言程序,演示结构体的基本用法。包括定义一个学生结构体,包含姓名、年龄和成绩字段。然后创建一个函数,输入学生信息并打印出来。使用…

作者头像 李华