如何在需要时使用make来创建和刷新python虚拟环境?

时间:2016-05-27 11:17:54

标签: makefile pip

我想通过make在虚拟环境中通过pip优化python requirements.txt的创建和安装。

我们的想法是,pip安装代码只应在上次执行后更新requirements.txt文件时运行。

我知道make在没有更新源文件时不重新编译任务非常聪明,在这种情况下源文件将是requirements.txt文件。

如何使用make获取此内容?

1 个答案:

答案 0 :(得分:4)

这样的东西?

.env: requirements.txt
    $(RM) -rf $@
    virtualenv $@ \
    && . ./$@/bin/activate \
    && pip install -r $<

正如Etan Reisner所说(谢谢!).env目录的时间戳可能因其他原因而改变,因此您可能想要使用标志文件:

.env/made: requirements.txt
    $(RM) -rf $(@D)
    virtualenv $(@D) \
    && . ./$(@D)/bin/activate \
    && pip install -r $<
    touch $@