Skip to content

Commit 21915f3

Browse files
author
Travis
committed
Updated XenAPI docs based on xen-api/3e61660
1 parent ff0f923 commit 21915f3

File tree

2 files changed

+187
-20
lines changed

2 files changed

+187
-20
lines changed

_data/release_info.json

Lines changed: 35 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2052,7 +2052,7 @@
20522052
"log": "This call enables external authentication on a host" },
20532053
{ "transition": "published message",
20542054
"name": "host.get_server_certificate",
2055-
"log": "Get the installed server SSL certificate." },
2055+
"log": "Get the installed server public TLS certificate." },
20562056
{ "transition": "published message",
20572057
"name": "host.retrieve_wlb_evacuate_recommendations",
20582058
"log": "Retrieves recommended host migrations to perform when evacuating the host from the wlb server. If a VM cannot be migrated from the host the reason is listed instead of a recommendation." },
@@ -3663,12 +3663,18 @@
36633663
"name": "pool.set_vswitch_controller",
36643664
"log": "Deprecated: use 'SDN_controller.introduce' and 'SDN_controller.forget' instead." } ],
36653665
"inverness": [
3666+
{ "transition": "published class",
3667+
"name": "vdi_nbd_server_info",
3668+
"log": "Details for connecting to a VDI using the Network Block Device protocol" },
36663669
{ "transition": "published field",
36673670
"name": "PIF.igmp_snooping_status",
36683671
"log": "The IGMP snooping status of the corresponding network bridge" },
36693672
{ "transition": "published field",
36703673
"name": "VDI.cbt_enabled",
36713674
"log": "True if changed blocks are tracked for this VDI" },
3675+
{ "transition": "published field",
3676+
"name": "network.purpose",
3677+
"log": "Set of purposes for which the server will use this network" },
36723678
{ "transition": "published field",
36733679
"name": "pool.igmp_snooping_enabled",
36743680
"log": "true if IGMP snooping is enabled in the pool, false otherwise." },
@@ -3678,6 +3684,21 @@
36783684
{ "transition": "published field",
36793685
"name": "pool_update.other_config",
36803686
"log": "additional configuration" },
3687+
{ "transition": "published field",
3688+
"name": "vdi_nbd_server_info.address",
3689+
"log": "An address on which the server can be reached; this can be IPv4, IPv6, or a DNS name." },
3690+
{ "transition": "published field",
3691+
"name": "vdi_nbd_server_info.cert",
3692+
"log": "The TLS certificate of the server" },
3693+
{ "transition": "published field",
3694+
"name": "vdi_nbd_server_info.exportname",
3695+
"log": "The exportname to request over NBD. This holds details including an authentication token, so it must be protected appropriately. Clients should regard the exportname as an opaque string or token." },
3696+
{ "transition": "published field",
3697+
"name": "vdi_nbd_server_info.port",
3698+
"log": "The TCP port" },
3699+
{ "transition": "published field",
3700+
"name": "vdi_nbd_server_info.subject",
3701+
"log": "For convenience, this redundant field holds a subject of the certificate." },
36813702
{ "transition": "published message",
36823703
"name": "VDI.data_destroy",
36833704
"log": "Delete the data of the snapshot VDI, but keep its changed block tracking metadata. When successful, this call changes the type of the VDI to cbt_metadata. This operation is idempotent: calling it on a VDI of type cbt_metadata results in a no-op, and no error will be thrown." },
@@ -3687,21 +3708,30 @@
36873708
{ "transition": "published message",
36883709
"name": "VDI.enable_cbt",
36893710
"log": "Enable changed block tracking for the VDI. This call is idempotent - enabling CBT for a VDI for which CBT is already enabled results in a no-op, and no error will be thrown." },
3690-
{ "transition": "published message",
3691-
"name": "VDI.export_changed_blocks",
3692-
"log": "Reports which blocks differ in the two VDIs. This operation is not allowed when vdi_to is attached to a VM." },
36933711
{ "transition": "published message",
36943712
"name": "VDI.get_nbd_info",
3695-
"log": "Get a list of URIs specifying how to access this VDI via the NBD server of XenServer. A URI will be returned for each PIF of each host that is connected to the VDI's SR. An empty list is returned in case no network has a PIF on a host with access to the relevant SR. To access the given VDI, any of the returned URIs can be passed to the NBD server running at the IP address and port specified by that URI as the export name." },
3713+
"log": "Get details specifying how to access this VDI via a Network Block Device server. For each of a set of NBD server addresses on which the VDI is available, the return value set contains a vdi_nbd_server_info object that contains an exportname to request once the NBD connection is established, and connection details for the address. An empty list is returned if there is no network that has a PIF on a host with access to the relevant SR, or if no such network has been assigned an NBD-related purpose in its purpose field. To access the given VDI, any of the vdi_nbd_server_info objects can be used to make a connection to a server, and then the VDI will be available by requesting the exportname." },
3714+
{ "transition": "published message",
3715+
"name": "VDI.list_changed_blocks",
3716+
"log": "Compare two VDIs in 64k block increments and report which blocks differ. This operation is not allowed when vdi_to is attached to a VM." },
36963717
{ "transition": "published message",
36973718
"name": "VM.set_bios_strings",
36983719
"log": "Set custom BIOS strings to this VM. VM will be given a default set of BIOS strings, only some of which can be overridden by the supplied values. Allowed keys are: 'bios-vendor', 'bios-version', 'system-manufacturer', 'system-product-name', 'system-version', 'system-serial-number', 'enclosure-asset-tag'" },
3720+
{ "transition": "published message",
3721+
"name": "network.add_purpose",
3722+
"log": "Give a network a new purpose (if not present already)" },
3723+
{ "transition": "published message",
3724+
"name": "network.remove_purpose",
3725+
"log": "Remove a purpose from a network (if present)" },
36993726
{ "transition": "published message",
37003727
"name": "pool.management_reconfigure",
37013728
"log": "Reconfigure the management network interface for all Hosts in the Pool" },
37023729
{ "transition": "published message",
37033730
"name": "pool.set_igmp_snooping_enabled",
37043731
"log": "Enable or disable IGMP Snooping on the pool." },
3732+
{ "transition": "changed message",
3733+
"name": "host.get_server_certificate",
3734+
"log": "Now available to all RBAC roles." },
37053735
{ "transition": "deprecated class",
37063736
"name": "crashdump",
37073737
"log": "" } ] }

_data/xenapi.json

Lines changed: 152 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -15940,8 +15940,8 @@
1594015940
"description": "Change to another edition, or reactivate the current edition after a license has expired. This may be subject to the successful checkout of an appropriate license." } ],
1594115941
"implicit": false },
1594215942
{ "name": "get_server_certificate",
15943-
"description": "Get the installed server SSL certificate.",
15944-
"result": [ "string", "The installed server SSL certificate, in PEM form." ],
15943+
"description": "Get the installed server public TLS certificate.",
15944+
"result": [ "string", "The installed server public TLS certificate, in PEM form." ],
1594515945
"params": [
1594615946
{ "type": "session ref",
1594715947
"name": "session_id",
@@ -15950,12 +15950,15 @@
1595015950
"name": "host",
1595115951
"doc": "The host" } ],
1595215952
"errors": [ ],
15953-
"roles": [ "pool-admin", "pool-operator" ],
15953+
"roles": [ "pool-admin", "pool-operator", "vm-power-admin", "vm-admin", "vm-operator", "read-only" ],
1595415954
"tag": "",
1595515955
"lifecycle": [
1595615956
{ "transition": "published",
1595715957
"release": "george",
15958-
"description": "Get the installed server SSL certificate." } ],
15958+
"description": "" },
15959+
{ "transition": "changed",
15960+
"release": "inverness",
15961+
"description": "Now available to all RBAC roles." } ],
1595915962
"implicit": false },
1596015963
{ "name": "retrieve_wlb_evacuate_recommendations",
1596115964
"description": "Retrieves recommended host migrations to perform when evacuating the host from the wlb server. If a VM cannot be migrated from the host the reason is listed instead of a recommendation.",
@@ -20189,6 +20192,16 @@
2018920192
{ "transition": "published",
2019020193
"release": "creedence",
2019120194
"description": "The IP addresses assigned to VIFs on networks that have active xapi-managed DHCP" } ],
20195+
"default": "{}" },
20196+
{ "name": "purpose",
20197+
"description": "Set of purposes for which the server will use this network",
20198+
"type": "enum network_purpose set",
20199+
"qualifier": "RO/runtime",
20200+
"tag": "",
20201+
"lifecycle": [
20202+
{ "transition": "published",
20203+
"release": "inverness",
20204+
"description": "Set of purposes for which the server will use this network" } ],
2019220205
"default": "{}" } ],
2019320206
"messages": [
2019420207
{ "name": "get_all_records",
@@ -20221,6 +20234,50 @@
2022120234
"release": "rio",
2022220235
"description": "A virtual network" } ],
2022320236
"implicit": true },
20237+
{ "name": "remove_purpose",
20238+
"description": "Remove a purpose from a network (if present)",
20239+
"result": [ "void" ],
20240+
"params": [
20241+
{ "type": "session ref",
20242+
"name": "session_id",
20243+
"doc": "Reference to a valid session" },
20244+
{ "type": "network ref",
20245+
"name": "self",
20246+
"doc": "The network" },
20247+
{ "type": "enum network_purpose",
20248+
"name": "value",
20249+
"doc": "The purpose to remove" } ],
20250+
"errors": [ ],
20251+
"roles": [ "pool-admin" ],
20252+
"tag": "",
20253+
"lifecycle": [
20254+
{ "transition": "published",
20255+
"release": "inverness",
20256+
"description": "Remove a purpose from a network (if present)" } ],
20257+
"implicit": false },
20258+
{ "name": "add_purpose",
20259+
"description": "Give a network a new purpose (if not present already)",
20260+
"result": [ "void" ],
20261+
"params": [
20262+
{ "type": "session ref",
20263+
"name": "session_id",
20264+
"doc": "Reference to a valid session" },
20265+
{ "type": "network ref",
20266+
"name": "self",
20267+
"doc": "The network" },
20268+
{ "type": "enum network_purpose",
20269+
"name": "value",
20270+
"doc": "The purpose to add" } ],
20271+
"errors": [
20272+
{ "name": "NETWORK_INCOMPATIBLE_PURPOSES",
20273+
"doc": "You tried to add a purpose to a network but the new purpose is not compatible with an existing purpose of the network or other networks." } ],
20274+
"roles": [ "pool-admin" ],
20275+
"tag": "",
20276+
"lifecycle": [
20277+
{ "transition": "published",
20278+
"release": "inverness",
20279+
"description": "Give a network a new purpose (if not present already)" } ],
20280+
"implicit": false },
2022420281
{ "name": "set_default_locking_mode",
2022520282
"description": "Set the default locking mode for VIFs attached to this network",
2022620283
"result": [ "void" ],
@@ -20461,6 +20518,24 @@
2046120518
"release": "rio",
2046220519
"description": "a human-readable name" } ],
2046320520
"implicit": true },
20521+
{ "name": "get_purpose",
20522+
"description": "Get the purpose field of the given network.",
20523+
"result": [ "enum network_purpose set", "value of the field" ],
20524+
"params": [
20525+
{ "type": "session ref",
20526+
"name": "session_id",
20527+
"doc": "Reference to a valid session" },
20528+
{ "type": "network ref",
20529+
"name": "self",
20530+
"doc": "reference to the object" } ],
20531+
"errors": [ ],
20532+
"roles": [ "pool-admin", "pool-operator", "vm-power-admin", "vm-admin", "vm-operator", "read-only" ],
20533+
"tag": "",
20534+
"lifecycle": [
20535+
{ "transition": "published",
20536+
"release": "inverness",
20537+
"description": "Set of purposes for which the server will use this network" } ],
20538+
"implicit": true },
2046420539
{ "name": "get_assigned_ips",
2046520540
"description": "Get the assigned_ips field of the given network.",
2046620541
"result": [ "(VIF ref -> string) map", "value of the field" ],
@@ -20834,7 +20909,13 @@
2083420909
{ "name": "unlocked",
2083520910
"doc": "Treat all VIFs on this network with locking_mode = 'default' as if they have locking_mode = 'unlocked'" },
2083620911
{ "name": "disabled",
20837-
"doc": "Treat all VIFs on this network with locking_mode = 'default' as if they have locking_mode = 'disabled'" } ] } ],
20912+
"doc": "Treat all VIFs on this network with locking_mode = 'default' as if they have locking_mode = 'disabled'" } ] },
20913+
{ "name": "network_purpose",
20914+
"values": [
20915+
{ "name": "nbd",
20916+
"doc": "Network Block Device service using TLS" },
20917+
{ "name": "insecure_nbd",
20918+
"doc": "Network Block Device service without integrity or confidentiality: NOT RECOMMENDED" } ] } ],
2083820919
"lifecycle": [
2083920920
{ "transition": "published",
2084020921
"release": "rio",
@@ -27153,7 +27234,7 @@
2715327234
"doc": "Disabling changed block tracking for a VDI" },
2715427235
{ "name": "vdi_data_destroy",
2715527236
"doc": "Deleting the data of the VDI" },
27156-
{ "name": "vdi_export_changed_blocks",
27237+
{ "name": "vdi_list_changed_blocks",
2715727238
"doc": "Exporting a bitmap that shows the changed blocks between two VDIs" },
2715827239
{ "name": "vdi_set_on_boot",
2715927240
"doc": "Setting the on_boot field of the VDI" },
@@ -27607,15 +27688,15 @@
2760727688
"description": "A virtual disk image" } ],
2760827689
"implicit": true },
2760927690
{ "name": "get_nbd_info",
27610-
"description": "Get a list of URIs specifying how to access this VDI via the NBD server of XenServer. A URI will be returned for each PIF of each host that is connected to the VDI's SR. An empty list is returned in case no network has a PIF on a host with access to the relevant SR. To access the given VDI, any of the returned URIs can be passed to the NBD server running at the IP address and port specified by that URI as the export name.",
27611-
"result": [ "string set", "The list of URIs." ],
27691+
"description": "Get details specifying how to access this VDI via a Network Block Device server. For each of a set of NBD server addresses on which the VDI is available, the return value set contains a vdi_nbd_server_info object that contains an exportname to request once the NBD connection is established, and connection details for the address. An empty list is returned if there is no network that has a PIF on a host with access to the relevant SR, or if no such network has been assigned an NBD-related purpose in its purpose field. To access the given VDI, any of the vdi_nbd_server_info objects can be used to make a connection to a server, and then the VDI will be available by requesting the exportname.",
27692+
"result": [ "vdi_nbd_server_info record set", "The details necessary for connecting to the VDI over NBD. This includes an authentication token, so must be treated as sensitive material and must not be sent over insecure networks." ],
2761227693
"params": [
2761327694
{ "type": "session ref",
2761427695
"name": "session_id",
2761527696
"doc": "Reference to a valid session" },
2761627697
{ "type": "VDI ref",
2761727698
"name": "self",
27618-
"doc": "The VDI to access via NBD." } ],
27699+
"doc": "The VDI to access via Network Block Device protocol" } ],
2761927700
"errors": [
2762027701
{ "name": "VDI_INCOMPATIBLE_TYPE",
2762127702
"doc": "This operation cannot be performed because the specified VDI is of an incompatible type (eg: an HA statefile cannot be attached to a guest)" } ],
@@ -27624,10 +27705,10 @@
2762427705
"lifecycle": [
2762527706
{ "transition": "published",
2762627707
"release": "inverness",
27627-
"description": "Get a list of URIs specifying how to access this VDI via the NBD server of XenServer. A URI will be returned for each PIF of each host that is connected to the VDI's SR. An empty list is returned in case no network has a PIF on a host with access to the relevant SR. To access the given VDI, any of the returned URIs can be passed to the NBD server running at the IP address and port specified by that URI as the export name." } ],
27708+
"description": "Get details specifying how to access this VDI via a Network Block Device server. For each of a set of NBD server addresses on which the VDI is available, the return value set contains a vdi_nbd_server_info object that contains an exportname to request once the NBD connection is established, and connection details for the address. An empty list is returned if there is no network that has a PIF on a host with access to the relevant SR, or if no such network has been assigned an NBD-related purpose in its purpose field. To access the given VDI, any of the vdi_nbd_server_info objects can be used to make a connection to a server, and then the VDI will be available by requesting the exportname." } ],
2762827709
"implicit": false },
27629-
{ "name": "export_changed_blocks",
27630-
"description": "Reports which blocks differ in the two VDIs. This operation is not allowed when vdi_to is attached to a VM.",
27710+
{ "name": "list_changed_blocks",
27711+
"description": "Compare two VDIs in 64k block increments and report which blocks differ. This operation is not allowed when vdi_to is attached to a VM.",
2763127712
"result": [ "string", "A base64 string-encoding of the bitmap showing which blocks differ in the two VDIs." ],
2763227713
"params": [
2763327714
{ "type": "session ref",
@@ -27655,7 +27736,7 @@
2765527736
"lifecycle": [
2765627737
{ "transition": "published",
2765727738
"release": "inverness",
27658-
"description": "Reports which blocks differ in the two VDIs. This operation is not allowed when vdi_to is attached to a VM." } ],
27739+
"description": "Compare two VDIs in 64k block increments and report which blocks differ. This operation is not allowed when vdi_to is attached to a VM." } ],
2765927740
"implicit": false },
2766027741
{ "name": "data_destroy",
2766127742
"description": "Delete the data of the snapshot VDI, but keep its changed block tracking metadata. When successful, this call changes the type of the VDI to cbt_metadata. This operation is idempotent: calling it on a VDI of type cbt_metadata results in a no-op, and no error will be thrown.",
@@ -29394,7 +29475,7 @@
2939429475
"doc": "Disabling changed block tracking for a VDI" },
2939529476
{ "name": "data_destroy",
2939629477
"doc": "Deleting the data of the VDI" },
29397-
{ "name": "export_changed_blocks",
29478+
{ "name": "list_changed_blocks",
2939829479
"doc": "Exporting a bitmap that shows the changed blocks between two VDIs" },
2939929480
{ "name": "set_on_boot",
2940029481
"doc": "Setting the on_boot field of the VDI" },
@@ -33030,7 +33111,9 @@
3303033111
{ "name": "VMSS",
3303133112
"doc": "VMSS" },
3303233113
{ "name": "PVS_proxy",
33033-
"doc": "PVS_proxy" } ] } ],
33114+
"doc": "PVS_proxy" },
33115+
{ "name": "VDI",
33116+
"doc": "VDI" } ] } ],
3303433117
"lifecycle": [
3303533118
{ "transition": "published",
3303633119
"release": "orlando",
@@ -37914,4 +37997,58 @@
3791437997
{ "transition": "published",
3791537998
"release": "falcon",
3791637999
"description": "" } ],
38000+
"tag": "" }, { "name": "vdi_nbd_server_info",
38001+
"description": "Details for connecting to a VDI using the Network Block Device protocol",
38002+
"fields": [
38003+
{ "name": "exportname",
38004+
"description": "The exportname to request over NBD. This holds details including an authentication token, so it must be protected appropriately. Clients should regard the exportname as an opaque string or token.",
38005+
"type": "string",
38006+
"qualifier": "RO/runtime",
38007+
"tag": "",
38008+
"lifecycle": [
38009+
{ "transition": "published",
38010+
"release": "inverness",
38011+
"description": "" } ] },
38012+
{ "name": "address",
38013+
"description": "An address on which the server can be reached; this can be IPv4, IPv6, or a DNS name.",
38014+
"type": "string",
38015+
"qualifier": "RO/runtime",
38016+
"tag": "",
38017+
"lifecycle": [
38018+
{ "transition": "published",
38019+
"release": "inverness",
38020+
"description": "" } ] },
38021+
{ "name": "port",
38022+
"description": "The TCP port",
38023+
"type": "int",
38024+
"qualifier": "RO/runtime",
38025+
"tag": "",
38026+
"lifecycle": [
38027+
{ "transition": "published",
38028+
"release": "inverness",
38029+
"description": "" } ] },
38030+
{ "name": "cert",
38031+
"description": "The TLS certificate of the server",
38032+
"type": "string",
38033+
"qualifier": "RO/runtime",
38034+
"tag": "",
38035+
"lifecycle": [
38036+
{ "transition": "published",
38037+
"release": "inverness",
38038+
"description": "" } ] },
38039+
{ "name": "subject",
38040+
"description": "For convenience, this redundant field holds a subject of the certificate.",
38041+
"type": "string",
38042+
"qualifier": "RO/runtime",
38043+
"tag": "",
38044+
"lifecycle": [
38045+
{ "transition": "published",
38046+
"release": "inverness",
38047+
"description": "" } ] } ],
38048+
"messages": [ ],
38049+
"enums": [ ],
38050+
"lifecycle": [
38051+
{ "transition": "published",
38052+
"release": "inverness",
38053+
"description": "" } ],
3791738054
"tag": "" } ]

0 commit comments

Comments
 (0)