我有一个问题要问你们这些流浪者和TDD的人,
如何让Vagrant Ubuntu虚拟机向Windows 7或OS X主机发送自动测试/保护通知
详细信息:
我正在努力构建我的终极公路战士开发环境,这样我就可以在计算机、操作系统和国家之间切换,而不用一直担心重新配置我的环境。我正在使用Vagrant制作反映我们生产环境的一次性虚拟机,并让我从工作电脑(Windows7)跳到家用电脑(OSX),几乎不用麻烦。
我正在尝试配置我的Vagrant Ubuntu虚拟机,以便与测试驱动开发(TDD)一起使用,并使用自动测试/保护实用程序在保存时自动运行我的测试,并将结果显示为主机上的桌面通知。我在无头模式下运行Vagrant VM,所以没有桌面可以接收通知,所以我需要将它们转发到主机。
我有几个线索,比如使用Growl的远程通知(用于接收,但我不知道如何从Ubuntu虚拟机发送),或者入侵Growl,但我认为这个问题肯定已经被其他人解决了。
找到了一种在Windows8主机和Ubuntu流浪箱上工作的方法:
在导轨中安装gemruby_gntp
。
添加到Guardfile
:
`notification :gntp, :sticky => false, :host => '192.168.0.77', :port => '23053', :password => 'yourpassword'`
192.168.0.77
是主机的IP,您可以通过运行ipconfig
来找到它。
23053
-咆哮的标准端口。
安装growlforwindows并将网络订阅设置为Vagrant box(帮助)带有主机10.0.2.2
、端口23053
和密码yourpassword
10.0.2.2
-流浪箱gataway的默认IP,您可以在流浪ssh中运行netstat -rn
来确认。
最后,您可以运行guard -p
并开始测试。
如果你得到错误"融合">,那么它在Guardfile中是错误的IP,例如,如果我设置windows机器的网关IP而不是本地IP,就会发生这种情况。如果您收到错误"Notifany register filed">,那么它在growlforwindows中是错误的ip。
为什么不将所有测试的输出转发到一个文件中,然后通过SSH连接并查看结果?基本上tail -f
命令在这里很方便。