5 Star 1 Fork 11

OpenCloudOS Stream/kernel

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
download-and-copy-drivers.sh 1.90 KB
一键复制 编辑 原始数据 按行查看 历史
#!/bin/bash
# This script may run at dist/sources/ directory or drivers/thirdparty/ directory.
# "make dist-srpm" will run dist-drivers in dist/Makefile, which will cd to dist/sources/ dir
# to run download-and-copy-drivers.sh.
# "make dist-rpm" will run BuildConfig in dist/templates/kernel.template.spec, which will cd
# to drivers/thirdparty/ dir to run download-and-copy-drivers.sh.
mlnx_tgz_url=""
mlnx_tgz_name=$(../../drivers/thirdparty/release-drivers/mlnx/get_mlnx_info.sh mlnx_tgz_name)
mlnx_tgz_sha256=$(../../drivers/thirdparty/release-drivers/mlnx/get_mlnx_info.sh mlnx_tgz_sha256)
check_url_reachable()
{
round_val=$(( $1 % 2 ))
mlnx_url=$(echo "mlnx_url$round_val")
mlnx_tgz_url=$(../../drivers/thirdparty/release-drivers/mlnx/get_mlnx_info.sh $mlnx_url)
curl -I $mlnx_tgz_url 1>/dev/null 2>&1 && return 0
echo "Try to download ${mlnx_tgz_name} from backup_url."
round_val=$(( $round_val + 1 )) ; round_val=$(( $round_val % 2 ))
mlnx_url=$(echo "mlnx_url$round_val")
mlnx_tgz_url=$(../../drivers/thirdparty/release-drivers/mlnx/get_mlnx_info.sh $mlnx_url)
curl -I $mlnx_tgz_url 1>/dev/null 2>&1
if (( $? != 0 )); then
echo "Could not download ${mlnx_tgz_name} ! URL can't reachable!"
exit 1
fi
}
thirdparty_mlnx(){
get_mlnx_tgz_ok=1
sha256_tmp=$(sha256sum ${mlnx_tgz_name} | awk '{printf $1}')
if [[ $sha256_tmp != $mlnx_tgz_sha256 ]]; then
rm -f ${mlnx_tgz_name}
timeout 900 wget -q $mlnx_tgz_url || get_mlnx_tgz_ok=0
fi
## Check the mlnx_tgz which just downloaded.
sha256_tmp=$(sha256sum ${mlnx_tgz_name} | awk '{printf $1}')
if [[ $sha256_tmp != $mlnx_tgz_sha256 ]]; then get_mlnx_tgz_ok=0; fi
if (( $get_mlnx_tgz_ok == 0 )); then
echo "Download ${mlnx_tgz_name} fail!"
exit 1
fi
}
##
## main , script start run at here.
##
for attempt in {1..3}; do
check_url_reachable ${attempt}
thirdparty_mlnx
if (( $? == 0 )); then
echo "Having downloaded thirdparty drivers."
break
fi
done
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/opencloudos-stream/kernel.git
git@gitee.com:opencloudos-stream/kernel.git
opencloudos-stream
kernel
kernel
master

搜索帮助