github.com/vmware/govmomi@v0.51.0/eam/types/types.go (about) 1 // © Broadcom. All Rights Reserved. 2 // The term “Broadcom” refers to Broadcom Inc. and/or its subsidiaries. 3 // SPDX-License-Identifier: Apache-2.0 4 5 package types 6 7 import ( 8 "reflect" 9 "time" 10 11 "github.com/vmware/govmomi/vim25/types" 12 ) 13 14 type AddIssue AddIssueRequestType 15 16 func init() { 17 types.Add("eam:AddIssue", reflect.TypeOf((*AddIssue)(nil)).Elem()) 18 } 19 20 // The parameters of `Agency.AddIssue`. 21 // 22 // This structure may be used only with operations rendered under `/eam`. 23 type AddIssueRequestType struct { 24 This types.ManagedObjectReference `xml:"_this" json:"_this"` 25 // A new issue. 26 Issue BaseIssue `xml:"issue,typeattr" json:"issue"` 27 } 28 29 func init() { 30 types.Add("eam:AddIssueRequestType", reflect.TypeOf((*AddIssueRequestType)(nil)).Elem()) 31 } 32 33 type AddIssueResponse struct { 34 Returnval BaseIssue `xml:"returnval,typeattr" json:"returnval"` 35 } 36 37 // Deprecated as of vSphere 9.0. Please refer to vLCM APIs. 38 // 39 // Scope specifies on which compute resources to deploy a solution's agents. 40 // 41 // This structure may be used only with operations rendered under `/eam`. 42 type AgencyComputeResourceScope struct { 43 AgencyScope 44 45 // Compute resources on which to deploy the agents. 46 // 47 // If `AgencyConfigInfoEx.vmPlacementPolicy` is set, the array needs to 48 // contain exactly one cluster compute resource. 49 // 50 // Refers instances of `ComputeResource`. 51 ComputeResource []types.ManagedObjectReference `xml:"computeResource,omitempty" json:"computeResource,omitempty"` 52 } 53 54 func init() { 55 types.Add("eam:AgencyComputeResourceScope", reflect.TypeOf((*AgencyComputeResourceScope)(nil)).Elem()) 56 } 57 58 // Deprecated as of vSphere 9.0. Please refer to vLCM APIs. 59 // 60 // This is the configuration of an <code>Agency</code>. 61 // 62 // It determines on 63 // which compute resources to deploy the agents, which VIB to install, which 64 // OVF package to install, and how to configure these items by setting the 65 // OVF environment properties. 66 // 67 // This structure may be used only with operations rendered under `/eam`. 68 type AgencyConfigInfo struct { 69 types.DynamicData 70 71 // A list of `AgentConfigInfo`s for hosts covered by this 72 // <code>Agency</code>. 73 // 74 // When provisioning a new agent to a host, vSphere 75 // ESX Agent Manager tries to find, from left to right in the array, a 76 // match for an `AgentConfigInfo` and stops searching at the first 77 // one that it finds. 78 // If `AgencyConfigInfoEx.vmPlacementPolicy` is set, the array needs to contain only a 79 // single agent config. In that case the agent config is not bound to a 80 // specific host, but to the whole cluster. 81 AgentConfig []AgentConfigInfo `xml:"agentConfig,omitempty" json:"agentConfig,omitempty"` 82 // The scope of the <code>Agency</code>. 83 Scope BaseAgencyScope `xml:"scope,omitempty,typeattr" json:"scope,omitempty"` 84 // If set to <code>true</code>, the client of this agency must manually 85 // mark the agent as ready after the agent virtual machine has been 86 // provisioned. 87 // 88 // This is useful if the client of this solution performs 89 // some extra reconfiguration of the agent virtual machine before it is 90 // powered on. 91 // 92 // See also `Agent.MarkAsAvailable`. 93 ManuallyMarkAgentVmAvailableAfterProvisioning *bool `xml:"manuallyMarkAgentVmAvailableAfterProvisioning" json:"manuallyMarkAgentVmAvailableAfterProvisioning,omitempty"` 94 // If set to <code>true</code>, the client of this agency must manually 95 // mark the agent as ready after the agent virtual machine has been 96 // powered on. 97 // 98 // In this case, DRS will not regard the agent virtual machine 99 // as ready until the client has marked the agent as ready. 100 // 101 // See also `Agent.MarkAsAvailable`. 102 ManuallyMarkAgentVmAvailableAfterPowerOn *bool `xml:"manuallyMarkAgentVmAvailableAfterPowerOn" json:"manuallyMarkAgentVmAvailableAfterPowerOn,omitempty"` 103 // If set to <code>true</code>, ESX Agent Manager will use vSphere Linked 104 // Clones to speed up the deployment of agent virtual machines. 105 // 106 // Using 107 // linked clones implies that the agent virtual machines cannot use 108 // Storage vMotion to move to another vSphere datastore. 109 // If set to <code>false</code>, ESX Agent Manager will use Full VM 110 // Cloning. 111 // If unset default is <code>true<code>. 112 OptimizedDeploymentEnabled *bool `xml:"optimizedDeploymentEnabled" json:"optimizedDeploymentEnabled,omitempty"` 113 // An optional name to use when naming agent virtual machines. 114 // 115 // For 116 // example, if set to "example-agent", each agent virtual machine will be 117 // named "example-agent (1)", "example-agent (2)", and so on. The maximum 118 // length of <code>agentName</code> is 70 characters. 119 AgentName string `xml:"agentName,omitempty" json:"agentName,omitempty"` 120 // Name of the agency. 121 // 122 // Must be set when creating the agency. 123 AgencyName string `xml:"agencyName,omitempty" json:"agencyName,omitempty"` 124 // Property <code>agentName</code> is required if this property is set to 125 // <code>true</code>. 126 // 127 // If set to <code>true</code>, ESX Agent Manager will name virtual 128 // machines with UUID suffix. For example, "example-agent-UUID". 129 // In this case, the maximum length of <code>agentName</code> is 43 130 // characters. 131 // 132 // If not set or is set to <code>false</code>, virtual 133 // machines will not contain UUID in their name. 134 UseUuidVmName *bool `xml:"useUuidVmName" json:"useUuidVmName,omitempty"` 135 // Deprecated use automatically provisioned VMs and register hooks to 136 // have control post provisioning and power on. 137 // 138 // Set to true if agent VMs are manually provisioned. 139 // 140 // If unset, defaults 141 // to false. 142 ManuallyProvisioned *bool `xml:"manuallyProvisioned" json:"manuallyProvisioned,omitempty"` 143 // Deprecated use automatically provisioned VMs and register hooks to 144 // have control post provisioning and power on. 145 // 146 // Set to true if agent VMs are manually monitored. 147 // 148 // If unset, defaults to 149 // false. This can only be set to true if 150 // `AgencyConfigInfo.manuallyProvisioned` is set to true. 151 ManuallyMonitored *bool `xml:"manuallyMonitored" json:"manuallyMonitored,omitempty"` 152 // Deprecated vUM is no more consulted so this property has no sense 153 // anymore. 154 // 155 // Set to true will install VIBs directly on the hosts even if VMware 156 // Update Manager is installed. 157 // 158 // If unset, defaults to false. 159 BypassVumEnabled *bool `xml:"bypassVumEnabled" json:"bypassVumEnabled,omitempty"` 160 // Specifies the networks which to be configured on the agent VMs. 161 // 162 // This property is only applicable for pinned to host VMs - i.e. 163 // (`AgencyConfigInfoEx.vmPlacementPolicy`) is not set. 164 // 165 // If not set or `AgencyConfigInfo.preferHostConfiguration` is set to true, the 166 // default host agent VM network (configured through 167 // vim.host.EsxAgentHostManager) is used, otherwise the first network from 168 // the array that is present on the host is used. 169 // 170 // At most one of `AgencyConfigInfo.agentVmNetwork` and `AgencyConfigInfoEx.vmNetworkMapping` 171 // needs to be set. 172 // 173 // Refers instances of `Network`. 174 AgentVmNetwork []types.ManagedObjectReference `xml:"agentVmNetwork,omitempty" json:"agentVmNetwork,omitempty"` 175 // The datastores used to configure the storage on the agent VMs. 176 // 177 // This property is required if `AgencyConfigInfoEx.vmPlacementPolicy` is set and 178 // `AgencyConfigInfoEx.datastoreSelectionPolicy` is not set. In that case the first 179 // element from the list is used. 180 // 181 // If not set or `AgencyConfigInfo.preferHostConfiguration` is set to true and 182 // `AgencyConfigInfoEx.vmPlacementPolicy` is not set, the default host agent VM 183 // datastore (configured through vim.host.EsxAgentHostManager) is used, 184 // otherwise the first datastore from the array that is present on the 185 // host is used. 186 // 187 // If `AgencyConfigInfoEx.vmPlacementPolicy` is set at most one of 188 // `AgencyConfigInfo.agentVmDatastore` and `AgencyConfigInfoEx.datastoreSelectionPolicy` needs 189 // to be set. If `AgencyConfigInfoEx.vmPlacementPolicy` is not set 190 // `AgencyConfigInfoEx.datastoreSelectionPolicy` takes precedence over 191 // `AgencyConfigInfo.agentVmDatastore` . 192 // 193 // Refers instances of `Datastore`. 194 AgentVmDatastore []types.ManagedObjectReference `xml:"agentVmDatastore,omitempty" json:"agentVmDatastore,omitempty"` 195 // If set to true the default agent VM datastore and network will take 196 // precedence over `AgencyConfigInfo.agentVmNetwork` and 197 // `AgencyConfigInfo.agentVmDatastore` when configuring the agent 198 // VMs. 199 // 200 // This property is not used if `AgencyConfigInfoEx.vmPlacementPolicy` is set. 201 PreferHostConfiguration *bool `xml:"preferHostConfiguration" json:"preferHostConfiguration,omitempty"` 202 // Deprecated that is a custom configuration that should be setup by the 203 // agency owner. One way is to use 204 // `AgencyConfigInfo.manuallyMarkAgentVmAvailableAfterPowerOn` or 205 // `AgencyConfigInfo.manuallyMarkAgentVmAvailableAfterProvisioning` 206 // hooks. 207 // 208 // If set, a property with id "ip" and value an IP from the pool is added 209 // to the vApp configuration of the deployed VMs. 210 IpPool *types.IpPool `xml:"ipPool,omitempty" json:"ipPool,omitempty"` 211 // Defines the resource pools where VMs to be deployed. 212 // 213 // If specified, the VMs for every compute resouce in the scope will be 214 // deployed to its corresponding resource pool. 215 // If not specified, the agent VMs for each compute resource will be 216 // deployed under top level nested resource pool created for the agent 217 // VMs. If unable to create a nested resource pool, the root resource pool 218 // of the compute resource will be used. 219 ResourcePools []AgencyVMResourcePool `xml:"resourcePools,omitempty" json:"resourcePools,omitempty"` 220 // Defines the folders where VMs to be deployed. 221 // 222 // If specified, the VMs for every compute resouce in the scope will be 223 // deployed to its corresponding folder. The link is made between the 224 // compute resource parent and the datacenter the folder belongs to 225 // `AgencyVMFolder.datacenterId`. 226 // If not specified, the agent VMs for each compute resource will be 227 // deployed in top level folder created in each datacenter for the agent 228 // VMs. 229 Folders []AgencyVMFolder `xml:"folders,omitempty" json:"folders,omitempty"` 230 } 231 232 func init() { 233 types.Add("eam:AgencyConfigInfo", reflect.TypeOf((*AgencyConfigInfo)(nil)).Elem()) 234 } 235 236 // Agency is disabled - one or more ClusterComputeResources from it's scope are 237 // disabled. 238 // 239 // This is not a remediable issue. To remediate, re-enable the cluster. 240 // 241 // This structure may be used only with operations rendered under `/eam`. 242 type AgencyDisabled struct { 243 AgencyIssue 244 } 245 246 func init() { 247 types.Add("eam:AgencyDisabled", reflect.TypeOf((*AgencyDisabled)(nil)).Elem()) 248 types.AddMinAPIVersionForType("eam:AgencyDisabled", "7.6") 249 } 250 251 // Base class for all agency issues. 252 // 253 // This structure may be used only with operations rendered under `/eam`. 254 type AgencyIssue struct { 255 Issue 256 257 // The agency to which this issue belongs. 258 // 259 // Refers instance of `Agency`. 260 Agency types.ManagedObjectReference `xml:"agency" json:"agency"` 261 // The name of the agency. 262 AgencyName string `xml:"agencyName" json:"agencyName"` 263 // The ID of the solution to which this issue belongs. 264 SolutionId string `xml:"solutionId" json:"solutionId"` 265 // The name of the solution to which this issue belongs. 266 SolutionName string `xml:"solutionName" json:"solutionName"` 267 } 268 269 func init() { 270 types.Add("eam:AgencyIssue", reflect.TypeOf((*AgencyIssue)(nil)).Elem()) 271 } 272 273 type AgencyQueryRuntime AgencyQueryRuntimeRequestType 274 275 func init() { 276 types.Add("eam:AgencyQueryRuntime", reflect.TypeOf((*AgencyQueryRuntime)(nil)).Elem()) 277 } 278 279 type AgencyQueryRuntimeRequestType struct { 280 This types.ManagedObjectReference `xml:"_this" json:"_this"` 281 } 282 283 func init() { 284 types.Add("eam:AgencyQueryRuntimeRequestType", reflect.TypeOf((*AgencyQueryRuntimeRequestType)(nil)).Elem()) 285 } 286 287 type AgencyQueryRuntimeResponse struct { 288 Returnval BaseEamObjectRuntimeInfo `xml:"returnval,typeattr" json:"returnval"` 289 } 290 291 // Deprecated as of vSphere 9.0. Please refer to vLCM APIs. 292 // 293 // Scope specifies which where to deploy agents. 294 // 295 // This structure may be used only with operations rendered under `/eam`. 296 type AgencyScope struct { 297 types.DynamicData 298 } 299 300 func init() { 301 types.Add("eam:AgencyScope", reflect.TypeOf((*AgencyScope)(nil)).Elem()) 302 } 303 304 // Deprecated as of vSphere 9.0. Please refer to vLCM System VMs APIs. 305 // 306 // Represents the mapping of a VM folder to a datacenter. 307 // 308 // This structure may be used only with operations rendered under `/eam`. 309 type AgencyVMFolder struct { 310 types.DynamicData 311 312 // Folder identifier. 313 // 314 // The folder must be present in the corresponding 315 // datacenter. 316 // 317 // Refers instance of `Folder`. 318 FolderId types.ManagedObjectReference `xml:"folderId" json:"folderId"` 319 // Datacenter identifier. 320 // 321 // Refers instance of `Datacenter`. 322 DatacenterId types.ManagedObjectReference `xml:"datacenterId" json:"datacenterId"` 323 } 324 325 func init() { 326 types.Add("eam:AgencyVMFolder", reflect.TypeOf((*AgencyVMFolder)(nil)).Elem()) 327 } 328 329 // Deprecated as of vSphere 9.0. Please refer to vLCM System VMs APIs. 330 // 331 // Represents the mapping of a VM resource pool to a compute resource. 332 // 333 // This structure may be used only with operations rendered under `/eam`. 334 type AgencyVMResourcePool struct { 335 types.DynamicData 336 337 // Resource pool identifier. 338 // 339 // The resource pool must be present in the 340 // corresponding compute resource. 341 // 342 // Refers instance of `ResourcePool`. 343 ResourcePoolId types.ManagedObjectReference `xml:"resourcePoolId" json:"resourcePoolId"` 344 // Compute resource identifier. 345 // 346 // Refers instance of `ComputeResource`. 347 ComputeResourceId types.ManagedObjectReference `xml:"computeResourceId" json:"computeResourceId"` 348 } 349 350 func init() { 351 types.Add("eam:AgencyVMResourcePool", reflect.TypeOf((*AgencyVMResourcePool)(nil)).Elem()) 352 } 353 354 type Agency_Disable Agency_DisableRequestType 355 356 func init() { 357 types.Add("eam:Agency_Disable", reflect.TypeOf((*Agency_Disable)(nil)).Elem()) 358 } 359 360 type Agency_DisableRequestType struct { 361 This types.ManagedObjectReference `xml:"_this" json:"_this"` 362 } 363 364 func init() { 365 types.Add("eam:Agency_DisableRequestType", reflect.TypeOf((*Agency_DisableRequestType)(nil)).Elem()) 366 } 367 368 type Agency_DisableResponse struct { 369 } 370 371 type Agency_Enable Agency_EnableRequestType 372 373 func init() { 374 types.Add("eam:Agency_Enable", reflect.TypeOf((*Agency_Enable)(nil)).Elem()) 375 } 376 377 type Agency_EnableRequestType struct { 378 This types.ManagedObjectReference `xml:"_this" json:"_this"` 379 } 380 381 func init() { 382 types.Add("eam:Agency_EnableRequestType", reflect.TypeOf((*Agency_EnableRequestType)(nil)).Elem()) 383 } 384 385 type Agency_EnableResponse struct { 386 } 387 388 // Deprecated as of vSphere 9.0. Please refer to vLCM APIs. 389 // 390 // Specifies an SSL policy that trusts any SSL certificate. 391 // 392 // This structure may be used only with operations rendered under `/eam`. 393 type AgentAnyCertificate struct { 394 AgentSslTrust 395 } 396 397 func init() { 398 types.Add("eam:AgentAnyCertificate", reflect.TypeOf((*AgentAnyCertificate)(nil)).Elem()) 399 types.AddMinAPIVersionForType("eam:AgentAnyCertificate", "8.2") 400 } 401 402 // Deprecated as of vSphere 9.0. Please refer to vLCM APIs. 403 // 404 // A description of what should be put on a host. 405 // 406 // By setting the 407 // <code>productLineId</code> and <code>hostVersion</code>, you can specify 408 // the types of hosts for which to use the <code>ConfigInfo</code>. 409 // 410 // This structure may be used only with operations rendered under `/eam`. 411 type AgentConfigInfo struct { 412 types.DynamicData 413 414 // The product line ID of the host. 415 // 416 // Examples of values are "esx" or 417 // "embeddedEsx". If omitted, the host's product line ID is not considered 418 // when matching an <code>AgentPackage</code> against a host. 419 ProductLineId string `xml:"productLineId,omitempty" json:"productLineId,omitempty"` 420 // A dot-separated string of the host version. 421 // 422 // Examples of values are 423 // "4.1.0" "3.5", "4.\*" where \* is a wildcard meaning any version minor 424 // version of the major version 4. If omitted, the host version will not 425 // be considered when matching an <code>AgentPackage</code> against a 426 // host. 427 // This property is not used if 428 // `AgencyConfigInfoEx.vmPlacementPolicy` is set. It is client's 429 // responsibility to trigger an agency upgrade with a new 430 // `AgentConfigInfo.ovfPackageUrl`. 431 HostVersion string `xml:"hostVersion,omitempty" json:"hostVersion,omitempty"` 432 // The URL of the solution's agent OVF package. 433 // 434 // If not set, no agent 435 // virtual machines are installed on the hosts covered by the scope. 436 // If `AgencyConfigInfoEx.vmPlacementPolicy` is set, the VM needs to 437 // be agnostic to the different host versions inside the cluster. 438 OvfPackageUrl string `xml:"ovfPackageUrl,omitempty" json:"ovfPackageUrl,omitempty"` 439 AuthenticationScheme string `xml:"authenticationScheme,omitempty" json:"authenticationScheme,omitempty"` 440 // Specifies an SSL trust policy to be use for verification of the 441 // server that hosts the `AgentConfigInfo.ovfPackageUrl`. 442 // 443 // If not set, the server 444 // certificate is validated against the trusted root certificates of the 445 // OS (Photon) and VECS (TRUSTED\_ROOTS). 446 OvfSslTrust BaseAgentSslTrust `xml:"ovfSslTrust,omitempty,typeattr" json:"ovfSslTrust,omitempty" vim:"8.2"` 447 // The part of the OVF environment that can be set by the solution. 448 // 449 // This 450 // is where Properties that the agent virtual machine's OVF descriptor 451 // specifies are set here. All properties that are specified as 452 // user-configurable must be set. 453 OvfEnvironment *AgentOvfEnvironmentInfo `xml:"ovfEnvironment,omitempty" json:"ovfEnvironment,omitempty"` 454 // An optional URL to an offline bundle. 455 // 456 // If not set, no VIB is installed 457 // on the hosts in the scope. Offline bundles are only supported on 4.0 458 // hosts and later. 459 // 460 // VIB downgrade is not permitted - in case a VIB with the same name, but 461 // lower version is installed on a host in the scope the VIB installation 462 // on that host will not succeed. 463 // 464 // If two or more agents have the same VIB with different versions on the 465 // same host, the install/uninstall behaviour is undefined (the VIB may 466 // remain installed, etc.). 467 // 468 // The property is not used if `AgencyConfigInfoEx.vmPlacementPolicy` 469 // is set. 470 VibUrl string `xml:"vibUrl,omitempty" json:"vibUrl,omitempty"` 471 // Specifies an SSL trust policy to be use for verification of the 472 // server that hosts the `AgentConfigInfo.vibUrl`. 473 // 474 // If not set, the server 475 // certificate is validated against the trusted root certificates of the 476 // OS (Photon) and VECS (TRUSTED\_ROOTS). 477 VibSslTrust BaseAgentSslTrust `xml:"vibSslTrust,omitempty,typeattr" json:"vibSslTrust,omitempty" vim:"8.2"` 478 // Deprecated vIB matching rules are no longer supported by EAM. Same 479 // overlaps with VIB dependency requirements which reside in 480 // each VIB's metadata. 481 // 482 // Optional Vib matching rules. 483 // 484 // If set, the Vib, specified by vibUrl, will 485 // be installed either 486 // - if there is installed Vib on the host which name and version match 487 // the regular expressions in the corresponding rule 488 // - or there isn't any installed Vib on the host with name which 489 // matches the Vib name regular expression in the corresponding rule. Vib 490 // matching rules are usually used for controlling VIB upgrades, in which 491 // case the name regular expression matches any previous versions of the 492 // agency Vib and version regular expression determines whether the 493 // existing Vib should be upgraded. 494 // 495 // For every Vib in the Vib package, only one Vib matching rule can be 496 // defined. If specified more than one, it is not determined which one 497 // will be used. The Vib name regular expression in the Vib matching rule 498 // will be matched against the name of the Vib which will be installed. 499 // Only rules for Vibs which are defined in the Vib package metadata will 500 // be taken in account. 501 VibMatchingRules []AgentVibMatchingRule `xml:"vibMatchingRules,omitempty" json:"vibMatchingRules,omitempty"` 502 // Deprecated use VIB metadata to add such dependency. 503 // 504 // An optional name of a VIB. 505 // 506 // If set, no VIB is installed on the host. The 507 // host is checked if a VIB with vibName is already installed on it. Also 508 // the vibUrl must not be set together with the vibUrl. 509 VibName string `xml:"vibName,omitempty" json:"vibName,omitempty"` 510 // Deprecated that is a custom setup specific for a particular agency. 511 // The agency owner should do it using other means, e.g. 512 // `AgencyConfigInfo.manuallyMarkAgentVmAvailableAfterPowerOn` or 513 // `AgencyConfigInfo.manuallyMarkAgentVmAvailableAfterProvisioning` 514 // hooks. Support for this has been removed. Seting this to 515 // <code>true</code> will no longer have any effect. 516 // 517 // If set to <code>true</code>, the hosts in the scope must be configured 518 // for DvFilter before VIBs and agent virtual machines are deployed on 519 // them. 520 // 521 // If not set or set to <code>false</code>, no DvFilter 522 // configuration is done on the hosts. 523 DvFilterEnabled *bool `xml:"dvFilterEnabled" json:"dvFilterEnabled,omitempty"` 524 // Deprecated express that requirement in the VIB descriptor with 525 // 'live-remove-allowed=false'. 526 // 527 // An optional boolean flag to specify whether the agent's host is 528 // rebooted after the VIB is uninstalled. 529 // 530 // If not set, the default value is 531 // <code>false</code>. If set to <code>true</code>, the agent gets a 532 // `VibRequiresHostReboot` issue after a successful 533 // uninstallation. 534 RebootHostAfterVibUninstall *bool `xml:"rebootHostAfterVibUninstall" json:"rebootHostAfterVibUninstall,omitempty"` 535 // If set the virtual machine will be configured with the services and 536 // allow VMCI access from the virtual machine to the installed VIB. 537 VmciService []string `xml:"vmciService,omitempty" json:"vmciService,omitempty"` 538 // AgentVM disk provisioning type. 539 // 540 // Defaults to `none` if not specified. 541 OvfDiskProvisioning string `xml:"ovfDiskProvisioning,omitempty" json:"ovfDiskProvisioning,omitempty"` 542 // Defines the storage policies configured on Agent VMs. 543 // 544 // Storage policies 545 // are configured on all VM related objects including disks. 546 // NOTE: The property needs to be configured on each update, otherwise 547 // vSphere ESX Agent Manager will unset this configuration for all future 548 // agent VMs. 549 VmStoragePolicies []BaseAgentStoragePolicy `xml:"vmStoragePolicies,omitempty,typeattr" json:"vmStoragePolicies,omitempty"` 550 VmResourceConfiguration string `xml:"vmResourceConfiguration,omitempty" json:"vmResourceConfiguration,omitempty"` 551 } 552 553 func init() { 554 types.Add("eam:AgentConfigInfo", reflect.TypeOf((*AgentConfigInfo)(nil)).Elem()) 555 } 556 557 // Base class for all agent issues. 558 // 559 // This structure may be used only with operations rendered under `/eam`. 560 type AgentIssue struct { 561 AgencyIssue 562 563 // The agent that has this issue. 564 // 565 // Refers instance of `Agent`. 566 Agent types.ManagedObjectReference `xml:"agent" json:"agent"` 567 // The name of the agent. 568 AgentName string `xml:"agentName" json:"agentName"` 569 // The managed object reference to the host on which this agent is located. 570 // 571 // Refers instance of `HostSystem`. 572 Host types.ManagedObjectReference `xml:"host" json:"host"` 573 // The name of the host on which this agent is located. 574 HostName string `xml:"hostName" json:"hostName"` 575 } 576 577 func init() { 578 types.Add("eam:AgentIssue", reflect.TypeOf((*AgentIssue)(nil)).Elem()) 579 } 580 581 // Deprecated as of vSphere 9.0. Please refer to vLCM APIs. 582 // 583 // The <code>OvfEnvironment</code> is used to assign OVF environment 584 // properties in the `AgentConfigInfo`. 585 // 586 // It specifies the values that 587 // map to properties in the agent virtual machine's OVF descriptor. 588 // 589 // This structure may be used only with operations rendered under `/eam`. 590 type AgentOvfEnvironmentInfo struct { 591 types.DynamicData 592 593 // The OVF properties that are assigned to the agent virtual machine's OVF 594 // environment when it is powered on. 595 OvfProperty []AgentOvfEnvironmentInfoOvfProperty `xml:"ovfProperty,omitempty" json:"ovfProperty,omitempty"` 596 } 597 598 func init() { 599 types.Add("eam:AgentOvfEnvironmentInfo", reflect.TypeOf((*AgentOvfEnvironmentInfo)(nil)).Elem()) 600 } 601 602 // Deprecated as of vSphere 9.0. Please refer to vLCM APIs. 603 // 604 // One OVF property. 605 // 606 // This structure may be used only with operations rendered under `/eam`. 607 type AgentOvfEnvironmentInfoOvfProperty struct { 608 types.DynamicData 609 610 // The name of the property in the OVF descriptor. 611 Key string `xml:"key" json:"key"` 612 // The value of the property. 613 Value string `xml:"value" json:"value"` 614 } 615 616 func init() { 617 types.Add("eam:AgentOvfEnvironmentInfoOvfProperty", reflect.TypeOf((*AgentOvfEnvironmentInfoOvfProperty)(nil)).Elem()) 618 } 619 620 // Deprecated as of vSphere 9.0. Please refer to vLCM APIs. 621 // 622 // Specifies an SSL policy that trusts one specific pinned PEM encoded 623 // SSL certificate. 624 // 625 // This structure may be used only with operations rendered under `/eam`. 626 type AgentPinnedPemCertificate struct { 627 AgentSslTrust 628 629 // PEM encoded pinned SSL certificate of the server that needs to be 630 // trusted. 631 SslCertificate string `xml:"sslCertificate" json:"sslCertificate"` 632 } 633 634 func init() { 635 types.Add("eam:AgentPinnedPemCertificate", reflect.TypeOf((*AgentPinnedPemCertificate)(nil)).Elem()) 636 types.AddMinAPIVersionForType("eam:AgentPinnedPemCertificate", "8.2") 637 } 638 639 type AgentQueryConfig AgentQueryConfigRequestType 640 641 func init() { 642 types.Add("eam:AgentQueryConfig", reflect.TypeOf((*AgentQueryConfig)(nil)).Elem()) 643 } 644 645 type AgentQueryConfigRequestType struct { 646 This types.ManagedObjectReference `xml:"_this" json:"_this"` 647 } 648 649 func init() { 650 types.Add("eam:AgentQueryConfigRequestType", reflect.TypeOf((*AgentQueryConfigRequestType)(nil)).Elem()) 651 } 652 653 type AgentQueryConfigResponse struct { 654 Returnval AgentConfigInfo `xml:"returnval" json:"returnval"` 655 } 656 657 type AgentQueryRuntime AgentQueryRuntimeRequestType 658 659 func init() { 660 types.Add("eam:AgentQueryRuntime", reflect.TypeOf((*AgentQueryRuntime)(nil)).Elem()) 661 } 662 663 type AgentQueryRuntimeRequestType struct { 664 This types.ManagedObjectReference `xml:"_this" json:"_this"` 665 } 666 667 func init() { 668 types.Add("eam:AgentQueryRuntimeRequestType", reflect.TypeOf((*AgentQueryRuntimeRequestType)(nil)).Elem()) 669 } 670 671 type AgentQueryRuntimeResponse struct { 672 Returnval AgentRuntimeInfo `xml:"returnval" json:"returnval"` 673 } 674 675 // Deprecated as of vSphere 9.0. Please refer to vLCM APIs. 676 // 677 // Extends <code>RuntimeInfo</code> with information regarding the deployment 678 // of an agent on a specific host. 679 // 680 // This structure may be used only with operations rendered under `/eam`. 681 type AgentRuntimeInfo struct { 682 EamObjectRuntimeInfo 683 684 // Deprecated get that info calling the virtual machine VIM API. 685 // 686 // The power state of an agent virtual machine. 687 VmPowerState types.VirtualMachinePowerState `xml:"vmPowerState" json:"vmPowerState"` 688 // Deprecated get that info calling the virtual machine VIM API. 689 // 690 // True if the vSphere ESX Agent Manager is receiving heartbeats from the 691 // agent virtual machine. 692 ReceivingHeartBeat bool `xml:"receivingHeartBeat" json:"receivingHeartBeat"` 693 // The agent host. 694 // 695 // Refers instance of `HostSystem`. 696 Host *types.ManagedObjectReference `xml:"host,omitempty" json:"host,omitempty"` 697 // The agent virtual machine. 698 // 699 // Refers instance of `VirtualMachine`. 700 Vm *types.ManagedObjectReference `xml:"vm,omitempty" json:"vm,omitempty"` 701 // Deprecated get that info calling the virtual machine VIM API. 702 // 703 // The IP address of the agent virtual machine 704 VmIp string `xml:"vmIp,omitempty" json:"vmIp,omitempty"` 705 // Deprecated get that info calling the virtual machine VIM API. 706 // 707 // The name of the agent virtual machine. 708 VmName string `xml:"vmName" json:"vmName"` 709 // Deprecated in order to retrieve agent resource pool use VIM API. 710 // 711 // The ESX agent resource pool in which the agent virtual machine resides. 712 // 713 // Refers instance of `ResourcePool`. 714 EsxAgentResourcePool *types.ManagedObjectReference `xml:"esxAgentResourcePool,omitempty" json:"esxAgentResourcePool,omitempty"` 715 // Deprecated in order to retrieve agent VM folder use VIM API. 716 // 717 // The ESX agent folder in which the agent virtual machine resides. 718 // 719 // Refers instance of `Folder`. 720 EsxAgentFolder *types.ManagedObjectReference `xml:"esxAgentFolder,omitempty" json:"esxAgentFolder,omitempty"` 721 // Deprecated use `AgentRuntimeInfo.installedVibs` instead. 722 // 723 // An optional array of IDs of installed bulletins for this agent. 724 InstalledBulletin []string `xml:"installedBulletin,omitempty" json:"installedBulletin,omitempty"` 725 // Information about the installed vibs on the host. 726 InstalledVibs []VibVibInfo `xml:"installedVibs,omitempty" json:"installedVibs,omitempty"` 727 // The agency this agent belongs to. 728 // 729 // Refers instance of `Agency`. 730 Agency *types.ManagedObjectReference `xml:"agency,omitempty" json:"agency,omitempty"` 731 // Active VM hook. 732 // 733 // If present agent is actively waiting for `Agent.MarkAsAvailable`. 734 // See `AgentVmHook`. 735 VmHook *AgentVmHook `xml:"vmHook,omitempty" json:"vmHook,omitempty"` 736 } 737 738 func init() { 739 types.Add("eam:AgentRuntimeInfo", reflect.TypeOf((*AgentRuntimeInfo)(nil)).Elem()) 740 } 741 742 // Deprecated as of vSphere 9.0. Please refer to vLCM APIs. 743 // 744 // Specifies an SSL trust policy. 745 // 746 // This structure may be used only with operations rendered under `/eam`. 747 type AgentSslTrust struct { 748 types.DynamicData 749 } 750 751 func init() { 752 types.Add("eam:AgentSslTrust", reflect.TypeOf((*AgentSslTrust)(nil)).Elem()) 753 types.AddMinAPIVersionForType("eam:AgentSslTrust", "8.2") 754 } 755 756 // Deprecated as of vSphere 9.0. Please refer to vLCM APIs. 757 // 758 // Specifies the storage policies configured on Agent VMs. 759 // 760 // This structure may be used only with operations rendered under `/eam`. 761 type AgentStoragePolicy struct { 762 types.DynamicData 763 } 764 765 func init() { 766 types.Add("eam:AgentStoragePolicy", reflect.TypeOf((*AgentStoragePolicy)(nil)).Elem()) 767 } 768 769 // Deprecated vIB matching rules are no longer supported by EAM. Same 770 // overlaps with VIB dependency requirements which reside in each 771 // VIB's metadata. 772 // 773 // Specifies regular expressions for Vib name and version. 774 // 775 // This structure may be used only with operations rendered under `/eam`. 776 type AgentVibMatchingRule struct { 777 types.DynamicData 778 779 // Vib name regular expression. 780 VibNameRegex string `xml:"vibNameRegex" json:"vibNameRegex"` 781 // Vib version regular expression. 782 VibVersionRegex string `xml:"vibVersionRegex" json:"vibVersionRegex"` 783 } 784 785 func init() { 786 types.Add("eam:AgentVibMatchingRule", reflect.TypeOf((*AgentVibMatchingRule)(nil)).Elem()) 787 } 788 789 // Deprecated as of vSphere 9.0. Please refer to vLCM APIs. 790 // 791 // Represents an active hook of the VM lifecycle which EAM is waiting on to 792 // be processed by the client. 793 // 794 // The supported hooks are defined by 795 // `AgencyConfigInfo.manuallyMarkAgentVmAvailableAfterProvisioning` 796 // and 797 // `AgencyConfigInfo.manuallyMarkAgentVmAvailableAfterProvisioning`. 798 // See `Agent.MarkAsAvailable` 799 // 800 // This structure may be used only with operations rendered under `/eam`. 801 type AgentVmHook struct { 802 types.DynamicData 803 804 // The VM for which lifecycle is this hook. 805 // 806 // This VM may differ from `AgentRuntimeInfo.vm` while an upgrade 807 // of the agent VM is in progress. 808 // 809 // Refers instance of `VirtualMachine`. 810 Vm types.ManagedObjectReference `xml:"vm" json:"vm"` 811 // The current VM lifecycle state. 812 VmState string `xml:"vmState" json:"vmState"` 813 } 814 815 func init() { 816 types.Add("eam:AgentVmHook", reflect.TypeOf((*AgentVmHook)(nil)).Elem()) 817 } 818 819 // Deprecated as of vSphere 9.0. Please refer to vLCM APIs. 820 // 821 // Specifies vSAN specific storage policy configured on Agent VMs. 822 // 823 // This structure may be used only with operations rendered under `/eam`. 824 type AgentVsanStoragePolicy struct { 825 AgentStoragePolicy 826 827 // ID of a storage policy profile created by the user. 828 // 829 // The type of the 830 // profile must be `VirtualMachineDefinedProfileSpec`. The ID must be valid 831 // `VirtualMachineDefinedProfileSpec.profileId`. 832 ProfileId string `xml:"profileId" json:"profileId"` 833 } 834 835 func init() { 836 types.Add("eam:AgentVsanStoragePolicy", reflect.TypeOf((*AgentVsanStoragePolicy)(nil)).Elem()) 837 } 838 839 // A boxed array of `AgencyVMFolder`. To be used in `Any` placeholders. 840 // 841 // This structure may be used only with operations rendered under `/eam`. 842 type ArrayOfAgencyVMFolder struct { 843 AgencyVMFolder []AgencyVMFolder `xml:"AgencyVMFolder,omitempty" json:"_value"` 844 } 845 846 func init() { 847 types.Add("eam:ArrayOfAgencyVMFolder", reflect.TypeOf((*ArrayOfAgencyVMFolder)(nil)).Elem()) 848 } 849 850 // A boxed array of `AgencyVMResourcePool`. To be used in `Any` placeholders. 851 // 852 // This structure may be used only with operations rendered under `/eam`. 853 type ArrayOfAgencyVMResourcePool struct { 854 AgencyVMResourcePool []AgencyVMResourcePool `xml:"AgencyVMResourcePool,omitempty" json:"_value"` 855 } 856 857 func init() { 858 types.Add("eam:ArrayOfAgencyVMResourcePool", reflect.TypeOf((*ArrayOfAgencyVMResourcePool)(nil)).Elem()) 859 } 860 861 // A boxed array of `AgentConfigInfo`. To be used in `Any` placeholders. 862 // 863 // This structure may be used only with operations rendered under `/eam`. 864 type ArrayOfAgentConfigInfo struct { 865 AgentConfigInfo []AgentConfigInfo `xml:"AgentConfigInfo,omitempty" json:"_value"` 866 } 867 868 func init() { 869 types.Add("eam:ArrayOfAgentConfigInfo", reflect.TypeOf((*ArrayOfAgentConfigInfo)(nil)).Elem()) 870 } 871 872 // A boxed array of `AgentOvfEnvironmentInfoOvfProperty`. To be used in `Any` placeholders. 873 // 874 // This structure may be used only with operations rendered under `/eam`. 875 type ArrayOfAgentOvfEnvironmentInfoOvfProperty struct { 876 AgentOvfEnvironmentInfoOvfProperty []AgentOvfEnvironmentInfoOvfProperty `xml:"AgentOvfEnvironmentInfoOvfProperty,omitempty" json:"_value"` 877 } 878 879 func init() { 880 types.Add("eam:ArrayOfAgentOvfEnvironmentInfoOvfProperty", reflect.TypeOf((*ArrayOfAgentOvfEnvironmentInfoOvfProperty)(nil)).Elem()) 881 } 882 883 // A boxed array of `AgentStoragePolicy`. To be used in `Any` placeholders. 884 // 885 // This structure may be used only with operations rendered under `/eam`. 886 type ArrayOfAgentStoragePolicy struct { 887 AgentStoragePolicy []BaseAgentStoragePolicy `xml:"AgentStoragePolicy,omitempty,typeattr" json:"_value"` 888 } 889 890 func init() { 891 types.Add("eam:ArrayOfAgentStoragePolicy", reflect.TypeOf((*ArrayOfAgentStoragePolicy)(nil)).Elem()) 892 } 893 894 // A boxed array of `AgentVibMatchingRule`. To be used in `Any` placeholders. 895 // 896 // This structure may be used only with operations rendered under `/eam`. 897 type ArrayOfAgentVibMatchingRule struct { 898 AgentVibMatchingRule []AgentVibMatchingRule `xml:"AgentVibMatchingRule,omitempty" json:"_value"` 899 } 900 901 func init() { 902 types.Add("eam:ArrayOfAgentVibMatchingRule", reflect.TypeOf((*ArrayOfAgentVibMatchingRule)(nil)).Elem()) 903 } 904 905 // A boxed array of `Issue`. To be used in `Any` placeholders. 906 // 907 // This structure may be used only with operations rendered under `/eam`. 908 type ArrayOfIssue struct { 909 Issue []BaseIssue `xml:"Issue,omitempty,typeattr" json:"_value"` 910 } 911 912 func init() { 913 types.Add("eam:ArrayOfIssue", reflect.TypeOf((*ArrayOfIssue)(nil)).Elem()) 914 } 915 916 // A boxed array of `SolutionsClusterSolutionComplianceResult`. To be used in `Any` placeholders. 917 // 918 // This structure may be used only with operations rendered under `/eam`. 919 type ArrayOfSolutionsClusterSolutionComplianceResult struct { 920 SolutionsClusterSolutionComplianceResult []SolutionsClusterSolutionComplianceResult `xml:"SolutionsClusterSolutionComplianceResult,omitempty" json:"_value"` 921 } 922 923 func init() { 924 types.Add("eam:ArrayOfSolutionsClusterSolutionComplianceResult", reflect.TypeOf((*ArrayOfSolutionsClusterSolutionComplianceResult)(nil)).Elem()) 925 } 926 927 // A boxed array of `SolutionsDeploymentUnitComplianceResult`. To be used in `Any` placeholders. 928 // 929 // This structure may be used only with operations rendered under `/eam`. 930 type ArrayOfSolutionsDeploymentUnitComplianceResult struct { 931 SolutionsDeploymentUnitComplianceResult []SolutionsDeploymentUnitComplianceResult `xml:"SolutionsDeploymentUnitComplianceResult,omitempty" json:"_value"` 932 } 933 934 func init() { 935 types.Add("eam:ArrayOfSolutionsDeploymentUnitComplianceResult", reflect.TypeOf((*ArrayOfSolutionsDeploymentUnitComplianceResult)(nil)).Elem()) 936 } 937 938 // A boxed array of `SolutionsHookConfig`. To be used in `Any` placeholders. 939 // 940 // This structure may be used only with operations rendered under `/eam`. 941 type ArrayOfSolutionsHookConfig struct { 942 SolutionsHookConfig []SolutionsHookConfig `xml:"SolutionsHookConfig,omitempty" json:"_value"` 943 } 944 945 func init() { 946 types.Add("eam:ArrayOfSolutionsHookConfig", reflect.TypeOf((*ArrayOfSolutionsHookConfig)(nil)).Elem()) 947 } 948 949 // A boxed array of `SolutionsHookInfo`. To be used in `Any` placeholders. 950 // 951 // This structure may be used only with operations rendered under `/eam`. 952 type ArrayOfSolutionsHookInfo struct { 953 SolutionsHookInfo []SolutionsHookInfo `xml:"SolutionsHookInfo,omitempty" json:"_value"` 954 } 955 956 func init() { 957 types.Add("eam:ArrayOfSolutionsHookInfo", reflect.TypeOf((*ArrayOfSolutionsHookInfo)(nil)).Elem()) 958 } 959 960 // A boxed array of `SolutionsHostComplianceResult`. To be used in `Any` placeholders. 961 // 962 // This structure may be used only with operations rendered under `/eam`. 963 type ArrayOfSolutionsHostComplianceResult struct { 964 SolutionsHostComplianceResult []SolutionsHostComplianceResult `xml:"SolutionsHostComplianceResult,omitempty" json:"_value"` 965 } 966 967 func init() { 968 types.Add("eam:ArrayOfSolutionsHostComplianceResult", reflect.TypeOf((*ArrayOfSolutionsHostComplianceResult)(nil)).Elem()) 969 } 970 971 // A boxed array of `SolutionsOvfProperty`. To be used in `Any` placeholders. 972 // 973 // This structure may be used only with operations rendered under `/eam`. 974 type ArrayOfSolutionsOvfProperty struct { 975 SolutionsOvfProperty []SolutionsOvfProperty `xml:"SolutionsOvfProperty,omitempty" json:"_value"` 976 } 977 978 func init() { 979 types.Add("eam:ArrayOfSolutionsOvfProperty", reflect.TypeOf((*ArrayOfSolutionsOvfProperty)(nil)).Elem()) 980 } 981 982 // A boxed array of `SolutionsSolutionComplianceResult`. To be used in `Any` placeholders. 983 // 984 // This structure may be used only with operations rendered under `/eam`. 985 type ArrayOfSolutionsSolutionComplianceResult struct { 986 SolutionsSolutionComplianceResult []SolutionsSolutionComplianceResult `xml:"SolutionsSolutionComplianceResult,omitempty" json:"_value"` 987 } 988 989 func init() { 990 types.Add("eam:ArrayOfSolutionsSolutionComplianceResult", reflect.TypeOf((*ArrayOfSolutionsSolutionComplianceResult)(nil)).Elem()) 991 } 992 993 // A boxed array of `SolutionsSolutionConfig`. To be used in `Any` placeholders. 994 // 995 // This structure may be used only with operations rendered under `/eam`. 996 type ArrayOfSolutionsSolutionConfig struct { 997 SolutionsSolutionConfig []SolutionsSolutionConfig `xml:"SolutionsSolutionConfig,omitempty" json:"_value"` 998 } 999 1000 func init() { 1001 types.Add("eam:ArrayOfSolutionsSolutionConfig", reflect.TypeOf((*ArrayOfSolutionsSolutionConfig)(nil)).Elem()) 1002 } 1003 1004 // A boxed array of `SolutionsSolutionValidationResult`. To be used in `Any` placeholders. 1005 // 1006 // This structure may be used only with operations rendered under `/eam`. 1007 type ArrayOfSolutionsSolutionValidationResult struct { 1008 SolutionsSolutionValidationResult []SolutionsSolutionValidationResult `xml:"SolutionsSolutionValidationResult,omitempty" json:"_value"` 1009 } 1010 1011 func init() { 1012 types.Add("eam:ArrayOfSolutionsSolutionValidationResult", reflect.TypeOf((*ArrayOfSolutionsSolutionValidationResult)(nil)).Elem()) 1013 } 1014 1015 // A boxed array of `SolutionsStoragePolicy`. To be used in `Any` placeholders. 1016 // 1017 // This structure may be used only with operations rendered under `/eam`. 1018 type ArrayOfSolutionsStoragePolicy struct { 1019 SolutionsStoragePolicy []BaseSolutionsStoragePolicy `xml:"SolutionsStoragePolicy,omitempty,typeattr" json:"_value"` 1020 } 1021 1022 func init() { 1023 types.Add("eam:ArrayOfSolutionsStoragePolicy", reflect.TypeOf((*ArrayOfSolutionsStoragePolicy)(nil)).Elem()) 1024 } 1025 1026 // A boxed array of `SolutionsVMNetworkMapping`. To be used in `Any` placeholders. 1027 // 1028 // This structure may be used only with operations rendered under `/eam`. 1029 type ArrayOfSolutionsVMNetworkMapping struct { 1030 SolutionsVMNetworkMapping []SolutionsVMNetworkMapping `xml:"SolutionsVMNetworkMapping,omitempty" json:"_value"` 1031 } 1032 1033 func init() { 1034 types.Add("eam:ArrayOfSolutionsVMNetworkMapping", reflect.TypeOf((*ArrayOfSolutionsVMNetworkMapping)(nil)).Elem()) 1035 } 1036 1037 // A boxed array of `VibVibInfo`. To be used in `Any` placeholders. 1038 // 1039 // This structure may be used only with operations rendered under `/eam`. 1040 type ArrayOfVibVibInfo struct { 1041 VibVibInfo []VibVibInfo `xml:"VibVibInfo,omitempty" json:"_value"` 1042 } 1043 1044 func init() { 1045 types.Add("eam:ArrayOfVibVibInfo", reflect.TypeOf((*ArrayOfVibVibInfo)(nil)).Elem()) 1046 } 1047 1048 // An agent virtual machine is expected to be deployed on a host, but the agent virtual machine 1049 // cannot be deployed because the vSphere ESX Agent Manager is unable to access the OVF 1050 // package for the agent. 1051 // 1052 // This typically happens because the Web server providing the 1053 // OVF package is down. The Web server is often internal to the solution 1054 // that created the Agency. 1055 // 1056 // This is an active remediable issue. To remediate, vSphere ESX Agent Manager redeploys the agent. 1057 // 1058 // This structure may be used only with operations rendered under `/eam`. 1059 type CannotAccessAgentOVF struct { 1060 VmNotDeployed 1061 1062 // The URL from which the OVF could not be downloaded. 1063 DownloadUrl string `xml:"downloadUrl" json:"downloadUrl"` 1064 } 1065 1066 func init() { 1067 types.Add("eam:CannotAccessAgentOVF", reflect.TypeOf((*CannotAccessAgentOVF)(nil)).Elem()) 1068 } 1069 1070 // Deprecated as of vSphere 9.0. Please refer to vLCM Image APIs. 1071 // 1072 // An agent VIB module is expected to be deployed on a host, but the VIM module 1073 // cannot be deployed because the vSphere ESX Agent Manager is unable to access the VIB 1074 // package for the agent. 1075 // 1076 // This typically happens because the Web server providing the 1077 // VIB package is down. The Web server is often internal to the solution 1078 // that created the Agency. 1079 // 1080 // This is an active remediable issue. To remediate, vSphere ESX Agent Manager reinstalls the VIB module. 1081 // 1082 // This structure may be used only with operations rendered under `/eam`. 1083 type CannotAccessAgentVib struct { 1084 VibNotInstalled 1085 1086 // The URL from which the VIB package could not be downloaded. 1087 DownloadUrl string `xml:"downloadUrl" json:"downloadUrl"` 1088 } 1089 1090 func init() { 1091 types.Add("eam:CannotAccessAgentVib", reflect.TypeOf((*CannotAccessAgentVib)(nil)).Elem()) 1092 } 1093 1094 // This exception is thrown if the certificate provided by the 1095 // provider is not trusted. 1096 // 1097 // This structure may be used only with operations rendered under `/sms`. 1098 type CertificateNotTrusted struct { 1099 AgentIssue 1100 1101 Url string `xml:"url" json:"url"` 1102 } 1103 1104 func init() { 1105 types.Add("eam:CertificateNotTrusted", reflect.TypeOf((*CertificateNotTrusted)(nil)).Elem()) 1106 } 1107 1108 // An CertificateNotTrusted fault is thrown when an Agency's configuration 1109 // contains OVF package URL or VIB URL for that vSphere ESX Agent Manager is not 1110 // able to make successful SSL trust verification of the server's certificate. 1111 // 1112 // Reasons for this might be that the certificate provided via the API 1113 // `AgentConfigInfo.ovfSslTrust` and `AgentConfigInfo.vibSslTrust` 1114 // or via the script /usr/lib/vmware-eam/bin/eam-utility.py 1115 // - is invalid. 1116 // - does not match the server's certificate. 1117 // 1118 // If there is no provided certificate, the fault is thrown when the server's 1119 // certificate is not trusted by the system or is invalid - @see 1120 // `AgentConfigInfo.ovfSslTrust` and 1121 // `AgentConfigInfo.vibSslTrust`. 1122 // To enable Agency creation 1) provide a valid certificate used by the 1123 // server hosting the `AgentConfigInfo.ovfPackageUrl` or 1124 // `AgentConfigInfo.vibUrl` or 2) ensure the server's certificate is 1125 // signed by a CA trusted by the system. Then retry the operation, vSphere 1126 // ESX Agent Manager will retry the SSL trust verification and proceed with 1127 // reaching the desired state. 1128 // 1129 // This structure may be used only with operations rendered under `/eam`. 1130 type CertificateNotTrustedFault struct { 1131 EamAppFault 1132 1133 // The URL that failed the SSL trust verification. 1134 Url string `xml:"url,omitempty" json:"url,omitempty"` 1135 } 1136 1137 func init() { 1138 types.Add("eam:CertificateNotTrustedFault", reflect.TypeOf((*CertificateNotTrustedFault)(nil)).Elem()) 1139 types.AddMinAPIVersionForType("eam:CertificateNotTrustedFault", "8.2") 1140 } 1141 1142 type CertificateNotTrustedFaultFault CertificateNotTrustedFault 1143 1144 func init() { 1145 types.Add("eam:CertificateNotTrustedFaultFault", reflect.TypeOf((*CertificateNotTrustedFaultFault)(nil)).Elem()) 1146 } 1147 1148 // Base class for all cluster bound agents. 1149 // 1150 // This structure may be used only with operations rendered under `/eam`. 1151 type ClusterAgentAgentIssue struct { 1152 AgencyIssue 1153 1154 // The agent that has this issue. 1155 // 1156 // Refers instance of `Agent`. 1157 Agent types.ManagedObjectReference `xml:"agent" json:"agent"` 1158 // The cluster for which this issue is raised. 1159 // 1160 // Migth be null if the cluster 1161 // is missing in vCenter Server inventory. 1162 // 1163 // Refers instance of `ComputeResource`. 1164 Cluster *types.ManagedObjectReference `xml:"cluster,omitempty" json:"cluster,omitempty"` 1165 } 1166 1167 func init() { 1168 types.Add("eam:ClusterAgentAgentIssue", reflect.TypeOf((*ClusterAgentAgentIssue)(nil)).Elem()) 1169 } 1170 1171 // The cluster agent Virtual Machine cannot be deployed, because vSphere ESX 1172 // Agent Manager is not able to make successful SSL trust verification of the 1173 // server's certificate, when establishing connection to the provided 1174 // `AgentConfigInfo.ovfPackageUrl`. 1175 // 1176 // Reasons for this might be that the 1177 // certificate provided via the API `AgentConfigInfo.ovfSslTrust` or via 1178 // the script /usr/lib/vmware-eam/bin/eam-utility.py 1179 // - is invalid. 1180 // - does not match the server's certificate. 1181 // 1182 // If there is no provided certificate, the issue is raised when the server's 1183 // certificate is not trusted by the system or invalid - @see 1184 // `AgentConfigInfo.ovfSslTrust`. 1185 // To remediate the cluster agent Virtual Machine deployment 1) provide a valid 1186 // certificate used by the server hosting the 1187 // `AgentConfigInfo.ovfPackageUrl` or 2) ensure the server's certificate 1188 // is signed by a CA trusted by the system. Then resolve this issue, vSphere ESX 1189 // Agent Manager will retry the SSL trust verification and proceed with reaching 1190 // the desired state. 1191 // 1192 // This structure may be used only with operations rendered under `/eam`. 1193 type ClusterAgentCertificateNotTrusted struct { 1194 ClusterAgentVmNotDeployed 1195 1196 // The URL that failed the SSL trust verification. 1197 Url string `xml:"url" json:"url"` 1198 } 1199 1200 func init() { 1201 types.Add("eam:ClusterAgentCertificateNotTrusted", reflect.TypeOf((*ClusterAgentCertificateNotTrusted)(nil)).Elem()) 1202 types.AddMinAPIVersionForType("eam:ClusterAgentCertificateNotTrusted", "8.2") 1203 } 1204 1205 type ClusterAgentHostInMaintenanceMode struct { 1206 ClusterAgentVmIssue 1207 } 1208 1209 func init() { 1210 types.Add("eam:ClusterAgentHostInMaintenanceMode", reflect.TypeOf((*ClusterAgentHostInMaintenanceMode)(nil)).Elem()) 1211 } 1212 1213 type ClusterAgentHostInPartialMaintenanceMode struct { 1214 ClusterAgentVmIssue 1215 } 1216 1217 func init() { 1218 types.Add("eam:ClusterAgentHostInPartialMaintenanceMode", reflect.TypeOf((*ClusterAgentHostInPartialMaintenanceMode)(nil)).Elem()) 1219 } 1220 1221 // The cluster agent Virtual Machine could not be powered-on, because the 1222 // cluster does not have enough CPU or memory resources. 1223 // 1224 // This is an active remediable issue. To remediate, vSphere ESX Agent Manager 1225 // powers on the agent Virtual Machine. However, the problem is likely to 1226 // persist until enough CPU and memory resources are made available. 1227 // 1228 // This structure may be used only with operations rendered under `/eam`. 1229 type ClusterAgentInsufficientClusterResources struct { 1230 ClusterAgentVmPoweredOff 1231 } 1232 1233 func init() { 1234 types.Add("eam:ClusterAgentInsufficientClusterResources", reflect.TypeOf((*ClusterAgentInsufficientClusterResources)(nil)).Elem()) 1235 } 1236 1237 // The cluster agent Virtual Machine cannot be deployed, because any of the 1238 // configured datastores does not have enough disk space. 1239 // 1240 // This is an active remediable issue. To remediate, vSphere ESX Agent Manager 1241 // redeploys the agent Virtual Machine. However, the problem is likely to 1242 // persist until enough disk space is freed up on the cluster datastore. 1243 // 1244 // This structure may be used only with operations rendered under `/eam`. 1245 type ClusterAgentInsufficientClusterSpace struct { 1246 ClusterAgentVmNotDeployed 1247 } 1248 1249 func init() { 1250 types.Add("eam:ClusterAgentInsufficientClusterSpace", reflect.TypeOf((*ClusterAgentInsufficientClusterSpace)(nil)).Elem()) 1251 } 1252 1253 // Invalid configuration is preventing a cluster agent virtual machine 1254 // operation. 1255 // 1256 // Typically the attached error indicates the particular reason why 1257 // vSphere ESX Agent Manager is unable to power on or reconfigure the agent 1258 // virtual machine. 1259 // 1260 // This is a passive remediable issue. To remediate update the virtual machine 1261 // configuration. 1262 // 1263 // This structure may be used only with operations rendered under `/eam`. 1264 type ClusterAgentInvalidConfig struct { 1265 ClusterAgentVmIssue 1266 1267 // The error, that caused this issue. 1268 // 1269 // It must be either MethodFault or 1270 // RuntimeFault. 1271 Error types.AnyType `xml:"error,typeattr" json:"error"` 1272 } 1273 1274 func init() { 1275 types.Add("eam:ClusterAgentInvalidConfig", reflect.TypeOf((*ClusterAgentInvalidConfig)(nil)).Elem()) 1276 } 1277 1278 // The cluster agent Virtual Machine cannot be deployed, because any of the 1279 // configured datastores does not exist on the cluster. 1280 // 1281 // This is an active remediable issue. To remediate, vSphere ESX Agent Manager 1282 // redeploys the agent Virtual Machine. However, the problem is likely to 1283 // persist until required Virtual Machine datastores are configured on the 1284 // cluster. 1285 // 1286 // This structure may be used only with operations rendered under `/eam`. 1287 type ClusterAgentMissingClusterVmDatastore struct { 1288 ClusterAgentVmNotDeployed 1289 1290 // A non-empty array of cluster agent VM datastores that are missing on the 1291 // cluster. 1292 // 1293 // Refers instances of `Datastore`. 1294 MissingDatastores []types.ManagedObjectReference `xml:"missingDatastores,omitempty" json:"missingDatastores,omitempty"` 1295 } 1296 1297 func init() { 1298 types.Add("eam:ClusterAgentMissingClusterVmDatastore", reflect.TypeOf((*ClusterAgentMissingClusterVmDatastore)(nil)).Elem()) 1299 } 1300 1301 // The cluster agent Virtual Machine cannot be deployed, because the configured 1302 // networks do not exist on the cluster. 1303 // 1304 // This is an active remediable issue. To remediate, vSphere ESX Agent Manager 1305 // redeploys the agent Virtual Machine. However, the problem is likely to 1306 // persist until required Virtual Machine networks are configured on the 1307 // cluster. 1308 // 1309 // This structure may be used only with operations rendered under `/eam`. 1310 type ClusterAgentMissingClusterVmNetwork struct { 1311 ClusterAgentVmNotDeployed 1312 1313 // A non-empty array of cluster agent VM networks that are required on the 1314 // cluster. 1315 // 1316 // Refers instances of `Network`. 1317 MissingNetworks []types.ManagedObjectReference `xml:"missingNetworks,omitempty" json:"missingNetworks,omitempty"` 1318 // The names of the cluster agent VM networks. 1319 NetworkNames []string `xml:"networkNames,omitempty" json:"networkNames,omitempty"` 1320 } 1321 1322 func init() { 1323 types.Add("eam:ClusterAgentMissingClusterVmNetwork", reflect.TypeOf((*ClusterAgentMissingClusterVmNetwork)(nil)).Elem()) 1324 } 1325 1326 // A cluster agent virtual machine needs to be provisioned, but an OVF property 1327 // is either missing or has an invalid value. 1328 // 1329 // This is a passive remediable issue. To remediate, update the OVF environment 1330 // in the agent configuration used to provision the agent virtual machine. 1331 // 1332 // This structure may be used only with operations rendered under `/eam`. 1333 type ClusterAgentOvfInvalidProperty struct { 1334 ClusterAgentAgentIssue 1335 1336 // An optional list of errors that caused this issue. 1337 // 1338 // These errors are 1339 // generated by the vCenter server. 1340 Error []types.LocalizedMethodFault `xml:"error,omitempty" json:"error,omitempty"` 1341 } 1342 1343 func init() { 1344 types.Add("eam:ClusterAgentOvfInvalidProperty", reflect.TypeOf((*ClusterAgentOvfInvalidProperty)(nil)).Elem()) 1345 } 1346 1347 type ClusterAgentTransitionFailed struct { 1348 ClusterAgentAgentIssue 1349 } 1350 1351 func init() { 1352 types.Add("eam:ClusterAgentTransitionFailed", reflect.TypeOf((*ClusterAgentTransitionFailed)(nil)).Elem()) 1353 } 1354 1355 type ClusterAgentVmHookFailed struct { 1356 ClusterAgentVmIssue 1357 } 1358 1359 func init() { 1360 types.Add("eam:ClusterAgentVmHookFailed", reflect.TypeOf((*ClusterAgentVmHookFailed)(nil)).Elem()) 1361 } 1362 1363 type ClusterAgentVmHookTimedout struct { 1364 ClusterAgentVmIssue 1365 } 1366 1367 func init() { 1368 types.Add("eam:ClusterAgentVmHookTimedout", reflect.TypeOf((*ClusterAgentVmHookTimedout)(nil)).Elem()) 1369 } 1370 1371 type ClusterAgentVmInaccessible struct { 1372 ClusterAgentVmIssue 1373 } 1374 1375 func init() { 1376 types.Add("eam:ClusterAgentVmInaccessible", reflect.TypeOf((*ClusterAgentVmInaccessible)(nil)).Elem()) 1377 } 1378 1379 // Base class for all cluster bound Virtual Machines. 1380 // 1381 // This structure may be used only with operations rendered under `/eam`. 1382 type ClusterAgentVmIssue struct { 1383 ClusterAgentAgentIssue 1384 1385 // The Virtual Machine to which this issue is related. 1386 // 1387 // Refers instance of `VirtualMachine`. 1388 Vm types.ManagedObjectReference `xml:"vm" json:"vm"` 1389 } 1390 1391 func init() { 1392 types.Add("eam:ClusterAgentVmIssue", reflect.TypeOf((*ClusterAgentVmIssue)(nil)).Elem()) 1393 } 1394 1395 // A cluster agent Virtual Machine is expected to be deployed on a cluster, but 1396 // the cluster agent Virtual Machine has not been deployed or has been exlicitly 1397 // deleted from the cluster. 1398 // 1399 // Typically more specific issue (a subclass of this 1400 // issue) indicates the particular reason why vSphere ESX Agent Manager was 1401 // unable to deploy the cluster agent Virtual Machine. 1402 // 1403 // This is an active remediable issue. To remediate, vSphere ESX Agent Manager 1404 // redeploys the cluster agent Virtual Machine. 1405 // 1406 // This structure may be used only with operations rendered under `/eam`. 1407 type ClusterAgentVmNotDeployed struct { 1408 ClusterAgentAgentIssue 1409 } 1410 1411 func init() { 1412 types.Add("eam:ClusterAgentVmNotDeployed", reflect.TypeOf((*ClusterAgentVmNotDeployed)(nil)).Elem()) 1413 } 1414 1415 // The cluster agent Virtual Machine can not be removed from a cluster. 1416 // 1417 // Typically the description indicates the particular reason why vSphere ESX 1418 // Agent Manager was unable to remove the cluster agent Virtual Machine. 1419 // 1420 // This is an active remediable issue. To remediate, vSphere ESX Agent Manager 1421 // removes the cluster agent Virtual Machine. 1422 // 1423 // This structure may be used only with operations rendered under `/eam`. 1424 type ClusterAgentVmNotRemoved struct { 1425 ClusterAgentVmIssue 1426 } 1427 1428 func init() { 1429 types.Add("eam:ClusterAgentVmNotRemoved", reflect.TypeOf((*ClusterAgentVmNotRemoved)(nil)).Elem()) 1430 } 1431 1432 // A cluster agent Virtual Machine is expected to be powered on, but the agent 1433 // Virtual Machine is powered off. 1434 // 1435 // Typically more specific issue (a subclass of 1436 // this issue) indicates the particular reason why vSphere ESX Agent Manager was 1437 // unable to power on the cluster agent Virtual Machine. 1438 // 1439 // This is an active remediable issue. To remediate, vSphere ESX Agent Manager 1440 // powers on the cluster agent Virtual Machine. 1441 // 1442 // This structure may be used only with operations rendered under `/eam`. 1443 type ClusterAgentVmPoweredOff struct { 1444 ClusterAgentVmIssue 1445 } 1446 1447 func init() { 1448 types.Add("eam:ClusterAgentVmPoweredOff", reflect.TypeOf((*ClusterAgentVmPoweredOff)(nil)).Elem()) 1449 } 1450 1451 // A cluster agent virtual machine is expected to be powered off, but the agent 1452 // virtual machine is powered on. 1453 // 1454 // This is an active remediable issue. To remediate, vSphere ESX Agent Manager 1455 // powers off the agent virtual machine. 1456 // 1457 // This structure may be used only with operations rendered under `/eam`. 1458 type ClusterAgentVmPoweredOn struct { 1459 ClusterAgentVmIssue 1460 } 1461 1462 func init() { 1463 types.Add("eam:ClusterAgentVmPoweredOn", reflect.TypeOf((*ClusterAgentVmPoweredOn)(nil)).Elem()) 1464 } 1465 1466 type ClusterAgentVmProtected struct { 1467 ClusterAgentVmIssue 1468 } 1469 1470 func init() { 1471 types.Add("eam:ClusterAgentVmProtected", reflect.TypeOf((*ClusterAgentVmProtected)(nil)).Elem()) 1472 } 1473 1474 // A cluster agent Virtual Machine is expected to be powered on, but the agent 1475 // Virtual Machine is suspended. 1476 // 1477 // This is an active remediable issue. To remediate, vSphere ESX Agent Manager 1478 // powers on the cluster agent Virtual Machine. 1479 // 1480 // This structure may be used only with operations rendered under `/eam`. 1481 type ClusterAgentVmSuspended struct { 1482 ClusterAgentVmIssue 1483 } 1484 1485 func init() { 1486 types.Add("eam:ClusterAgentVmSuspended", reflect.TypeOf((*ClusterAgentVmSuspended)(nil)).Elem()) 1487 } 1488 1489 type CreateAgency CreateAgencyRequestType 1490 1491 func init() { 1492 types.Add("eam:CreateAgency", reflect.TypeOf((*CreateAgency)(nil)).Elem()) 1493 } 1494 1495 // The parameters of `EsxAgentManager.CreateAgency`. 1496 // 1497 // This structure may be used only with operations rendered under `/eam`. 1498 type CreateAgencyRequestType struct { 1499 This types.ManagedObjectReference `xml:"_this" json:"_this"` 1500 // The configuration that describes how to deploy the agents in the 1501 // created agency. 1502 AgencyConfigInfo BaseAgencyConfigInfo `xml:"agencyConfigInfo,typeattr" json:"agencyConfigInfo"` 1503 // Deprecated. No sence to create agency in other state than 1504 // <code>enabled</code>. <code>disabled</code> is deprecated 1505 // whereas <code>uninstalled</code> is useless. 1506 // The initial goal state of the agency. See 1507 // `EamObjectRuntimeInfoGoalState_enum`. 1508 InitialGoalState string `xml:"initialGoalState" json:"initialGoalState"` 1509 } 1510 1511 func init() { 1512 types.Add("eam:CreateAgencyRequestType", reflect.TypeOf((*CreateAgencyRequestType)(nil)).Elem()) 1513 } 1514 1515 type CreateAgencyResponse struct { 1516 Returnval types.ManagedObjectReference `xml:"returnval" json:"returnval"` 1517 } 1518 1519 type DestroyAgency DestroyAgencyRequestType 1520 1521 func init() { 1522 types.Add("eam:DestroyAgency", reflect.TypeOf((*DestroyAgency)(nil)).Elem()) 1523 } 1524 1525 type DestroyAgencyRequestType struct { 1526 This types.ManagedObjectReference `xml:"_this" json:"_this"` 1527 } 1528 1529 func init() { 1530 types.Add("eam:DestroyAgencyRequestType", reflect.TypeOf((*DestroyAgencyRequestType)(nil)).Elem()) 1531 } 1532 1533 type DestroyAgencyResponse struct { 1534 } 1535 1536 // Thrown when trying to modify state over disabled clusters. 1537 // 1538 // This structure may be used only with operations rendered under `/eam`. 1539 type DisabledClusterFault struct { 1540 EamAppFault 1541 1542 // The MoRefs of the disabled compute resources. 1543 // 1544 // Refers instances of `ComputeResource`. 1545 DisabledComputeResource []types.ManagedObjectReference `xml:"disabledComputeResource,omitempty" json:"disabledComputeResource,omitempty"` 1546 } 1547 1548 func init() { 1549 types.Add("eam:DisabledClusterFault", reflect.TypeOf((*DisabledClusterFault)(nil)).Elem()) 1550 types.AddMinAPIVersionForType("eam:DisabledClusterFault", "7.6") 1551 } 1552 1553 type DisabledClusterFaultFault DisabledClusterFault 1554 1555 func init() { 1556 types.Add("eam:DisabledClusterFaultFault", reflect.TypeOf((*DisabledClusterFaultFault)(nil)).Elem()) 1557 } 1558 1559 // Application related error 1560 // As opposed to system errors, application ones are always function of the 1561 // input and the current state. 1562 // 1563 // They occur always upon same conditions. In most 1564 // of the cases they are recoverable, i.e. the client can determine what is 1565 // wrong and know how to recover. 1566 // NOTE: Since there is not yet need to distinguish among specific error 1567 // sub-types then we define a common type. Tomorrow, if necessary, we can add an 1568 // additional level of detailed exception types and make this one abstract. 1569 // 1570 // This structure may be used only with operations rendered under `/eam`. 1571 type EamAppFault struct { 1572 EamRuntimeFault 1573 } 1574 1575 func init() { 1576 types.Add("eam:EamAppFault", reflect.TypeOf((*EamAppFault)(nil)).Elem()) 1577 } 1578 1579 type EamAppFaultFault BaseEamAppFault 1580 1581 func init() { 1582 types.Add("eam:EamAppFaultFault", reflect.TypeOf((*EamAppFaultFault)(nil)).Elem()) 1583 } 1584 1585 // Deprecated as of vSphere 9.0. Please refer to vLCM APIs. 1586 // 1587 // The common base type for all vSphere ESX Agent Manager exceptions. 1588 // 1589 // # TODO migrate to EamRuntimeFault 1590 // 1591 // This structure may be used only with operations rendered under `/eam`. 1592 type EamFault struct { 1593 types.MethodFault 1594 } 1595 1596 func init() { 1597 types.Add("eam:EamFault", reflect.TypeOf((*EamFault)(nil)).Elem()) 1598 } 1599 1600 type EamFaultFault BaseEamFault 1601 1602 func init() { 1603 types.Add("eam:EamFaultFault", reflect.TypeOf((*EamFaultFault)(nil)).Elem()) 1604 } 1605 1606 // Deprecated as of vSphere 9.0. Please refer to vLCM APIs. 1607 // 1608 // IO error 1609 // NOTE: Since this type is a first of system-type errors we do not introduce a 1610 // common base type for them. 1611 // 1612 // Once add a second system type exception though, it 1613 // should be introduced. 1614 // 1615 // This structure may be used only with operations rendered under `/eam`. 1616 type EamIOFault struct { 1617 EamRuntimeFault 1618 } 1619 1620 func init() { 1621 types.Add("eam:EamIOFault", reflect.TypeOf((*EamIOFault)(nil)).Elem()) 1622 } 1623 1624 type EamIOFaultFault EamIOFault 1625 1626 func init() { 1627 types.Add("eam:EamIOFaultFault", reflect.TypeOf((*EamIOFaultFault)(nil)).Elem()) 1628 } 1629 1630 // Thrown when a user cannot be authenticated. 1631 // 1632 // This structure may be used only with operations rendered under `/eam`. 1633 type EamInvalidLogin struct { 1634 EamRuntimeFault 1635 } 1636 1637 func init() { 1638 types.Add("eam:EamInvalidLogin", reflect.TypeOf((*EamInvalidLogin)(nil)).Elem()) 1639 } 1640 1641 type EamInvalidLoginFault EamInvalidLogin 1642 1643 func init() { 1644 types.Add("eam:EamInvalidLoginFault", reflect.TypeOf((*EamInvalidLoginFault)(nil)).Elem()) 1645 } 1646 1647 // Thrown when a user is not allowed to execute an operation. 1648 // 1649 // This structure may be used only with operations rendered under `/eam`. 1650 type EamInvalidState struct { 1651 EamAppFault 1652 } 1653 1654 func init() { 1655 types.Add("eam:EamInvalidState", reflect.TypeOf((*EamInvalidState)(nil)).Elem()) 1656 } 1657 1658 type EamInvalidStateFault EamInvalidState 1659 1660 func init() { 1661 types.Add("eam:EamInvalidStateFault", reflect.TypeOf((*EamInvalidStateFault)(nil)).Elem()) 1662 } 1663 1664 // Deprecated as of vSphere 9.0. Please refer to vLCM Image APIs. 1665 // 1666 // Indicates for an invalid or unknown Vib package structure and/or format. 1667 // 1668 // This structure may be used only with operations rendered under `/eam`. 1669 type EamInvalidVibPackage struct { 1670 EamRuntimeFault 1671 } 1672 1673 func init() { 1674 types.Add("eam:EamInvalidVibPackage", reflect.TypeOf((*EamInvalidVibPackage)(nil)).Elem()) 1675 } 1676 1677 type EamInvalidVibPackageFault EamInvalidVibPackage 1678 1679 func init() { 1680 types.Add("eam:EamInvalidVibPackageFault", reflect.TypeOf((*EamInvalidVibPackageFault)(nil)).Elem()) 1681 } 1682 1683 // Deprecated as of vSphere 9.0. Please refer to vLCM APIs. 1684 // 1685 // The <code>RuntimeInfo</code> represents the runtime information of the vSphere ESX Agent 1686 // Manager managed 1687 // objects `Agency` and `Agent`. 1688 // 1689 // The runtime information provides 1690 // two kinds of information, namely, the 1691 // desired goal state of the entity and the status with regards to conforming 1692 // to that goal state. 1693 // 1694 // This structure may be used only with operations rendered under `/eam`. 1695 type EamObjectRuntimeInfo struct { 1696 types.DynamicData 1697 1698 // The health of the managed entity. 1699 // 1700 // This denotes how well the entity conforms to the 1701 // goal state. 1702 // 1703 // See also `EamObjectRuntimeInfoStatus_enum`. 1704 Status string `xml:"status" json:"status"` 1705 // Current issues that have been detected for this entity. 1706 // 1707 // Each issue can be remediated 1708 // by invoking `EamObject.Resolve` or `EamObject.ResolveAll`. 1709 Issue []BaseIssue `xml:"issue,omitempty,typeattr" json:"issue,omitempty"` 1710 // The desired state of the entity. 1711 // 1712 // See also `EamObjectRuntimeInfoGoalState_enum`. 1713 GoalState string `xml:"goalState" json:"goalState"` 1714 // The `Agent` or `Agency` with which this <code>RuntimeInfo</code> object is associated. 1715 // 1716 // Refers instance of `EamObject`. 1717 Entity types.ManagedObjectReference `xml:"entity" json:"entity"` 1718 } 1719 1720 func init() { 1721 types.Add("eam:EamObjectRuntimeInfo", reflect.TypeOf((*EamObjectRuntimeInfo)(nil)).Elem()) 1722 } 1723 1724 // The common base type for all vSphere ESX Agent Manager runtime exceptions. 1725 // 1726 // This structure may be used only with operations rendered under `/eam`. 1727 type EamRuntimeFault struct { 1728 types.RuntimeFault 1729 } 1730 1731 func init() { 1732 types.Add("eam:EamRuntimeFault", reflect.TypeOf((*EamRuntimeFault)(nil)).Elem()) 1733 } 1734 1735 type EamRuntimeFaultFault BaseEamRuntimeFault 1736 1737 func init() { 1738 types.Add("eam:EamRuntimeFaultFault", reflect.TypeOf((*EamRuntimeFaultFault)(nil)).Elem()) 1739 } 1740 1741 // Thrown when calling vSphere ESX Agent Manager when it is not fully 1742 // initialized. 1743 // 1744 // This structure may be used only with operations rendered under `/eam`. 1745 type EamServiceNotInitialized struct { 1746 EamRuntimeFault 1747 } 1748 1749 func init() { 1750 types.Add("eam:EamServiceNotInitialized", reflect.TypeOf((*EamServiceNotInitialized)(nil)).Elem()) 1751 } 1752 1753 type EamServiceNotInitializedFault EamServiceNotInitialized 1754 1755 func init() { 1756 types.Add("eam:EamServiceNotInitializedFault", reflect.TypeOf((*EamServiceNotInitializedFault)(nil)).Elem()) 1757 } 1758 1759 // System fault. 1760 // 1761 // This structure may be used only with operations rendered under `/eam`. 1762 type EamSystemFault struct { 1763 EamRuntimeFault 1764 } 1765 1766 func init() { 1767 types.Add("eam:EamSystemFault", reflect.TypeOf((*EamSystemFault)(nil)).Elem()) 1768 } 1769 1770 type EamSystemFaultFault EamSystemFault 1771 1772 func init() { 1773 types.Add("eam:EamSystemFaultFault", reflect.TypeOf((*EamSystemFaultFault)(nil)).Elem()) 1774 } 1775 1776 // Deprecated as of vSphere 9.0. No longer in use since vSphee 6.5. 1777 // 1778 // Extensible issue class used by solutions to add custom issues to agents. 1779 // 1780 // When resolved, the issue is removed from the agent and an event is generated. 1781 // 1782 // This structure may be used only with operations rendered under `/eam`. 1783 type ExtensibleIssue struct { 1784 Issue 1785 1786 // Unique string for this type of issue. 1787 // 1788 // The type must match an event registered 1789 // by the solution as part of its extension. 1790 TypeId string `xml:"typeId" json:"typeId"` 1791 // Arguments associated with the typeId. 1792 Argument []types.KeyAnyValue `xml:"argument,omitempty" json:"argument,omitempty"` 1793 // A managed object reference to the object this issue is related to. 1794 // 1795 // Refers instance of `ManagedEntity`. 1796 Target *types.ManagedObjectReference `xml:"target,omitempty" json:"target,omitempty"` 1797 // An optional agent this issue pertains 1798 // 1799 // Refers instance of `Agent`. 1800 Agent *types.ManagedObjectReference `xml:"agent,omitempty" json:"agent,omitempty"` 1801 // An optional agency this issue pertains 1802 // 1803 // Refers instance of `Agency`. 1804 Agency *types.ManagedObjectReference `xml:"agency,omitempty" json:"agency,omitempty"` 1805 } 1806 1807 func init() { 1808 types.Add("eam:ExtensibleIssue", reflect.TypeOf((*ExtensibleIssue)(nil)).Elem()) 1809 } 1810 1811 type GetMaintenanceModePolicy GetMaintenanceModePolicyRequestType 1812 1813 func init() { 1814 types.Add("eam:GetMaintenanceModePolicy", reflect.TypeOf((*GetMaintenanceModePolicy)(nil)).Elem()) 1815 } 1816 1817 type GetMaintenanceModePolicyRequestType struct { 1818 This types.ManagedObjectReference `xml:"_this" json:"_this"` 1819 } 1820 1821 func init() { 1822 types.Add("eam:GetMaintenanceModePolicyRequestType", reflect.TypeOf((*GetMaintenanceModePolicyRequestType)(nil)).Elem()) 1823 } 1824 1825 type GetMaintenanceModePolicyResponse struct { 1826 Returnval string `xml:"returnval" json:"returnval"` 1827 } 1828 1829 // Limits the hooks reported to the user. 1830 // 1831 // This structure may be used only with operations rendered under `/eam`. 1832 type HooksHookListSpec struct { 1833 types.DynamicData 1834 1835 // If specified - will report hooks only for agents from the specified 1836 // solutions, otherwise - will report hooks for agents from all solutions. 1837 Solutions []string `xml:"solutions,omitempty" json:"solutions,omitempty"` 1838 // If specified - will report hooks only for agents on the specified 1839 // hosts, otherwise - will report hooks for agents on all hosts. 1840 // 1841 // Refers instances of `HostSystem`. 1842 Hosts []types.ManagedObjectReference `xml:"hosts,omitempty" json:"hosts,omitempty"` 1843 } 1844 1845 func init() { 1846 types.Add("eam:HooksHookListSpec", reflect.TypeOf((*HooksHookListSpec)(nil)).Elem()) 1847 } 1848 1849 // Specification for marking a raised hook on an agent Virtual Machine as 1850 // processed. 1851 // 1852 // This structure may be used only with operations rendered under `/eam`. 1853 type HooksMarkAsProcessedSpec struct { 1854 types.DynamicData 1855 1856 // Virtual Machine to mark a hook as processed. 1857 // 1858 // Refers instance of `VirtualMachine`. 1859 Vm types.ManagedObjectReference `xml:"vm" json:"vm"` 1860 // Type of hook to be marked as processed `HooksHookType_enum`. 1861 HookType string `xml:"hookType" json:"hookType"` 1862 // `True` - if the hook was processed successfully, `False` - 1863 // if the hook could not be processed. 1864 Success bool `xml:"success" json:"success"` 1865 } 1866 1867 func init() { 1868 types.Add("eam:HooksMarkAsProcessedSpec", reflect.TypeOf((*HooksMarkAsProcessedSpec)(nil)).Elem()) 1869 } 1870 1871 // An agent virtual machine operation is expected to be initiated on host, but 1872 // the agent virtual machine operation has not been initiated. 1873 // 1874 // The reason is 1875 // that the host is in maintenance mode. 1876 // 1877 // This is an active remediable issue. To remediate, vSphere ESX Agent Manager 1878 // takes the host out of maintenance mode and initiates the agent virtual 1879 // machine operation. 1880 // 1881 // Resolving this issue in vSphere Lifecyle Manager environemnt will be no-op. 1882 // In those cases user must take the host out of Maintenance Mode manually or 1883 // wait vSphere Lifecycle Maanger cluster remediation to complete (if any). 1884 // 1885 // This structure may be used only with operations rendered under `/eam`. 1886 type HostInMaintenanceMode struct { 1887 VmDeployed 1888 } 1889 1890 func init() { 1891 types.Add("eam:HostInMaintenanceMode", reflect.TypeOf((*HostInMaintenanceMode)(nil)).Elem()) 1892 } 1893 1894 type HostInPartialMaintenanceMode struct { 1895 AgentIssue 1896 1897 Vm *types.ManagedObjectReference `xml:"vm,omitempty" json:"vm,omitempty"` 1898 } 1899 1900 func init() { 1901 types.Add("eam:HostInPartialMaintenanceMode", reflect.TypeOf((*HostInPartialMaintenanceMode)(nil)).Elem()) 1902 } 1903 1904 // An agent virtual machine is expected to be removed from a host, but the agent virtual machine has not 1905 // been removed. 1906 // 1907 // The reason is that the host is in standby mode. 1908 // 1909 // This is an active remediable issue. To remediate, vSphere ESX Agent Manager puts the host in standby mode 1910 // and removes the agent virtual machine. 1911 // 1912 // This structure may be used only with operations rendered under `/eam`. 1913 type HostInStandbyMode struct { 1914 VmDeployed 1915 } 1916 1917 func init() { 1918 types.Add("eam:HostInStandbyMode", reflect.TypeOf((*HostInStandbyMode)(nil)).Elem()) 1919 } 1920 1921 // Deprecated all host issues were removed. 1922 // 1923 // Base class for all host issues. 1924 // 1925 // This structure may be used only with operations rendered under `/eam`. 1926 type HostIssue struct { 1927 Issue 1928 1929 // The host to which the issue is related. 1930 // 1931 // Refers instance of `HostSystem`. 1932 Host types.ManagedObjectReference `xml:"host" json:"host"` 1933 } 1934 1935 func init() { 1936 types.Add("eam:HostIssue", reflect.TypeOf((*HostIssue)(nil)).Elem()) 1937 } 1938 1939 // Deprecated hostPoweredOff will no longer be used, instead 1940 // `ManagedHostNotReachable` will be raised. 1941 // 1942 // An agent virtual machine is expected to be removed from a host, but the agent 1943 // virtual machine has not been removed. 1944 // 1945 // The reason is that the host is powered 1946 // off. 1947 // 1948 // This is not a remediable issue. To remediate, power on the host. 1949 // 1950 // This structure may be used only with operations rendered under `/eam`. 1951 type HostPoweredOff struct { 1952 VmDeployed 1953 } 1954 1955 func init() { 1956 types.Add("eam:HostPoweredOff", reflect.TypeOf((*HostPoweredOff)(nil)).Elem()) 1957 } 1958 1959 // Deprecated as of vSphere 9.0. Please refer to vLCM Image APIs. 1960 // 1961 // Live VIB operation failed. 1962 // 1963 // An immediate reboot is required to clear live VIB 1964 // operation failure. 1965 // 1966 // This is an active remediable issue. To remediate, vSphere ESX Agent Manager 1967 // puts the host into maintenance mode and reboots it. 1968 // 1969 // This structure may be used only with operations rendered under `/eam`. 1970 type ImmediateHostRebootRequired struct { 1971 VibIssue 1972 } 1973 1974 func init() { 1975 types.Add("eam:ImmediateHostRebootRequired", reflect.TypeOf((*ImmediateHostRebootRequired)(nil)).Elem()) 1976 } 1977 1978 // Deprecated as of vSphere 9.0. Please refer to vLCM APIs. 1979 // 1980 // An agent virtual machine is expected to be deployed on a host, but the agent could not be 1981 // deployed because it was incompatible with the host. 1982 // 1983 // This is an active remediable issue. To remediate, vSphere ESX Agent Manager redeployes the agent. However, 1984 // the problem is likely to persist until either the host or the solution has been 1985 // upgraded, so that the agent will become compatible with the host. 1986 // 1987 // This structure may be used only with operations rendered under `/eam`. 1988 type IncompatibleHostVersion struct { 1989 VmNotDeployed 1990 } 1991 1992 func init() { 1993 types.Add("eam:IncompatibleHostVersion", reflect.TypeOf((*IncompatibleHostVersion)(nil)).Elem()) 1994 } 1995 1996 // Deprecated this issue is no longer raised by EAM. It is replaced by 1997 // `InvalidConfig`. 1998 // 1999 // An agent virtual machine is expected to be powered on, but there are no free IP addresses in the 2000 // agent's pool of virtual machine IP addresses. 2001 // 2002 // To remediate, free some IP addresses or add some more to the IP pool and invoke 2003 // <code>resolve</code>. 2004 // 2005 // This structure may be used only with operations rendered under `/eam`. 2006 type InsufficientIpAddresses struct { 2007 VmPoweredOff 2008 2009 // The agent virtual machine network. 2010 // 2011 // Refers instance of `Network`. 2012 Network types.ManagedObjectReference `xml:"network" json:"network"` 2013 } 2014 2015 func init() { 2016 types.Add("eam:InsufficientIpAddresses", reflect.TypeOf((*InsufficientIpAddresses)(nil)).Elem()) 2017 } 2018 2019 // An agent virtual machine is expected to be deployed on a host, but the agent virtual machine could not be 2020 // deployed because the host does not have enough free CPU or memory resources. 2021 // 2022 // This is an active remediable issue. To remediate, vSphere ESX Agent Manager redeploys the agent virtual machine. However, 2023 // the problem is likely to persist until enough CPU and memory resources are made available. 2024 // 2025 // This structure may be used only with operations rendered under `/eam`. 2026 type InsufficientResources struct { 2027 VmNotDeployed 2028 } 2029 2030 func init() { 2031 types.Add("eam:InsufficientResources", reflect.TypeOf((*InsufficientResources)(nil)).Elem()) 2032 } 2033 2034 // An agent virtual machine is expected to be deployed on a host, but the agent virtual machine could not be 2035 // deployed because the host's agent datastore did not have enough free space. 2036 // 2037 // This is an active remediable issue. To remediate, vSphere ESX Agent Manager redeploys the agent virtual machine. However, 2038 // the problem is likely to persist until either space is freed up on the host's agent 2039 // virtual machine datastore or a new agent virtual machine datastore with enough free space is configured. 2040 // 2041 // This structure may be used only with operations rendered under `/eam`. 2042 type InsufficientSpace struct { 2043 VmNotDeployed 2044 } 2045 2046 func init() { 2047 types.Add("eam:InsufficientSpace", reflect.TypeOf((*InsufficientSpace)(nil)).Elem()) 2048 } 2049 2050 // Deprecated as of vSphere 9.0. Please refer to vLCM Image APIs. 2051 // 2052 // Cannot remove the Baseline associated with an Agency from VUM. 2053 // 2054 // This is an active remediable issue. To remediate, vSphere ESX Agent Manager 2055 // retries the delete operation. 2056 // Note: In future this issue will denote also the removal of the Agency 2057 // software (VIBs) from VUM software depot once VUM provides an API for that. 2058 // 2059 // This structure may be used only with operations rendered under `/eam`. 2060 type IntegrityAgencyCannotDeleteSoftware struct { 2061 IntegrityAgencyVUMIssue 2062 } 2063 2064 func init() { 2065 types.Add("eam:IntegrityAgencyCannotDeleteSoftware", reflect.TypeOf((*IntegrityAgencyCannotDeleteSoftware)(nil)).Elem()) 2066 } 2067 2068 // Deprecated as of vSphere 9.0. Please refer to vLCM Image APIs. 2069 // 2070 // The software defined by an Agency cannot be staged in VUM. 2071 // 2072 // The staging 2073 // operation consists of the following steps: 2074 // - Upload the Agency software (VIBs) to the VUM depot. 2075 // - Create or update a VUM Baseline with the Agency software and scope. 2076 // 2077 // This is an active remediable issue. To remediate, vSphere ESX Agent Manager 2078 // retries the stage operation. 2079 // 2080 // This structure may be used only with operations rendered under `/eam`. 2081 type IntegrityAgencyCannotStageSoftware struct { 2082 IntegrityAgencyVUMIssue 2083 } 2084 2085 func init() { 2086 types.Add("eam:IntegrityAgencyCannotStageSoftware", reflect.TypeOf((*IntegrityAgencyCannotStageSoftware)(nil)).Elem()) 2087 } 2088 2089 // Deprecated as of vSphere 9.0. Please refer to vLCM Image APIs. 2090 // 2091 // Base class for all issues which occurred during EAM communication with 2092 // vSphere Update Manager (VUM). 2093 // 2094 // This structure may be used only with operations rendered under `/eam`. 2095 type IntegrityAgencyVUMIssue struct { 2096 AgencyIssue 2097 } 2098 2099 func init() { 2100 types.Add("eam:IntegrityAgencyVUMIssue", reflect.TypeOf((*IntegrityAgencyVUMIssue)(nil)).Elem()) 2101 } 2102 2103 // Deprecated as of vSphere 9.0. Please refer to vLCM Image APIs. 2104 // 2105 // VUM service is not available - its registered SOAP endpoint cannot be 2106 // accessed or it is malfunctioning. 2107 // 2108 // This is an active and passive remediable issue. To remediate, vSphere ESX 2109 // Agent Manager retries to access VUM service. 2110 // 2111 // This structure may be used only with operations rendered under `/eam`. 2112 type IntegrityAgencyVUMUnavailable struct { 2113 IntegrityAgencyVUMIssue 2114 } 2115 2116 func init() { 2117 types.Add("eam:IntegrityAgencyVUMUnavailable", reflect.TypeOf((*IntegrityAgencyVUMUnavailable)(nil)).Elem()) 2118 } 2119 2120 // Deprecated as of vSphere 9.0. Please refer to vLCM APIs. 2121 // 2122 // An <code>InvalidAgencyScope</code> fault is thrown when the scope in an 2123 // `AgencyConfigInfo` is invalid. 2124 // 2125 // See also `AgencyConfigInfo`. 2126 // 2127 // This structure may be used only with operations rendered under `/eam`. 2128 type InvalidAgencyScope struct { 2129 EamFault 2130 2131 // The MoRefs of the unknown compute resources. 2132 // 2133 // Refers instances of `ComputeResource`. 2134 UnknownComputeResource []types.ManagedObjectReference `xml:"unknownComputeResource,omitempty" json:"unknownComputeResource,omitempty"` 2135 } 2136 2137 func init() { 2138 types.Add("eam:InvalidAgencyScope", reflect.TypeOf((*InvalidAgencyScope)(nil)).Elem()) 2139 } 2140 2141 type InvalidAgencyScopeFault InvalidAgencyScope 2142 2143 func init() { 2144 types.Add("eam:InvalidAgencyScopeFault", reflect.TypeOf((*InvalidAgencyScopeFault)(nil)).Elem()) 2145 } 2146 2147 // Deprecated as of vSphere 9.0. Please refer to vLCM APIs. 2148 // 2149 // An <code>InvalidAgentConfiguration</code> fault is thrown when the agent 2150 // configuration of an agency configuration is empty or invalid. 2151 // 2152 // See also `AgencyConfigInfo`. 2153 // 2154 // This structure may be used only with operations rendered under `/eam`. 2155 type InvalidAgentConfiguration struct { 2156 EamFault 2157 2158 // An optional invalid agent configuration. 2159 InvalidAgentConfiguration *AgentConfigInfo `xml:"invalidAgentConfiguration,omitempty" json:"invalidAgentConfiguration,omitempty"` 2160 // The invalid field. 2161 InvalidField string `xml:"invalidField,omitempty" json:"invalidField,omitempty"` 2162 } 2163 2164 func init() { 2165 types.Add("eam:InvalidAgentConfiguration", reflect.TypeOf((*InvalidAgentConfiguration)(nil)).Elem()) 2166 } 2167 2168 type InvalidAgentConfigurationFault InvalidAgentConfiguration 2169 2170 func init() { 2171 types.Add("eam:InvalidAgentConfigurationFault", reflect.TypeOf((*InvalidAgentConfigurationFault)(nil)).Elem()) 2172 } 2173 2174 // Invalid configuration is preventing a virtual machine operation. 2175 // 2176 // Typically 2177 // the attached error indicates the particular reason why vSphere ESX Agent 2178 // Manager is unable to power on or reconfigure the agent virtual machine. 2179 // 2180 // This is a passive remediable issue. To remediate update the virtual machine 2181 // configuration. 2182 // 2183 // This structure may be used only with operations rendered under `/eam`. 2184 type InvalidConfig struct { 2185 VmIssue 2186 2187 // The error, that caused this issue. 2188 // 2189 // It must be either MethodFault or 2190 // RuntimeFault. 2191 Error types.AnyType `xml:"error,typeattr" json:"error"` 2192 } 2193 2194 func init() { 2195 types.Add("eam:InvalidConfig", reflect.TypeOf((*InvalidConfig)(nil)).Elem()) 2196 } 2197 2198 // This exception is thrown if `VasaProviderSpec.url` is malformed. 2199 // 2200 // This structure may be used only with operations rendered under `/sms`. 2201 type InvalidUrl struct { 2202 EamFault 2203 2204 // Provider `VasaProviderSpec.url` 2205 Url string `xml:"url" json:"url"` 2206 MalformedUrl bool `xml:"malformedUrl" json:"malformedUrl"` 2207 UnknownHost bool `xml:"unknownHost" json:"unknownHost"` 2208 ConnectionRefused bool `xml:"connectionRefused" json:"connectionRefused"` 2209 ResponseCode int32 `xml:"responseCode,omitempty" json:"responseCode,omitempty"` 2210 } 2211 2212 func init() { 2213 types.Add("eam:InvalidUrl", reflect.TypeOf((*InvalidUrl)(nil)).Elem()) 2214 } 2215 2216 type InvalidUrlFault InvalidUrl 2217 2218 func init() { 2219 types.Add("eam:InvalidUrlFault", reflect.TypeOf((*InvalidUrlFault)(nil)).Elem()) 2220 } 2221 2222 // An issue represents a problem encountered while deploying and configurating agents 2223 // in a vCenter installation. 2224 // 2225 // An issue conveys the type of problem and the 2226 // entitity on which the problem has been encountered. Most issues are related to agents, 2227 // but they can also relate to an agency or a host. 2228 // 2229 // The set of issues provided by the vSphere ESX Agent Manager describes the discrepency between 2230 // the _desired_ agent deployment state, as defined by the agency configurations, 2231 // and the _actual_ deployment. The (@link EamObject.RuntimeInfo.Status.status) 2232 // of an agency or agent is green if it has reached its goal state. It is 2233 // marked as yellow if the vSphere ESX Agent Manager is actively working to bring the object 2234 // to its goal state. It is red if there is a discrepency between the current state and 2235 // the desired state. In the red state, a set of issues are filed on the object that 2236 // describe the reason for the discrepency between the desired and actual states. 2237 // 2238 // Issues are characterized as either active or passive remediable issues. For an active 2239 // remediable issue, the vSphere ESX Agent Manager can actively try to solve the issue. For 2240 // example, by deploying a new agent, removing an agent, changing its power state, and so 2241 // on. For a passive remediable issue, the vSphere ESX Agent Manager is not able to solve the 2242 // problem directly, and can only report the problem. For example, this could be 2243 // caused by an incomplete host configuration. 2244 // 2245 // When <code>resolve</code> is called for an active remediable issue, the vSphere ESX Agent Manager 2246 // starts performing the appropiate remediation steps for the particular issue. For a passive 2247 // remediable issue, the EAM manager simply checks if the condition 2248 // still exists, and if not it removes the issue. 2249 // 2250 // The vSphere ESX Agent Manager actively monitors most conditions relating to both 2251 // active and passive issues. Thus, it often automatically discovers when an 2252 // issue has been remediated and removes the issue without needing to explicitly 2253 // call <code>resolve</code> on an issue. 2254 // 2255 // The complete Issue hierarchy is shown below: 2256 // - `Issue` 2257 // - `AgencyIssue` 2258 // - `AgentIssue` 2259 // - `ManagedHostNotReachable` 2260 // - `VmNotDeployed` 2261 // - `CannotAccessAgentOVF` 2262 // - `IncompatibleHostVersion` 2263 // - `InsufficientResources` 2264 // - `InsufficientSpace` 2265 // - `OvfInvalidFormat` 2266 // - `NoAgentVmDatastore` 2267 // - `NoAgentVmNetwork` 2268 // - `VmIssue` 2269 // - `OvfInvalidProperty` 2270 // - `VmDeployed` 2271 // - `HostInMaintenanceMode` 2272 // - `HostInStandbyMode` 2273 // - `VmCorrupted` 2274 // - `VmOrphaned` 2275 // - `VmPoweredOff` 2276 // - `InsufficientIpAddresses` 2277 // - `MissingAgentIpPool` 2278 // - `VmPoweredOn` 2279 // - `VmSuspended` 2280 // - `VibIssue` 2281 // - `VibCannotPutHostInMaintenanceMode` 2282 // - `VibNotInstalled` 2283 // - `CannotAccessAgentVib` 2284 // - `VibDependenciesNotMetByHost` 2285 // - `VibInvalidFormat` 2286 // - `VibRequirementsNotMetByHost` 2287 // - `VibRequiresHostInMaintenanceMode` 2288 // - `VibRequiresHostReboot` 2289 // - `VibRequiresManualInstallation` 2290 // - `VibRequiresManualUninstallation` 2291 // - `ImmediateHostRebootRequired` 2292 // - `OrphanedAgency` 2293 // - `IntegrityAgencyVUMIssue` 2294 // - `IntegrityAgencyVUMUnavailable` 2295 // - `IntegrityAgencyCannotStageSoftware` 2296 // - `IntegrityAgencyCannotDeleteSoftware` 2297 // - `ClusterAgentAgentIssue` 2298 // - `ClusterAgentVmIssue` 2299 // - `ClusterAgentVmNotRemoved` 2300 // - `ClusterAgentVmPoweredOff` 2301 // - `ClusterAgentInsufficientClusterResources` 2302 // - `ClusterAgentVmNotDeployed` 2303 // - `ClusterAgentInsufficientClusterSpace` 2304 // - `ClusterAgentMissingClusterVmDatastore` 2305 // - `ClusterAgentMissingClusterVmNetwork` 2306 // 2307 // See also `EamObject.Resolve`, `EamObject.ResolveAll`. 2308 // 2309 // This structure may be used only with operations rendered under `/eam`. 2310 type Issue struct { 2311 types.DynamicData 2312 2313 // A unique identifier per <code>Issue</code> instance. 2314 Key int32 `xml:"key" json:"key"` 2315 // A localized message describing the issue. 2316 Description string `xml:"description" json:"description"` 2317 // The point in time when this issue was generated. 2318 // 2319 // Note that issues can be 2320 // regenerated periodically, so this time does not neccessarily reflect the 2321 // first time the issue was detected. 2322 Time time.Time `xml:"time" json:"time"` 2323 } 2324 2325 func init() { 2326 types.Add("eam:Issue", reflect.TypeOf((*Issue)(nil)).Elem()) 2327 } 2328 2329 // Managed ESXi Server is unreachable from vCenter Server or vSphere ESX Agent 2330 // Manager. 2331 // 2332 // Currently all operations on the affected host are imposible. Reasons 2333 // for this might be : 2334 // - ESXi Server is not connected from vCenter Server 2335 // - ESXi Server powered off 2336 // 2337 // This is not a remediable issue. To remediate, connect, power on or reboot the 2338 // host. 2339 // 2340 // This structure may be used only with operations rendered under `/eam`. 2341 type ManagedHostNotReachable struct { 2342 AgentIssue 2343 } 2344 2345 func init() { 2346 types.Add("eam:ManagedHostNotReachable", reflect.TypeOf((*ManagedHostNotReachable)(nil)).Elem()) 2347 } 2348 2349 type MarkAsAvailable MarkAsAvailableRequestType 2350 2351 func init() { 2352 types.Add("eam:MarkAsAvailable", reflect.TypeOf((*MarkAsAvailable)(nil)).Elem()) 2353 } 2354 2355 type MarkAsAvailableRequestType struct { 2356 This types.ManagedObjectReference `xml:"_this" json:"_this"` 2357 } 2358 2359 func init() { 2360 types.Add("eam:MarkAsAvailableRequestType", reflect.TypeOf((*MarkAsAvailableRequestType)(nil)).Elem()) 2361 } 2362 2363 type MarkAsAvailableResponse struct { 2364 } 2365 2366 // Deprecated this issue is no longer raised by EAM. It is replaced by 2367 // `InvalidConfig`. 2368 // 2369 // An agent virtual machine is expected to be powered on, but the agent virtual machine is powered off because 2370 // there there are no IP addresses defined on the agent's virtual machine network. 2371 // 2372 // To remediate, create an IP pool on the agent's virtual machine network and invoke <code>resolve</code>. 2373 // 2374 // This structure may be used only with operations rendered under `/eam`. 2375 type MissingAgentIpPool struct { 2376 VmPoweredOff 2377 2378 // The agent virtual machine network. 2379 // 2380 // Refers instance of `Network`. 2381 Network types.ManagedObjectReference `xml:"network" json:"network"` 2382 } 2383 2384 func init() { 2385 types.Add("eam:MissingAgentIpPool", reflect.TypeOf((*MissingAgentIpPool)(nil)).Elem()) 2386 } 2387 2388 // Deprecated dvFilters are no longer supported by EAM. 2389 // 2390 // The agent is using the dvFilter API on the ESX host, but no dvFilter switch 2391 // has been configured on the host. 2392 // 2393 // This can happen due to host communication 2394 // failures or if the dvSwitch was (presumably accidentally) deleted from the 2395 // host configuration. 2396 // 2397 // This is an active remediable issue. To remediate, vSphere ESX Agent Manager 2398 // recreates the dvFilter switch. 2399 // 2400 // This structure may be used only with operations rendered under `/eam`. 2401 type MissingDvFilterSwitch struct { 2402 AgentIssue 2403 } 2404 2405 func init() { 2406 types.Add("eam:MissingDvFilterSwitch", reflect.TypeOf((*MissingDvFilterSwitch)(nil)).Elem()) 2407 } 2408 2409 // An agent virtual machine is expected to be deployed on a host, but the agent cannot be 2410 // deployed because the agent datastore has not been configured on the host. 2411 // 2412 // This is a passive remediable issue. The administrator must configure 2413 // the agent virtual machine datastore on the host. 2414 // 2415 // This structure may be used only with operations rendered under `/eam`. 2416 type NoAgentVmDatastore struct { 2417 VmNotDeployed 2418 } 2419 2420 func init() { 2421 types.Add("eam:NoAgentVmDatastore", reflect.TypeOf((*NoAgentVmDatastore)(nil)).Elem()) 2422 } 2423 2424 // An agent virtual machine is expected to be deployed on a host, but the agent cannot be 2425 // deployed because the agent network has not been configured on the host. 2426 // 2427 // This is a passive remediable issue. The administrator must configure 2428 // the agent virtual machine network on the host. 2429 // 2430 // This structure may be used only with operations rendered under `/eam`. 2431 type NoAgentVmNetwork struct { 2432 VmNotDeployed 2433 } 2434 2435 func init() { 2436 types.Add("eam:NoAgentVmNetwork", reflect.TypeOf((*NoAgentVmNetwork)(nil)).Elem()) 2437 } 2438 2439 // Thrown when calling vSphere ESX Agent Manager when it is not connected to the vCenter server. 2440 // 2441 // This structure may be used only with operations rendered under `/eam`. 2442 type NoConnectionToVCenter struct { 2443 EamRuntimeFault 2444 } 2445 2446 func init() { 2447 types.Add("eam:NoConnectionToVCenter", reflect.TypeOf((*NoConnectionToVCenter)(nil)).Elem()) 2448 } 2449 2450 type NoConnectionToVCenterFault NoConnectionToVCenter 2451 2452 func init() { 2453 types.Add("eam:NoConnectionToVCenterFault", reflect.TypeOf((*NoConnectionToVCenterFault)(nil)).Elem()) 2454 } 2455 2456 // An agent virtual machine is expected to be deployed on a host, but the agent cannot be 2457 // deployed because the agent datastore has not been configured on the host. 2458 // 2459 // The host 2460 // needs to be added to one of the datastores listed in customAgentVmDatastore. 2461 // 2462 // This is a passive remediable issue. The administrator must add one of the datastores 2463 // customAgentVmDatastore to the host. 2464 // 2465 // This structure may be used only with operations rendered under `/eam`. 2466 type NoCustomAgentVmDatastore struct { 2467 NoAgentVmDatastore 2468 2469 // A non-empty array of agent VM datastores that is required on the host. 2470 // 2471 // Refers instances of `Datastore`. 2472 CustomAgentVmDatastore []types.ManagedObjectReference `xml:"customAgentVmDatastore" json:"customAgentVmDatastore"` 2473 // The names of the agent VM datastores. 2474 CustomAgentVmDatastoreName []string `xml:"customAgentVmDatastoreName" json:"customAgentVmDatastoreName"` 2475 } 2476 2477 func init() { 2478 types.Add("eam:NoCustomAgentVmDatastore", reflect.TypeOf((*NoCustomAgentVmDatastore)(nil)).Elem()) 2479 } 2480 2481 // An agent virtual machine is expected to be deployed on a host, but the agent cannot be 2482 // deployed because the agent network has not been configured on the host. 2483 // 2484 // The host 2485 // needs to be added to one of the networks listed in customAgentVmNetwork. 2486 // 2487 // This is a passive remediable issue. The administrator must add one of the networks 2488 // customAgentVmNetwork to the host. 2489 // 2490 // This structure may be used only with operations rendered under `/eam`. 2491 type NoCustomAgentVmNetwork struct { 2492 NoAgentVmNetwork 2493 2494 // A non-empty array of agent VM networks that is required on the host. 2495 // 2496 // Refers instances of `Network`. 2497 CustomAgentVmNetwork []types.ManagedObjectReference `xml:"customAgentVmNetwork" json:"customAgentVmNetwork"` 2498 // The names of the agent VM networks. 2499 CustomAgentVmNetworkName []string `xml:"customAgentVmNetworkName" json:"customAgentVmNetworkName"` 2500 } 2501 2502 func init() { 2503 types.Add("eam:NoCustomAgentVmNetwork", reflect.TypeOf((*NoCustomAgentVmNetwork)(nil)).Elem()) 2504 } 2505 2506 // Deprecated as of vSphere 9.0. No longer in use since vCLS 2.0. 2507 // 2508 // An agent virtual machine is expected to be deployed on a host, but the 2509 // agent cannot be deployed because the agent VM datastore could not be 2510 // discovered, as per defined selection policy, on the host. 2511 // 2512 // This issue can be remediated passively if the administrator configures 2513 // new datastores on the host. 2514 // 2515 // This structure may be used only with operations rendered under `/eam`. 2516 type NoDiscoverableAgentVmDatastore struct { 2517 VmNotDeployed 2518 } 2519 2520 func init() { 2521 types.Add("eam:NoDiscoverableAgentVmDatastore", reflect.TypeOf((*NoDiscoverableAgentVmDatastore)(nil)).Elem()) 2522 } 2523 2524 // Deprecated as of vSphere 9.0. No longer in use since vCLS 2.0. 2525 // 2526 // An agent virtual machine is expected to be deployed on a host, but the 2527 // agent cannot be deployed because the agent VM network could not be 2528 // discovered, as per defined selection policy, on the host. 2529 // 2530 // This issue can be remediated passively if the administrator configures 2531 // new networks on the host. 2532 // 2533 // This structure may be used only with operations rendered under `/eam`. 2534 type NoDiscoverableAgentVmNetwork struct { 2535 VmNotDeployed 2536 } 2537 2538 func init() { 2539 types.Add("eam:NoDiscoverableAgentVmNetwork", reflect.TypeOf((*NoDiscoverableAgentVmNetwork)(nil)).Elem()) 2540 } 2541 2542 // Thrown when an a user cannot be authorized. 2543 // 2544 // This structure may be used only with operations rendered under `/eam`. 2545 type NotAuthorized struct { 2546 EamRuntimeFault 2547 } 2548 2549 func init() { 2550 types.Add("eam:NotAuthorized", reflect.TypeOf((*NotAuthorized)(nil)).Elem()) 2551 } 2552 2553 type NotAuthorizedFault NotAuthorized 2554 2555 func init() { 2556 types.Add("eam:NotAuthorizedFault", reflect.TypeOf((*NotAuthorizedFault)(nil)).Elem()) 2557 } 2558 2559 // Deprecated eAM no longer raises this issue. If agecny is getting orphaned 2560 // EAM simply destroys it. 2561 // 2562 // The solution that created the agency is no longer registered with the vCenter 2563 // server. 2564 // 2565 // This is an active remediable issue. To remediate, vSphere ESX Agent Manager 2566 // undeploys and removes the agency. 2567 // 2568 // This structure may be used only with operations rendered under `/eam`. 2569 type OrphanedAgency struct { 2570 AgencyIssue 2571 } 2572 2573 func init() { 2574 types.Add("eam:OrphanedAgency", reflect.TypeOf((*OrphanedAgency)(nil)).Elem()) 2575 } 2576 2577 // Deprecated dvFilters are no longer supported by EAM. 2578 // 2579 // A dvFilter switch exists on a host but no agents on the host depend on 2580 // dvFilter. 2581 // 2582 // This typically happens if a host is disconnected when an agency 2583 // configuration changed. 2584 // 2585 // This is an active remediable issue. To remediate, vSphere ESX Agent Manager 2586 // removes the dvFilterSwitch. 2587 // 2588 // This structure may be used only with operations rendered under `/eam`. 2589 type OrphanedDvFilterSwitch struct { 2590 HostIssue 2591 } 2592 2593 func init() { 2594 types.Add("eam:OrphanedDvFilterSwitch", reflect.TypeOf((*OrphanedDvFilterSwitch)(nil)).Elem()) 2595 } 2596 2597 // An Agent virtual machine is expected to be provisioned on a host, but it failed to do so 2598 // because the provisioning of the OVF package failed. 2599 // 2600 // The provisioning is unlikely to 2601 // succeed until the solution that provides the OVF package has been upgraded or 2602 // patched to provide a valid OVF package for the agent virtual machine. 2603 // 2604 // This is an active remediable issue. To remediate, vSphere ESX Agent Manager attempts the OVF provisioning again. 2605 // 2606 // This structure may be used only with operations rendered under `/eam`. 2607 type OvfInvalidFormat struct { 2608 VmNotDeployed 2609 2610 // An optional list of errors that caused this issue. 2611 // 2612 // These errors are generated by the 2613 // vCenter server. 2614 Error []types.LocalizedMethodFault `xml:"error,omitempty" json:"error,omitempty"` 2615 } 2616 2617 func init() { 2618 types.Add("eam:OvfInvalidFormat", reflect.TypeOf((*OvfInvalidFormat)(nil)).Elem()) 2619 } 2620 2621 // An agent virtual machine needs to be provisioned or reconfigured, but an OVF 2622 // property is either missing or has an invalid value. 2623 // 2624 // This is a passive remediable issue. To remediate, update the OVF environment 2625 // in the agent configuration used to provision the agent virtual machine. 2626 // 2627 // This structure may be used only with operations rendered under `/eam`. 2628 type OvfInvalidProperty struct { 2629 AgentIssue 2630 2631 // An optional list of errors that caused this issue. 2632 // 2633 // These errors are 2634 // generated by the vCenter server. 2635 Error []types.LocalizedMethodFault `xml:"error,omitempty" json:"error,omitempty"` 2636 } 2637 2638 func init() { 2639 types.Add("eam:OvfInvalidProperty", reflect.TypeOf((*OvfInvalidProperty)(nil)).Elem()) 2640 } 2641 2642 // Deprecated as of vSphere 9.0. Please refer to vLCM Image APIs. 2643 // 2644 // EAM was unable to set its required compute resource configuration in PM. 2645 // 2646 // EAM configuration needs to be updated or PM needs to be repaired manually to 2647 // allow the configuration. 2648 // 2649 // This structure may be used only with operations rendered under `/eam`. 2650 type PersonalityAgencyCannotConfigureSolutions struct { 2651 PersonalityAgencyPMIssue 2652 2653 // Compute resource that couldn't be configured 2654 // 2655 // Refers instance of `ComputeResource`. 2656 Cr types.ManagedObjectReference `xml:"cr" json:"cr"` 2657 // Names of the solutions attempted to be modified 2658 SolutionsToModify []string `xml:"solutionsToModify,omitempty" json:"solutionsToModify,omitempty"` 2659 // Names of the solutions attempted to be removed 2660 SolutionsToRemove []string `xml:"solutionsToRemove,omitempty" json:"solutionsToRemove,omitempty"` 2661 } 2662 2663 func init() { 2664 types.Add("eam:PersonalityAgencyCannotConfigureSolutions", reflect.TypeOf((*PersonalityAgencyCannotConfigureSolutions)(nil)).Elem()) 2665 } 2666 2667 // Deprecated as of vSphere 9.0. Please refer to vLCM Image APIs. 2668 // 2669 // The offline depot could not be uploaded in Personality Manager. 2670 // 2671 // This structure may be used only with operations rendered under `/eam`. 2672 type PersonalityAgencyCannotUploadDepot struct { 2673 PersonalityAgencyDepotIssue 2674 2675 // URL EAM hosted the offline bundle as in vCenter. 2676 LocalDepotUrl string `xml:"localDepotUrl" json:"localDepotUrl"` 2677 } 2678 2679 func init() { 2680 types.Add("eam:PersonalityAgencyCannotUploadDepot", reflect.TypeOf((*PersonalityAgencyCannotUploadDepot)(nil)).Elem()) 2681 } 2682 2683 // Deprecated as of vSphere 9.0. Please refer to vLCM Image APIs. 2684 // 2685 // Base class for all offline depot (VIB) issues while communicating with 2686 // Personality Manager. 2687 // 2688 // This structure may be used only with operations rendered under `/eam`. 2689 type PersonalityAgencyDepotIssue struct { 2690 PersonalityAgencyPMIssue 2691 2692 // URL the offline bundle is configured in EAM. 2693 RemoteDepotUrl string `xml:"remoteDepotUrl" json:"remoteDepotUrl"` 2694 } 2695 2696 func init() { 2697 types.Add("eam:PersonalityAgencyDepotIssue", reflect.TypeOf((*PersonalityAgencyDepotIssue)(nil)).Elem()) 2698 } 2699 2700 // Deprecated as of vSphere 9.0. Please refer to vLCM Image APIs. 2701 // 2702 // The offline depot was not available for download during communicating with 2703 // Personality Manager. 2704 // 2705 // This structure may be used only with operations rendered under `/eam`. 2706 type PersonalityAgencyInaccessibleDepot struct { 2707 PersonalityAgencyDepotIssue 2708 } 2709 2710 func init() { 2711 types.Add("eam:PersonalityAgencyInaccessibleDepot", reflect.TypeOf((*PersonalityAgencyInaccessibleDepot)(nil)).Elem()) 2712 } 2713 2714 // Deprecated as of vSphere 9.0. Please refer to vLCM Image APIs. 2715 // 2716 // The offline depot has missing or invalid metadata to be usable by 2717 // Personality Manager. 2718 // 2719 // This structure may be used only with operations rendered under `/eam`. 2720 type PersonalityAgencyInvalidDepot struct { 2721 PersonalityAgencyDepotIssue 2722 } 2723 2724 func init() { 2725 types.Add("eam:PersonalityAgencyInvalidDepot", reflect.TypeOf((*PersonalityAgencyInvalidDepot)(nil)).Elem()) 2726 } 2727 2728 // Deprecated as of vSphere 9.0. Please refer to vLCM Image APIs. 2729 // 2730 // Base class for all issues which occurred during EAM communication with 2731 // Personality Manager. 2732 // 2733 // This structure may be used only with operations rendered under `/eam`. 2734 type PersonalityAgencyPMIssue struct { 2735 AgencyIssue 2736 } 2737 2738 func init() { 2739 types.Add("eam:PersonalityAgencyPMIssue", reflect.TypeOf((*PersonalityAgencyPMIssue)(nil)).Elem()) 2740 } 2741 2742 // Deprecated as of vSphere 9.0. Please refer to vLCM Image APIs. 2743 // 2744 // PM service is not available - its endpoint cannot be accessed or it is 2745 // malfunctioning. 2746 // 2747 // This is an active and passive remediable issue. To remediate, vSphere ESX 2748 // Agent Manager retries to access PM service. 2749 // 2750 // This structure may be used only with operations rendered under `/eam`. 2751 type PersonalityAgencyPMUnavailable struct { 2752 PersonalityAgencyPMIssue 2753 } 2754 2755 func init() { 2756 types.Add("eam:PersonalityAgencyPMUnavailable", reflect.TypeOf((*PersonalityAgencyPMUnavailable)(nil)).Elem()) 2757 } 2758 2759 // Deprecated as of vSphere 9.0. Please refer to vLCM Image APIs. 2760 // 2761 // The agent workflow is blocked until its' required solutions are re-mediated 2762 // externally in Personality Manager. 2763 // 2764 // This issue is only passively remediable. The desired state has to be applied 2765 // in PM by an user. 2766 // 2767 // This structure may be used only with operations rendered under `/eam`. 2768 type PersonalityAgentAwaitingPMRemediation struct { 2769 PersonalityAgentPMIssue 2770 } 2771 2772 func init() { 2773 types.Add("eam:PersonalityAgentAwaitingPMRemediation", reflect.TypeOf((*PersonalityAgentAwaitingPMRemediation)(nil)).Elem()) 2774 } 2775 2776 // Deprecated as of vSphere 9.0. Please refer to vLCM Image APIs. 2777 // 2778 // The agent workflow is blocked by a failed agency operation with 2779 // Personality Manager. 2780 // 2781 // This issue is only passively remediable. The agency's PM related issue has to 2782 // be resolved. 2783 // 2784 // This structure may be used only with operations rendered under `/eam`. 2785 type PersonalityAgentBlockedByAgencyOperation struct { 2786 PersonalityAgentPMIssue 2787 } 2788 2789 func init() { 2790 types.Add("eam:PersonalityAgentBlockedByAgencyOperation", reflect.TypeOf((*PersonalityAgentBlockedByAgencyOperation)(nil)).Elem()) 2791 } 2792 2793 // Deprecated as of vSphere 9.0. Please refer to vLCM Image APIs. 2794 // 2795 // Base class for all issues which occurred during EAM communication with 2796 // Personality Manager. 2797 // 2798 // This structure may be used only with operations rendered under `/eam`. 2799 type PersonalityAgentPMIssue struct { 2800 AgentIssue 2801 } 2802 2803 func init() { 2804 types.Add("eam:PersonalityAgentPMIssue", reflect.TypeOf((*PersonalityAgentPMIssue)(nil)).Elem()) 2805 } 2806 2807 type QueryAgency QueryAgencyRequestType 2808 2809 func init() { 2810 types.Add("eam:QueryAgency", reflect.TypeOf((*QueryAgency)(nil)).Elem()) 2811 } 2812 2813 type QueryAgencyRequestType struct { 2814 This types.ManagedObjectReference `xml:"_this" json:"_this"` 2815 } 2816 2817 func init() { 2818 types.Add("eam:QueryAgencyRequestType", reflect.TypeOf((*QueryAgencyRequestType)(nil)).Elem()) 2819 } 2820 2821 type QueryAgencyResponse struct { 2822 Returnval []types.ManagedObjectReference `xml:"returnval,omitempty" json:"returnval,omitempty"` 2823 } 2824 2825 type QueryAgent QueryAgentRequestType 2826 2827 func init() { 2828 types.Add("eam:QueryAgent", reflect.TypeOf((*QueryAgent)(nil)).Elem()) 2829 } 2830 2831 type QueryAgentRequestType struct { 2832 This types.ManagedObjectReference `xml:"_this" json:"_this"` 2833 } 2834 2835 func init() { 2836 types.Add("eam:QueryAgentRequestType", reflect.TypeOf((*QueryAgentRequestType)(nil)).Elem()) 2837 } 2838 2839 type QueryAgentResponse struct { 2840 Returnval []types.ManagedObjectReference `xml:"returnval,omitempty" json:"returnval,omitempty"` 2841 } 2842 2843 type QueryConfig QueryConfigRequestType 2844 2845 func init() { 2846 types.Add("eam:QueryConfig", reflect.TypeOf((*QueryConfig)(nil)).Elem()) 2847 } 2848 2849 type QueryConfigRequestType struct { 2850 This types.ManagedObjectReference `xml:"_this" json:"_this"` 2851 } 2852 2853 func init() { 2854 types.Add("eam:QueryConfigRequestType", reflect.TypeOf((*QueryConfigRequestType)(nil)).Elem()) 2855 } 2856 2857 type QueryConfigResponse struct { 2858 Returnval BaseAgencyConfigInfo `xml:"returnval,typeattr" json:"returnval"` 2859 } 2860 2861 type QueryIssue QueryIssueRequestType 2862 2863 func init() { 2864 types.Add("eam:QueryIssue", reflect.TypeOf((*QueryIssue)(nil)).Elem()) 2865 } 2866 2867 // The parameters of `EamObject.QueryIssue`. 2868 // 2869 // This structure may be used only with operations rendered under `/eam`. 2870 type QueryIssueRequestType struct { 2871 This types.ManagedObjectReference `xml:"_this" json:"_this"` 2872 // An optional array of issue keys. If not set, all issues for this 2873 // entity are returned. 2874 IssueKey []int32 `xml:"issueKey,omitempty" json:"issueKey,omitempty"` 2875 } 2876 2877 func init() { 2878 types.Add("eam:QueryIssueRequestType", reflect.TypeOf((*QueryIssueRequestType)(nil)).Elem()) 2879 } 2880 2881 type QueryIssueResponse struct { 2882 Returnval []BaseIssue `xml:"returnval,omitempty,typeattr" json:"returnval,omitempty"` 2883 } 2884 2885 type QuerySolutionId QuerySolutionIdRequestType 2886 2887 func init() { 2888 types.Add("eam:QuerySolutionId", reflect.TypeOf((*QuerySolutionId)(nil)).Elem()) 2889 } 2890 2891 type QuerySolutionIdRequestType struct { 2892 This types.ManagedObjectReference `xml:"_this" json:"_this"` 2893 } 2894 2895 func init() { 2896 types.Add("eam:QuerySolutionIdRequestType", reflect.TypeOf((*QuerySolutionIdRequestType)(nil)).Elem()) 2897 } 2898 2899 type QuerySolutionIdResponse struct { 2900 Returnval string `xml:"returnval" json:"returnval"` 2901 } 2902 2903 type RegisterAgentVm RegisterAgentVmRequestType 2904 2905 func init() { 2906 types.Add("eam:RegisterAgentVm", reflect.TypeOf((*RegisterAgentVm)(nil)).Elem()) 2907 } 2908 2909 // The parameters of `Agency.RegisterAgentVm`. 2910 // 2911 // This structure may be used only with operations rendered under `/eam`. 2912 type RegisterAgentVmRequestType struct { 2913 This types.ManagedObjectReference `xml:"_this" json:"_this"` 2914 // The managed object reference to the agent VM. 2915 // 2916 // Refers instance of `VirtualMachine`. 2917 AgentVm types.ManagedObjectReference `xml:"agentVm" json:"agentVm"` 2918 } 2919 2920 func init() { 2921 types.Add("eam:RegisterAgentVmRequestType", reflect.TypeOf((*RegisterAgentVmRequestType)(nil)).Elem()) 2922 } 2923 2924 type RegisterAgentVmResponse struct { 2925 Returnval types.ManagedObjectReference `xml:"returnval" json:"returnval"` 2926 } 2927 2928 type Resolve ResolveRequestType 2929 2930 func init() { 2931 types.Add("eam:Resolve", reflect.TypeOf((*Resolve)(nil)).Elem()) 2932 } 2933 2934 type ResolveAll ResolveAllRequestType 2935 2936 func init() { 2937 types.Add("eam:ResolveAll", reflect.TypeOf((*ResolveAll)(nil)).Elem()) 2938 } 2939 2940 type ResolveAllRequestType struct { 2941 This types.ManagedObjectReference `xml:"_this" json:"_this"` 2942 } 2943 2944 func init() { 2945 types.Add("eam:ResolveAllRequestType", reflect.TypeOf((*ResolveAllRequestType)(nil)).Elem()) 2946 } 2947 2948 type ResolveAllResponse struct { 2949 } 2950 2951 // The parameters of `EamObject.Resolve`. 2952 // 2953 // This structure may be used only with operations rendered under `/eam`. 2954 type ResolveRequestType struct { 2955 This types.ManagedObjectReference `xml:"_this" json:"_this"` 2956 // A non-empty array of issue keys. 2957 IssueKey []int32 `xml:"issueKey" json:"issueKey"` 2958 } 2959 2960 func init() { 2961 types.Add("eam:ResolveRequestType", reflect.TypeOf((*ResolveRequestType)(nil)).Elem()) 2962 } 2963 2964 type ResolveResponse struct { 2965 Returnval []int32 `xml:"returnval,omitempty" json:"returnval,omitempty"` 2966 } 2967 2968 type ScanForUnknownAgentVm ScanForUnknownAgentVmRequestType 2969 2970 func init() { 2971 types.Add("eam:ScanForUnknownAgentVm", reflect.TypeOf((*ScanForUnknownAgentVm)(nil)).Elem()) 2972 } 2973 2974 type ScanForUnknownAgentVmRequestType struct { 2975 This types.ManagedObjectReference `xml:"_this" json:"_this"` 2976 } 2977 2978 func init() { 2979 types.Add("eam:ScanForUnknownAgentVmRequestType", reflect.TypeOf((*ScanForUnknownAgentVmRequestType)(nil)).Elem()) 2980 } 2981 2982 type ScanForUnknownAgentVmResponse struct { 2983 } 2984 2985 type SetMaintenanceModePolicy SetMaintenanceModePolicyRequestType 2986 2987 func init() { 2988 types.Add("eam:SetMaintenanceModePolicy", reflect.TypeOf((*SetMaintenanceModePolicy)(nil)).Elem()) 2989 } 2990 2991 // The parameters of `EsxAgentManager.SetMaintenanceModePolicy`. 2992 // 2993 // This structure may be used only with operations rendered under `/eam`. 2994 type SetMaintenanceModePolicyRequestType struct { 2995 This types.ManagedObjectReference `xml:"_this" json:"_this"` 2996 // The policy to use. 2997 Policy string `xml:"policy" json:"policy"` 2998 } 2999 3000 func init() { 3001 types.Add("eam:SetMaintenanceModePolicyRequestType", reflect.TypeOf((*SetMaintenanceModePolicyRequestType)(nil)).Elem()) 3002 types.AddMinAPIVersionForType("eam:SetMaintenanceModePolicyRequestType", "7.4") 3003 } 3004 3005 type SetMaintenanceModePolicyResponse struct { 3006 } 3007 3008 // Specification describing a desired state to be applied. 3009 // 3010 // This structure may be used only with operations rendered under `/eam`. 3011 type SolutionsApplySpec struct { 3012 types.DynamicData 3013 3014 // Complete desired state to be applied on the target entity. 3015 // 3016 // the `*solutions*` member limits which parts of this desired state to 3017 // be applied 3018 // 3019 // If the `*solutions*` member is omitted. 3020 // - Any solution described in this structure will be applied on the 3021 // target entity 3022 // - Any solution already existing on the target entity, but missing 3023 // from this structure, will be deleted from the target entity 3024 DesiredState []SolutionsSolutionConfig `xml:"desiredState,omitempty" json:"desiredState,omitempty"` 3025 // If provided, limits the parts of the `*desiredState*` structure to 3026 // be applied on the target entity. 3027 // - solutions that are also present in the `*desiredState*` 3028 // structure will be applied on the target entity. 3029 // - solutions that are missing from the `*desiredState*` structure 3030 // will be deleted from the target entity. 3031 Solutions []string `xml:"solutions,omitempty" json:"solutions,omitempty"` 3032 // Specifies exact hosts to apply the desired state to, instead of every 3033 // host in the cluster. 3034 // 3035 // Applicable only to solutions with 3036 // `SolutionsHostBoundSolutionConfig`. 3037 // 3038 // Refers instances of `HostSystem`. 3039 Hosts []types.ManagedObjectReference `xml:"hosts,omitempty" json:"hosts,omitempty"` 3040 // Deployment units on which solutions that are specified by the this 3041 // structure need to be applied. 3042 // 3043 // Applicable only to solutions with 3044 // `SolutionsClusterBoundSolutionConfig`. 3045 // 3046 // The deployment unit represents a single VM instance deployment. It is 3047 // returned by the `Solutions.Compliance` operation. 3048 // 3049 // If omitted - the configured solutions by `SolutionsApplySpec.solutions` are applied 3050 // on all of the deployment units in the cluster. 3051 DeploymentUnits []string `xml:"deploymentUnits,omitempty" json:"deploymentUnits,omitempty"` 3052 } 3053 3054 func init() { 3055 types.Add("eam:SolutionsApplySpec", reflect.TypeOf((*SolutionsApplySpec)(nil)).Elem()) 3056 } 3057 3058 // Specifies cluster-bound solution configuration. 3059 // 3060 // This structure may be used only with operations rendered under `/eam`. 3061 type SolutionsClusterBoundSolutionConfig struct { 3062 SolutionsTypeSpecificSolutionConfig 3063 3064 // The number of instances of the specified VM to be deployed across the 3065 // cluster. 3066 VmCount int32 `xml:"vmCount" json:"vmCount"` 3067 // VM placement policies to be configured on the VMs 3068 // `SolutionsVmPlacementPolicy_enum` If omitted - no VM placement 3069 // policies are configured. 3070 VmPlacementPolicies []string `xml:"vmPlacementPolicies,omitempty" json:"vmPlacementPolicies,omitempty"` 3071 // Networks defined in the OVF to be configured on the VMs. 3072 // 3073 // Mutually 3074 // exclusive with `SolutionsClusterBoundSolutionConfig.devices`. If omitted - no VM networks are 3075 // configured. 3076 VmNetworks []SolutionsVMNetworkMapping `xml:"vmNetworks,omitempty" json:"vmNetworks,omitempty"` 3077 // Datastores to be configured as a storage of the VMs. 3078 // 3079 // The first 3080 // available datastore in the cluster is used. The collection cannot 3081 // contain duplicate elements. 3082 // If omitted - the system automatically selects the datastore. The 3083 // selection takes into account the other properties of the desired state 3084 // specification (the provided VM storage policies and VM devices) and the 3085 // runtime state of the datastores in the cluster. It is required DRS to 3086 // be enabled on the cluster. 3087 // 3088 // Refers instances of `Datastore`. 3089 Datastores []types.ManagedObjectReference `xml:"datastores,omitempty" json:"datastores,omitempty"` 3090 // Devices of the VMs not defined in the OVF descriptor. 3091 // 3092 // Mutually 3093 // exclusive with `SolutionsClusterBoundSolutionConfig.vmNetworks`. 3094 // 3095 // If `SolutionsClusterBoundSolutionConfig.datastores` is not set, the devices of the VMs not defined 3096 // in the OVF descriptor should be provided to `SolutionsClusterBoundSolutionConfig.devices` and not as 3097 // part of a VM lifecycle hook (VM reconfiguration). Otherwise, the 3098 // compatibility of the devices with the selected host and datastore where 3099 // the VM is deployed needs to be ensured by the client. 3100 // 3101 // 1\. For VM initial placement the devices are added to the VM 3102 // configuration. 2. For VM reconfiguration it is checked if a relocation 3103 // is needed based on the provided `SolutionsClusterBoundSolutionConfig.devices` and the rest of the 3104 // desired specification change. If relocation is not needed then only VM 3105 // reconfiguration is executed. Otherwise (e.g. a network device not 3106 // present on the host where the VM is located) the VM is first relocated 3107 // and then VM reconfiguration is executed. For the reconfiguration it is 3108 // checked what devices need to be added, removed, and edited on the 3109 // existing VMs. 3110 // 3111 // The supported property of vim.vm.ConfigSpec is 3112 // vim.vm.ConfigSpec.deviceChange. The property 3113 // vim.vm.device.VirtualDeviceSpec.operation is ignored. Device keys/Ids 3114 // needs to be negative integers. 3115 // 3116 // NOTE: Devices are added only during VM initial placement. VM 3117 // reconfiguration with the provided devices is currently not supported. 3118 // If omitted - no additional devices will be added to the VMs. 3119 Devices *types.VirtualMachineConfigSpec `xml:"devices,omitempty" json:"devices,omitempty"` 3120 } 3121 3122 func init() { 3123 types.Add("eam:SolutionsClusterBoundSolutionConfig", reflect.TypeOf((*SolutionsClusterBoundSolutionConfig)(nil)).Elem()) 3124 } 3125 3126 // Result of a compliance check of a desired state for a solution with 3127 // `SolutionsClusterBoundSolutionConfig`. 3128 // 3129 // This structure may be used only with operations rendered under `/eam`. 3130 type SolutionsClusterSolutionComplianceResult struct { 3131 types.DynamicData 3132 3133 // The solution being checked for compliance. 3134 Solution string `xml:"solution" json:"solution"` 3135 // `True` if the solution is compliant with the described desired 3136 // state, `False` - otherwise. 3137 Compliant bool `xml:"compliant" json:"compliant"` 3138 // Detailed per deployment-unit compliance result. 3139 DeploymentUnits []SolutionsDeploymentUnitComplianceResult `xml:"deploymentUnits,omitempty" json:"deploymentUnits,omitempty"` 3140 } 3141 3142 func init() { 3143 types.Add("eam:SolutionsClusterSolutionComplianceResult", reflect.TypeOf((*SolutionsClusterSolutionComplianceResult)(nil)).Elem()) 3144 } 3145 3146 // Result of a compliance check of a desired state on a compute resource. 3147 // 3148 // This structure may be used only with operations rendered under `/eam`. 3149 type SolutionsComplianceResult struct { 3150 types.DynamicData 3151 3152 // `True` if the compute resource is compliant with the described 3153 // desired state, `False` - otherwise. 3154 Compliant bool `xml:"compliant" json:"compliant"` 3155 // Detailed per-host compliance result of the compute resource for 3156 // solutions with `SolutionsHostBoundSolutionConfig`. 3157 Hosts []SolutionsHostComplianceResult `xml:"hosts,omitempty" json:"hosts,omitempty"` 3158 // Detailed per-solution unit compliance result of the compute resource 3159 // for solutions with `SolutionsClusterBoundSolutionConfig`. 3160 ClusterSolutionsCompliance []SolutionsClusterSolutionComplianceResult `xml:"clusterSolutionsCompliance,omitempty" json:"clusterSolutionsCompliance,omitempty"` 3161 } 3162 3163 func init() { 3164 types.Add("eam:SolutionsComplianceResult", reflect.TypeOf((*SolutionsComplianceResult)(nil)).Elem()) 3165 } 3166 3167 // Specification describing how to calculate compliance of a compute resource 3168 // against a desired state. 3169 // 3170 // This structure may be used only with operations rendered under `/eam`. 3171 type SolutionsComplianceSpec struct { 3172 types.DynamicData 3173 3174 // Desired state to be checked for compliance. 3175 // 3176 // May be incomplete if exact 3177 // solutions to be checked are provided. Empty desired state means all 3178 // present solutions must be removed. 3179 DesiredState []SolutionsSolutionConfig `xml:"desiredState,omitempty" json:"desiredState,omitempty"` 3180 // Specifies exact solutions to be checked for compliance instead of the 3181 // complete desired state. 3182 Solutions []string `xml:"solutions,omitempty" json:"solutions,omitempty"` 3183 // Specifies exact hosts to be checked for compliance of all solutions 3184 // with `SolutionsHostBoundSolutionConfig`. 3185 // 3186 // If omitted - the compliance is checked for all hosts in the cluster. 3187 // 3188 // Refers instances of `HostSystem`. 3189 Hosts []types.ManagedObjectReference `xml:"hosts,omitempty" json:"hosts,omitempty"` 3190 // Identifiers of the deployment units that to be checked for compliance 3191 // of all solutions with `SolutionsClusterBoundSolutionConfig`. 3192 // 3193 // The deployment unit represents a single VM instance deployment. 3194 // 3195 // If omitted - the compliance is checked for all deployment units in the 3196 // cluster. 3197 DeploymentUnits []string `xml:"deploymentUnits,omitempty" json:"deploymentUnits,omitempty"` 3198 } 3199 3200 func init() { 3201 types.Add("eam:SolutionsComplianceSpec", reflect.TypeOf((*SolutionsComplianceSpec)(nil)).Elem()) 3202 } 3203 3204 // Result of a compliance check of a deployment unit. 3205 // 3206 // This structure may be used only with operations rendered under `/eam`. 3207 type SolutionsDeploymentUnitComplianceResult struct { 3208 types.DynamicData 3209 3210 // The deployment unit being checked for compliance. 3211 DeploymentUnit string `xml:"deploymentUnit" json:"deploymentUnit"` 3212 // `True` if the deployment unit is compliant with the described 3213 // desired state, `False` - otherwise. 3214 Compliant bool `xml:"compliant" json:"compliant"` 3215 // Detailed compliance result of the deployment unit. 3216 Compliance *SolutionsSolutionComplianceResult `xml:"compliance,omitempty" json:"compliance,omitempty"` 3217 } 3218 3219 func init() { 3220 types.Add("eam:SolutionsDeploymentUnitComplianceResult", reflect.TypeOf((*SolutionsDeploymentUnitComplianceResult)(nil)).Elem()) 3221 } 3222 3223 // Specifies the acknowledgement type of a configured System Virtual 3224 // Machine's lifecycle hook. 3225 // 3226 // This structure may be used only with operations rendered under `/eam`. 3227 type SolutionsHookAcknowledgeConfig struct { 3228 types.DynamicData 3229 } 3230 3231 func init() { 3232 types.Add("eam:SolutionsHookAcknowledgeConfig", reflect.TypeOf((*SolutionsHookAcknowledgeConfig)(nil)).Elem()) 3233 } 3234 3235 // Configuration for System Virtual Machine's lifecycle hooks. 3236 // 3237 // This structure may be used only with operations rendered under `/eam`. 3238 type SolutionsHookConfig struct { 3239 types.DynamicData 3240 3241 // Type of the configured hook, possible values - `HooksHookType_enum`. 3242 Type string `xml:"type" json:"type"` 3243 // Type of acknoledgement of the configured hook. 3244 Acknowledgement BaseSolutionsHookAcknowledgeConfig `xml:"acknowledgement,typeattr" json:"acknowledgement"` 3245 // The maximum time in seconds to wait for a hook to be processed. 3246 // 3247 // An 3248 // issue is raised if the time elapsed and the hook is still not 3249 // processed. 3250 // If omitted - defaults to 10 hours. 3251 Timeout int64 `xml:"timeout,omitempty" json:"timeout,omitempty"` 3252 } 3253 3254 func init() { 3255 types.Add("eam:SolutionsHookConfig", reflect.TypeOf((*SolutionsHookConfig)(nil)).Elem()) 3256 } 3257 3258 // Contains information for a raised hook. 3259 // 3260 // This structure may be used only with operations rendered under `/eam`. 3261 type SolutionsHookInfo struct { 3262 types.DynamicData 3263 3264 // Virtual Machine, the hook was raised for. 3265 // 3266 // Refers instance of `VirtualMachine`. 3267 Vm types.ManagedObjectReference `xml:"vm" json:"vm"` 3268 // Solution the Virtual Machine belongs to. 3269 Solution string `xml:"solution" json:"solution"` 3270 // Configuration of the hook. 3271 Config SolutionsHookConfig `xml:"config" json:"config"` 3272 // Time the hook was raised. 3273 RaisedAt time.Time `xml:"raisedAt" json:"raisedAt"` 3274 } 3275 3276 func init() { 3277 types.Add("eam:SolutionsHookInfo", reflect.TypeOf((*SolutionsHookInfo)(nil)).Elem()) 3278 } 3279 3280 // Specifies host-bound solution configuration. 3281 // 3282 // This structure may be used only with operations rendered under `/eam`. 3283 type SolutionsHostBoundSolutionConfig struct { 3284 SolutionsTypeSpecificSolutionConfig 3285 3286 // If set to true - default network and datastore configured on host will 3287 // take precedence over 3288 // `SolutionsHostBoundSolutionConfig.datastores` and 3289 // `SolutionsHostBoundSolutionConfig.networks`. 3290 PreferHostConfiguration *bool `xml:"preferHostConfiguration" json:"preferHostConfiguration,omitempty"` 3291 // networks to satisfy system Virtual Machine network adapter 3292 // requirements. 3293 // 3294 // If omitted - default configured network on the host will 3295 // be used. 3296 // 3297 // Refers instances of `Network`. 3298 Networks []types.ManagedObjectReference `xml:"networks,omitempty" json:"networks,omitempty"` 3299 // Datastores to be configured as a storage of the VMs. 3300 // 3301 // The first 3302 // available datastore on the host is used. The collection cannot contain 3303 // duplicate elements. If omitted - default configured datastore on the 3304 // host will be used. 3305 // 3306 // Refers instances of `Datastore`. 3307 Datastores []types.ManagedObjectReference `xml:"datastores,omitempty" json:"datastores,omitempty"` 3308 // VMCI to be allowed access from the system Virtual Machine. 3309 Vmci []string `xml:"vmci,omitempty" json:"vmci,omitempty"` 3310 } 3311 3312 func init() { 3313 types.Add("eam:SolutionsHostBoundSolutionConfig", reflect.TypeOf((*SolutionsHostBoundSolutionConfig)(nil)).Elem()) 3314 } 3315 3316 // Result of a compliance check of a desired state on a host. 3317 // 3318 // This structure may be used only with operations rendered under `/eam`. 3319 type SolutionsHostComplianceResult struct { 3320 types.DynamicData 3321 3322 // The host being checked for compliance. 3323 // 3324 // Refers instance of `HostSystem`. 3325 Host types.ManagedObjectReference `xml:"host" json:"host"` 3326 // `True` if the compute host is compliant with the described 3327 // desired state, `False` - otherwise. 3328 Compliant bool `xml:"compliant" json:"compliant"` 3329 // Detailed per-solution compliance result of the host. 3330 Solutions []SolutionsSolutionComplianceResult `xml:"solutions,omitempty" json:"solutions,omitempty"` 3331 } 3332 3333 func init() { 3334 types.Add("eam:SolutionsHostComplianceResult", reflect.TypeOf((*SolutionsHostComplianceResult)(nil)).Elem()) 3335 } 3336 3337 // The user will have to (manually) invoke an API 3338 // (`Hooks.MarkAsProcessed`) to acknowledge, the user operations for 3339 // this lifecycle hook have been completed. 3340 // 3341 // This structure may be used only with operations rendered under `/eam`. 3342 type SolutionsInteractiveHookAcknowledgeConfig struct { 3343 SolutionsHookAcknowledgeConfig 3344 } 3345 3346 func init() { 3347 types.Add("eam:SolutionsInteractiveHookAcknowledgeConfig", reflect.TypeOf((*SolutionsInteractiveHookAcknowledgeConfig)(nil)).Elem()) 3348 } 3349 3350 // One OVF Property. 3351 // 3352 // This structure may be used only with operations rendered under `/eam`. 3353 type SolutionsOvfProperty struct { 3354 types.DynamicData 3355 3356 // The name of the property in the OVF descriptor. 3357 Key string `xml:"key" json:"key"` 3358 // The value of the property. 3359 Value string `xml:"value" json:"value"` 3360 } 3361 3362 func init() { 3363 types.Add("eam:SolutionsOvfProperty", reflect.TypeOf((*SolutionsOvfProperty)(nil)).Elem()) 3364 } 3365 3366 // Specifies a user defined profile ID to be applied during Virtual Machine 3367 // creation. 3368 // 3369 // This structure may be used only with operations rendered under `/eam`. 3370 type SolutionsProfileIdStoragePolicy struct { 3371 SolutionsStoragePolicy 3372 3373 // ID of a storage policy profile created by the user. 3374 // 3375 // The type of the 3376 // profile must be `VirtualMachineDefinedProfileSpec`. The ID must be valid 3377 // `VirtualMachineDefinedProfileSpec.profileId`. 3378 ProfileId string `xml:"profileId" json:"profileId"` 3379 } 3380 3381 func init() { 3382 types.Add("eam:SolutionsProfileIdStoragePolicy", reflect.TypeOf((*SolutionsProfileIdStoragePolicy)(nil)).Elem()) 3383 } 3384 3385 // Result of a compliance check of a desired state dor a solution(on a host). 3386 // 3387 // This structure may be used only with operations rendered under `/eam`. 3388 type SolutionsSolutionComplianceResult struct { 3389 types.DynamicData 3390 3391 // Solution checked for compliance. 3392 Solution string `xml:"solution" json:"solution"` 3393 // `True` if the compute solution is compliant with the described 3394 // desired state, `False` - otherwise. 3395 Compliant bool `xml:"compliant" json:"compliant"` 3396 // Reason the solution is non-compliant 3397 // `SolutionsNonComplianceReason_enum`. 3398 NonComplianceReason string `xml:"nonComplianceReason,omitempty" json:"nonComplianceReason,omitempty"` 3399 // system Virtual Machine created for the solution. 3400 // 3401 // Refers instance of `VirtualMachine`. 3402 Vm *types.ManagedObjectReference `xml:"vm,omitempty" json:"vm,omitempty"` 3403 // system Virtual Machine created for upgrading the obsoleted system 3404 // Virtual Machine. 3405 // 3406 // Refers instance of `VirtualMachine`. 3407 UpgradingVm *types.ManagedObjectReference `xml:"upgradingVm,omitempty" json:"upgradingVm,omitempty"` 3408 // Hook, ESX Agent Manager is awaiting to be processed for this solution. 3409 Hook *SolutionsHookInfo `xml:"hook,omitempty" json:"hook,omitempty"` 3410 // Issues, ESX Agent Manager has encountered while attempting to acheive 3411 // the solution's requested desired state. 3412 Issues []BaseIssue `xml:"issues,omitempty,typeattr" json:"issues,omitempty"` 3413 // Last desired state for the solution, requested from ESX Agent Manager, 3414 // for application. 3415 SolutionConfig *SolutionsSolutionConfig `xml:"solutionConfig,omitempty" json:"solutionConfig,omitempty"` 3416 } 3417 3418 func init() { 3419 types.Add("eam:SolutionsSolutionComplianceResult", reflect.TypeOf((*SolutionsSolutionComplianceResult)(nil)).Elem()) 3420 } 3421 3422 // Configuration for a solution's required system Virtual Machine. 3423 // 3424 // This structure may be used only with operations rendered under `/eam`. 3425 type SolutionsSolutionConfig struct { 3426 types.DynamicData 3427 3428 // Solution, this configuration belongs to. 3429 Solution string `xml:"solution" json:"solution"` 3430 // Display name of the solution. 3431 DisplayName string `xml:"displayName" json:"displayName"` 3432 // Display version of the solution. 3433 DisplayVersion string `xml:"displayVersion" json:"displayVersion"` 3434 // Source of the system Virtual Machine files. 3435 VmSource BaseSolutionsVMSource `xml:"vmSource,typeattr" json:"vmSource"` 3436 // VM name prefix. 3437 PrefixVmName string `xml:"prefixVmName" json:"prefixVmName"` 3438 // If set to `True` - will insert an UUID in the system Virtual 3439 // Machines' names created for the solution, otherwise - no additional 3440 // UUID will be inserted in the system Virtual Machines' names. 3441 UuidVmName bool `xml:"uuidVmName" json:"uuidVmName"` 3442 // Resource pool to place the system Virtual Machine in. 3443 // 3444 // If omitted a 3445 // default resource pool will be used. 3446 // 3447 // Refers instance of `ResourcePool`. 3448 ResourcePool *types.ManagedObjectReference `xml:"resourcePool,omitempty" json:"resourcePool,omitempty"` 3449 // Folder to place the system Virtual Machine in. 3450 // 3451 // If omitted a default 3452 // folder will be used. 3453 // 3454 // Refers instance of `Folder`. 3455 Folder *types.ManagedObjectReference `xml:"folder,omitempty" json:"folder,omitempty"` 3456 // User configurable OVF properties to be assigned during system Virtual 3457 // Machine creation. 3458 OvfProperties []SolutionsOvfProperty `xml:"ovfProperties,omitempty" json:"ovfProperties,omitempty"` 3459 // Storage policies to be applied during system Virtual Machine creation. 3460 StoragePolicies []BaseSolutionsStoragePolicy `xml:"storagePolicies,omitempty,typeattr" json:"storagePolicies,omitempty"` 3461 // Provisioning type for the system Virtual Machines 3462 // `SolutionsVMDiskProvisioning_enum`. 3463 // 3464 // Default provisioning will be used 3465 // if not specified. 3466 VmDiskProvisioning string `xml:"vmDiskProvisioning,omitempty" json:"vmDiskProvisioning,omitempty"` 3467 // Optimization strategy for deploying Virtual Machines 3468 // `SolutionsVMDeploymentOptimization_enum`. 3469 // 3470 // Default optimization will 3471 // be selected if not specified. 3472 VmDeploymentOptimization string `xml:"vmDeploymentOptimization,omitempty" json:"vmDeploymentOptimization,omitempty"` 3473 // Solution type-specific configuration. 3474 TypeSpecificConfig BaseSolutionsTypeSpecificSolutionConfig `xml:"typeSpecificConfig,typeattr" json:"typeSpecificConfig"` 3475 // Lifecycle hooks for the solution's virtual machines. 3476 Hooks []SolutionsHookConfig `xml:"hooks,omitempty" json:"hooks,omitempty"` 3477 // VMs resource configuration. 3478 // 3479 // If omitted - the default resource 3480 // configuration specified in the OVF descriptor is used. 3481 VmResourceSpec *SolutionsVmResourceSpec `xml:"vmResourceSpec,omitempty" json:"vmResourceSpec,omitempty"` 3482 } 3483 3484 func init() { 3485 types.Add("eam:SolutionsSolutionConfig", reflect.TypeOf((*SolutionsSolutionConfig)(nil)).Elem()) 3486 } 3487 3488 // Result of validation, of a solution, for application. 3489 // 3490 // This structure may be used only with operations rendered under `/eam`. 3491 type SolutionsSolutionValidationResult struct { 3492 types.DynamicData 3493 3494 // Validated solution. 3495 Solution string `xml:"solution" json:"solution"` 3496 // `True` - if the solution is valid for application, `False` 3497 // \- otherwise. 3498 Valid bool `xml:"valid" json:"valid"` 3499 // Populated with the reason the solution is not valid for application 3500 // `SolutionsInvalidReason_enum`. 3501 InvalidReason string `xml:"invalidReason,omitempty" json:"invalidReason,omitempty"` 3502 } 3503 3504 func init() { 3505 types.Add("eam:SolutionsSolutionValidationResult", reflect.TypeOf((*SolutionsSolutionValidationResult)(nil)).Elem()) 3506 } 3507 3508 // Storage policy to be applied during system Virtual Machine creation. 3509 // 3510 // This structure may be used only with operations rendered under `/eam`. 3511 type SolutionsStoragePolicy struct { 3512 types.DynamicData 3513 } 3514 3515 func init() { 3516 types.Add("eam:SolutionsStoragePolicy", reflect.TypeOf((*SolutionsStoragePolicy)(nil)).Elem()) 3517 } 3518 3519 // Specification necessary to transition a solution from an existing legacy 3520 // agency. 3521 // 3522 // This structure may be used only with operations rendered under `/eam`. 3523 type SolutionsTransitionSpec struct { 3524 types.DynamicData 3525 3526 // Solution to transition from an old legacy agency. 3527 Solution string `xml:"solution" json:"solution"` 3528 // Old legacy agency ID to transition from. 3529 AgencyId string `xml:"agencyId" json:"agencyId"` 3530 } 3531 3532 func init() { 3533 types.Add("eam:SolutionsTransitionSpec", reflect.TypeOf((*SolutionsTransitionSpec)(nil)).Elem()) 3534 } 3535 3536 // Specifies the specific solution configuration based on its type. 3537 // 3538 // This structure may be used only with operations rendered under `/eam`. 3539 type SolutionsTypeSpecificSolutionConfig struct { 3540 types.DynamicData 3541 } 3542 3543 func init() { 3544 types.Add("eam:SolutionsTypeSpecificSolutionConfig", reflect.TypeOf((*SolutionsTypeSpecificSolutionConfig)(nil)).Elem()) 3545 } 3546 3547 // Specified the system Virtual Machine sources are to be obtained from an 3548 // URL. 3549 // 3550 // This structure may be used only with operations rendered under `/eam`. 3551 type SolutionsUrlVMSource struct { 3552 SolutionsVMSource 3553 3554 // URL to the solution's system Virtual Machine OVF. 3555 OvfUrl string `xml:"ovfUrl" json:"ovfUrl"` 3556 // Overrides the OVF URL certificate validation. 3557 // 3558 // If `True` or 3559 // `<unset>` - the certificate will be subject to standard trust 3560 // validation, if `False` - any certificate will be considered 3561 // trusted. 3562 CertificateValidation *bool `xml:"certificateValidation" json:"certificateValidation,omitempty"` 3563 // PEM encoded certificate to use to trust the URL. 3564 // 3565 // If omitted - URL will 3566 // be trusted using well known methods. 3567 CertificatePEM string `xml:"certificatePEM,omitempty" json:"certificatePEM,omitempty"` 3568 } 3569 3570 func init() { 3571 types.Add("eam:SolutionsUrlVMSource", reflect.TypeOf((*SolutionsUrlVMSource)(nil)).Elem()) 3572 } 3573 3574 // Represents the mapping of the logical network defined in the OVF 3575 // descriptor to the Virtual Infrastructure (VI) network. 3576 // 3577 // This structure may be used only with operations rendered under `/eam`. 3578 type SolutionsVMNetworkMapping struct { 3579 types.DynamicData 3580 3581 // Logical network name defined in the OVF descriptor. 3582 Name string `xml:"name" json:"name"` 3583 // VM network identifier. 3584 // 3585 // Refers instance of `Network`. 3586 Id types.ManagedObjectReference `xml:"id" json:"id"` 3587 } 3588 3589 func init() { 3590 types.Add("eam:SolutionsVMNetworkMapping", reflect.TypeOf((*SolutionsVMNetworkMapping)(nil)).Elem()) 3591 } 3592 3593 // Specifies how to find the files of the system Virtual Machine to be 3594 // created. 3595 // 3596 // This structure may be used only with operations rendered under `/eam`. 3597 type SolutionsVMSource struct { 3598 types.DynamicData 3599 } 3600 3601 func init() { 3602 types.Add("eam:SolutionsVMSource", reflect.TypeOf((*SolutionsVMSource)(nil)).Elem()) 3603 } 3604 3605 // Specification describing a desired state to be validated for application. 3606 // 3607 // This structure may be used only with operations rendered under `/eam`. 3608 type SolutionsValidateSpec struct { 3609 types.DynamicData 3610 3611 // Desired state to be validated. 3612 DesiredState []SolutionsSolutionConfig `xml:"desiredState" json:"desiredState"` 3613 TransitionSpec *SolutionsTransitionSpec `xml:"transitionSpec,omitempty" json:"transitionSpec,omitempty"` 3614 } 3615 3616 func init() { 3617 types.Add("eam:SolutionsValidateSpec", reflect.TypeOf((*SolutionsValidateSpec)(nil)).Elem()) 3618 } 3619 3620 // Result of validation, of a desired state, for application. 3621 // 3622 // This structure may be used only with operations rendered under `/eam`. 3623 type SolutionsValidationResult struct { 3624 types.DynamicData 3625 3626 // `True` - if the desired state is valid for application, 3627 // `False` - otherwise. 3628 Valid bool `xml:"valid" json:"valid"` 3629 // Detailed per-solution result of the validation. 3630 SolutionResult []SolutionsSolutionValidationResult `xml:"solutionResult,omitempty" json:"solutionResult,omitempty"` 3631 } 3632 3633 func init() { 3634 types.Add("eam:SolutionsValidationResult", reflect.TypeOf((*SolutionsValidationResult)(nil)).Elem()) 3635 } 3636 3637 // Specifies the VM resource configurations. 3638 // 3639 // This structure may be used only with operations rendered under `/eam`. 3640 type SolutionsVmResourceSpec struct { 3641 types.DynamicData 3642 3643 // The VM deployment option that corresponds to the Configuration element 3644 // of the DeploymentOptionSection in the OVF descriptor (e.g. 3645 // 3646 // "small", 3647 // "medium", "large"). 3648 // If omitted - the default deployment option as specified in the OVF 3649 // descriptor is used. 3650 OvfDeploymentOption string `xml:"ovfDeploymentOption,omitempty" json:"ovfDeploymentOption,omitempty"` 3651 } 3652 3653 func init() { 3654 types.Add("eam:SolutionsVmResourceSpec", reflect.TypeOf((*SolutionsVmResourceSpec)(nil)).Elem()) 3655 } 3656 3657 type TransitionFailed struct { 3658 AgentIssue 3659 } 3660 3661 func init() { 3662 types.Add("eam:TransitionFailed", reflect.TypeOf((*TransitionFailed)(nil)).Elem()) 3663 } 3664 3665 type Uninstall UninstallRequestType 3666 3667 func init() { 3668 types.Add("eam:Uninstall", reflect.TypeOf((*Uninstall)(nil)).Elem()) 3669 } 3670 3671 type UninstallRequestType struct { 3672 This types.ManagedObjectReference `xml:"_this" json:"_this"` 3673 } 3674 3675 func init() { 3676 types.Add("eam:UninstallRequestType", reflect.TypeOf((*UninstallRequestType)(nil)).Elem()) 3677 } 3678 3679 type UninstallResponse struct { 3680 } 3681 3682 // Deprecated presence of unknown VMs is no more acceptable. 3683 // 3684 // An agent virtual machine has been found in the vCenter inventory that does 3685 // not belong to any agency in this vSphere ESX Agent Manager server instance. 3686 // 3687 // This is an active remediable issue. To remediate, vSphere ESX Agent Manager 3688 // powers off (if powered on) and deletes the agent virtual machine. 3689 // 3690 // This structure may be used only with operations rendered under `/eam`. 3691 type UnknownAgentVm struct { 3692 HostIssue 3693 3694 // The unknown agent virtual machine. 3695 // 3696 // Refers instance of `VirtualMachine`. 3697 Vm types.ManagedObjectReference `xml:"vm" json:"vm"` 3698 } 3699 3700 func init() { 3701 types.Add("eam:UnknownAgentVm", reflect.TypeOf((*UnknownAgentVm)(nil)).Elem()) 3702 } 3703 3704 type UnregisterAgentVm UnregisterAgentVmRequestType 3705 3706 func init() { 3707 types.Add("eam:UnregisterAgentVm", reflect.TypeOf((*UnregisterAgentVm)(nil)).Elem()) 3708 } 3709 3710 // The parameters of `Agency.UnregisterAgentVm`. 3711 // 3712 // This structure may be used only with operations rendered under `/eam`. 3713 type UnregisterAgentVmRequestType struct { 3714 This types.ManagedObjectReference `xml:"_this" json:"_this"` 3715 // The managed object reference to the agent VM. 3716 // 3717 // Refers instance of `VirtualMachine`. 3718 AgentVm types.ManagedObjectReference `xml:"agentVm" json:"agentVm"` 3719 } 3720 3721 func init() { 3722 types.Add("eam:UnregisterAgentVmRequestType", reflect.TypeOf((*UnregisterAgentVmRequestType)(nil)).Elem()) 3723 } 3724 3725 type UnregisterAgentVmResponse struct { 3726 } 3727 3728 type Update UpdateRequestType 3729 3730 func init() { 3731 types.Add("eam:Update", reflect.TypeOf((*Update)(nil)).Elem()) 3732 } 3733 3734 // The parameters of `Agency.Update`. 3735 // 3736 // This structure may be used only with operations rendered under `/eam`. 3737 type UpdateRequestType struct { 3738 This types.ManagedObjectReference `xml:"_this" json:"_this"` 3739 // The new configuration for this <code>Agency</code> 3740 Config BaseAgencyConfigInfo `xml:"config,typeattr" json:"config"` 3741 } 3742 3743 func init() { 3744 types.Add("eam:UpdateRequestType", reflect.TypeOf((*UpdateRequestType)(nil)).Elem()) 3745 } 3746 3747 type UpdateResponse struct { 3748 } 3749 3750 // Deprecated as of vSphere 9.0. Please refer to vLCM Image APIs. 3751 // 3752 // A VIB module requires the host to be in maintenance mode, but the vSphere ESX Agent Manager 3753 // is unable toput the host in maintenance mode. 3754 // 3755 // This can happen if there are virtual machines running on the host that cannot 3756 // be moved and must be stopped before the host can enter maintenance mode. 3757 // 3758 // This is an active remediable issue. To remediate, the vSphere ESX Agent Manager will try again 3759 // to put the host into maintenance mode. However, the vSphere ESX Agent Manager will not power 3760 // off or move any virtual machines to put the host into maintenance mode. This must be 3761 // done by the client. 3762 // 3763 // This structure may be used only with operations rendered under `/eam`. 3764 type VibCannotPutHostInMaintenanceMode struct { 3765 VibIssue 3766 } 3767 3768 func init() { 3769 types.Add("eam:VibCannotPutHostInMaintenanceMode", reflect.TypeOf((*VibCannotPutHostInMaintenanceMode)(nil)).Elem()) 3770 } 3771 3772 // Deprecated as of vSphere 9.0. Please refer to vLCM Image APIs. 3773 // 3774 // ESXi host is in Maintenance Mode. 3775 // 3776 // This prevents powering on and 3777 // re-configuring Agent Virtual Machines. Also if the host's entering in 3778 // Maintenance Mode was initiated by vSphere Esx Agent Manager, the same is 3779 // responsible to initiate exit Maintenance Mode. 3780 // 3781 // This is an active remediable issue. To remediate, vSphere ESX Agent Manager 3782 // puts the host out of Maintenance Mode. 3783 // 3784 // This structure may be used only with operations rendered under `/eam`. 3785 type VibCannotPutHostOutOfMaintenanceMode struct { 3786 VibIssue 3787 } 3788 3789 func init() { 3790 types.Add("eam:VibCannotPutHostOutOfMaintenanceMode", reflect.TypeOf((*VibCannotPutHostOutOfMaintenanceMode)(nil)).Elem()) 3791 } 3792 3793 // Deprecated as of vSphere 9.0. Please refer to vLCM Image APIs. 3794 // 3795 // A VIB module is expected to be installed on a host, but the dependencies, 3796 // describred within the module, were not satisfied by the host. 3797 // 3798 // This is an active remediable issue. To remediate, vSphere ESX Agent Manager 3799 // attempts the VIB installation again. 3800 // 3801 // This structure may be used only with operations rendered under `/eam`. 3802 type VibDependenciesNotMetByHost struct { 3803 VibNotInstalled 3804 } 3805 3806 func init() { 3807 types.Add("eam:VibDependenciesNotMetByHost", reflect.TypeOf((*VibDependenciesNotMetByHost)(nil)).Elem()) 3808 } 3809 3810 // Deprecated as of vSphere 9.0. Please refer to vLCM Image APIs. 3811 // 3812 // A VIB module is expected to be installed on a host, but it failed to install 3813 // since the VIB package is in an invalid format. 3814 // 3815 // The installation is unlikely to 3816 // succeed until the solution provding the bundle has been upgraded or patched to 3817 // provide a valid VIB package. 3818 // 3819 // This is an active remediable issue. To remediate, vSphere ESX Agent Manager attempts the VIB installation again. 3820 // 3821 // This structure may be used only with operations rendered under `/eam`. 3822 type VibInvalidFormat struct { 3823 VibNotInstalled 3824 } 3825 3826 func init() { 3827 types.Add("eam:VibInvalidFormat", reflect.TypeOf((*VibInvalidFormat)(nil)).Elem()) 3828 } 3829 3830 // Deprecated as of vSphere 9.0. Please refer to vLCM Image APIs. 3831 // 3832 // Base class for all issues related to the VIB modules that belong to an agent. 3833 // 3834 // This structure may be used only with operations rendered under `/eam`. 3835 type VibIssue struct { 3836 AgentIssue 3837 } 3838 3839 func init() { 3840 types.Add("eam:VibIssue", reflect.TypeOf((*VibIssue)(nil)).Elem()) 3841 } 3842 3843 // Deprecated as of vSphere 9.0. Please refer to vLCM Image APIs. 3844 // 3845 // A VIB module is expected to be installed/removed on a host, but it has not 3846 // been installed/removed. 3847 // 3848 // Typically, a more specific issue (a subclass of this 3849 // issue) indicates the particular reason why the VIB module operation failed. 3850 // 3851 // This is an active remediable issue. To remediate, vSphere ESX Agent Manager 3852 // attempts the VIB operation again. 3853 // In case of unreachable host vSphere ESX Agent Manager will remediate the 3854 // issue automatically when the host becomes reachable. 3855 // 3856 // This structure may be used only with operations rendered under `/eam`. 3857 type VibNotInstalled struct { 3858 VibIssue 3859 } 3860 3861 func init() { 3862 types.Add("eam:VibNotInstalled", reflect.TypeOf((*VibNotInstalled)(nil)).Elem()) 3863 } 3864 3865 // Deprecated as of vSphere 9.0. Please refer to vLCM Image APIs. 3866 // 3867 // A VIB module is expected to be installed on a host, but the system 3868 // requirements, describred within the module, were not satisfied by the host. 3869 // 3870 // This is an active remediable issue. To remediate, vSphere ESX Agent Manager 3871 // attempts the VIB installation again. 3872 // 3873 // This structure may be used only with operations rendered under `/eam`. 3874 type VibRequirementsNotMetByHost struct { 3875 VibNotInstalled 3876 } 3877 3878 func init() { 3879 types.Add("eam:VibRequirementsNotMetByHost", reflect.TypeOf((*VibRequirementsNotMetByHost)(nil)).Elem()) 3880 } 3881 3882 // Deprecated as of vSphere 9.0. Please refer to vLCM Image APIs. 3883 // 3884 // A VIB module has been uploaded to the host, but will not be fully installed 3885 // until the host has been put in maintenance mode. 3886 // 3887 // This is an active remediable issue. To remediate, vSphere ESX Agent Manager puts the host into maintenance 3888 // mode. 3889 // 3890 // This structure may be used only with operations rendered under `/eam`. 3891 type VibRequiresHostInMaintenanceMode struct { 3892 VibIssue 3893 } 3894 3895 func init() { 3896 types.Add("eam:VibRequiresHostInMaintenanceMode", reflect.TypeOf((*VibRequiresHostInMaintenanceMode)(nil)).Elem()) 3897 } 3898 3899 // Deprecated as of vSphere 9.0. Please refer to vLCM Image APIs. 3900 // 3901 // A VIB module has been uploaded to the host, but will not be activated 3902 // until the host is rebooted. 3903 // 3904 // This is an active remediable issue. To remediate, vSphere ESX Agent Manager puts the host into maintenance 3905 // mode and reboots it. 3906 // 3907 // This structure may be used only with operations rendered under `/eam`. 3908 type VibRequiresHostReboot struct { 3909 VibIssue 3910 } 3911 3912 func init() { 3913 types.Add("eam:VibRequiresHostReboot", reflect.TypeOf((*VibRequiresHostReboot)(nil)).Elem()) 3914 } 3915 3916 // Deprecated as of vSphere 9.0. Please refer to vLCM Image APIs. 3917 // 3918 // A VIB module failed to install, but failed to do so because automatic installation 3919 // by vSphere ESX Agent Manager is not allowed on the host. 3920 // 3921 // This is a passive remediable issue. To remediate, go to VMware Update Manager 3922 // and install the required bulletins on the host or add the bulletins to the 3923 // host's image profile. 3924 // 3925 // This structure may be used only with operations rendered under `/eam`. 3926 type VibRequiresManualInstallation struct { 3927 VibIssue 3928 3929 // A non-empty array of bulletins required to be installed on the host. 3930 Bulletin []string `xml:"bulletin" json:"bulletin"` 3931 } 3932 3933 func init() { 3934 types.Add("eam:VibRequiresManualInstallation", reflect.TypeOf((*VibRequiresManualInstallation)(nil)).Elem()) 3935 } 3936 3937 // Deprecated as of vSphere 9.0. Please refer to vLCM Image APIs. 3938 // 3939 // A VIB module failed to uninstall, but failed to do so because automatic uninstallation 3940 // by vSphere ESX Agent Manager is not allowed on the host. 3941 // 3942 // This is a passive remediable issue. To remediate, go to VMware Update Manager 3943 // and uninstall the required bulletins on the host or remove the bulletins from the 3944 // host's image profile. 3945 // 3946 // This structure may be used only with operations rendered under `/eam`. 3947 type VibRequiresManualUninstallation struct { 3948 VibIssue 3949 3950 // A non-empty array of bulletins required to be uninstalled on the host. 3951 Bulletin []string `xml:"bulletin" json:"bulletin"` 3952 } 3953 3954 func init() { 3955 types.Add("eam:VibRequiresManualUninstallation", reflect.TypeOf((*VibRequiresManualUninstallation)(nil)).Elem()) 3956 } 3957 3958 // Deprecated as of vSphere 9.0. Please refer to vLCM Image APIs. 3959 // 3960 // A data entity providing information about a VIB. 3961 // 3962 // This abstraction contains only those of the VIB attributes which convey 3963 // important information for the client to identify, preview and select VIBs. 3964 // 3965 // This structure may be used only with operations rendered under `/eam`. 3966 type VibVibInfo struct { 3967 types.DynamicData 3968 3969 Id string `xml:"id" json:"id"` 3970 Name string `xml:"name" json:"name"` 3971 Version string `xml:"version" json:"version"` 3972 Vendor string `xml:"vendor" json:"vendor"` 3973 Summary string `xml:"summary" json:"summary"` 3974 SoftwareTags *VibVibInfoSoftwareTags `xml:"softwareTags,omitempty" json:"softwareTags,omitempty"` 3975 ReleaseDate time.Time `xml:"releaseDate" json:"releaseDate"` 3976 } 3977 3978 func init() { 3979 types.Add("eam:VibVibInfo", reflect.TypeOf((*VibVibInfo)(nil)).Elem()) 3980 } 3981 3982 // A data entity providing information about software tags of a VIB 3983 // 3984 // This structure may be used only with operations rendered under `/eam`. 3985 type VibVibInfoSoftwareTags struct { 3986 types.DynamicData 3987 3988 Tags []string `xml:"tags,omitempty" json:"tags,omitempty"` 3989 } 3990 3991 func init() { 3992 types.Add("eam:VibVibInfoSoftwareTags", reflect.TypeOf((*VibVibInfoSoftwareTags)(nil)).Elem()) 3993 } 3994 3995 // Specifies an SSL policy that trusts any SSL certificate. 3996 // 3997 // This structure may be used only with operations rendered under `/eam`. 3998 type VibVibServicesAnyCertificate struct { 3999 VibVibServicesSslTrust 4000 } 4001 4002 func init() { 4003 types.Add("eam:VibVibServicesAnyCertificate", reflect.TypeOf((*VibVibServicesAnyCertificate)(nil)).Elem()) 4004 types.AddMinAPIVersionForType("eam:VibVibServicesAnyCertificate", "8.2") 4005 } 4006 4007 // Specifies an SSL policy that trusts one specific pinned PEM encoded SSL 4008 // certificate. 4009 // 4010 // This structure may be used only with operations rendered under `/eam`. 4011 type VibVibServicesPinnedPemCertificate struct { 4012 VibVibServicesSslTrust 4013 4014 // PEM encoded pinned SSL certificate of the server that needs to be 4015 // trusted. 4016 SslCertificate string `xml:"sslCertificate" json:"sslCertificate"` 4017 } 4018 4019 func init() { 4020 types.Add("eam:VibVibServicesPinnedPemCertificate", reflect.TypeOf((*VibVibServicesPinnedPemCertificate)(nil)).Elem()) 4021 types.AddMinAPIVersionForType("eam:VibVibServicesPinnedPemCertificate", "8.2") 4022 } 4023 4024 // This structure may be used only with operations rendered under `/eam`. 4025 type VibVibServicesSslTrust struct { 4026 types.DynamicData 4027 } 4028 4029 func init() { 4030 types.Add("eam:VibVibServicesSslTrust", reflect.TypeOf((*VibVibServicesSslTrust)(nil)).Elem()) 4031 types.AddMinAPIVersionForType("eam:VibVibServicesSslTrust", "8.2") 4032 } 4033 4034 // An agent virtual machine is corrupted. 4035 // 4036 // This is an active remediable issue. To remediate, vSphere ESX Agent Manager deletes and 4037 // reprovisions the agent virtual machine. To remediate manually, fix the missing file issue and power on the 4038 // agent virtual machine. 4039 // 4040 // This structure may be used only with operations rendered under `/eam`. 4041 type VmCorrupted struct { 4042 VmIssue 4043 4044 // An optional path for a missing file. 4045 MissingFile string `xml:"missingFile,omitempty" json:"missingFile,omitempty"` 4046 } 4047 4048 func init() { 4049 types.Add("eam:VmCorrupted", reflect.TypeOf((*VmCorrupted)(nil)).Elem()) 4050 } 4051 4052 // An agent virtual machine is expected to be removed from a host, but the agent virtual machine has not 4053 // been removed. 4054 // 4055 // Typically, a more specific issue (a subclass of this issue) 4056 // indicates the particular reason why vSphere ESX Agent Manager was unable to remove the 4057 // agent virtual machine, such as the host is in maintenance mode, powered off or in standby 4058 // mode. 4059 // 4060 // This is an active remediable issue. To remediate, vSphere ESX Agent Manager redeploys the agent. 4061 // 4062 // This structure may be used only with operations rendered under `/eam`. 4063 type VmDeployed struct { 4064 VmIssue 4065 } 4066 4067 func init() { 4068 types.Add("eam:VmDeployed", reflect.TypeOf((*VmDeployed)(nil)).Elem()) 4069 } 4070 4071 type VmHookFailed struct { 4072 VmIssue 4073 } 4074 4075 func init() { 4076 types.Add("eam:VmHookFailed", reflect.TypeOf((*VmHookFailed)(nil)).Elem()) 4077 } 4078 4079 type VmHookTimedout struct { 4080 VmIssue 4081 } 4082 4083 func init() { 4084 types.Add("eam:VmHookTimedout", reflect.TypeOf((*VmHookTimedout)(nil)).Elem()) 4085 } 4086 4087 type VmInaccessible struct { 4088 VmIssue 4089 } 4090 4091 func init() { 4092 types.Add("eam:VmInaccessible", reflect.TypeOf((*VmInaccessible)(nil)).Elem()) 4093 } 4094 4095 // Base class for all issues related to the deployed virtual machine for a 4096 // particular agent. 4097 // 4098 // This structure may be used only with operations rendered under `/eam`. 4099 type VmIssue struct { 4100 AgentIssue 4101 4102 // The virtual machine to which this issue is related. 4103 // 4104 // Refers instance of `VirtualMachine`. 4105 Vm types.ManagedObjectReference `xml:"vm" json:"vm"` 4106 } 4107 4108 func init() { 4109 types.Add("eam:VmIssue", reflect.TypeOf((*VmIssue)(nil)).Elem()) 4110 } 4111 4112 // Deprecated template agent VMs are not used anymore by VM deployment and 4113 // monitoring. 4114 // 4115 // An agent virtual machine is a virtual machine template. 4116 // 4117 // This is an active remediable issue. To remediate, vSphere ESX Agent Manager 4118 // converts the agent virtual machine template to a virtual machine. 4119 // 4120 // This structure may be used only with operations rendered under `/eam`. 4121 type VmMarkedAsTemplate struct { 4122 VmIssue 4123 } 4124 4125 func init() { 4126 types.Add("eam:VmMarkedAsTemplate", reflect.TypeOf((*VmMarkedAsTemplate)(nil)).Elem()) 4127 } 4128 4129 // An agent virtual machine is expected to be deployed on a host, but the agent virtual machine has not 4130 // been deployed. 4131 // 4132 // Typically, a more specific issue (a subclass of this issue) 4133 // indicates the particular reason why vSphere ESX Agent Manager was unable to deploy the 4134 // agent, such as being unable to access the OVF package for the agent or a missing host 4135 // configuration. This issue can also happen if the agent virtual machine is explicitly deleted 4136 // from the host. 4137 // 4138 // This is an active remediable issue. To remediate, vSphere ESX Agent Manager redeploys the agent virtual machine. 4139 // 4140 // This structure may be used only with operations rendered under `/eam`. 4141 type VmNotDeployed struct { 4142 AgentIssue 4143 } 4144 4145 func init() { 4146 types.Add("eam:VmNotDeployed", reflect.TypeOf((*VmNotDeployed)(nil)).Elem()) 4147 } 4148 4149 // An agent virtual machine exists on a host, but the host is no longer part of scope for the 4150 // agency. 4151 // 4152 // This typically happens if a host is disconnected when the agency 4153 // configuration is changed. 4154 // 4155 // This is an active remediable issue. To remediate, vSphere ESX Agent Manager deletes the agent virtual machine. 4156 // 4157 // This structure may be used only with operations rendered under `/eam`. 4158 type VmOrphaned struct { 4159 VmIssue 4160 } 4161 4162 func init() { 4163 types.Add("eam:VmOrphaned", reflect.TypeOf((*VmOrphaned)(nil)).Elem()) 4164 } 4165 4166 // An agent virtual machine is expected to be powered on, but the agent virtual machine is powered off. 4167 // 4168 // This is an active remediable issue. To remediate, vSphere ESX Agent Manager 4169 // powers on the agent virtual machine. 4170 // 4171 // This structure may be used only with operations rendered under `/eam`. 4172 type VmPoweredOff struct { 4173 VmIssue 4174 } 4175 4176 func init() { 4177 types.Add("eam:VmPoweredOff", reflect.TypeOf((*VmPoweredOff)(nil)).Elem()) 4178 } 4179 4180 // An agent virtual machine is expected to be powered off, but the agent virtual machine is powered on. 4181 // 4182 // This is an active remediable issue. To remediate, vSphere ESX Agent Manager 4183 // powers off the agent virtual machine. 4184 // 4185 // This structure may be used only with operations rendered under `/eam`. 4186 type VmPoweredOn struct { 4187 VmIssue 4188 } 4189 4190 func init() { 4191 types.Add("eam:VmPoweredOn", reflect.TypeOf((*VmPoweredOn)(nil)).Elem()) 4192 } 4193 4194 type VmProtected struct { 4195 VmIssue 4196 } 4197 4198 func init() { 4199 types.Add("eam:VmProtected", reflect.TypeOf((*VmProtected)(nil)).Elem()) 4200 } 4201 4202 // An agent virtual machine is expected to be deployed on a host, but the agent 4203 // virtual machine cannot be deployed because the host is in Maintenance Mode. 4204 // 4205 // This is an active remediable issue. To remediate, vSphere ESX Agent Manager 4206 // takes the host out of Maintenance Mode and deploys the agent virtual machine. 4207 // 4208 // Resolving this issue in vSphere Lifecyle Manager environemnt will be no-op. 4209 // In those cases user must take the host out of Maintenance Mode manually or 4210 // wait vSphere Lifecycle Maanger cluster remediation to complete (if any). 4211 // 4212 // This structure may be used only with operations rendered under `/eam`. 4213 type VmRequiresHostOutOfMaintenanceMode struct { 4214 VmNotDeployed 4215 } 4216 4217 func init() { 4218 types.Add("eam:VmRequiresHostOutOfMaintenanceMode", reflect.TypeOf((*VmRequiresHostOutOfMaintenanceMode)(nil)).Elem()) 4219 types.AddMinAPIVersionForType("eam:VmRequiresHostOutOfMaintenanceMode", "7.2") 4220 } 4221 4222 // An agent virtual machine is expected to be powered on, but the agent virtual machine is suspended. 4223 // 4224 // This is an active remediable issue. To remediate, vSphere ESX Agent Manager powers on the agent virtual machine. 4225 // 4226 // This structure may be used only with operations rendered under `/eam`. 4227 type VmSuspended struct { 4228 VmIssue 4229 } 4230 4231 func init() { 4232 types.Add("eam:VmSuspended", reflect.TypeOf((*VmSuspended)(nil)).Elem()) 4233 } 4234 4235 // Deprecated eAM does not try to override any action powerfull user has taken. 4236 // 4237 // An agent virtual machine is expected to be located in a designated agent 4238 // virtual machine folder, but is found in a different folder. 4239 // 4240 // This is an active remediable issue. To remediate, vSphere ESX Agent Manager 4241 // moves the agent virtual machine back into the designated agent folder. 4242 // 4243 // This structure may be used only with operations rendered under `/eam`. 4244 type VmWrongFolder struct { 4245 VmIssue 4246 4247 // The folder in which the virtual machine currently resides. 4248 // 4249 // Refers instance of `Folder`. 4250 CurrentFolder types.ManagedObjectReference `xml:"currentFolder" json:"currentFolder"` 4251 // The ESX agent folder in which the virtual machine should reside. 4252 // 4253 // Refers instance of `Folder`. 4254 RequiredFolder types.ManagedObjectReference `xml:"requiredFolder" json:"requiredFolder"` 4255 } 4256 4257 func init() { 4258 types.Add("eam:VmWrongFolder", reflect.TypeOf((*VmWrongFolder)(nil)).Elem()) 4259 } 4260 4261 // Deprecated eAM does not try to override any action powerfull user has taken. 4262 // 4263 // An agent virtual machine is expected to be located in a designated agent 4264 // virtual machine resource pool, but is found in a different resource pool. 4265 // 4266 // This is an active remediable issue. To remediate, vSphere ESX Agent Manager 4267 // moves the agent virtual machine back into the designated agent resource pool. 4268 // 4269 // This structure may be used only with operations rendered under `/eam`. 4270 type VmWrongResourcePool struct { 4271 VmIssue 4272 4273 // The resource pool in which the VM currently resides. 4274 // 4275 // Refers instance of `ResourcePool`. 4276 CurrentResourcePool types.ManagedObjectReference `xml:"currentResourcePool" json:"currentResourcePool"` 4277 // The ESX agent resource pool in which the VM should reside. 4278 // 4279 // Refers instance of `ResourcePool`. 4280 RequiredResourcePool types.ManagedObjectReference `xml:"requiredResourcePool" json:"requiredResourcePool"` 4281 } 4282 4283 func init() { 4284 types.Add("eam:VmWrongResourcePool", reflect.TypeOf((*VmWrongResourcePool)(nil)).Elem()) 4285 } 4286 4287 type VersionURI string 4288 4289 func init() { 4290 types.Add("eam:versionURI", reflect.TypeOf((*VersionURI)(nil)).Elem()) 4291 }