小编mcs*_*bow的帖子

将Fabric env.hosts sting作为变量传递在函数中不起作用

将Fabric env.hosts sting作为变量传递在函数中不起作用.

demo.py

#!/usr/bin/env python

from fabric.api import env, run

def deploy(hosts, command):
    print hosts
    env.hosts = hosts
    run(command)
Run Code Online (Sandbox Code Playgroud)

main.py

#!/usr/bin/env python

from demo import deploy

hosts = ['localhost']
command = 'hostname'
deploy(hosts, command)
Run Code Online (Sandbox Code Playgroud)

python main.py

['localhost']
No hosts found. Please specify (single) host string for connection:
Run Code Online (Sandbox Code Playgroud)

但是env.host_string有效!

demo.py

#!/usr/bin/env python

from fabric.api import env, run

def deploy(host, command):
  print host
  env.host_string = host
  run(command)
Run Code Online (Sandbox Code Playgroud)

main.py

#!/usr/bin/env python

from demo import deploy

host = 'localhost'
command = 'hostname'
deploy(host, …
Run Code Online (Sandbox Code Playgroud)

python env hosts fabric

5
推荐指数
1
解决办法
2949
查看次数

标签 统计

env ×1

fabric ×1

hosts ×1

python ×1