小编Mat*_*kin的帖子

跨多个项目共享fabfile

Fabric已成为部署Django项目和初始配置Ubuntu 切片的首选部署工具.但是,我目前使用Fabric的工作流程并不是很,因为我发现自己:

  1. fabfile.py一个Django项目复制到另一个项目
  2. 修改fabfile.py每个项目所需的内容(例如,将webserver_restart任务从Apache 更改为Nginx,配置主机和SSH端口等).

这个工作流程的一个优点是它fabfile.py成为我的Git存储库的一部分,因此在pipfabfile.pypip 之间requirements.txt,我有一个可重新创建的virtualenv和部署过程.我希望保持这种优势,同时变得更加干燥.我似乎可以通过以下方式改进我的工作流程:

  1. 能够和和中pip install定义的共同任务fabfile.py
  2. 拥有一个fab_config文件,其中包含每个项目的主机配置信息,并根据需要覆盖任何任务

如何增加任何建议DRY我的内斯面料的工作流程?

deployment workflow pip dry fabric

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

为什么Fabric将近2分钟显示与服务器消息的断开连接?

Disconnecting from username@server... done.在我发出fab命令时,在显示新的命令提示符之前,Fabric显示将近2分钟.

使用发布到内部服务器和Rackspace云服务器的Fabric命令时存在此问题.下面我已经包含了来自服务器的auth.log,我在MacBook上的日志中没有看到任何内容.

有什么想法是什么问题?

服务器的SSH auth.log与LogLevel VERBOSE

Apr 21 13:30:52 qsandbox01 sshd[19503]: Accepted password for mrankin from 10.10.100.106 port 52854 ssh2
Apr 21 13:30:52 qsandbox01 sshd[19503]: pam_unix(sshd:session): session opened for user mrankin by (uid=0)
Apr 21 13:30:52 qsandbox01 sudo:  mrankin : TTY=unknown ; PWD=/home/mrankin ; USER=root ; COMMAND=/bin/bash -l -c apache2ctl graceful
Apr 21 13:30:53 qsandbox01 sshd[19503]: pam_unix(sshd:session): session closed for user mrankin
Run Code Online (Sandbox Code Playgroud)

服务器配置

  • 操作系统:Ubuntu 9.10和Ubuntu 6.10(使用这些操作系统测试了4台服务器)
  • OpenSSH:Ubuntu包版本1.5.1p1-6ubuntu2

客户端配置

  • 操作系统:Mac OS X 10.6.3
  • 面料版本0.9
  • Vritualenv …

python ssh virtualenv paramiko fabric

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

为什么我应该将 Python 包安装到 `~/.local` 中?

背景

  1. 我不使用 OS X 系统提供的 Python 版本进行开发(在 OS X 10.6 上,即 Python 2.5.4 和 2.6.1)。
  2. 对于操作系统提供的 Python 版本,我没有在 site-packages 目录中安装任何东西。(唯一的例外是从二进制包安装 Mercurial,它会在 Python 2.6.1 站点包目录中安装两个包。)
  3. 我安装了三个版本的 Python,都使用 Mac OS X 安装程序磁盘映像:
    1. 蟒蛇 2.6.6
    2. 蟒蛇 2.7
    3. 蟒蛇 3.1.2
  4. 我不喜欢污染我的 Python 安装的 site-packages 目录。所以我只在site-packages目录下安装了以下五个基础包。有关用于安装这些的实际方法/命令,请参阅SO Question 4324558
    1. 设置工具/ez_setup
    2. 分发
    3. 点子
    4. 虚拟环境
    5. 虚拟包装器
  5. 所有其他软件包都安装在 virtualenvs 中。
  6. 我是这台 MacBook 的唯一用户。

问题

  1. 鉴于上述背景,我为什么要安装五个基本包~/.local?由于我将这些基本包安装到我已安装的 Python 发行版的 site-packages 目录中,因此我与 OS X 的 Python 发行版隔离。
  2. 使用这种方法,我是否应该关注 Glyph 的评论,即其他事情可能会破坏(请参阅下面的评论)?

同样,我只对安装这五个基本软件包的位置感兴趣。

相关问题/信息

我问是因为GlyphSO …

python

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

从Scipy矩阵创建列表

这是我的第一篇文章,我仍然是Python和Scipy新人,所以对我来说很容易!我正在尝试将Nx1矩阵转换为python列表.说我有一些3x1矩阵

x = scipy.matrix([1,2,3]).transpose()

我的目标是从x创建一个列表y

y = [1, 2, 3]

我已经尝试过使用该tolist()方法,但它返回[[1], [2], [3]],这不是我追求的结果.我能做的最好的就是这个

y = [xi for xi in x.flat]
Run Code Online (Sandbox Code Playgroud)

但它有点麻烦,我不确定是否有更简单的方法来实现相同的结果.就像我说的那样,我仍然要掌握Python和Scipy ......

谢谢

python numpy scipy

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

生菜和Pyccuracy之间有什么区别?

具有使用LettucePyccuracy经验的人是否可以在功能和用途方面描述他们的差异?

生菜概述文档:

生菜是一种非常简单的基于Cucumber的BDD工具,目前它具有比生菜更多的功能.

生菜的目标是BDD上最常见的任务,它专注于那些让BDD如此有趣的人:)

通过创建一个或多个场景,为开发人员提供以自然语言描述功能的能力.

Pyccuracy github页面:

Pyccuracy是一种用Python编写的行为驱动开发风格的工具,旨在简化编写自动验收测试的过程.它通过使用结构化的自然语言 - 以及扩展此语言的简单机制 - 提高了这些测试的可读性,以便开发人员和客户可以协作并了解测试的功能.

testing bdd lettuce pyccuracy

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

Rails 3安装在Gem Builder中挂起,"无法转换"\ xF1"从ASCII-8BIT转换为UTF-8"

我按照本教程http://pragmaticstudio.com/blog/2010/9/23/install-rails-ruby-mac在Mac OS X上安装Ruby on Rails(Lion 10.7).

一切顺利,直到我收到以下消息时,用rvm(v.1.6)安装Rails:

Installing RDoc documentation for builder-3.0.0...
unable to convert "\xF1" from ASCII-8BIT to UTF-8 for README, skipping
unable to convert "\xF1" from ASCII-8BIT to UTF-8 for README.rdoc, skipping**
Run Code Online (Sandbox Code Playgroud)

(Builder版本成功安装2.1.2)

Installing RDoc documentation for rails-3.0.9...
file 'lib' not found
Run Code Online (Sandbox Code Playgroud)

(Rails版本成功安装3.0.9)

我做了一些研究,但找不到解决方案.看起来我不是唯一一个遇到这个问题的人.

我该怎么做才能解决这个问题?

gem builder ruby-on-rails-3

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

应该使用什么语义HTML标记来创建面包屑?

应该使用什么有意义的HTML标签来创建面包屑?我有一个使用未排序列表创建的菜单栏,因为它是一个列表:

<ul id="navigation">              
    <li><%= Html.ActionLink("Home", "Index", "Home") %></li>
    <li><%= Html.ActionLink("Contacts", "Index", "Contacts") %></li>
</ul>
Run Code Online (Sandbox Code Playgroud)

现在,我决定在菜单下面放一个面包屑,问题是,我不知道应该使用什么标签.我想尽可能使用有意义的标签.请帮我...

html breadcrumbs semantics

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

如何在TextMate中更新GetBundles?

我最初使用Trey Piepmeier的说明安装了GetBundles .之后,我使用GetBundles安装了所有TextMate包.我注意到我的GetBundles副本很旧,所以我做了以下内容:

cd ~/Library/Application Support/TextMate/Bundles/
svn co http://svn.textmate.org/trunk/Review/Bundles/GetBundles.tmbundle/
Run Code Online (Sandbox Code Playgroud)

当我重新启动TextMate并打开GetBundles时,会弹出一个对话框,要求我为许多(如果不是全部)捆绑包选择源.我不记得我安装的Django软件包的版本或其他许多版本.

无论如何更新GetBundles而不让它失去对源的影响吗?

textmate textmatebundles

4
推荐指数
1
解决办法
2104
查看次数

如何以编程方式设置VIM文件类型?

有没有办法以编程方式设置vim文件类型,所以不要这样做:

au BufNewFile,BufRead *.dump set filetype=sql
Run Code Online (Sandbox Code Playgroud)

我可以做这样的事情

let g:temp_file_type = 'sql'
au BufNewFile,BufRead *.dump set filetype= g:temp_file_type
Run Code Online (Sandbox Code Playgroud)

vim

3
推荐指数
1
解决办法
558
查看次数

在Slim中创建HTML5 Boilerplate条件HTML类

HTML5 Boilerplate使用以下条件<html>类:

<!doctype html>
<!-- paulirish.com/2008/conditional-stylesheets-vs-css-hacks-answer-neither/ -->
<!--[if lt IE 7 ]> <html class="no-js ie6" lang="en"> <![endif]-->
<!--[if IE 7 ]>    <html class="no-js ie7" lang="en"> <![endif]-->
<!--[if IE 8 ]>    <html class="no-js ie8" lang="en"> <![endif]-->
<!--[if (gte IE 9)|!(IE)]><!--> <html class="no-js" lang="en"> <!--<![endif]-->
<head>
Run Code Online (Sandbox Code Playgroud)

我想知道如何在基于Slim的模板中重现这一点.

这是我到目前为止所拥有的:

doctype html
/! paulirish.com/2008/conditional-stylesheets-vs-css-hacks-answer-neither/
/[ if lt IE 7 ]
    html class="no-js ie6" lang="en"
/[ if IE 7 ]
    html class="no-js ie7" lang="en"
/[ if IE 8 ]
    html …
Run Code Online (Sandbox Code Playgroud)

html5boilerplate slim-lang

3
推荐指数
1
解决办法
1670
查看次数