Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
Y
yunwei
概览
概览
详情
活动
周期分析
版本库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
问题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
wanghongliang
yunwei
Commits
c3d3fdac
提交
c3d3fdac
authored
3月 22, 2024
作者:
martin
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
华为OBS云后台脚本
上级
5574897e
隐藏空白字符变更
内嵌
并排
正在显示
1 个修改的文件
包含
96 行增加
和
0 行删除
+96
-0
make_update_pkg.sh
make_update_pkg/make_update_pkg.sh
+96
-0
没有找到文件。
make_update_pkg/make_update_pkg.sh
0 → 100644
浏览文件 @
c3d3fdac
#!/bin/bash
# 输入:版本号,原始文件所在文件夹
# 输出:升级包,并上传至OBS
if
[
"$#"
-ne
2
]
;
then
echo
"错误: 参数数量不正确。"
echo
"用法:
$0
版本号 原始文件夹"
echo
"例如:
$0
4.0.8 ./abc"
exit
1
fi
version
=
$1
src_dir
=
$(
echo
"
$2
"
| sed
's/\(.*\)\(\/\)$/\1/'
)
# 参数2必须是文件夹
if
!
[[
-d
"
$src_dir
"
]]
;
then
echo
"错误: 参数2必须是一个文件夹。"
exit
1
fi
# 判断文件夹内容,必须包含sys_core_law.sql这个文件
if
!
[[
-f
"
$src_dir
"
/sys_core_law.sql
]]
;
then
echo
"错误: 原始文件夹中不存在sys_core_law.sql文件,请确认原始文件。"
exit
1
fi
function
check_env
()
{
echo
"Check wget start"
wget
-V
>
/dev/null
&&
\
(
echo
'wget installed,check pass'
)
||
\
(
echo
'wget not installed now installing'
&&
yum install
-y
wget
&&
echo
'wget install success'
||
\
(
echo
'install failed and exit'
&&
exit
1
))
echo
"Check openssl version start"
ssl_version
=
$(
openssl version |awk
'{print $2}'
)
if
[[
"
${
ssl_version
:0:5
}
"
!=
'1.1.1'
]]
;
then
echo
"openssl version is
$ssl_version
,not fit the request 1.1.1, now start to install"
yum install
-y
gcc make
wget
-q
https://www.openssl.org/source/old/1.1.1/openssl-1.1.1w.tar.gz
--no-check-certificate
tar
-zxvf
openssl-1.1.1w.tar.gz
cd
openssl-1.1.1w
||
exit
1
# 开始编译安装
./config
--prefix
=
/usr/lib/openssl/openssl
make
&&
make install
# 备份旧的openssl并更新软连接
mv /usr/bin/openssl /usr/bin/openssl.bak
ln
-sf
/usr/lib/openssl/openssl/bin/openssl /usr/bin/openssl
ln
-sf
/usr/lib/openssl/openssl/lib/libssl.so.1.1 /usr/lib64/libssl.so.1.1
ln
-s
/usr/lib/openssl/openssl/lib/libcrypto.so.1.1 /usr/lib64/libcrypto.so.1.1
# 重新检查openssl版本
ssl_new_version
=
$(
openssl version |awk
'{print $2}'
)
[[
"
${
ssl_new_version
:0:5
}
"
==
'1.1.1'
]]
&&
echo
'openssl update success,check pass'
||
\
(
echo
'openssl install fail and exit'
&&
exit
1
)
else
echo
"openssl version is fit for the request,check pass"
fi
echo
'check obsutil start'
obsutil_flag
=
$(
obsutil
ls
-s
)
if
[[
$obsutil_flag
=
~ Start
*
]]
;
then
echo
'obsutil check pass'
else
echo
'obsutil check failed now update'
wget
-q
https://obs-community.obs.cn-north-1.myhuaweicloud.com/obsutil/current/obsutil_linux_amd64.tar.gz
&&
\
tar
-xzvf
obsutil_linux_amd64.tar.gz
&&
cd
obsutil_linux_amd64_
*
&&
chmod 755 obsutil
&&
mv obsutil /usr/bin/
&&
\
obsutil config
-i
=
'VEHN7D0TJ9316H8AHCAV'
-k
=
'heR353lvSWVPNU8pe2QxDtd8GDsO5L6PGH5eUoQY'
\
-e
=
'https://obs.cn-north-1.myhuaweicloud.com'
# 重新检查obsutil
obsutil_new_flag
=
$(
obsutil
ls
-s
)
[[
$obsutil_new_flag
=
~ Start
*
]]
&&
echo
'obsutil update success,check pass'
||
\
(
echo
'obsutil install fail and exit'
&&
exit
1
)
fi
}
function
make
()
{
# 创建临时文件夹,并将相关原始文件复制进去,
[[
-d
.tmp/AuditUpdate
]]
||
mkdir
-p
.tmp/AuditUpdate
if
[[
-d
.tmp/AuditUpdate
]]
;
then
rm
-rf
.tmp/AuditUpdate/
*
else
mkdir
-p
.tmp/AuditUpdate
fi
cp
"
$src_dir
"
/
*
.tmp/AuditUpdate/
&&
echo
"复制原始文件成功"
# 判断本地是否存在升级脚本,如无,从obs下载,修改版本号并复制进版本文件夹
for
file
in
{
'sys.sh'
,
'update.sh'
,
'docker_sys.sh'
,
'docker_update.sh'
}
;
do
[[
-f
.tmp/
"
$file
"
]]
||
wget
-q
https://zzsn-doc.obs.cn-north-1.myhuaweicloud.com/typora/martin/
"
$file
"
-O
.tmp/
"
$file
"
sed
"s/V4.0.8/V
${
version
}
/g"
.tmp/
"
$file
"
>
.tmp/AuditUpdate/
"
$file
"
&&
chmod +x .tmp/AuditUpdate/
"
$file
"
done
# 压缩生成AuditUpdate.tar.gz文件
cd
.tmp
||
(
echo
"进入.tmp文件夹失败,退出"
&&
exit
1
)
tar
-zcf
- AuditUpdate |openssl des3
-salt
-k
zzsn9988 | dd
of
=
./AuditUpdate.tar.gz
&&
echo
"制作升级包成功"
||
\
(
echo
"打包制作失败,退出"
&&
exit
1
)
obsutil mkdir obs://zzsn-doc/audit/update/
"
$version
"
obsutil cp AuditUpdate.tar.gz obs://zzsn-doc/audit/update/
"
$version
"
/
&&
echo
"上传至OBS成功"
# 清理本地环境
mv AuditUpdate.tar.gz ../
"
$src_dir
"
/
&&
cd
..
&&
rm
-rf
.tmp
}
check_env
&&
make
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论