Develop for XenServer

Class: pool_update

Pool-wide updates to the host software

Fields for class: pool_update

Field Type Qualifier Description
after_apply_guidance update_after_apply_guidance set RO/constructor What the client should do after this update has been applied.
enforce_homogeneity bool RO/constructor Flag - if true, all hosts in a pool must apply this update
hosts host ref set RO/runtime The hosts that have applied this update.
installation_size int RO/constructor Size of the update in bytes
key string RO/constructor GPG key of the update
name_description string RO/constructor a notes field containing human-readable description
name_label string RO/constructor a human-readable name
other_config (string -> string) map RW additional configuration
uuid string RO/runtime Unique identifier/object reference
vdi VDI ref RO/constructor VDI the update was uploaded to
version string RO/constructor Update version number

RPCs associated with class: pool_update

RPC name: add_to_other_config

Overview:

Add the given key-value pair to the other_config field of the given pool_update.

Signature:

void add_to_other_config (session ref session_ref, pool_update ref self, string key, string value)
<!--NeedCopy-->

Arguments:

Type Name Description
session ref session_ref Reference to a valid session
pool_update ref self reference to the object
string key Key to add
string value Value to add

Minimum Role: pool-operator

Return Type: void

RPC name: apply

Overview:

Apply the selected update to a host

Signature:

void apply (session ref session_ref, pool_update ref self, host ref host)
<!--NeedCopy-->

Arguments:

Type Name Description
session ref session_ref Reference to a valid session
pool_update ref self The update to apply
host ref host The host to apply the update to.

Minimum Role: pool-operator

Return Type: void

RPC name: destroy

Overview:

Removes the database entry. Only works on unapplied update.

Signature:

void destroy (session ref session_ref, pool_update ref self)
<!--NeedCopy-->

Arguments:

Type Name Description
session ref session_ref Reference to a valid session
pool_update ref self The update to destroy

Minimum Role: pool-operator

Return Type: void

RPC name: get_after_apply_guidance

Overview:

Get the after_apply_guidance field of the given pool_update.

Signature:

update_after_apply_guidance set get_after_apply_guidance (session ref session_ref, pool_update ref self)
<!--NeedCopy-->

Arguments:

Type Name Description
session ref session_ref Reference to a valid session
pool_update ref self reference to the object

Minimum Role: read-only

Return Type: update_after_apply_guidance set

value of the field

RPC name: get_all

Overview:

Return a list of all the pool_updates known to the system.

Signature:

pool_update ref set get_all (session ref session_ref)
<!--NeedCopy-->

Arguments:

Type Name Description
session ref session_ref Reference to a valid session

Minimum Role: read-only

Return Type: pool_update ref set

references to all objects

RPC name: get_all_records

Overview:

Return a map of pool_update references to pool_update records for all pool_updates known to the system.

Signature:

(pool_update ref -> pool_update record) map get_all_records (session ref session_ref)
<!--NeedCopy-->

Arguments:

Type Name Description
session ref session_ref Reference to a valid session

Minimum Role: read-only

Return Type: (pool_update ref -> pool_update record) map

records of all objects

RPC name: get_by_name_label

Overview:

Get all the pool_update instances with the given label.

Signature:

pool_update ref set get_by_name_label (session ref session_ref, string label)
<!--NeedCopy-->

Arguments:

Type Name Description
session ref session_ref Reference to a valid session
string label label of object to return

Minimum Role: read-only

Return Type: pool_update ref set

references to objects with matching names

RPC name: get_by_uuid

Overview:

Get a reference to the pool_update instance with the specified UUID.

Signature:

pool_update ref get_by_uuid (session ref session_ref, string uuid)
<!--NeedCopy-->

Arguments:

Type Name Description
session ref session_ref Reference to a valid session
string uuid UUID of object to return

Minimum Role: read-only

Return Type: pool_update ref

reference to the object

RPC name: get_enforce_homogeneity

Overview:

Get the enforce_homogeneity field of the given pool_update.

Signature:

bool get_enforce_homogeneity (session ref session_ref, pool_update ref self)
<!--NeedCopy-->

Arguments:

Type Name Description
session ref session_ref Reference to a valid session
pool_update ref self reference to the object

Minimum Role: read-only

Return Type: bool

value of the field

RPC name: get_hosts

Overview:

Get the hosts field of the given pool_update.

Signature:

host ref set get_hosts (session ref session_ref, pool_update ref self)
<!--NeedCopy-->

Arguments:

Type Name Description
session ref session_ref Reference to a valid session
pool_update ref self reference to the object

Minimum Role: read-only

Return Type: host ref set

value of the field

RPC name: get_installation_size

Overview:

Get the installation_size field of the given pool_update.

Signature:

int get_installation_size (session ref session_ref, pool_update ref self)
<!--NeedCopy-->

Arguments:

Type Name Description
session ref session_ref Reference to a valid session
pool_update ref self reference to the object

Minimum Role: read-only

Return Type: int

value of the field

RPC name: get_key

Overview:

Get the key field of the given pool_update.

Signature:

string get_key (session ref session_ref, pool_update ref self)
<!--NeedCopy-->

Arguments:

Type Name Description
session ref session_ref Reference to a valid session
pool_update ref self reference to the object

Minimum Role: read-only

Return Type: string

value of the field

RPC name: get_name_description

Overview:

Get the name/description field of the given pool_update.

Signature:

string get_name_description (session ref session_ref, pool_update ref self)
<!--NeedCopy-->

Arguments:

Type Name Description
session ref session_ref Reference to a valid session
pool_update ref self reference to the object

Minimum Role: read-only

Return Type: string

value of the field

RPC name: get_name_label

Overview:

Get the name/label field of the given pool_update.

Signature:

string get_name_label (session ref session_ref, pool_update ref self)
<!--NeedCopy-->

Arguments:

Type Name Description
session ref session_ref Reference to a valid session
pool_update ref self reference to the object

Minimum Role: read-only

Return Type: string

value of the field

RPC name: get_other_config

Overview:

Get the other_config field of the given pool_update.

Signature:

(string -> string) map get_other_config (session ref session_ref, pool_update ref self)
<!--NeedCopy-->

Arguments:

Type Name Description
session ref session_ref Reference to a valid session
pool_update ref self reference to the object

Minimum Role: read-only

Return Type: (string -> string) map

value of the field

RPC name: get_record

Overview:

Get a record containing the current state of the given pool_update.

Signature:

pool_update record get_record (session ref session_ref, pool_update ref self)
<!--NeedCopy-->

Arguments:

Type Name Description
session ref session_ref Reference to a valid session
pool_update ref self reference to the object

Minimum Role: read-only

Return Type: pool_update record

all fields from the object

RPC name: get_uuid

Overview:

Get the uuid field of the given pool_update.

Signature:

string get_uuid (session ref session_ref, pool_update ref self)
<!--NeedCopy-->

Arguments:

Type Name Description
session ref session_ref Reference to a valid session
pool_update ref self reference to the object

Minimum Role: read-only

Return Type: string

value of the field

RPC name: get_vdi

Overview:

Get the vdi field of the given pool_update.

Signature:

VDI ref get_vdi (session ref session_ref, pool_update ref self)
<!--NeedCopy-->

Arguments:

Type Name Description
session ref session_ref Reference to a valid session
pool_update ref self reference to the object

Minimum Role: read-only

Return Type: VDI ref

value of the field

RPC name: get_version

Overview:

Get the version field of the given pool_update.

Signature:

string get_version (session ref session_ref, pool_update ref self)
<!--NeedCopy-->

Arguments:

Type Name Description
session ref session_ref Reference to a valid session
pool_update ref self reference to the object

Minimum Role: read-only

Return Type: string

value of the field

RPC name: introduce

Overview:

Introduce update VDI

Signature:

pool_update ref introduce (session ref session_ref, VDI ref vdi)
<!--NeedCopy-->

Arguments:

Type Name Description
session ref session_ref Reference to a valid session
VDI ref vdi The VDI which contains a software update.

Minimum Role: pool-operator

Return Type: pool_update ref

the introduced pool update

RPC name: pool_apply

Overview:

Apply the selected update to all hosts in the pool

Signature:

void pool_apply (session ref session_ref, pool_update ref self)
<!--NeedCopy-->

Arguments:

Type Name Description
session ref session_ref Reference to a valid session
pool_update ref self The update to apply

Minimum Role: pool-operator

Return Type: void

RPC name: pool_clean

Overview:

Removes the update’s files from all hosts in the pool, but does not revert the update

Signature:

void pool_clean (session ref session_ref, pool_update ref self)
<!--NeedCopy-->

Arguments:

Type Name Description
session ref session_ref Reference to a valid session
pool_update ref self The update to clean up

Minimum Role: pool-operator

Return Type: void

RPC name: precheck

Overview:

Execute the precheck stage of the selected update on a host

Signature:

livepatch_status precheck (session ref session_ref, pool_update ref self, host ref host)
<!--NeedCopy-->

Arguments:

Type Name Description
session ref session_ref Reference to a valid session
pool_update ref self The update whose prechecks will be run
host ref host The host to run the prechecks on.

Minimum Role: pool-operator

Return Type: livepatch_status

The precheck pool update

RPC name: remove_from_other_config

Overview:

Remove the given key and its corresponding value from the other_config field of the given pool_update. If the key is not in that Map, then do nothing.

Signature:

void remove_from_other_config (session ref session_ref, pool_update ref self, string key)
<!--NeedCopy-->

Arguments:

Type Name Description
session ref session_ref Reference to a valid session
pool_update ref self reference to the object
string key Key to remove

Minimum Role: pool-operator

Return Type: void

RPC name: set_other_config

Overview:

Set the other_config field of the given pool_update.

Signature:

void set_other_config (session ref session_ref, pool_update ref self, (string -> string) map value)
<!--NeedCopy-->

Arguments:

Type Name Description
session ref session_ref Reference to a valid session
pool_update ref self reference to the object
(string -> string) map value New value to set

Minimum Role: pool-operator

Return Type: void