通过 Makefile 并行启动多个 vagrant box

通过 Makefile 并行启动多个 vagrant box

我有三个 vagrant box,通常需要同时使用,所以我创建了一个 Makefile 来同时启动它们。嗯,实际上是一个接一个。

Makefile 基本上是这样的:

up:
        cd box1 && vagrant up;
        cd box2 && vagrant up;
        cd box3 && vagrant up;

他们一个接一个地开始,这意味着需要很多时间。但很多时间只是等待,并没有发生太多事情。所以我想我想并行启动它们以减少所需的时间。

简单地加一个&aftervagrant up是行不通的。如果我把它放在$(),""或之间,也不会``

我需要做什么才能使这些盒子并行启动?

顺便说一句,我用作zsh外壳。

答案1

我现在可以自己回答这个问题了。 Makefile 应如下所示:

.PHONY: up box1_up box2_up box3_up

up: box1_up box2_up box3_up

box1_up:
    cd box1 && vagrant up;

box2_up:
    cd box2 && vagrant up;

box3_up:
    cd box3 && vagrant up;

像这样调用:make -j3 up

相关内容