第一次写shell,如有不妥之处还请多多指教,O(∩_∩)O哈哈~
#!/bin/bash
//设置服务器解压包的路径
golang_path='/var/www/project1'
php_path='/var/www/project2'
temp_path='/root/temp' //压缩包存放路径
filename=test.tar.gz
cd $temp_path //进入压缩包存放路径(从jenkins服务器发过来的)
if [ "$1" = "golang_path" ] //如果是golang的包,执行以下操作
then
cp $file $golang_path //取包并清理源文件
rm -fr *
cd $golang_path //解压到目标路径并清理源文件
tar -zxf $file
rm -fr $file
go build //golang的build
supervisor restart all //重启golang服务
supervisor status //查看golang服务状态
elif [ "$1" = "php_path" ] //如果是php的包,执行以下操作
then
cp $file $php_path //取包并清理源文件
rm -fr *
cd $php_path //解压到目标路径并清理源文件
tar -zxf $file
rm -fr $file
chmod -R 777 * //赋予执行权限
cd $php_path/server
php artisan route:cache //清楚缓存,更新数据库
php artisan cache:clear
php artisan migrate
cd ../admin //部署前端代码
npm install
npm run build
fi