基于windows使用fabric将gitlab的文件远程同步到服务器(本地)

# -*- coding: utf-8 -*-
from fabric.api import env, run, local, put
from fabric.operations import sudo
import tarfile
import os
import string

# GIT_REPO = "git地址"

env.user = ‘账号‘
env.password = ‘密码‘
env.hosts = [‘IP地址‘]
env.port = ‘22‘

exclude_names = [‘fabfile.py‘, ‘venv‘]

def filter_func(tarinfo):
    # if tarinfo in exclude_names and tarinfo.isdir():
    if tarinfo in exclude_names:
        return True
    elif tarinfo.endswith(‘fabfile.py‘):
        return True
    elif tarinfo.endswith(‘venv‘):
        return True
    # elif tarinfo.startswith(‘venv‘):
    #     return True
    elif tarinfo.startswith(‘.‘):
        return True
    # elif tarinfo.endswith(‘.git‘):
    #     return True
    # elif tarinfo.endswith(‘.idea‘):
    #     return True
    elif tarinfo.endswith(‘.html‘):
        return True
    elif tarinfo.endswith(‘.pyc‘):
        return True
    else:
        return False

# 本地压缩到服务器
def deploy():
    # local
    basedir = os.getcwd()
    source_folder = ‘目标文件夹‘
    tar = tarfile.open(‘the_tar.gz‘, ‘w:gz‘)
    tar.add(basedir, exclude=filter_func)
    # for root, dirs, files in os.walk(basedir):
    #     fullpath = os.path.join(root, file)
    #     tar.add(fullpath)
    tar.close()
    put(os.path.join(basedir, ‘the_tar.gz‘), source_folder)

    run("""
        cd {} &&
        tar -xf the_tar.gz &&
        rm -f the_tar.gz
        """.format(source_folder))
    # sudo(‘supervisorctl restart 项目进程‘)

# if __name__ == ‘__main__‘:
#     deploy()

  

原文地址:https://www.cnblogs.com/bqwzx/p/10289948.html

时间: 2024-10-13 18:33:27

基于windows使用fabric将gitlab的文件远程同步到服务器(本地)的相关文章

基于Windows 2003 卷影副本的文件级恢复操作

最近由于工作比较忙,加上年底很多项目收尾,没有时间来写博,今天有一个朋友问到了关于Windows 2003卷影副本的功能,说是只能进行整盘还原,从本身来说,当我们查看磁盘属性的时候是这样子的,这个Windows 2008 R2.Windows 2012 R2有所不同,在Windows 2008 R2的时候我们可以直接在磁盘属性中还原文件,其实在Windows 2003下也可以实现文件级的恢复,下面我们就来说一下操作过程: 在Windows 2003卷影副本中要进行文件级的恢复,可能没有Windo

Rsync 实现文件定时同步

操作系统: 文件服务器端: Red Hat Linux Advanced Server release 2.1AS/i686 (Pensacola) 客户端:Red Hat Linux release 7.2 (Enigma) 其中,服务器端的Linux已经捆绑了 Rsync.我在AIX下也实现了客户端. [注意事项]: 1.    要确定系统本身是否已经绑定(安装)了Rsync,可以到/usr/bin ,/usr/local/bin/ 或者 /usr/sbin/ 等目录下查找 Rsync是否存

windwos与linux基于inotify实现文件实时同步实战记录

cwRsync是基于cygwin平台的rsync软件包,支持windows对windows.windows对Linux.Linux对windows高效文件同步.由于CwRsync已经集成了cygwin类库,因此安装的时候可以省去cygwin包.Cwrsync还集成了OpenSSH for windows,可以实现Linux 下Rsync一模一样的操作.使用 cwRsync 来同步文件后,只需要对一台主服务器进行文件修改,其他镜像服务器可以自动同步,包括文件的更新.删除.重命名等. 正好符合我现在

基于Windows Server 2012 R2部署SQL 2012的AlwaysOn群集

SQL Server2012中新增的AlwaysOn简介 SQL Server2012中新增的AlwaysOn是一个新增高可用性解决方案.在AlwaysOn之前,SQL Server已经有的高可用性和数据恢复方案,比如数据库镜像,日志传送和故障转移集群.都有其自身的局限性.而AlwaysOn作为微软新退出的解决方案,提取了数据库镜像和故障转移集群的优点.本文旨在通过实现一个AlwaysOn的实例来展现AlwaysOn. Windows2012群集要求作为群集运行的所有节点都必须采用投票算法确定该

基于windows 2008 R2域控的安装和加入客户机

实验目标: 1.DNS的安装 2.域控的安装 3.加入客户机 实验目的: 1.了解域环境是什么 2.熟悉域控制器的工作原理 实验拓扑: 实验步骤: 一. DNS的安装 A.域控网络属性的配置 作为域控服务器,IP地址必须是静态手工配置,绝对不能DHCP自动获取,因为DHCP自动获取的IP地址不是固定的,经常变化,这样对下面的客户机有很大的影响,导致客户无法正常工作,不一定要配置默认网关:但是DNS一定要配置正确了(DNS服务器可以是域控本机,也可以是另外一台服务器,本实验由于笔记本电脑本身的局限

基于Windows Server Backup高级应用之多副本备份

[需求说明] 对Windows Server 2008 R2系统状态进行备份,且需要保留三天的系统状态备份数据,但是我们会发现Windows Server Backup并不能够创建多个备份计划,不能设置备份副本的保存数量等,这时候怎么处理了? [解决方法] 如果大家用过Windows Server Backup,那么大家一定知道在Windows Server Backup的界面上,只能建一个备份计划(我也常识找过但未找到可以配置多个备份计划的地方),而且备份选项中只有每天一次和每天多次的备份选项

在SAE搭建Python+Django+MySQL(基于Windows)

为了与时俱进,工作闲余开始研究Python,刚一接触就被Python这"优雅"的语法吸引住!后来接触到了Django,虽然还没有太深入的研究,但对这种新概念的WEB开发很感兴趣,决定尝试用它代替Java开发小的后台程序,边用边学吧! 注:本篇只介绍基础搭建过程,不负责讲解,因为刚接触Python我也不懂! 一.SAE使用的Python环境版本 Python2.7 Django1.27 / 1.4 / 1.5 本地版本要确定好,需要用到其他的预装模块也要确定好. (我一开始使用了高版本的

基于Windows 配置 nginx 集群

1.下载 nginx 下载页面 : http://nginx.org/en/download.html 具体文件: http://nginx.org/download/nginx-1.7.0.zip 2.运行 nginx 解压第一步下载的 nginx-1.7.0.zip 压缩包 解压到 c:/nginx路径 2.1.修改监听端口 由于 80 端口已经配置IIS ,现修改nginx 监听端口 server { listen      80; 修改为 listen    5000; 2.2 .修改

基于Windows Server 2012 r2环境部署 SharePoint 2013 SP1

在安装SharePoint 2013 服务器之前,请先了解硬件和软件要求 http://technet.microsoft.com/library/cc262485(office.15)?ocid=fwlink#section4 Microsoft SharePoint 产品准备工具会为具有内置数据库的单台服务器安装以下必备软件: Web 服务器 (IIS) 角色 应用程序服务器角色 Microsoft .NET Framework 4.5 SQL Server 2008 R2 SP1 Nati