标签: fabric

Python 3支持Fabric

fabric(http://docs.fabfile.org/en/1.7/)是否支持Python 3.根据Python 3超级大国它还没有.如果不是,如果在Python 3中使用Django 1.5,那么最佳选择是什么.

fabric python-3.x

51
推荐指数
4
解决办法
3万
查看次数

我可以阻止结构提示我输入sudo密码吗?

我正在使用Fabric在远程服务器上运行命令.我在该服务器上连接的用户具有一些sudo权限,并且不需要密码即可使用这些权限.当SSH进入服务器时,我可以运行sudo blah并执行命令而不提示输入密码.当我尝试通过Fabric的sudo功能运行相同的命令时,系统会提示我输入密码.这是因为Fabric在使用时以下列方式构建命令sudo:

sudo -S -p <sudo_prompt> /bin/bash -l -c "<command>"
Run Code Online (Sandbox Code Playgroud)

显然,我的用户无权在/bin/bash没有密码的情况下执行.

我通过使用run("sudo blah")代替而解决了这个问题sudo("blah"),但我想知道是否有更好的解决方案.这个问题有解决方法吗?

python sudo fabric

48
推荐指数
4
解决办法
3万
查看次数

在本地运行Fabric脚本

我有一个django应用程序,我写了一个结构脚本,在部署服务器(Cent OS 5)上安装我的应用程序.

现在我想在部署服务器上本地运行相同的结构脚本.

有没有办法在不提供ssh用户和密码的情况下执行此操作?

我的意思是只用"-H localhost"?

谢谢,Alex A.

django fabric

41
推荐指数
2
解决办法
2万
查看次数

在Fabric中添加环境变量的最佳方法是什么?

我想将一些值从结构传递到远程环境,我没有看到一个很好的方法来做到这一点.到目前为止我提出的最好的是:

with prefix('export FOO=BAR'):
    run('env | grep BAR')
Run Code Online (Sandbox Code Playgroud)

这似乎有效,但似乎有点像黑客.

我查看了GIT存储库,看起来这是问题#263.

python fabric

39
推荐指数
2
解决办法
3万
查看次数

面料密码

每次结构运行时,它都会询问root密码,是否可以自动发送.

fab staging test
Run Code Online (Sandbox Code Playgroud)

python fabric

37
推荐指数
6
解决办法
4万
查看次数

Django的最佳Fabric脚本

用于部署典型Django项目的最佳库存Fabric脚本是什么?Fabric看起来非常好,但似乎要求您从头开始编写自己的部署脚本.来自卡皮斯特拉诺,我想从一些开箱即用的东西开始,其他人已经测试过,而不是从头开始编写.

理想情况下,我想要一个同步数据库,使用South执行迁移,备份站点和数据库,并可以回滚以前的部署.

deployment django fabric

37
推荐指数
2
解决办法
2万
查看次数

Fabric的cd上下文管理器不起作用

我在一台新PC上设置了我的开发环境,看起来我和Fabric有一些奇怪的错误.它的'cd'上下文管理器似乎不会改变当前目录,因此我的很多命令都不起作用.我写了测试,它向我展示了我没想到的结果:

from __future__ import with_statement
from fabric.api import local, run, cd

def xxx():
    with cd("src"):
        local("pwd")
Run Code Online (Sandbox Code Playgroud)

以下是运行后的结果fab xxx:

[localhost] local: pwd
/home/pioneer/workspace/myproject
Run Code Online (Sandbox Code Playgroud)

但我想,/home/pioneer/workspace/myproject不应该有/home/pioneer/workspace/myproject/src.

python fabric

34
推荐指数
1
解决办法
1万
查看次数

是否有类似于用JavaScript编写的Fabric的部署工具?

我整理了一个移动开发堆栈,几乎完全在node.js上使用Javascript.除了SASS(更喜欢LESS)和Fabric之外.我不想污染我的开发目录,因为我必须组合和缩小JS和CSS,我想我也可以使用node.js来提供我的代码.

我想减少对Ruby和/或Python的依赖.我并没有真正使用Fabric的所有功能,所以我希望能够取代它.但我找不到任何用Javascript编写的类似工具.

我只需要:

  • 从git存储库中提取.
  • 在本地安装依赖项.
  • 缩小并组合JS/CSS调用require.js/SASS.
  • 运行测试套件.
  • 通过node.js提供代码,用于实际操作或使用Ripple进行测试.

Fabric可能已经过度杀伤,我只将它用于我的Python Web项目,因为必要的服务器不能在我的机器上运行,但这不是这里的情况.如果没有Fabric,最好的办法是什么?

javascript deployment fabric node.js

32
推荐指数
2
解决办法
1万
查看次数

Fabric - 有没有办法捕获运行stdout?

我正在尝试执行以下操作:

output = run("ls -l backups")
for line in output.split("/n"):
    do_stuff(line)
Run Code Online (Sandbox Code Playgroud)

具有任何方式stdoutls发送到output


更具体地说,我正在使用一个名为CLI的应用程序s3cmd,该应用程序ls与远程Amazon S3存储桶类似.

因此,替代品ls将无济于事.


python fabric

32
推荐指数
5
解决办法
3万
查看次数

Python Fabric任务是否可以调用其他任务并尊重其主机列表?

我有一个如下的fabfile:

@hosts('host1')
def host1_deploy():
    """Some logic that is specific to deploying to host1"""

@hosts('host2')
def host2_deploy():
    """Some logic that is specific to deploying to host2"""

def deploy():
    """"Deploy to both hosts, each using its own logic"""
    host1_deploy()
    host2_deploy()
Run Code Online (Sandbox Code Playgroud)

我想要做

fab deploy
Run Code Online (Sandbox Code Playgroud)

并且它等同于

fab host1_deploy host2_deploy
Run Code Online (Sandbox Code Playgroud)

换句话说,运行每个子任务,并为每个子任务使用它指定的主机列表.但是,这不起作用.相反,deploy()任务需要它自己的主机列表,它将传播到它的所有子任务.

有没有办法在这里更新deploy()任务,这样它可以做我想要的,同时单独留下子任务,以便它们可以单独运行?

python deployment ssh fabric

31
推荐指数
2
解决办法
7676
查看次数

标签 统计

fabric ×10

python ×6

deployment ×3

django ×2

javascript ×1

node.js ×1

python-3.x ×1

ssh ×1

sudo ×1