pip install -r requirements.txt from puppet?

时间:2014-01-29 01:12:58

标签: python pip puppet

我有一个pip样式的requirements.txt文件,用于跟踪我的python依赖项,我将我的开发环境移动到vagrant + puppet。到目前为止,我一直在使用内置于puppet的pip提供程序来安装这样的单个包:

package {
  ["django", "nose"]:
      ensure => present,
      provider => pip
}

是否可以传入我的requirements.txt并让puppet在文件发生变化时保持包更新?

1 个答案:

答案 0 :(得分:8)

是的,这是可能的。而不是定义包资源,而是定义一个“exec”资源,它将把requirements.txt作为变量并运行pip install命令。

E.g。

class pip_install(
 $path_requirements_file,
){

  exec { "pip_requirements_install":
    command     => "pip install -r ${path_requirements_file}",
    refreshonly => true,
  }

}