Python 自動化部署 fabric 使用詳解

2021-08-27 14:08:18 字數 1424 閱讀 8633

寫在前面:本文使用的是python2.7 + fabric1.14

目前fabric還是使用python2居多

1、fabric入門

建立的檔案的檔名盡量為fabfile.py

內容為:

# -*- coding:utf-8 -*-

from fabric.api import *

@task # 裝飾器,表示是乙個任務

@runs_once # 表示只執行一次

defmyrun

(): run('uname -s')

然後執行

fab -h loaclhost myrun  # 會看到相應輸出
引數含義:

-h 制定主機,這裡制定的主機為127.0.0.1

myrun 自己在檔案中定義的方法

如果檔名不是fabfile.py 如檔名為test.py

那麼執行命令變為

fab -h loaclhost -f test.py myrun
2、高階用法

檔案內容為:

# -*- coding:utf-8 -*-

from fabric.api import *

env.user = 'aeasringnar'

env.hosts = ['127.0.0.1']

env.password = 'zxc.123'

@task # 裝飾器,表示是乙個任務

@runs_once # 表示只執行一次

defmyrun

(): run('uname -s')

這個時候直接執行:

fab myrun  # 即可
3、fabric高階 - 常用引數

-l:顯示定義好的任務函式名,例如:本例執行fab -l 之後的輸出為 myrun

-f:指定fab入口檔案,預設入口檔案為fabfile.py

-h:指定目標主機,多台主機用」,」隔開

4、fabric高階 - 常用api

4、fabric高階 - 全域性屬性設定

env.hosts:定義目標主機,如:env.hosts = [『127.0.0.10』,』192.168.17.7』]

env.user:定義使用者名稱,如:env.user = 『root』

env.port:定義目標主機埠,預設為22,如:env.port = 『22』

env.password:定義密碼,如:env.password = 『test』

env.passwords:不同的主機不同的密碼,注意:這裡必須是使用者名稱@主機:埠 然後是密碼,缺一不可,否則一直要輸入密碼,如:env.passwords =

部署python自動化指令碼 搭建自動化指令碼執行環境

年前把平台的指令碼寫好了,準備在虛擬機器中全部執行一遍。沒想到在虛擬機器中配置了很長時間,才把環境搭好。為了不再犯這配置環境的苦,在這簡單說說環境的搭建吧。因為寫的指令碼是在win7上實現的,所以虛擬機器我安裝的也是win7系統。1 安裝python 2 配置環境變數 python安裝成功後,將安裝...

mysql自動化部署方案 什麼是自動化部署?

自動化部署將可交付產品,快速且安全地交付使用者使用的一套系統和工具。系統會自動構建 測試並準備 變更,以便將其發布到指定環境的過程,包括開發環境 預發布環境 生產環境等。自動化部署工具介紹 簡要介紹 該工具是資料庫自動化部署調優工具,支援mysql 8.0.17 8.0.18和postgresql ...

自動化部署job

bin sh the discription of start.sh echo e the script function 1 deploy the tomcat server if files exist.echo e 2 restart the tomcat server if files no...