2

我想在 vim 中运行 Gitlab 的 rspec 测试(调用:!rspec)。问题是,我正在使用这里提供的 vagrant box:https ://github.com/gitlabhq/gitlab-vagrant-vm

这意味着整个应用程序在 vagrant box 内运行,当我从 vim 中调用 rspec 时,它会尝试在本地运行。

有什么办法可以将 rspec 调用转发到 vagrant box,并在本地取回输出?

我找到了这个:https ://github.com/clintoncwolfe/vagrant-rspec-ci但它不是我要找的,因为我必须运行自定义命令。

也许它与:Spork、Vagrant 和 Rspec有关

4

1 回答 1

1

您可以通过 ssh 执行任何命令,并返回输出:

$ ssh user@host echo "hi"
hi

您可以使用它来运行 rspec:

$ ssh user@vagrant-ip "cd /path/to/project && rspec"

使用这种方法要记住的是,必须正确设置 shell 环境以允许访问rspec命令。您的里程会因您管理红宝石的方式而异。

但是你可以在 vim 中设置一个命令来执行这个 SSH 命令,并且会返回输出,例如:

:command VRspec exec "system('ssh user@vagrant-ip...')"
于 2013-07-18T15:15:46.140 回答