代码之家  ›  专栏  ›  技术社区  ›  Chris R

是否可以预先创建一个用于hudson构建的virtualenv?

  •  2
  • Chris R  · 技术社区  · 15 年前

    我遵循hudson/python/virtualenv CI解决方案的概要 described at heisel.org 但其中一个步骤确实令人恼火,这就是为CI运行创建的virtualenv的配置部分:

    pip install -q -E ./ve -r requirements.pip
    pip install -q -E ./ve -r requirements-test.pip
    

    这需要大量的时间来运行,每次源文件更改时,我们都会重新下载相当于大量数据的内容。

    是否可以在Hudson中创建模板工作区,这样它就可以签出一个预先准备好的工作区,而不是签出一个空的工作区?

    3 回复  |  直到 15 年前
        1
  •  1
  •   Community Mohan Dere    8 年前

    有两种选择:

    1. 在您的源存储库中有一个归档文件,它会在

    2. 使用任何合适的配置管理选项来不清除工作区 选项)。然后将install命令保存在构建脚本中,但将它们放入 在一个 if 语句,以便它们仅在以下情况下运行(例如) .pip_installed 文件不存在,或者设置了生成参数。

    3. 你也许能得到 Clone Workspace 做你想做的事的插件 想要。但那是另一种供应链管理,我猜你可能不会 this previous question 关于如何解决这个问题的一些想法)。

    将pip配置设置为从 包的本地缓存。

    pip -f http://localhost/packages/
    
        2
  •  0
  •   claymation    14 年前

        3
  •  0
  •   Community Mohan Dere    8 年前

    如果您为每个工作区创建一个新的venv,那么您只需要在开始时安装一次所有的dep,这样后续的构建就快得多。请参阅我的帖子,以获取我编写的帮助脚本:

    "Pretty" Continuous Integration for Python