欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Fabric 應(yīng)用案例

 更新時間:2016年08月28日 17:25:03   投稿:mdxy-dxy  
下面介紹三個比較典型的應(yīng)用Fabric的示例,涉及文件上傳與校驗,環(huán)境部署,代碼發(fā)布功能

示例1:文件打包,上傳與校驗
我們時常做一些文件包分發(fā)的工作,實施步驟一般是先壓縮打包,在批量上傳至目標(biāo)服務(wù)器,最后做一致性校驗,本案例通過put()方法實現(xiàn)文件的上傳,通過對比本地與遠(yuǎn)程主機(jī)文件的md5,最終實現(xiàn)文件一致性校驗。

#!/usr/bin/env python
from fabric.api import *
from fabric.context_managers import *
from fabric.contrib.console import confirm
env.user = 'root'
env.hosts = ['192.168.1.23','192.168.1.24']
env.password = '123456'
 
@runs_once
def tar_task(): #本地打包任務(wù)函數(shù),只限執(zhí)行一次
  with lcd('/'):
    local("tar zcvf auto.tar.gz auto")
 
def put_task():
  run('mkdir /data') #上傳任務(wù)函數(shù)
  with cd("/data"):
    with settings(warn_only=True):
      result = put("/auto.tar.gz","/data") #put上傳出現(xiàn)異常時繼續(xù)執(zhí)行,非中止
    if result.failed and not confirm("put file failed, Continue[Y/N]?"):
      abort('Aboring file put task!') #出現(xiàn)異常時,確認(rèn)用戶是否繼續(xù)
 
def check_task():
  with settings(warn_only=True):
    lmd5 = local("md5sum /auto.tar.gz",capture=True).split(' ')[0]
    rmd5 = run("md5sum /data/auto.tar.gz").split(' ')[0]
    if lmd5 == rmd5: #對比本地及遠(yuǎn)程文件MD5信息
      print "ok"
    else:
      print ERROR
def go():
  tar_task()
  put_task()
  check_task()      

您可能感興趣的文章:

相關(guān)文章

  • python正則分組的應(yīng)用

    python正則分組的應(yīng)用

    組是通過 "(" 和 ")" 元字符來標(biāo)識的。 "(" 和 ")" 有很多在數(shù)學(xué)表達(dá)式中相同的意思;它們一起把在它們里面的表達(dá)式組成一組
    2013-11-11
  • 如何用python合并多個excel文件

    如何用python合并多個excel文件

    這篇文章主要介紹了如何用python合并多個excel文件,幫助大家更好的理解和學(xué)習(xí)使用python,感興趣的朋友可以了解下
    2021-03-03
  • 批量獲取及驗證HTTP代理的Python腳本

    批量獲取及驗證HTTP代理的Python腳本

    這篇文章主要介紹了批量獲取及驗證HTTP代理的Python腳本,需要的朋友可以參考下
    2017-04-04
  • 解決pytorch讀取自制數(shù)據(jù)集出現(xiàn)過的問題

    解決pytorch讀取自制數(shù)據(jù)集出現(xiàn)過的問題

    這篇文章主要介紹了解決pytorch讀取自制數(shù)據(jù)集出現(xiàn)過的問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-05-05
  • Python手機(jī)號碼歸屬地查詢代碼

    Python手機(jī)號碼歸屬地查詢代碼

    這篇文章主要介紹了Python手機(jī)號碼歸屬地查詢代碼的相關(guān)資料,需要的朋友可以參考下
    2016-05-05
  • Python?sns.distplot()方法的使用方法

    Python?sns.distplot()方法的使用方法

    機(jī)器學(xué)習(xí)中經(jīng)常會用到圖形進(jìn)行可視化,如在網(wǎng)格搜索(GridSearch)后對特征的重要性進(jìn)行排序時,用到sns.barplot()函數(shù)按照重要程度輸出特征,這篇文章主要給大家介紹了關(guān)于Python?sns.distplot()方法的使用方法,需要的朋友可以參考下
    2022-03-03
  • python使用turtle庫寫六角形的思路與代碼

    python使用turtle庫寫六角形的思路與代碼

    學(xué)習(xí)Python,接觸到turtle包,就用它來畫一下六邊形,下面這篇文章主要給大家介紹了關(guān)于python使用turtle庫寫六角形的思路與代碼,文中通過實例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-11-11
  • Python基于pandas實現(xiàn)json格式轉(zhuǎn)換成dataframe的方法

    Python基于pandas實現(xiàn)json格式轉(zhuǎn)換成dataframe的方法

    這篇文章主要介紹了Python基于pandas實現(xiàn)json格式轉(zhuǎn)換成dataframe的方法,結(jié)合實例形式分析了Python使用pandas模塊操作json數(shù)據(jù)轉(zhuǎn)換成dataframe的相關(guān)操作技巧與注意事項,需要的朋友可以參考下
    2018-06-06
  • Django中如何使用Channels功能

    Django中如何使用Channels功能

    這篇文章主要介紹了在Django中使用Channels功能,本文通過實例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-08-08
  • OpenCV實現(xiàn)相機(jī)標(biāo)定

    OpenCV實現(xiàn)相機(jī)標(biāo)定

    這篇文章主要為大家詳細(xì)介紹了OpenCV實現(xiàn)相機(jī)標(biāo)定,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-08-08

最新評論