2013年11月7日 星期四

Fabirc (2): @Task and @roles

Decorators:

We can use decorators to use a specific environment.

-use @task to separate task from general functions.  

For example. It you use command fab list to  list all command in below fabfile.  It will only display 

the functions with @task decorators .

##fabfile.py
from fabric.api import *
@task
def cmd(cmd):
        run(cmd)

def cmd2(cmd):
        run(cmd)
@task
def cmd3(cmd):
        run(cmd)
-use @roles to specify a task only can ran on which roles
#fabfile.py
env.hosts=[“192.168.1.1”,”aal.yourdomain.com"]
env.roledefs={“web":[“aal.yourdomain.com"],”ap":[“1.1.1.1"]}

And you can use decorators to specify which tasks are ran on which roles.

@roles(“web")
def apache():
    sudo("apt-get update")
    sudo("apt-get install -y apache2")

 

沒有留言:

Obsidian 插件介紹:Text Generator

Text Generator 是 Obsidian 的一個插件,它可以根據給定的提示自動生成文本。這個插件使用 GPT-3 語言模型,能夠產生類似人類的文本,非常適合編寫故事、文章、電子郵件和其他類型文本。 主要功能: **生成文本:**根據提示生成各種長度的...