Linux安装ossutil工具且在Jenkins中执行shell脚本下载文件

测试中遇到想通过Jenkins下载OSS桶上的文件,要先在linux上安装ossutil工具,记录安装过程如下:

一、下载安装ossutil,使用命令

1.下载:wget https://gosspublic.alicdn.com/ossutil/1.7.13/ossutil64

2.一定要赋权限:chmod 755 ossutil64,不然会提示权限不足

3.配置文件: ./ossutil64 config

输入accessKeyID、accessKeySecret、endpoint,stsToken我置为空

二、判断是否安装成功

输入:./ossutil64 返回所有命令表示安装成功

命令:

//上传文件

./ossutil64 cp 上传文件名 oss://路径

下载文件

./ossutil64 cp oss://路径 下载路径

三、在Jenkins中使用shell脚本下载文件

bash 复制代码
#!/bin/bash

# 阿里云ossutil工具路径
ossutil_path="/var/jenkins_home/ossutil64"

# OSS桶的地址
oss_bucket="oss://lattebank-bettercds-sit"

# 文件在OSS桶中的路径
oss_file_path="product/huanbeiandroid/sit/huanbeiandroid-sit-10417-5.29.0-202401171819-sec-resigned.apk"

# Jenkins的工作空间目录
local_dir="$WORKSPACE/build"

# 使用ossutil工具从OSS桶下载文件
$ossutil_path -c /var/jenkins_home/.ossutilconfig cp "$oss_bucket/$oss_file_path" "$local_dir"
# 检查是否下载成功
if [ $? -eq 0 ]; then
    echo "File downloaded successfully."
else
    echo "Failed to download file."
    exit 1
fi

四、遇到的问题:

在linux服务器上ossutil下载命令可以正常使用,但是通过Jenkins调用的时候就报错了,原因是通过docker部署的Jenkins,在/var/jenkins_home中运行Jenkins,shell脚本找ossutil文件肯定是找不到的,需要copy ossutil64和.ossutilconfig到/var/jenkins_home的源目录:/root/jks_home中

查看启动的容器:docker ps -a

查看Jenkins 挂载信息:docker inspect XXX

相关推荐
nxb5567 小时前
haproxy算法,ip透传,自定义haproxy错误页面
运维·服务器
Nebula嵌入式7 小时前
【C语言】09-深入解析main函数
linux·c语言·开发语言·嵌入式
AKAMAI7 小时前
你的源服务器可能是你做出的最昂贵决定
运维·人工智能·云计算
Dxy12393102168 小时前
Linux 编译安装 Python 3.12.10(多版本共存,不破坏系统Python)
linux·运维·python
技术深耕者9 小时前
AI Agent从演示到生产:企业进入“自动化层”时代
运维·人工智能·自动化
xz驱动分享9 小时前
Linux DMA 子系统学习笔记
linux·dma·rk3588·嵌入式软件
w678200710 小时前
Prisma不能优雅的支持DTO,试试Vona ORM吧
linux·运维·ubuntu
APItesterCris11 小时前
Open Claw 实战教程:5 分钟搭建京东商品自动化监控与数据分析系统
大数据·运维·数据库·数据仓库·自动化
Darkwanderor11 小时前
Linux系统编程实战项目:模拟实现shell
linux·c++
便利店102411 小时前
TCP 为什么有时故意跑不快?拥塞控制与滑动窗口一次讲清
服务器·网络协议·tcp·拥塞控制