opennebula-cli 5.12.4 → 5.13.80.pre

Sign up to get free protection for your applications and to get access to all the features.
Files changed (102) hide show
  1. checksums.yaml +4 -4
  2. data/bin/oneacct +9 -4
  3. data/bin/oneacl +8 -5
  4. data/bin/onecluster +10 -7
  5. data/bin/onedatastore +10 -7
  6. data/bin/oneflow +85 -13
  7. data/bin/oneflow-template +45 -8
  8. data/bin/onegroup +10 -7
  9. data/bin/onehook +10 -7
  10. data/bin/onehost +8 -5
  11. data/bin/oneimage +99 -8
  12. data/bin/onemarket +10 -7
  13. data/bin/onemarketapp +117 -10
  14. data/bin/onesecgroup +13 -7
  15. data/bin/oneshowback +23 -10
  16. data/bin/onetemplate +16 -9
  17. data/bin/oneuser +30 -7
  18. data/bin/onevcenter +9 -4
  19. data/bin/onevdc +10 -7
  20. data/bin/onevm +147 -12
  21. data/bin/onevmgroup +13 -7
  22. data/bin/onevnet +8 -5
  23. data/bin/onevntemplate +11 -7
  24. data/bin/onevrouter +10 -7
  25. data/bin/onezone +10 -7
  26. data/lib/cli_helper.rb +5 -7
  27. data/lib/command_parser.rb +1 -1
  28. data/lib/one_helper.rb +414 -46
  29. data/lib/one_helper/oneacct_helper.rb +8 -17
  30. data/lib/one_helper/oneacl_helper.rb +1 -1
  31. data/lib/one_helper/onecluster_helper.rb +1 -1
  32. data/lib/one_helper/onedatastore_helper.rb +11 -1
  33. data/lib/one_helper/oneflow_helper.rb +20 -5
  34. data/lib/one_helper/oneflowtemplate_helper.rb +28 -2
  35. data/lib/one_helper/onegroup_helper.rb +1 -1
  36. data/lib/one_helper/onehook_helper.rb +1 -1
  37. data/lib/one_helper/onehost_helper.rb +1 -5
  38. data/lib/one_helper/oneimage_helper.rb +11 -7
  39. data/lib/one_helper/onemarket_helper.rb +1 -1
  40. data/lib/one_helper/onemarketapp_helper.rb +494 -96
  41. data/lib/one_helper/onequota_helper.rb +1 -1
  42. data/lib/one_helper/onesecgroup_helper.rb +1 -1
  43. data/lib/one_helper/onetemplate_helper.rb +16 -4
  44. data/lib/one_helper/oneuser_helper.rb +11 -3
  45. data/lib/one_helper/onevcenter_helper.rb +176 -146
  46. data/lib/one_helper/onevdc_helper.rb +1 -1
  47. data/lib/one_helper/onevm_helper.rb +4 -3
  48. data/lib/one_helper/onevmgroup_helper.rb +1 -1
  49. data/lib/one_helper/onevnet_helper.rb +1 -1
  50. data/lib/one_helper/onevntemplate_helper.rb +1 -1
  51. data/lib/one_helper/onevrouter_helper.rb +1 -20
  52. data/lib/one_helper/onezone_helper.rb +12 -1
  53. data/share/schemas/xsd/acct.xsd +179 -0
  54. data/share/schemas/xsd/acl_pool.xsd +22 -0
  55. data/share/schemas/xsd/api_info.xsd +43 -0
  56. data/share/schemas/xsd/cluster.xsd +34 -0
  57. data/share/schemas/xsd/cluster_pool.xsd +12 -0
  58. data/share/schemas/xsd/datastore.xsd +67 -0
  59. data/share/schemas/xsd/datastore_pool.xsd +12 -0
  60. data/share/schemas/xsd/document.xsd +42 -0
  61. data/share/schemas/xsd/document_pool.xsd +12 -0
  62. data/share/schemas/xsd/group.xsd +179 -0
  63. data/share/schemas/xsd/group_pool.xsd +194 -0
  64. data/share/schemas/xsd/hook.xsd +59 -0
  65. data/share/schemas/xsd/hook_message_api.xsd +14 -0
  66. data/share/schemas/xsd/hook_message_retry.xsd +12 -0
  67. data/share/schemas/xsd/hook_message_state.xsd +25 -0
  68. data/share/schemas/xsd/hook_pool.xsd +12 -0
  69. data/share/schemas/xsd/host.xsd +164 -0
  70. data/share/schemas/xsd/host_pool.xsd +12 -0
  71. data/share/schemas/xsd/image.xsd +123 -0
  72. data/share/schemas/xsd/image_pool.xsd +12 -0
  73. data/share/schemas/xsd/index.xsd +49 -0
  74. data/share/schemas/xsd/marketplace.xsd +44 -0
  75. data/share/schemas/xsd/marketplace_pool.xsd +12 -0
  76. data/share/schemas/xsd/marketplaceapp.xsd +56 -0
  77. data/share/schemas/xsd/marketplaceapp_pool.xsd +12 -0
  78. data/share/schemas/xsd/opennebula_configuration.xsd +412 -0
  79. data/share/schemas/xsd/raftstatus.xsd +18 -0
  80. data/share/schemas/xsd/security_group.xsd +74 -0
  81. data/share/schemas/xsd/security_group_pool.xsd +12 -0
  82. data/share/schemas/xsd/showback.xsd +29 -0
  83. data/share/schemas/xsd/user.xsd +186 -0
  84. data/share/schemas/xsd/user_pool.xsd +201 -0
  85. data/share/schemas/xsd/vdc.xsd +76 -0
  86. data/share/schemas/xsd/vdc_pool.xsd +12 -0
  87. data/share/schemas/xsd/vm.xsd +251 -0
  88. data/share/schemas/xsd/vm_group.xsd +59 -0
  89. data/share/schemas/xsd/vm_group_pool.xsd +12 -0
  90. data/share/schemas/xsd/vm_pool.xsd +114 -0
  91. data/share/schemas/xsd/vmtemplate.xsd +52 -0
  92. data/share/schemas/xsd/vmtemplate_pool.xsd +12 -0
  93. data/share/schemas/xsd/vnet.xsd +137 -0
  94. data/share/schemas/xsd/vnet_pool.xsd +85 -0
  95. data/share/schemas/xsd/vntemplate.xsd +50 -0
  96. data/share/schemas/xsd/vntemplate_pool.xsd +12 -0
  97. data/share/schemas/xsd/vrouter.xsd +49 -0
  98. data/share/schemas/xsd/vrouter_pool.xsd +12 -0
  99. data/share/schemas/xsd/zone.xsd +40 -0
  100. data/share/schemas/xsd/zone_pool.xsd +36 -0
  101. metadata +75 -14
  102. data/lib/one_helper/oneprovision_helper.rb +0 -362
@@ -1,5 +1,5 @@
1
1
  # -------------------------------------------------------------------------- #
2
- # Copyright 2002-2020, OpenNebula Project, OpenNebula Systems #
2
+ # Copyright 2002-2021, OpenNebula Project, OpenNebula Systems #
3
3
  # #
4
4
  # Licensed under the Apache License, Version 2.0 (the "License"); you may #
5
5
  # not use this file except in compliance with the License. You may obtain #
@@ -1,5 +1,5 @@
1
1
  # -------------------------------------------------------------------------- #
2
- # Copyright 2002-2020, OpenNebula Project, OpenNebula Systems #
2
+ # Copyright 2002-2021, OpenNebula Project, OpenNebula Systems #
3
3
  # #
4
4
  # Licensed under the Apache License, Version 2.0 (the "License"); you may #
5
5
  # not use this file except in compliance with the License. You may obtain #
@@ -252,7 +252,7 @@ class OneVMHelper < OpenNebulaHelper::OneHelper
252
252
  end
253
253
 
254
254
  vm_nics.each do |nic|
255
- %w[IP IP6_GLOBAL IP6_ULA IP6
255
+ %w[IP EXTERNAL_IP IP6_GLOBAL IP6_ULA IP6
256
256
  VROUTER_IP VROUTER_IP6_GLOBAL VROUTER_IP6_ULA].each do |attr|
257
257
  if nic.key?(attr)
258
258
  ips.push(nic[attr])
@@ -985,7 +985,7 @@ class OneVMHelper < OpenNebulaHelper::OneHelper
985
985
  vm_nics.each do |nic|
986
986
  next if nic.key?('CLI_DONE')
987
987
 
988
- %w[IP6_LINK IP6_ULA IP6_GLOBAL IP6].each do |attr|
988
+ %w[EXTERNAL_IP IP6_LINK IP6_ULA IP6_GLOBAL IP6].each do |attr|
989
989
  next unless nic.key?(attr)
990
990
 
991
991
  shown_ips << nic[attr]
@@ -1013,6 +1013,7 @@ class OneVMHelper < OpenNebulaHelper::OneHelper
1013
1013
  end
1014
1014
 
1015
1015
  shown_ips << nic['IP'] if nic.key?('IP')
1016
+ shown_ips << nic['EXTERNAL_IP'] if nic.key?('EXTERNAL_IP')
1016
1017
 
1017
1018
  nic.merge!(nic_default) {|_k, v1, _v2| v1 }
1018
1019
  array_id += 1
@@ -1,5 +1,5 @@
1
1
  # -------------------------------------------------------------------------- #
2
- # Copyright 2002-2020, OpenNebula Project, OpenNebula Systems #
2
+ # Copyright 2002-2021, OpenNebula Project, OpenNebula Systems #
3
3
  # #
4
4
  # Licensed under the Apache License, Version 2.0 (the "License"); you may #
5
5
  # not use this file except in compliance with the License. You may obtain #
@@ -1,5 +1,5 @@
1
1
  # -------------------------------------------------------------------------- #
2
- # Copyright 2002-2020, OpenNebula Project, OpenNebula Systems #
2
+ # Copyright 2002-2021, OpenNebula Project, OpenNebula Systems #
3
3
  # #
4
4
  # Licensed under the Apache License, Version 2.0 (the "License"); you may #
5
5
  # not use this file except in compliance with the License. You may obtain #
@@ -1,5 +1,5 @@
1
1
  # -------------------------------------------------------------------------- #
2
- # Copyright 2002-2020, OpenNebula Project, OpenNebula Systems #
2
+ # Copyright 2002-2021, OpenNebula Project, OpenNebula Systems #
3
3
  # #
4
4
  # Licensed under the Apache License, Version 2.0 (the "License"); you may #
5
5
  # not use this file except in compliance with the License. You may obtain #
@@ -1,5 +1,5 @@
1
1
  # -------------------------------------------------------------------------- #
2
- # Copyright 2002-2020, OpenNebula Project, OpenNebula Systems #
2
+ # Copyright 2002-2021, OpenNebula Project, OpenNebula Systems #
3
3
  # #
4
4
  # Licensed under the Apache License, Version 2.0 (the "License"); you may #
5
5
  # not use this file except in compliance with the License. You may obtain #
@@ -38,25 +38,6 @@ class OneVirtualRouterHelper < OpenNebulaHelper::OneHelper
38
38
  "onevrouter.yaml"
39
39
  end
40
40
 
41
- def show_resource(id, options)
42
- resource = retrieve_resource(id)
43
-
44
- if !options[:extended].nil?
45
- rc = resource.info(options[:extended])
46
- else
47
- rc = resource.info
48
- end
49
-
50
- return -1, rc.message if OpenNebula.is_error?(rc)
51
-
52
- if options[:xml]
53
- return 0, resource.to_xml(true)
54
- else
55
- format_resource(resource, options)
56
- return 0
57
- end
58
- end
59
-
60
41
  def format_pool(options)
61
42
  config_file = self.class.table_conf
62
43
 
@@ -1,5 +1,5 @@
1
1
  # -------------------------------------------------------------------------- #
2
- # Copyright 2002-2020, OpenNebula Project, OpenNebula Systems #
2
+ # Copyright 2002-2021, OpenNebula Project, OpenNebula Systems #
3
3
  # #
4
4
  # Licensed under the Apache License, Version 2.0 (the "License"); you may #
5
5
  # not use this file except in compliance with the License. You may obtain #
@@ -470,6 +470,17 @@ class OneZoneHelper < OpenNebulaHelper::OneHelper
470
470
 
471
471
  if options[:xml]
472
472
  return 0, resource.to_xml(true)
473
+ elsif options[:json]
474
+ # If body is set, the resource contains a JSON inside
475
+ if options[:body]
476
+ return 0, check_resource_xsd(resource)
477
+ else
478
+ return 0, ::JSON.pretty_generate(
479
+ check_resource_xsd(resource)
480
+ )
481
+ end
482
+ elsif options[:yaml]
483
+ return 0, check_resource_xsd(resource).to_yaml(:indent => 4)
473
484
  else
474
485
  format_resource(resource, options)
475
486
  return 0
@@ -0,0 +1,179 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"
3
+ targetNamespace="http://opennebula.org/XMLSchema" xmlns="http://opennebula.org/XMLSchema">
4
+
5
+ <xs:element name="HISTORY_RECORDS">
6
+ <xs:complexType>
7
+ <xs:sequence maxOccurs="1" minOccurs="1">
8
+ <xs:element ref="HISTORY" maxOccurs="unbounded" minOccurs="0"/>
9
+ </xs:sequence>
10
+ </xs:complexType>
11
+ </xs:element>
12
+
13
+ <xs:element name="HISTORY">
14
+ <xs:complexType>
15
+ <xs:sequence>
16
+ <xs:element name="OID" type="xs:integer"/>
17
+ <xs:element name="SEQ" type="xs:integer"/>
18
+ <xs:element name="HOSTNAME" type="xs:string"/>
19
+ <xs:element name="HID" type="xs:integer"/>
20
+ <xs:element name="CID" type="xs:integer"/>
21
+ <xs:element name="STIME" type="xs:integer"/>
22
+ <xs:element name="ETIME" type="xs:integer"/>
23
+ <xs:element name="VM_MAD" type="xs:string"/>
24
+ <xs:element name="TM_MAD" type="xs:string"/>
25
+ <xs:element name="DS_ID" type="xs:integer"/>
26
+ <xs:element name="PSTIME" type="xs:integer"/>
27
+ <xs:element name="PETIME" type="xs:integer"/>
28
+ <xs:element name="RSTIME" type="xs:integer"/>
29
+ <xs:element name="RETIME" type="xs:integer"/>
30
+ <xs:element name="ESTIME" type="xs:integer"/>
31
+ <xs:element name="EETIME" type="xs:integer"/>
32
+
33
+ <!-- ACTION values:
34
+ NONE_ACTION = 0
35
+ MIGRATE_ACTION = 1
36
+ LIVE_MIGRATE_ACTION = 2
37
+ SHUTDOWN_ACTION = 3
38
+ SHUTDOWN_HARD_ACTION = 4
39
+ UNDEPLOY_ACTION = 5
40
+ UNDEPLOY_HARD_ACTION = 6
41
+ HOLD_ACTION = 7
42
+ RELEASE_ACTION = 8
43
+ STOP_ACTION = 9
44
+ SUSPEND_ACTION = 10
45
+ RESUME_ACTION = 11
46
+ BOOT_ACTION = 12
47
+ DELETE_ACTION = 13
48
+ DELETE_RECREATE_ACTION = 14
49
+ REBOOT_ACTION = 15
50
+ REBOOT_HARD_ACTION = 16
51
+ RESCHED_ACTION = 17
52
+ UNRESCHED_ACTION = 18
53
+ POWEROFF_ACTION = 19
54
+ POWEROFF_HARD_ACTION = 20
55
+ DISK_ATTACH_ACTION = 21
56
+ DISK_DETACH_ACTION = 22
57
+ NIC_ATTACH_ACTION = 23
58
+ NIC_DETACH_ACTION = 24
59
+ DISK_SNAPSHOT_CREATE_ACTION = 25
60
+ DISK_SNAPSHOT_DELETE_ACTION = 26
61
+ TERMINATE_ACTION = 27
62
+ TERMINATE_HARD_ACTION = 28
63
+ DISK_RESIZE_ACTION = 29
64
+ DEPLOY_ACTION = 30
65
+ CHOWN_ACTION = 31
66
+ CHMOD_ACTION = 32
67
+ UPDATECONF_ACTION = 33
68
+ RENAME_ACTION = 34
69
+ RESIZE_ACTION = 35
70
+ UPDATE_ACTION = 36
71
+ SNAPSHOT_CREATE_ACTION = 37
72
+ SNAPSHOT_DELETE_ACTION = 38
73
+ SNAPSHOT_REVERT_ACTION = 39
74
+ DISK_SAVEAS_ACTION = 40
75
+ DISK_SNAPSHOT_REVERT_ACTION = 41
76
+ RECOVER_ACTION = 42
77
+ RETRY_ACTION = 43
78
+ MONITOR_ACTION = 44
79
+ DISK_SNAPSHOT_RENAME_ACTION = 45
80
+ -->
81
+ <xs:element name="ACTION" type="xs:integer"/>
82
+ <xs:element name="UID" type="xs:integer"/>
83
+ <xs:element name="GID" type="xs:integer"/>
84
+ <xs:element name="REQUEST_ID" type="xs:string"/>
85
+ <xs:element name="VM">
86
+ <xs:complexType>
87
+ <xs:sequence>
88
+ <xs:element name="ID" type="xs:integer"/>
89
+ <xs:element name="UID" type="xs:integer"/>
90
+ <xs:element name="GID" type="xs:integer"/>
91
+ <xs:element name="UNAME" type="xs:string"/>
92
+ <xs:element name="GNAME" type="xs:string"/>
93
+ <xs:element name="NAME" type="xs:string"/>
94
+ <xs:element name="PERMISSIONS" minOccurs="0" maxOccurs="1">
95
+ <xs:complexType>
96
+ <xs:sequence>
97
+ <xs:element name="OWNER_U" type="xs:integer"/>
98
+ <xs:element name="OWNER_M" type="xs:integer"/>
99
+ <xs:element name="OWNER_A" type="xs:integer"/>
100
+ <xs:element name="GROUP_U" type="xs:integer"/>
101
+ <xs:element name="GROUP_M" type="xs:integer"/>
102
+ <xs:element name="GROUP_A" type="xs:integer"/>
103
+ <xs:element name="OTHER_U" type="xs:integer"/>
104
+ <xs:element name="OTHER_M" type="xs:integer"/>
105
+ <xs:element name="OTHER_A" type="xs:integer"/>
106
+ </xs:sequence>
107
+ </xs:complexType>
108
+ </xs:element>
109
+ <xs:element name="LAST_POLL" type="xs:integer"/>
110
+
111
+ <!-- STATE values,
112
+ see http://docs.opennebula.org/stable/user/references/vm_states.html
113
+ -->
114
+ <xs:element name="STATE" type="xs:integer"/>
115
+
116
+ <!-- LCM_STATE values, this sub-state is relevant only when STATE is
117
+ ACTIVE (4)
118
+ see http://docs.opennebula.org/stable/user/references/vm_states.html
119
+ -->
120
+ <xs:element name="LCM_STATE" type="xs:integer"/>
121
+ <xs:element name="PREV_STATE" type="xs:integer"/>
122
+ <xs:element name="PREV_LCM_STATE" type="xs:integer"/>
123
+ <xs:element name="RESCHED" type="xs:integer"/>
124
+ <xs:element name="STIME" type="xs:integer"/>
125
+ <xs:element name="ETIME" type="xs:integer"/>
126
+ <xs:element name="DEPLOY_ID" type="xs:string"/>
127
+ <xs:element name="MONITORING">
128
+ <!--
129
+ <xs:complexType>
130
+ <xs:all>
131
+ <- Percentage of 1 CPU consumed (two fully consumed cpu is 200) ->
132
+ <xs:element name="CPU" type="xs:decimal" minOccurs="0" maxOccurs="1"/>
133
+
134
+ <- MEMORY consumption in kilobytes ->
135
+ <xs:element name="MEMORY" type="xs:integer" minOccurs="0" maxOccurs="1"/>
136
+
137
+ <- NETTX: Sent bytes to the network ->
138
+ <xs:element name="NETTX" type="xs:integer" minOccurs="0" maxOccurs="1"/>
139
+
140
+ <- NETRX: Received bytes from the network ->
141
+ <xs:element name="NETRX" type="xs:integer" minOccurs="0" maxOccurs="1"/>
142
+ </xs:all>
143
+ </xs:complexType>
144
+ -->
145
+ </xs:element>
146
+ <xs:element name="TEMPLATE" type="xs:anyType"/>
147
+ <xs:element name="USER_TEMPLATE" type="xs:anyType"/>
148
+ <xs:element name="HISTORY_RECORDS">
149
+ </xs:element>
150
+ <xs:element name="SNAPSHOTS" minOccurs="0" maxOccurs="unbounded">
151
+ <xs:complexType>
152
+ <xs:sequence>
153
+ <xs:element name="ALLOW_ORPHANS" type="xs:string"/>
154
+ <xs:element name="CURRENT_BASE" type="xs:integer"/>
155
+ <xs:element name="DISK_ID" type="xs:integer"/>
156
+ <xs:element name="NEXT_SNAPSHOT" type="xs:integer"/>
157
+ <xs:element name="SNAPSHOT" minOccurs="0" maxOccurs="unbounded">
158
+ <xs:complexType>
159
+ <xs:sequence>
160
+ <xs:element name="ACTIVE" type="xs:string" minOccurs="0" maxOccurs="1"/>
161
+ <xs:element name="CHILDREN" type="xs:string" minOccurs="0" maxOccurs="1"/>
162
+ <xs:element name="DATE" type="xs:integer"/>
163
+ <xs:element name="ID" type="xs:integer"/>
164
+ <xs:element name="NAME" type="xs:string" minOccurs="0" maxOccurs="1"/>
165
+ <xs:element name="PARENT" type="xs:integer"/>
166
+ <xs:element name="SIZE" type="xs:integer"/>
167
+ </xs:sequence>
168
+ </xs:complexType>
169
+ </xs:element>
170
+ </xs:sequence>
171
+ </xs:complexType>
172
+ </xs:element>
173
+ </xs:sequence>
174
+ </xs:complexType>
175
+ </xs:element>
176
+ </xs:sequence>
177
+ </xs:complexType>
178
+ </xs:element>
179
+ </xs:schema>
@@ -0,0 +1,22 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"
3
+ targetNamespace="http://opennebula.org/XMLSchema" xmlns="http://opennebula.org/XMLSchema">
4
+ <xs:element name="ACL_POOL">
5
+ <xs:complexType>
6
+ <xs:sequence maxOccurs="1" minOccurs="1">
7
+ <xs:element name="ACL" maxOccurs="unbounded" minOccurs="0">
8
+ <xs:complexType>
9
+ <xs:sequence>
10
+ <xs:element name="ID" type="xs:integer"/>
11
+ <xs:element name="USER" type="xs:string"/>
12
+ <xs:element name="RESOURCE" type="xs:string"/>
13
+ <xs:element name="RIGHTS" type="xs:string"/>
14
+ <xs:element name="ZONE" type="xs:string"/>
15
+ <xs:element name="STRING" type="xs:string"/>
16
+ </xs:sequence>
17
+ </xs:complexType>
18
+ </xs:element>
19
+ </xs:sequence>
20
+ </xs:complexType>
21
+ </xs:element>
22
+ </xs:schema>
@@ -0,0 +1,43 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <!-- The information sent to the hook when $API is used in an API Hook follos the following schema -->
3
+ <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://opennebula.org/XMLSchema" elementFormDefault="qualified" targetNamespace="http://opennebula.org/XMLSchema">
4
+ <xs:element name="CALL_INFO">
5
+ <xs:complexType>
6
+ <xs:sequence>
7
+ <xs:element name="RESULT" type="xs:integer"/>
8
+ <xs:element name="PARAMETERS" minOccurs="0" maxOccurs="1">
9
+ <xs:complexType>
10
+ <xs:sequence>
11
+ <!-- The list of IN and OUT parameters will match the API call parameters defined here: http://docs.opennebula.org/5.9/integration/system_interfaces/api.html -->
12
+ <xs:element name="PARAMETER" minOccurs="0" maxOccurs="unbounded">
13
+ <xs:complexType>
14
+ <xs:sequence>
15
+ <xs:element name="POSITION" type="xs:integer"/>
16
+ <xs:element name="TYPE" type="xs:integer">
17
+ <xs:simpleType>
18
+ <xs:restriction base="xs:string">
19
+ <xs:enumeration value="IN"/>
20
+ <xs:enumeration value="OUT"/>
21
+ </xs:restriction>
22
+ </xs:simpleType>
23
+ </xs:element>
24
+ <xs:element name="VALUE" type="xs:string"/>
25
+ </xs:sequence>
26
+ </xs:complexType>
27
+ </xs:element>
28
+ </xs:sequence>
29
+ </xs:complexType>
30
+ </xs:element>
31
+ <!-- This info is only included when the API hook is set on a one.*.delete or one.*.allocate API call -->
32
+ <xs:element name="EXTRA" minOccurs="0" maxOccurs="1">
33
+ <xs:complexType>
34
+ <xs:sequence>
35
+ <!-- EXTRA section will contain the template of the allocated/deleted resource as defined here; https://github.com/OpenNebula/one/tree/master/share/doc/xsd -->
36
+ <xs:any minOccurs="0" maxOccurs="unbounded" processContents="skip"/>
37
+ </xs:sequence>
38
+ </xs:complexType>
39
+ </xs:element>
40
+ </xs:sequence>
41
+ </xs:complexType>
42
+ </xs:element>
43
+ </xs:schema>
@@ -0,0 +1,34 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"
3
+ targetNamespace="http://opennebula.org/XMLSchema" xmlns="http://opennebula.org/XMLSchema">
4
+ <xs:element name="CLUSTER">
5
+ <xs:complexType>
6
+ <xs:sequence>
7
+ <xs:element name="ID" type="xs:integer"/>
8
+ <xs:element name="NAME" type="xs:string"/>
9
+ <xs:element name="HOSTS">
10
+ <xs:complexType>
11
+ <xs:sequence>
12
+ <xs:element name="ID" type="xs:integer" minOccurs="0" maxOccurs="unbounded"/>
13
+ </xs:sequence>
14
+ </xs:complexType>
15
+ </xs:element>
16
+ <xs:element name="DATASTORES">
17
+ <xs:complexType>
18
+ <xs:sequence>
19
+ <xs:element name="ID" type="xs:integer" minOccurs="0" maxOccurs="unbounded"/>
20
+ </xs:sequence>
21
+ </xs:complexType>
22
+ </xs:element>
23
+ <xs:element name="VNETS">
24
+ <xs:complexType>
25
+ <xs:sequence>
26
+ <xs:element name="ID" type="xs:integer" minOccurs="0" maxOccurs="unbounded"/>
27
+ </xs:sequence>
28
+ </xs:complexType>
29
+ </xs:element>
30
+ <xs:element name="TEMPLATE" type="xs:anyType"/>
31
+ </xs:sequence>
32
+ </xs:complexType>
33
+ </xs:element>
34
+ </xs:schema>
@@ -0,0 +1,12 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"
3
+ targetNamespace="http://opennebula.org/XMLSchema" xmlns="http://opennebula.org/XMLSchema">
4
+ <xs:include schemaLocation="cluster.xsd"/>
5
+ <xs:element name="CLUSTER_POOL">
6
+ <xs:complexType>
7
+ <xs:sequence maxOccurs="1" minOccurs="1">
8
+ <xs:element ref="CLUSTER" maxOccurs="unbounded" minOccurs="0"/>
9
+ </xs:sequence>
10
+ </xs:complexType>
11
+ </xs:element>
12
+ </xs:schema>
@@ -0,0 +1,67 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://opennebula.org/XMLSchema" elementFormDefault="qualified" targetNamespace="http://opennebula.org/XMLSchema">
3
+ <xs:element name="DATASTORE">
4
+ <xs:complexType>
5
+ <xs:sequence>
6
+ <xs:element name="ID" type="xs:integer"/>
7
+ <xs:element name="UID" type="xs:integer"/>
8
+ <xs:element name="GID" type="xs:integer"/>
9
+ <xs:element name="UNAME" type="xs:string"/>
10
+ <xs:element name="GNAME" type="xs:string"/>
11
+ <xs:element name="NAME" type="xs:string"/>
12
+ <xs:element name="PERMISSIONS" minOccurs="0" maxOccurs="1">
13
+ <xs:complexType>
14
+ <xs:sequence>
15
+ <xs:element name="OWNER_U" type="xs:integer"/>
16
+ <xs:element name="OWNER_M" type="xs:integer"/>
17
+ <xs:element name="OWNER_A" type="xs:integer"/>
18
+ <xs:element name="GROUP_U" type="xs:integer"/>
19
+ <xs:element name="GROUP_M" type="xs:integer"/>
20
+ <xs:element name="GROUP_A" type="xs:integer"/>
21
+ <xs:element name="OTHER_U" type="xs:integer"/>
22
+ <xs:element name="OTHER_M" type="xs:integer"/>
23
+ <xs:element name="OTHER_A" type="xs:integer"/>
24
+ </xs:sequence>
25
+ </xs:complexType>
26
+ </xs:element>
27
+ <xs:element name="DS_MAD" type="xs:string"/>
28
+ <xs:element name="TM_MAD" type="xs:string"/>
29
+ <xs:element name="BASE_PATH" type="xs:string"/>
30
+ <xs:element name="TYPE" type="xs:integer"/>
31
+ <xs:element name="DISK_TYPE" type="xs:integer"/>
32
+ <!-- Possible STATE values are 0 (READY) and 1 (DISABLE)-->
33
+ <xs:element name="STATE" type="xs:integer"/>
34
+ <xs:element name="CLUSTERS">
35
+ <xs:complexType>
36
+ <xs:sequence>
37
+ <xs:element name="ID" type="xs:integer" minOccurs="0" maxOccurs="unbounded"/>
38
+ </xs:sequence>
39
+ </xs:complexType>
40
+ </xs:element>
41
+ <xs:element name="TOTAL_MB" type="xs:integer"/>
42
+ <xs:element name="FREE_MB" type="xs:integer"/>
43
+ <xs:element name="USED_MB" type="xs:integer"/>
44
+ <xs:element name="IMAGES">
45
+ <xs:complexType>
46
+ <xs:sequence>
47
+ <xs:element name="ID" type="xs:integer" minOccurs="0" maxOccurs="unbounded"/>
48
+ </xs:sequence>
49
+ </xs:complexType>
50
+ </xs:element>
51
+ <xs:element name="TEMPLATE">
52
+ <xs:complexType>
53
+ <xs:sequence>
54
+ <xs:element name="VCENTER_DC_NAME" type="xs:string" minOccurs="0" maxOccurs="1"/>
55
+ <xs:element name="VCENTER_DC_REF" type="xs:string" minOccurs="0" maxOccurs="1"/>
56
+ <xs:element name="VCENTER_DS_NAME" type="xs:string" minOccurs="0" maxOccurs="1"/>
57
+ <xs:element name="VCENTER_DS_REF" type="xs:string" minOccurs="0" maxOccurs="1"/>
58
+ <xs:element name="VCENTER_HOST" type="xs:string" minOccurs="0" maxOccurs="1"/>
59
+ <xs:element name="VCENTER_INSTANCE_ID" type="xs:string" minOccurs="0" maxOccurs="1"/>
60
+ <xs:any minOccurs="0" maxOccurs="unbounded" processContents="lax"/>
61
+ </xs:sequence>
62
+ </xs:complexType>
63
+ </xs:element>
64
+ </xs:sequence>
65
+ </xs:complexType>
66
+ </xs:element>
67
+ </xs:schema>