莫问 发表于 2018-8-25 07:50:54

采用shell发布SVN项目到远程服务器

#!/bin/bash  
#XXX项目的发布脚本
  
#临时储存项目的目录
  
publish_dir='/var/tmp/publish'
  
#定义项目的svn地址
  
svn_path='http://192.168.12.143:14302/svn/project'
  
#定义私钥文件的地址,注意私钥文件的权限必须降到600
  
private_key='/root/.ssh/gongzheng'
  
#总是删除历史目录
  
if [ -d ${publish_dir} ];then
  rm ${publish_dir} -rf
  
fi
  
#创建目录,导出svn目录,并打包文件
  
mkdir -p ${publish_dir} && cd ${publish_dir}
  
echo '检出project项目文件'
  
svn export ${svn_path} --force ./ --username svn的用户名 --password svn的密码 --no-auth-cache
  
echo '删除项目中的配置文件,删除项目中的cache文件'
  
rm ${publish_dir}/config.inc.php -rf
  
rm ${publish_dir}/Temp/*.dev.cache -rf
  
echo '打包项目文件到project.tat.gz'
  
tar -zcvf project.tar.gz ./*
  
#使用scp命令上传压缩包到服务器
  
scp -i ${private_key} -P 22022 project.tar.gz root@xxx.xxx.xxx.xxx:/root


页: [1]
查看完整版本: 采用shell发布SVN项目到远程服务器