rbvmomi 1.13.0 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CONTRIBUTORS.md +1 -0
- data/README.md +1 -1
- data/examples/annotate.rb +7 -7
- data/examples/cached_ovf_deploy.rb +8 -8
- data/examples/clone_vm.rb +4 -4
- data/examples/create_vm-1.9.rb +4 -4
- data/examples/create_vm.rb +4 -4
- data/examples/delete_disk_from_vm.rb +57 -0
- data/examples/extraConfig.rb +6 -6
- data/examples/lease_tool.rb +6 -6
- data/examples/logbundle.rb +4 -4
- data/examples/logtail.rb +4 -4
- data/examples/nfs_datastore.rb +7 -7
- data/examples/power.rb +6 -6
- data/examples/readme-1.rb +3 -3
- data/examples/readme-2.rb +3 -3
- data/examples/screenshot.rb +4 -4
- data/examples/vdf.rb +4 -4
- data/examples/vm_drs_behavior.rb +7 -7
- data/exe/rbvmomish +5 -5
- data/lib/rbvmomi/{trollop.rb → optimist.rb} +7 -7
- data/lib/rbvmomi/version.rb +1 -1
- data/rbvmomi.gemspec +1 -1
- metadata +7 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 3675fb1f195476fffb958df44a667c74b347277e5fa88416de07c33093286495
|
4
|
+
data.tar.gz: 824a521c72865d6e8390cc8675b692d0f413d81426fb29882bb844ec97fbcb17
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 06ec29d563c568e02b3b6740e45560c21ca0f5752f6815add6fc3a925f92aefa6ce51c16179acaf772b9d7f3aaca338f4c62fce84ee2444d790b997b591ab41c
|
7
|
+
data.tar.gz: ee5baaeb14038b98e66ba57c4ef9c76a8e2fbbd83361feec5e93dcef6aef26fd4aa5d3cda77634c3d625a2c08d3fb89c38380060e21565460f9262e603d1d67e
|
data/CONTRIBUTORS.md
CHANGED
@@ -6,6 +6,7 @@
|
|
6
6
|
* Colin O'Byrne and Martin Marinov <cobyrne@vmware.com>
|
7
7
|
* Colin O'Byrne and Nick Coelius <cobyrne@vmware.com>
|
8
8
|
* Daniel Rife <daniel.rife@rightscale.com>
|
9
|
+
* Dave Hewitt <43970119+davehewitt@users.noreply.github.com>
|
9
10
|
* Dominic Cleal <dcleal@redhat.com>
|
10
11
|
* Dominic Cleal <dominic@cleal.org>
|
11
12
|
* Doug MacEachern <dougm@vmware.com>
|
data/README.md
CHANGED
@@ -89,7 +89,7 @@ A few important points:
|
|
89
89
|
* Data object types can usually be inferred from context, so you may use a hash instead.
|
90
90
|
* Enumeration values are simply strings.
|
91
91
|
* Example code is included in the examples/ directory.
|
92
|
-
* A set of helper methods for
|
92
|
+
* A set of helper methods for Optimist is included to speed up development of
|
93
93
|
command line apps. See the included examples for usage.
|
94
94
|
* If you don't have trusted SSL certificates installed on the host you're
|
95
95
|
connecting to, you'll get an `OpenSSL::SSL::SSLError` "certificate verify
|
data/examples/annotate.rb
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
# Copyright (c) 2011-2017 VMware, Inc. All Rights Reserved.
|
2
2
|
# SPDX-License-Identifier: MIT
|
3
3
|
|
4
|
-
require '
|
4
|
+
require 'optimist'
|
5
5
|
require 'rbvmomi'
|
6
|
-
require 'rbvmomi/
|
6
|
+
require 'rbvmomi/optimist'
|
7
7
|
|
8
8
|
VIM = RbVmomi::VIM
|
9
9
|
CMDS = %w(get set)
|
10
10
|
|
11
|
-
opts =
|
11
|
+
opts = Optimist.options do
|
12
12
|
banner <<-EOS
|
13
13
|
Annotate a VM.
|
14
14
|
|
@@ -38,10 +38,10 @@ Other options:
|
|
38
38
|
stop_on CMDS
|
39
39
|
end
|
40
40
|
|
41
|
-
vm_name = ARGV[0] or
|
42
|
-
cmd = ARGV[1] or
|
41
|
+
vm_name = ARGV[0] or Optimist.die("no VM name given")
|
42
|
+
cmd = ARGV[1] or Optimist.die("no command given")
|
43
43
|
abort "invalid command" unless CMDS.member? cmd
|
44
|
-
|
44
|
+
Optimist.die("must specify host") unless opts[:host]
|
45
45
|
|
46
46
|
vim = VIM.connect opts
|
47
47
|
|
@@ -52,6 +52,6 @@ case cmd
|
|
52
52
|
when 'get'
|
53
53
|
puts vm.config.annotation
|
54
54
|
when 'set'
|
55
|
-
value = ARGV[2] or
|
55
|
+
value = ARGV[2] or Optimist.die("no annotation given")
|
56
56
|
vm.ReconfigVM_Task(:spec => VIM.VirtualMachineConfigSpec(:annotation => value)).wait_for_completion
|
57
57
|
end
|
@@ -3,16 +3,16 @@
|
|
3
3
|
# Copyright (c) 2012-2017 VMware, Inc. All Rights Reserved.
|
4
4
|
# SPDX-License-Identifier: MIT
|
5
5
|
|
6
|
-
require '
|
6
|
+
require 'optimist'
|
7
7
|
require 'rbvmomi'
|
8
|
-
require 'rbvmomi/
|
8
|
+
require 'rbvmomi/optimist'
|
9
9
|
require 'rbvmomi/utils/deploy'
|
10
10
|
require 'rbvmomi/utils/admission_control'
|
11
11
|
require 'yaml'
|
12
12
|
|
13
13
|
VIM = RbVmomi::VIM
|
14
14
|
|
15
|
-
opts =
|
15
|
+
opts = Optimist.options do
|
16
16
|
banner <<-EOS
|
17
17
|
Deploy an OVF to a cluster, using a cached template if available.
|
18
18
|
|
@@ -45,12 +45,12 @@ Other options:
|
|
45
45
|
opt :lease, "Lease in days", :type => :int, :default => 3
|
46
46
|
end
|
47
47
|
|
48
|
-
|
49
|
-
|
48
|
+
Optimist.die("must specify host") unless opts[:host]
|
49
|
+
Optimist.die("no cluster path given") unless opts[:computer_path]
|
50
50
|
template_folder_path = opts[:template_path]
|
51
|
-
template_name = opts[:template_name] or
|
52
|
-
vm_name = ARGV[0] or
|
53
|
-
ovf_url = ARGV[1] or
|
51
|
+
template_name = opts[:template_name] or Optimist.die("no template name given")
|
52
|
+
vm_name = ARGV[0] or Optimist.die("no VM name given")
|
53
|
+
ovf_url = ARGV[1] or Optimist.die("No OVF URL given")
|
54
54
|
|
55
55
|
vim = VIM.connect opts
|
56
56
|
dc = vim.serviceInstance.find_datacenter(opts[:datacenter]) or abort "datacenter not found"
|
data/examples/clone_vm.rb
CHANGED
@@ -3,13 +3,13 @@
|
|
3
3
|
# Copyright (c) 2011-2017 VMware, Inc. All Rights Reserved.
|
4
4
|
# SPDX-License-Identifier: MIT
|
5
5
|
|
6
|
-
require '
|
6
|
+
require 'optimist'
|
7
7
|
require 'rbvmomi'
|
8
|
-
require 'rbvmomi/
|
8
|
+
require 'rbvmomi/optimist'
|
9
9
|
|
10
10
|
VIM = RbVmomi::VIM
|
11
11
|
|
12
|
-
opts =
|
12
|
+
opts = Optimist.options do
|
13
13
|
banner <<-EOS
|
14
14
|
Clone a VM.
|
15
15
|
|
@@ -36,7 +36,7 @@ Other options:
|
|
36
36
|
opt :linked_clone, "Use a linked clone instead of a full clone"
|
37
37
|
end
|
38
38
|
|
39
|
-
|
39
|
+
Optimist.die("must specify host") unless opts[:host]
|
40
40
|
ARGV.size == 2 or abort "must specify VM source name and VM target name"
|
41
41
|
vm_source = ARGV[0]
|
42
42
|
vm_target = ARGV[1]
|
data/examples/create_vm-1.9.rb
CHANGED
@@ -3,13 +3,13 @@
|
|
3
3
|
# Copyright (c) 2011-2017 VMware, Inc. All Rights Reserved.
|
4
4
|
# SPDX-License-Identifier: MIT
|
5
5
|
|
6
|
-
require '
|
6
|
+
require 'optimist'
|
7
7
|
require 'rbvmomi'
|
8
|
-
require 'rbvmomi/
|
8
|
+
require 'rbvmomi/optimist'
|
9
9
|
|
10
10
|
VIM = RbVmomi::VIM
|
11
11
|
|
12
|
-
opts =
|
12
|
+
opts = Optimist.options do
|
13
13
|
banner <<-EOS
|
14
14
|
Create a VM.
|
15
15
|
|
@@ -34,7 +34,7 @@ Other options:
|
|
34
34
|
EOS
|
35
35
|
end
|
36
36
|
|
37
|
-
|
37
|
+
Optimist.die("must specify host") unless opts[:host]
|
38
38
|
vm_name = ARGV[0] or abort "must specify VM name"
|
39
39
|
|
40
40
|
vim = VIM.connect opts
|
data/examples/create_vm.rb
CHANGED
@@ -3,13 +3,13 @@
|
|
3
3
|
# Copyright (c) 2011-2017 VMware, Inc. All Rights Reserved.
|
4
4
|
# SPDX-License-Identifier: MIT
|
5
5
|
|
6
|
-
require '
|
6
|
+
require 'optimist'
|
7
7
|
require 'rbvmomi'
|
8
|
-
require 'rbvmomi/
|
8
|
+
require 'rbvmomi/optimist'
|
9
9
|
|
10
10
|
VIM = RbVmomi::VIM
|
11
11
|
|
12
|
-
opts =
|
12
|
+
opts = Optimist.options do
|
13
13
|
banner <<-EOS
|
14
14
|
Create a VM.
|
15
15
|
|
@@ -34,7 +34,7 @@ Other options:
|
|
34
34
|
EOS
|
35
35
|
end
|
36
36
|
|
37
|
-
|
37
|
+
Optimist.die("must specify host") unless opts[:host]
|
38
38
|
vm_name = ARGV[0] or abort "must specify VM name"
|
39
39
|
|
40
40
|
vim = VIM.connect opts
|
@@ -0,0 +1,57 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
|
3
|
+
# Copyright (c) 2011-2017 VMware, Inc. All Rights Reserved.
|
4
|
+
# SPDX-License-Identifier: MIT
|
5
|
+
|
6
|
+
require 'optimist'
|
7
|
+
require 'rbvmomi'
|
8
|
+
require 'rbvmomi/optimist'
|
9
|
+
|
10
|
+
VIM = RbVmomi::VIM
|
11
|
+
|
12
|
+
opts = Optimist.options do
|
13
|
+
banner <<-EOS
|
14
|
+
Delete a disk from a VM.
|
15
|
+
|
16
|
+
Usage:
|
17
|
+
delete_disk_from_vm.rb [options] vm_name disk_unit_number
|
18
|
+
|
19
|
+
VIM connection options:
|
20
|
+
EOS
|
21
|
+
|
22
|
+
rbvmomi_connection_opts
|
23
|
+
|
24
|
+
text <<-EOS
|
25
|
+
|
26
|
+
VM location options:
|
27
|
+
EOS
|
28
|
+
|
29
|
+
rbvmomi_datacenter_opt
|
30
|
+
end
|
31
|
+
|
32
|
+
Optimist.die("must specify host") unless opts[:host]
|
33
|
+
ARGV.size == 2 or abort "must specify VM name and disk unit number"
|
34
|
+
vm_name = ARGV[0]
|
35
|
+
disk_unit_number = ARGV[1].to_i
|
36
|
+
|
37
|
+
vim = VIM.connect opts
|
38
|
+
dc = vim.serviceInstance.find_datacenter(opts[:datacenter]) or abort "datacenter not found"
|
39
|
+
vm = dc.find_vm(vm_name) or abort "VM not found"
|
40
|
+
|
41
|
+
disk = vm.config.hardware.device.detect do |device|
|
42
|
+
device.kind_of?(VIM::VirtualDisk) && device.unitNumber == disk_unit_number
|
43
|
+
end
|
44
|
+
|
45
|
+
raise "Disk #{disk_unit_number} not found" if disk.nil?
|
46
|
+
|
47
|
+
spec = VIM::VirtualMachineConfigSpec(
|
48
|
+
:deviceChange => [
|
49
|
+
VIM::VirtualDeviceConfigSpec(
|
50
|
+
:device => disk,
|
51
|
+
:fileOperation => VIM.VirtualDeviceConfigSpecFileOperation(:destroy),
|
52
|
+
:operation => VIM::VirtualDeviceConfigSpecOperation(:remove)
|
53
|
+
)
|
54
|
+
]
|
55
|
+
)
|
56
|
+
|
57
|
+
vm.ReconfigVM_Task(:spec => spec).wait_for_completion
|
data/examples/extraConfig.rb
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
# Copyright (c) 2011-2017 VMware, Inc. All Rights Reserved.
|
2
2
|
# SPDX-License-Identifier: MIT
|
3
3
|
|
4
|
-
require '
|
4
|
+
require 'optimist'
|
5
5
|
require 'rbvmomi'
|
6
|
-
require 'rbvmomi/
|
6
|
+
require 'rbvmomi/optimist'
|
7
7
|
|
8
8
|
VIM = RbVmomi::VIM
|
9
9
|
CMDS = %w(list set)
|
10
10
|
|
11
|
-
opts =
|
11
|
+
opts = Optimist.options do
|
12
12
|
banner <<-EOS
|
13
13
|
View and modify VM extraConfig options.
|
14
14
|
|
@@ -38,10 +38,10 @@ Other options:
|
|
38
38
|
stop_on CMDS
|
39
39
|
end
|
40
40
|
|
41
|
-
vm_name = ARGV[0] or
|
42
|
-
cmd = ARGV[1] or
|
41
|
+
vm_name = ARGV[0] or Optimist.die("no VM name given")
|
42
|
+
cmd = ARGV[1] or Optimist.die("no command given")
|
43
43
|
abort "invalid command" unless CMDS.member? cmd
|
44
|
-
|
44
|
+
Optimist.die("must specify host") unless opts[:host]
|
45
45
|
|
46
46
|
vim = VIM.connect opts
|
47
47
|
|
data/examples/lease_tool.rb
CHANGED
@@ -3,9 +3,9 @@
|
|
3
3
|
# Copyright (c) 2012-2017 VMware, Inc. All Rights Reserved.
|
4
4
|
# SPDX-License-Identifier: MIT
|
5
5
|
|
6
|
-
require '
|
6
|
+
require 'optimist'
|
7
7
|
require 'rbvmomi'
|
8
|
-
require 'rbvmomi/
|
8
|
+
require 'rbvmomi/optimist'
|
9
9
|
require 'rbvmomi/utils/leases'
|
10
10
|
require 'yaml'
|
11
11
|
|
@@ -13,7 +13,7 @@ VIM = RbVmomi::VIM
|
|
13
13
|
CMDS = ['set_lease_on_leaseless_vms', 'show_expired_vms',
|
14
14
|
'show_soon_expired_vms', 'kill_expired_vms']
|
15
15
|
|
16
|
-
opts =
|
16
|
+
opts = Optimist.options do
|
17
17
|
banner <<-EOS
|
18
18
|
Tool for managing leases on VMs where leases are stored in YAML on VM annotations.
|
19
19
|
|
@@ -45,9 +45,9 @@ Other options:
|
|
45
45
|
stop_on CMDS
|
46
46
|
end
|
47
47
|
|
48
|
-
|
49
|
-
cmd = ARGV[0] or
|
50
|
-
|
48
|
+
Optimist.die("must specify host") unless opts[:host]
|
49
|
+
cmd = ARGV[0] or Optimist.die("no command given")
|
50
|
+
Optimist.die("no vm folder path given") unless opts[:vm_folder_path]
|
51
51
|
|
52
52
|
vim = VIM.connect opts
|
53
53
|
dc = vim.serviceInstance.find_datacenter(opts[:datacenter]) or abort "datacenter not found"
|
data/examples/logbundle.rb
CHANGED
@@ -2,14 +2,14 @@
|
|
2
2
|
# SPDX-License-Identifier: MIT
|
3
3
|
|
4
4
|
# @todo Retrieve ESX log bundles when run against VC.
|
5
|
-
require '
|
5
|
+
require 'optimist'
|
6
6
|
require 'rbvmomi'
|
7
|
-
require 'rbvmomi/
|
7
|
+
require 'rbvmomi/optimist'
|
8
8
|
|
9
9
|
VIM = RbVmomi::VIM
|
10
10
|
DEFAULT_SERVER_PLACEHOLDER = '0.0.0.0'
|
11
11
|
|
12
|
-
opts =
|
12
|
+
opts = Optimist.options do
|
13
13
|
banner <<-EOS
|
14
14
|
Generate and retrieve a log bundle.
|
15
15
|
|
@@ -29,7 +29,7 @@ Other options:
|
|
29
29
|
EOS
|
30
30
|
end
|
31
31
|
|
32
|
-
|
32
|
+
Optimist.die("must specify host") unless opts[:host]
|
33
33
|
dest = ARGV[0] or abort("must specify destination directory")
|
34
34
|
|
35
35
|
abort "destination is not a directory" unless File.directory? dest
|
data/examples/logtail.rb
CHANGED
@@ -2,13 +2,13 @@
|
|
2
2
|
# SPDX-License-Identifier: MIT
|
3
3
|
|
4
4
|
# Translation of example 2-2 from the vSphere SDK for Perl Programming Guide
|
5
|
-
require '
|
5
|
+
require 'optimist'
|
6
6
|
require 'rbvmomi'
|
7
|
-
require 'rbvmomi/
|
7
|
+
require 'rbvmomi/optimist'
|
8
8
|
|
9
9
|
VIM = RbVmomi::VIM
|
10
10
|
|
11
|
-
opts =
|
11
|
+
opts = Optimist.options do
|
12
12
|
banner <<-EOS
|
13
13
|
Follow a log file.
|
14
14
|
|
@@ -29,7 +29,7 @@ Other options:
|
|
29
29
|
EOS
|
30
30
|
end
|
31
31
|
|
32
|
-
|
32
|
+
Optimist.die("must specify host") unless opts[:host]
|
33
33
|
logKey = ARGV[0]
|
34
34
|
|
35
35
|
vim = VIM.connect opts
|
data/examples/nfs_datastore.rb
CHANGED
@@ -3,14 +3,14 @@
|
|
3
3
|
# Copyright (c) 2011-2017 VMware, Inc. All Rights Reserved.
|
4
4
|
# SPDX-License-Identifier: MIT
|
5
5
|
|
6
|
-
require '
|
6
|
+
require 'optimist'
|
7
7
|
require 'rbvmomi'
|
8
|
-
require 'rbvmomi/
|
8
|
+
require 'rbvmomi/optimist'
|
9
9
|
|
10
10
|
VIM = RbVmomi::VIM
|
11
11
|
CMDS = %w(mount unmount)
|
12
12
|
|
13
|
-
opts =
|
13
|
+
opts = Optimist.options do
|
14
14
|
banner <<-EOS
|
15
15
|
Mount/Unmount an NFS datastore from a cluster or single host system.
|
16
16
|
|
@@ -40,12 +40,12 @@ Other options:
|
|
40
40
|
stop_on CMDS
|
41
41
|
end
|
42
42
|
|
43
|
-
|
43
|
+
Optimist.die("must specify host") unless opts[:host]
|
44
44
|
|
45
|
-
cr_path = ARGV[0] or
|
46
|
-
cmd = ARGV[1] or
|
45
|
+
cr_path = ARGV[0] or Optimist.die("no system name given")
|
46
|
+
cmd = ARGV[1] or Optimist.die("no command given")
|
47
47
|
abort "invalid command" unless CMDS.member? cmd
|
48
|
-
nfs_spec = ARGV[2] or
|
48
|
+
nfs_spec = ARGV[2] or Optimist.die("no nfs path given")
|
49
49
|
remoteHost, remotePath = nfs_spec.split(":")
|
50
50
|
localPath = ARGV[3] || remoteHost
|
51
51
|
mode = "readOnly" #hardcoded.
|
data/examples/power.rb
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
# Copyright (c) 2011-2017 VMware, Inc. All Rights Reserved.
|
2
2
|
# SPDX-License-Identifier: MIT
|
3
3
|
|
4
|
-
require '
|
4
|
+
require 'optimist'
|
5
5
|
require 'rbvmomi'
|
6
|
-
require 'rbvmomi/
|
6
|
+
require 'rbvmomi/optimist'
|
7
7
|
|
8
8
|
VIM = RbVmomi::VIM
|
9
9
|
CMDS = %w(on off reset suspend destroy)
|
10
10
|
|
11
|
-
opts =
|
11
|
+
opts = Optimist.options do
|
12
12
|
banner <<-EOS
|
13
13
|
Perform VM power operations.
|
14
14
|
|
@@ -37,9 +37,9 @@ Other options:
|
|
37
37
|
stop_on CMDS
|
38
38
|
end
|
39
39
|
|
40
|
-
cmd = ARGV[0] or
|
41
|
-
vm_name = ARGV[1] or
|
42
|
-
|
40
|
+
cmd = ARGV[0] or Optimist.die("no command given")
|
41
|
+
vm_name = ARGV[1] or Optimist.die("no VM name given")
|
42
|
+
Optimist.die("must specify host") unless opts[:host]
|
43
43
|
|
44
44
|
vim = VIM.connect opts
|
45
45
|
|
data/examples/readme-1.rb
CHANGED
@@ -2,9 +2,9 @@
|
|
2
2
|
# SPDX-License-Identifier: MIT
|
3
3
|
|
4
4
|
require 'rbvmomi'
|
5
|
-
require 'rbvmomi/
|
5
|
+
require 'rbvmomi/optimist'
|
6
6
|
|
7
|
-
opts =
|
7
|
+
opts = Optimist.options do
|
8
8
|
banner <<-EOS
|
9
9
|
Example 1 from the README: Power on a VM.
|
10
10
|
|
@@ -29,7 +29,7 @@ Other options:
|
|
29
29
|
EOS
|
30
30
|
end
|
31
31
|
|
32
|
-
|
32
|
+
Optimist.die("must specify host") unless opts[:host]
|
33
33
|
vm_name = ARGV[0] or abort "must specify VM name"
|
34
34
|
|
35
35
|
vim = RbVmomi::VIM.connect opts
|
data/examples/readme-2.rb
CHANGED
@@ -2,9 +2,9 @@
|
|
2
2
|
# SPDX-License-Identifier: MIT
|
3
3
|
|
4
4
|
require 'rbvmomi'
|
5
|
-
require 'rbvmomi/
|
5
|
+
require 'rbvmomi/optimist'
|
6
6
|
|
7
|
-
opts =
|
7
|
+
opts = Optimist.options do
|
8
8
|
banner <<-EOS
|
9
9
|
Example 2 from the README: Power on a VM the hard way.
|
10
10
|
|
@@ -29,7 +29,7 @@ Other options:
|
|
29
29
|
EOS
|
30
30
|
end
|
31
31
|
|
32
|
-
|
32
|
+
Optimist.die("must specify host") unless opts[:host]
|
33
33
|
vm_name = ARGV[0] or abort "must specify VM name"
|
34
34
|
|
35
35
|
vim = RbVmomi::VIM.connect opts
|
data/examples/screenshot.rb
CHANGED
@@ -2,13 +2,13 @@
|
|
2
2
|
# SPDX-License-Identifier: MIT
|
3
3
|
|
4
4
|
# Based on takeVMScreenshot.pl by William Lam
|
5
|
-
require '
|
5
|
+
require 'optimist'
|
6
6
|
require 'rbvmomi'
|
7
|
-
require 'rbvmomi/
|
7
|
+
require 'rbvmomi/optimist'
|
8
8
|
|
9
9
|
VIM = RbVmomi::VIM
|
10
10
|
|
11
|
-
opts =
|
11
|
+
opts = Optimist.options do
|
12
12
|
banner <<-EOS
|
13
13
|
Take a screenshot.
|
14
14
|
|
@@ -35,7 +35,7 @@ Other options:
|
|
35
35
|
EOS
|
36
36
|
end
|
37
37
|
|
38
|
-
|
38
|
+
Optimist.die("must specify host") unless opts[:host]
|
39
39
|
vm_name = ARGV[0] or abort("must specify VM name")
|
40
40
|
output_path = ARGV[1] or abort("must specify output filename")
|
41
41
|
|
data/examples/vdf.rb
CHANGED
@@ -2,13 +2,13 @@
|
|
2
2
|
# SPDX-License-Identifier: MIT
|
3
3
|
|
4
4
|
# Translation of vGhetto vdf, originally by William Lam
|
5
|
-
require '
|
5
|
+
require 'optimist'
|
6
6
|
require 'rbvmomi'
|
7
|
-
require 'rbvmomi/
|
7
|
+
require 'rbvmomi/optimist'
|
8
8
|
|
9
9
|
VIM = RbVmomi::VIM
|
10
10
|
|
11
|
-
opts =
|
11
|
+
opts = Optimist.options do
|
12
12
|
banner <<-EOS
|
13
13
|
Display utilization of each datastore in the datacenter.
|
14
14
|
|
@@ -33,7 +33,7 @@ Other options:
|
|
33
33
|
EOS
|
34
34
|
end
|
35
35
|
|
36
|
-
|
36
|
+
Optimist.die("must specify host") unless opts[:host]
|
37
37
|
|
38
38
|
vim = VIM.connect opts
|
39
39
|
|
data/examples/vm_drs_behavior.rb
CHANGED
@@ -3,15 +3,15 @@
|
|
3
3
|
# Copyright (c) 2011-2017 VMware, Inc. All Rights Reserved.
|
4
4
|
# SPDX-License-Identifier: MIT
|
5
5
|
|
6
|
-
require '
|
6
|
+
require 'optimist'
|
7
7
|
require 'rbvmomi'
|
8
|
-
require 'rbvmomi/
|
8
|
+
require 'rbvmomi/optimist'
|
9
9
|
|
10
10
|
VIM = RbVmomi::VIM
|
11
11
|
CMDS = %w(get set)
|
12
12
|
BEHAVIOR = %w(fullyAutomated manual partiallyAutomated default)
|
13
13
|
|
14
|
-
opts =
|
14
|
+
opts = Optimist.options do
|
15
15
|
banner <<-EOS
|
16
16
|
Configure VM DRS behavior.
|
17
17
|
|
@@ -41,10 +41,10 @@ Other options:
|
|
41
41
|
stop_on CMDS
|
42
42
|
end
|
43
43
|
|
44
|
-
|
44
|
+
Optimist.die("must specify host") unless opts[:host]
|
45
45
|
|
46
|
-
vm_name = ARGV[0] or
|
47
|
-
cmd = ARGV[1] or
|
46
|
+
vm_name = ARGV[0] or Optimist.die("no VM name given")
|
47
|
+
cmd = ARGV[1] or Optimist.die("no command given")
|
48
48
|
abort "invalid command" unless CMDS.member? cmd
|
49
49
|
|
50
50
|
vim = VIM.connect opts
|
@@ -64,7 +64,7 @@ when 'get'
|
|
64
64
|
end
|
65
65
|
puts "#{vm.name} is #{behavior}"
|
66
66
|
when 'set'
|
67
|
-
behavior = ARGV[2] or
|
67
|
+
behavior = ARGV[2] or Optimist.die("no behavior given")
|
68
68
|
abort "invalid behavior" unless BEHAVIOR.member? behavior
|
69
69
|
|
70
70
|
if behavior == "default"
|
data/exe/rbvmomish
CHANGED
@@ -2,14 +2,14 @@
|
|
2
2
|
# TODO keepalive
|
3
3
|
# TODO rc file
|
4
4
|
# TODO proxy support?
|
5
|
-
require '
|
5
|
+
require 'optimist'
|
6
6
|
require 'readline'
|
7
7
|
require 'rbvmomi'
|
8
|
-
require 'rbvmomi/
|
8
|
+
require 'rbvmomi/optimist'
|
9
9
|
|
10
10
|
VIM = RbVmomi::VIM
|
11
11
|
|
12
|
-
opts =
|
12
|
+
opts = Optimist.options do
|
13
13
|
banner <<-EOS
|
14
14
|
vSphere API console.
|
15
15
|
|
@@ -35,7 +35,7 @@ VIM connection options:
|
|
35
35
|
Other options:
|
36
36
|
EOS
|
37
37
|
|
38
|
-
$
|
38
|
+
$optimist = self
|
39
39
|
end
|
40
40
|
|
41
41
|
begin
|
@@ -102,7 +102,7 @@ def si
|
|
102
102
|
end
|
103
103
|
|
104
104
|
def help
|
105
|
-
$
|
105
|
+
$optimist.educate
|
106
106
|
:no_result
|
107
107
|
end
|
108
108
|
|
@@ -1,19 +1,19 @@
|
|
1
1
|
# Copyright (c) 2010-2017 VMware, Inc. All Rights Reserved.
|
2
2
|
# SPDX-License-Identifier: MIT
|
3
3
|
|
4
|
-
require '
|
4
|
+
require 'optimist'
|
5
5
|
|
6
|
-
# Convenience methods for
|
7
|
-
# @see http://
|
8
|
-
# @see
|
9
|
-
module
|
6
|
+
# Convenience methods for Optimist, Ruby's premier option parser.
|
7
|
+
# @see http://optimist.rubyforge.org/
|
8
|
+
# @see Optimist::Parser
|
9
|
+
module Optimist
|
10
10
|
|
11
|
-
# Convenience methods for
|
11
|
+
# Convenience methods for Optimist, Ruby's premier option parser.
|
12
12
|
#
|
13
13
|
# See the examples directory for sample code.
|
14
14
|
# Descriptions are of the form:
|
15
15
|
# <key>: <options> <environment variable> (<default>)
|
16
|
-
# @see http://
|
16
|
+
# @see http://optimist.rubyforge.org/
|
17
17
|
class Parser
|
18
18
|
# Options used by VIM.connect
|
19
19
|
#
|
data/lib/rbvmomi/version.rb
CHANGED
data/rbvmomi.gemspec
CHANGED
@@ -22,7 +22,7 @@ Gem::Specification.new do |spec|
|
|
22
22
|
spec.add_runtime_dependency('builder', '~> 3.0')
|
23
23
|
spec.add_runtime_dependency('json', '>= 1.8')
|
24
24
|
spec.add_runtime_dependency('nokogiri', '~> 1.5')
|
25
|
-
spec.add_runtime_dependency('
|
25
|
+
spec.add_runtime_dependency('optimist', '~> 3.0')
|
26
26
|
|
27
27
|
spec.add_development_dependency('rake', '~> 10.5')
|
28
28
|
spec.add_development_dependency('simplecov', '~> 0.12.0')
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rbvmomi
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 2.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Rich Lane
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: exe
|
11
11
|
cert_chain: []
|
12
|
-
date: 2018-
|
12
|
+
date: 2018-11-01 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: builder
|
@@ -54,19 +54,19 @@ dependencies:
|
|
54
54
|
- !ruby/object:Gem::Version
|
55
55
|
version: '1.5'
|
56
56
|
- !ruby/object:Gem::Dependency
|
57
|
-
name:
|
57
|
+
name: optimist
|
58
58
|
requirement: !ruby/object:Gem::Requirement
|
59
59
|
requirements:
|
60
60
|
- - "~>"
|
61
61
|
- !ruby/object:Gem::Version
|
62
|
-
version: '
|
62
|
+
version: '3.0'
|
63
63
|
type: :runtime
|
64
64
|
prerelease: false
|
65
65
|
version_requirements: !ruby/object:Gem::Requirement
|
66
66
|
requirements:
|
67
67
|
- - "~>"
|
68
68
|
- !ruby/object:Gem::Version
|
69
|
-
version: '
|
69
|
+
version: '3.0'
|
70
70
|
- !ruby/object:Gem::Dependency
|
71
71
|
name: rake
|
72
72
|
requirement: !ruby/object:Gem::Requirement
|
@@ -149,6 +149,7 @@ files:
|
|
149
149
|
- examples/clone_vm.rb
|
150
150
|
- examples/create_vm-1.9.rb
|
151
151
|
- examples/create_vm.rb
|
152
|
+
- examples/delete_disk_from_vm.rb
|
152
153
|
- examples/extraConfig.rb
|
153
154
|
- examples/lease_tool.rb
|
154
155
|
- examples/logbundle.rb
|
@@ -167,11 +168,11 @@ files:
|
|
167
168
|
- lib/rbvmomi/connection.rb
|
168
169
|
- lib/rbvmomi/deserialization.rb
|
169
170
|
- lib/rbvmomi/fault.rb
|
171
|
+
- lib/rbvmomi/optimist.rb
|
170
172
|
- lib/rbvmomi/pbm.rb
|
171
173
|
- lib/rbvmomi/sms.rb
|
172
174
|
- lib/rbvmomi/sms/SmsStorageManager.rb
|
173
175
|
- lib/rbvmomi/trivial_soap.rb
|
174
|
-
- lib/rbvmomi/trollop.rb
|
175
176
|
- lib/rbvmomi/type_loader.rb
|
176
177
|
- lib/rbvmomi/utils/admission_control.rb
|
177
178
|
- lib/rbvmomi/utils/deploy.rb
|