Ruby 大气层与雾
使用vsphere provider在fog 1.9中尝试做一些非常简单的事情。小文档中的示例对我不起作用 我想列出文件夹中的所有虚拟机。简单,嗯 试过Ruby 大气层与雾,ruby,fog,vsphere,Ruby,Fog,Vsphere,使用vsphere provider在fog 1.9中尝试做一些非常简单的事情。小文档中的示例对我不起作用 我想列出文件夹中的所有虚拟机。简单,嗯 试过 credentials = { :provider => "vsphere", :vsphere_username => user, :vsphere_password=> pass, :vsphere_server => "vc_name", :vsphere_ssl =&
credentials = {
:provider => "vsphere",
:vsphere_username => user,
:vsphere_password=> pass,
:vsphere_server => "vc_name",
:vsphere_ssl => true,
:vsphere_expected_pubkey_hash => "1466f20c1b3f990a2a018dc2ca22a79fc2d0284ab4aac534c47blah"
}
compute = Fog::Compute.new(credentials)
vms = compute.servers.all('folder' => '/Datacenters/Ewl/Self-Service')
pp vms
这将连接并搅动数据中心中的所有虚拟机,而不仅仅是文件夹。Grr
我尝试了很多关于文件夹变量的变化,例如
vms = compute.servers.all('folder' => '/Hosts & Clusters/Ewl1_vm/Self-Service')
vms = compute.servers.all('folder' => 'Self-Service')
vms = compute.servers.all('folder' => 'Self-Service','datacenter' => 'Ewl')
但所有人都做同样的事情
我已经完成了代码的编写,但它并没有真正帮助我
救命啊 如果我了解您的数据中心和文件夹名称,那么简单的方法是:
vms = compute.list_virtual_machines(datacenter: 'Ewl', folder: 'Self-Service')
假设.servers.all筛选器中的“folder”可以正常工作,但您肯定会发现隐藏路径、多个数据中心等带来的惊喜。如果我了解您的数据中心和文件夹名称,那么简单的方法是:
vms = compute.list_virtual_machines(datacenter: 'Ewl', folder: 'Self-Service')
假设.servers.all筛选器中的“文件夹”可以正常工作,但您肯定会发现隐藏路径、多个数据中心等带来的惊喜。谢谢@greymouser的回复。当我看到你对定义散列的看法时,我很震惊。我以为我搞错了!然而,我试过了,得到了这个<代码>test1.rb:36:语法错误,意外“:”,应为“)”…t_虚拟机(数据中心:“Ewl”,文件夹:“自助服务”…^test1.rb:36:语法错误,意外“,”,应为$end…所有机器(数据中心:“Ewl”,文件夹:“自助服务”)示例使用火箭=>是的,如果你的Ruby版本支持旧式散列,那么就使用旧式散列。除此之外,上面的代码应该适合你。是的,现在使用1.9就可以了!干杯@greymouser 1-up。创建了完整答案的要点感谢回复@greymouser。当我看到你对散列定义的看法时,我感到震惊。我原以为我弄错了!但是我试过了,得到了这个…
test1。rb:36:语法错误,意外“:”,预期“)”…t_虚拟机(数据中心:“Ewl”,文件夹:“自助服务”…^test1.rb:36:语法错误,意外“,”,预期$end…所有机器(数据中心:'Ewl',文件夹:'Self-Service')
示例使用火箭=>是的,如果你的Ruby版本支持旧式散列,那么就使用旧式散列。除此之外,上面的代码应该适合你。是的,现在使用1.9就可以了!干杯@greymouser 1-up。创建要点来完成答案