为什么结构报告“未找到主机”?

发布于 2024-10-21 08:19:51 字数 295 浏览 2 评论 0原文

env.roledefs = {
    'seed': ['host1'],
    'peer': ['host2']
}

@roles('seed')
def test():
    pass

@roles('peer')
def test1():
    pass

def deploy():
    test()
    test1()

fab 测试、fab test1 - 一切正常

fab 部署:

未找到主机。请指定用于连接的(单个)主机字符串:

为什么?

env.roledefs = {
    'seed': ['host1'],
    'peer': ['host2']
}

@roles('seed')
def test():
    pass

@roles('peer')
def test1():
    pass

def deploy():
    test()
    test1()

fab test, fab test1 - all ok

fab deploy:

No hosts found. Please specify (single) host string for connection:

Why ?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

半岛未凉 2024-10-28 08:19:51

deploy 调用 testtest1 时,不考虑 @roles。您应该使用 execute(test)execute(test1) 调用函数。

另请参阅:

When calling test and test1 from deploy, the @roles are not taken into account. You should call the functions using execute(test) and execute(test1).

See also:

毁我热情 2024-10-28 08:19:51

因为 env.hosts 没有设置。您的 test() 函数不使用 run() 或任何需要 ssh 连接的类似命令,而 deploy() 可能使用 does()。

首先阅读这些:

http://docs.fabfile.org/en /1.0.1/usage/env.html#hosts

http://docs.fabfile.org/en/1.0.1/usage/execution.html#hosts

Because env.hosts is not set. Your test() functions do not use run() or any similar command that requires ssh connection, while deploy(), presumably, does().

Read these first:

http://docs.fabfile.org/en/1.0.1/usage/env.html#hosts

http://docs.fabfile.org/en/1.0.1/usage/execution.html#hosts

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文