#!/usr/bin/env python
# -*- coding: utf-8 -*
#添加中文注释的编码
#fabfile.py
from fabric.api import * env.user = 'root'
env.hosts = ['192.168.1.100']
#远程服务器的密码,这个建议不要填写,宁愿在运行的过程输入,因为这是明文显示的,不安全
#也可以将机子的ssh打通,这样就可以避免输入密码的麻烦
#env.password = 'testtest' #从版本库取出,并删除.svn文件
def download():
local('rm -rf /tmp/newer' )
local('mkdir /tmp/newer')
local('svn checkout svn://localhost/newer /tmp/newer')
local('find /tmp/newer -name ".svn" | xargs rm -rf') #压缩打包
def pack():
with lcd('/tmp/'):
local('tar czvf newer.tar.gz ./newer') #部署远程服务器目录结构
def display():
run('rm -rf /var/www/html/tmp')
run('mkdir /var/www/html/tmp')
# 将本地的压缩包发送到远程服务器
put('/tmp/newer.tar.gz','/var/www/html/tmp') with cd('/var/www/html/tmp'):
run('tar xvf newer.tar.gz') #部分目录进行特别处理
with cd('/var/www/html/newer/public/'):
run('cp -r ueditor ../../tmp') with cd('/var/www/html/'):
run('rm -rf newer')
run('cp -r /var/www/html/tmp/newer ./') with cd('/var/www/html/newer/public'):
run('rm -rf ueditor')
run('cp -r /var/www/html/tmp/ueditor ./') # 执行部署
def go():
download()
pack()
display()

fab -f deploy.py go

最新文章

  1. 跟我一起云计算(5)——Shards
  2. Gitlab使用总结
  3. [android]亲自破解Flappy Bird(去广告+永生)
  4. Java for LeetCode 142 Linked List Cycle II
  5. [Issue]repo/repo init-解决同步源码Cannot get http://gerrit.googlesource.com/git-repo/clone.bundle
  6. iOS定位坐标转换工具-b
  7. 构建本地yum源之rpmbuild
  8. cygwin下的第一次编程记录
  9. Modbus软件开发实战指南 之 开发自己的Modbus Poll工具 - 1
  10. 【Linux配置】vim配置文件内容
  11. bootstrap 基础(一)
  12. ASP.NET MVC AJAX的调用示例
  13. EventBus InMemory 的实践基于eShopOnContainers (二)
  14. [源码分析]StringBuilder
  15. ARVE: Augmented Reality Applications in Vehicle to Edge Networks
  16. ubuntu 在 Windows 下的安装
  17. unshift() 方法将一个或多个元素添加到数组的开头,并返回新数组的长度
  18. vmware linux 虚拟机开机状态加硬盘
  19. 『计算机视觉』Mask-RCNN_推断网络终篇:使用detect方法进行推断
  20. 挂载Linux云主机硬盘到本地计算机

热门文章

  1. 使用state改变的jsx监听不到数据变化的问题
  2. 解决 unity 用 vs通过wifi 真机联调 一直连接不上
  3. linux之stat
  4. loj 6278 6279 数列分块入门 2 3
  5. duilib入门简明教程 -- VS环境配置(2) (转)
  6. i2c 协议解析【转】
  7. [MySQL] Group Commit理解
  8. layui 的Tab选项卡
  9. 横竖屏切换,activity重建问题
  10. 已知一个序列A1.A2….An,给你一个整数K,找到满足所有Ai+Aj>=k的数对(i,j)的个数