ruby - 使用 Veewee 创建 VirtualBox 时如何传输一些文件

标签 ruby virtualbox veewee

我正在使用 Veewee 构建一个虚拟盒子,我想要一个脚本来调用新创建的盒子上的另一个帮助脚本。

我知道的唯一方法是在 definition.rbpostinstall-files 部分提供主脚本和辅助脚本,如下所示: :postinstall_files => [ "main.sh","helper.sh"]

我的问题是 Veewee 正在尝试执行所有脚本,包括帮助程序脚本(我不想要)。

所以我很感兴趣是否有另一种方法可以在 VM 上传输我的 helper.sh 脚本,以便从 main.sh 脚本中调用。

最佳答案

您可以使用 veewee build hooks像这样:

Veewee::Definition.declare({
  :hooks => {
      :before_postinstall => Proc.new { definition.box.scp('/tmp/helper.sh', '/home/veewee/helper.sh') }
  }
})

关于ruby - 使用 Veewee 创建 VirtualBox 时如何传输一些文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18100277/

相关文章:

oracle - Vagrant GuestAdditions 似乎已正确安装 (5.1.20),但未运行

ruby - Veewee 安装错误

ruby - 阅读用户输入时如何避免回显换行符?

ruby - RSpec - 模拟与符号参数

ruby - 如何使用 Sinatra 配置 RSpec 以在我的测试套件运行之前动态确定哪个 Sinatra 应用程序正在运行?

ruby - 如何在 Ruby 中实现枚举器?

c# - 从 C# 向 VMWare 发送键盘输入

ubuntu - 当我有 VM 时,如何在 Ubuntu 12.04 上安装 KVM