You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by pe...@apache.org on 2024/12/03 14:23:38 UTC
(cloudstack-go) branch sdk-4.20 created (now d4d7f16)
This is an automated email from the ASF dual-hosted git repository.
pearl11594 pushed a change to branch sdk-4.20
in repository https://gitbox.apache.org/repos/asf/cloudstack-go.git
at d4d7f16 Update SDK with 4.20 APIs
This branch includes the following new commits:
new d4d7f16 Update SDK with 4.20 APIs
The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
(cloudstack-go) 01/01: Update SDK with 4.20 APIs
Posted by pe...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
pearl11594 pushed a commit to branch sdk-4.20
in repository https://gitbox.apache.org/repos/asf/cloudstack-go.git
commit d4d7f16d1d7daaff917b672cc0a40ed3c24d7e92
Author: Pearl Dsilva <pe...@gmail.com>
AuthorDate: Tue Dec 3 09:22:03 2024 -0500
Update SDK with 4.20 APIs
---
cloudstack/AccountService.go | 33 +
cloudstack/AddressService.go | 31 +
cloudstack/AffinityGroupService.go | 80 +-
cloudstack/AutoScaleService.go | 13 +
cloudstack/BrocadeVCSService.go | 5 +
cloudstack/ClusterService.go | 57 +
cloudstack/ConfigurationService.go | 3 +
cloudstack/DiskOfferingService.go | 78 +
cloudstack/DomainService.go | 28 +
cloudstack/EventService.go | 1 +
cloudstack/FirewallService.go | 2 +-
cloudstack/HostService.go | 45 +-
cloudstack/HypervisorService.go | 48 +
cloudstack/ISOService.go | 136 +-
cloudstack/InternalLBService.go | 3 +
cloudstack/KubernetesService.go | 29 +
cloudstack/LDAPService.go | 1 +
cloudstack/LimitService.go | 80 +-
cloudstack/LoadBalancerService.go | 12 +
cloudstack/NetworkOfferingService.go | 187 +
cloudstack/NetworkService.go | 108 +
cloudstack/NicService.go | 28 +-
cloudstack/OvsElementService.go | 42 +-
cloudstack/PodService.go | 3 +
cloudstack/PoolService.go | 40 +
cloudstack/ProjectService.go | 28 +-
cloudstack/ResourcemetadataService.go | 1 +
cloudstack/ResourcetagsService.go | 1 +
cloudstack/RoleService.go | 28 +
cloudstack/RouterService.go | 69 +-
cloudstack/SSHService.go | 28 +-
cloudstack/SecurityGroupService.go | 2 +
cloudstack/ServiceOfferingService.go | 128 +
cloudstack/SnapshotService.go | 36 +-
cloudstack/StoragePoolService.go | 6 +
cloudstack/SystemCapacityService.go | 25 +
cloudstack/TemplateService.go | 157 +
cloudstack/UsageService.go | 10 +-
cloudstack/UsageService_mock.go | 8 +-
cloudstack/VLANService.go | 36 +-
cloudstack/VMGroupService.go | 3 +
cloudstack/VPCService.go | 294 +-
cloudstack/VPCService_mock.go | 16 +-
cloudstack/VPNService.go | 55 +-
cloudstack/VirtualMachineService.go | 629 +-
cloudstack/VolumeService.go | 1819 +-
cloudstack/ZoneService.go | 16 +
generate/listApis.json | 193717 +++++++++++++++++--------------
test/UsageService_test.go | 2 +-
test/VPCService_test.go | 4 +-
50 files changed, 107883 insertions(+), 90328 deletions(-)
diff --git a/cloudstack/AccountService.go b/cloudstack/AccountService.go
index 66d61a5..0a71a4e 100644
--- a/cloudstack/AccountService.go
+++ b/cloudstack/AccountService.go
@@ -485,6 +485,7 @@ type CreateAccountResponse struct {
Snapshotlimit string `json:"snapshotlimit"`
Snapshottotal int64 `json:"snapshottotal"`
State string `json:"state"`
+ Taggedresources []string `json:"taggedresources"`
Templateavailable string `json:"templateavailable"`
Templatelimit string `json:"templatelimit"`
Templatetotal int64 `json:"templatetotal"`
@@ -811,6 +812,7 @@ type DisableAccountResponse struct {
Snapshotlimit string `json:"snapshotlimit"`
Snapshottotal int64 `json:"snapshottotal"`
State string `json:"state"`
+ Taggedresources []string `json:"taggedresources"`
Templateavailable string `json:"templateavailable"`
Templatelimit string `json:"templatelimit"`
Templatetotal int64 `json:"templatetotal"`
@@ -1009,6 +1011,7 @@ type EnableAccountResponse struct {
Snapshotlimit string `json:"snapshotlimit"`
Snapshottotal int64 `json:"snapshottotal"`
State string `json:"state"`
+ Taggedresources []string `json:"taggedresources"`
Templateavailable string `json:"templateavailable"`
Templatelimit string `json:"templatelimit"`
Templatetotal int64 `json:"templatetotal"`
@@ -1200,6 +1203,9 @@ func (p *ListAccountsParams) toURLValues() url.Values {
if v, found := p.p["state"]; found {
u.Set("state", v.(string))
}
+ if v, found := p.p["tag"]; found {
+ u.Set("tag", v.(string))
+ }
return u
}
@@ -1476,6 +1482,27 @@ func (p *ListAccountsParams) GetState() (string, bool) {
return value, ok
}
+func (p *ListAccountsParams) SetTag(v string) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ p.p["tag"] = v
+}
+
+func (p *ListAccountsParams) ResetTag() {
+ if p.p != nil && p.p["tag"] != nil {
+ delete(p.p, "tag")
+ }
+}
+
+func (p *ListAccountsParams) GetTag() (string, bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ value, ok := p.p["tag"].(string)
+ return value, ok
+}
+
// You should always use this function to get a new ListAccountsParams instance,
// as then you are sure you have configured all required params
func (s *AccountService) NewListAccountsParams() *ListAccountsParams {
@@ -1634,6 +1661,7 @@ type Account struct {
Snapshotlimit string `json:"snapshotlimit"`
Snapshottotal int64 `json:"snapshottotal"`
State string `json:"state"`
+ Taggedresources []string `json:"taggedresources"`
Templateavailable string `json:"templateavailable"`
Templatelimit string `json:"templatelimit"`
Templatetotal int64 `json:"templatetotal"`
@@ -1984,6 +2012,7 @@ type ProjectAccount struct {
Snapshotlimit string `json:"snapshotlimit"`
Snapshottotal int64 `json:"snapshottotal"`
State string `json:"state"`
+ Taggedresources []string `json:"taggedresources"`
Tags []Tags `json:"tags"`
Templateavailable string `json:"templateavailable"`
Templatelimit string `json:"templatelimit"`
@@ -2006,6 +2035,7 @@ type Tags struct {
Customer string `json:"customer"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Key string `json:"key"`
Project string `json:"project"`
Projectid string `json:"projectid"`
@@ -2146,6 +2176,7 @@ type LockAccountResponse struct {
Snapshotlimit string `json:"snapshotlimit"`
Snapshottotal int64 `json:"snapshottotal"`
State string `json:"state"`
+ Taggedresources []string `json:"taggedresources"`
Templateavailable string `json:"templateavailable"`
Templatelimit string `json:"templatelimit"`
Templatetotal int64 `json:"templatetotal"`
@@ -2367,6 +2398,7 @@ type MarkDefaultZoneForAccountResponse struct {
Snapshotlimit string `json:"snapshotlimit"`
Snapshottotal int64 `json:"snapshottotal"`
State string `json:"state"`
+ Taggedresources []string `json:"taggedresources"`
Templateavailable string `json:"templateavailable"`
Templatelimit string `json:"templatelimit"`
Templatetotal int64 `json:"templatetotal"`
@@ -2664,6 +2696,7 @@ type UpdateAccountResponse struct {
Snapshotlimit string `json:"snapshotlimit"`
Snapshottotal int64 `json:"snapshottotal"`
State string `json:"state"`
+ Taggedresources []string `json:"taggedresources"`
Templateavailable string `json:"templateavailable"`
Templatelimit string `json:"templatelimit"`
Templatetotal int64 `json:"templatetotal"`
diff --git a/cloudstack/AddressService.go b/cloudstack/AddressService.go
index 43360d1..10e1f0c 100644
--- a/cloudstack/AddressService.go
+++ b/cloudstack/AddressService.go
@@ -346,7 +346,9 @@ type AssociateIpAddressResponse struct {
Associatednetworkname string `json:"associatednetworkname"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Fordisplay bool `json:"fordisplay"`
+ Forsystemvms bool `json:"forsystemvms"`
Forvirtualnetwork bool `json:"forvirtualnetwork"`
Hasannotations bool `json:"hasannotations"`
Hasrules bool `json:"hasrules"`
@@ -515,6 +517,10 @@ func (p *ListPublicIpAddressesParams) toURLValues() url.Values {
vv := strconv.FormatBool(v.(bool))
u.Set("forloadbalancing", vv)
}
+ if v, found := p.p["forsystemvms"]; found {
+ vv := strconv.FormatBool(v.(bool))
+ u.Set("forsystemvms", vv)
+ }
if v, found := p.p["forvirtualnetwork"]; found {
vv := strconv.FormatBool(v.(bool))
u.Set("forvirtualnetwork", vv)
@@ -713,6 +719,27 @@ func (p *ListPublicIpAddressesParams) GetForloadbalancing() (bool, bool) {
return value, ok
}
+func (p *ListPublicIpAddressesParams) SetForsystemvms(v bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ p.p["forsystemvms"] = v
+}
+
+func (p *ListPublicIpAddressesParams) ResetForsystemvms() {
+ if p.p != nil && p.p["forsystemvms"] != nil {
+ delete(p.p, "forsystemvms")
+ }
+}
+
+func (p *ListPublicIpAddressesParams) GetForsystemvms() (bool, bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ value, ok := p.p["forsystemvms"].(bool)
+ return value, ok
+}
+
func (p *ListPublicIpAddressesParams) SetForvirtualnetwork(v bool) {
if p.p == nil {
p.p = make(map[string]interface{})
@@ -1180,7 +1207,9 @@ type PublicIpAddress struct {
Associatednetworkname string `json:"associatednetworkname"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Fordisplay bool `json:"fordisplay"`
+ Forsystemvms bool `json:"forsystemvms"`
Forvirtualnetwork bool `json:"forvirtualnetwork"`
Hasannotations bool `json:"hasannotations"`
Hasrules bool `json:"hasrules"`
@@ -1349,7 +1378,9 @@ type UpdateIpAddressResponse struct {
Associatednetworkname string `json:"associatednetworkname"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Fordisplay bool `json:"fordisplay"`
+ Forsystemvms bool `json:"forsystemvms"`
Forvirtualnetwork bool `json:"forvirtualnetwork"`
Hasannotations bool `json:"hasannotations"`
Hasrules bool `json:"hasrules"`
diff --git a/cloudstack/AffinityGroupService.go b/cloudstack/AffinityGroupService.go
index c0f157d..f87901c 100644
--- a/cloudstack/AffinityGroupService.go
+++ b/cloudstack/AffinityGroupService.go
@@ -245,18 +245,20 @@ func (s *AffinityGroupService) CreateAffinityGroup(p *CreateAffinityGroupParams)
}
type CreateAffinityGroupResponse struct {
- Account string `json:"account"`
- Description string `json:"description"`
- Domain string `json:"domain"`
- Domainid string `json:"domainid"`
- Id string `json:"id"`
- JobID string `json:"jobid"`
- Jobstatus int `json:"jobstatus"`
- Name string `json:"name"`
- Project string `json:"project"`
- Projectid string `json:"projectid"`
- Type string `json:"type"`
- VirtualmachineIds []string `json:"virtualmachineIds"`
+ Account string `json:"account"`
+ Dedicatedresources []string `json:"dedicatedresources"`
+ Description string `json:"description"`
+ Domain string `json:"domain"`
+ Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
+ Id string `json:"id"`
+ JobID string `json:"jobid"`
+ Jobstatus int `json:"jobstatus"`
+ Name string `json:"name"`
+ Project string `json:"project"`
+ Projectid string `json:"projectid"`
+ Type string `json:"type"`
+ VirtualmachineIds []string `json:"virtualmachineIds"`
}
type DeleteAffinityGroupParams struct {
@@ -980,18 +982,20 @@ type ListAffinityGroupsResponse struct {
}
type AffinityGroup struct {
- Account string `json:"account"`
- Description string `json:"description"`
- Domain string `json:"domain"`
- Domainid string `json:"domainid"`
- Id string `json:"id"`
- JobID string `json:"jobid"`
- Jobstatus int `json:"jobstatus"`
- Name string `json:"name"`
- Project string `json:"project"`
- Projectid string `json:"projectid"`
- Type string `json:"type"`
- VirtualmachineIds []string `json:"virtualmachineIds"`
+ Account string `json:"account"`
+ Dedicatedresources []string `json:"dedicatedresources"`
+ Description string `json:"description"`
+ Domain string `json:"domain"`
+ Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
+ Id string `json:"id"`
+ JobID string `json:"jobid"`
+ Jobstatus int `json:"jobstatus"`
+ Name string `json:"name"`
+ Project string `json:"project"`
+ Projectid string `json:"projectid"`
+ Type string `json:"type"`
+ VirtualmachineIds []string `json:"virtualmachineIds"`
}
type UpdateVMAffinityGroupParams struct {
@@ -1137,6 +1141,7 @@ type UpdateVMAffinityGroupResponse struct {
Cpuspeed int `json:"cpuspeed"`
Cpuused string `json:"cpuused"`
Created string `json:"created"`
+ Deleteprotection bool `json:"deleteprotection"`
Details map[string]string `json:"details"`
Diskioread int64 `json:"diskioread"`
Diskiowrite int64 `json:"diskiowrite"`
@@ -1148,6 +1153,7 @@ type UpdateVMAffinityGroupResponse struct {
Displayvm bool `json:"displayvm"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Forvirtualnetwork bool `json:"forvirtualnetwork"`
Group string `json:"group"`
Groupid string `json:"groupid"`
@@ -1161,6 +1167,7 @@ type UpdateVMAffinityGroupResponse struct {
Icon interface{} `json:"icon"`
Id string `json:"id"`
Instancename string `json:"instancename"`
+ Ipaddress string `json:"ipaddress"`
Isdynamicallyscalable bool `json:"isdynamicallyscalable"`
Isodisplaytext string `json:"isodisplaytext"`
Isoid string `json:"isoid"`
@@ -1198,6 +1205,7 @@ type UpdateVMAffinityGroupResponse struct {
State string `json:"state"`
Tags []Tags `json:"tags"`
Templatedisplaytext string `json:"templatedisplaytext"`
+ Templateformat string `json:"templateformat"`
Templateid string `json:"templateid"`
Templatename string `json:"templatename"`
Templatetype string `json:"templatetype"`
@@ -1209,6 +1217,7 @@ type UpdateVMAffinityGroupResponse struct {
Userid string `json:"userid"`
Username string `json:"username"`
Vgpu string `json:"vgpu"`
+ Vmtype string `json:"vmtype"`
Vnfdetails map[string]string `json:"vnfdetails"`
Vnfnics []string `json:"vnfnics"`
Zoneid string `json:"zoneid"`
@@ -1220,6 +1229,7 @@ type UpdateVMAffinityGroupResponseSecuritygroup struct {
Description string `json:"description"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Egressrule []UpdateVMAffinityGroupResponseSecuritygroupRule `json:"egressrule"`
Id string `json:"id"`
Ingressrule []UpdateVMAffinityGroupResponseSecuritygroupRule `json:"ingressrule"`
@@ -1245,16 +1255,18 @@ type UpdateVMAffinityGroupResponseSecuritygroupRule struct {
}
type UpdateVMAffinityGroupResponseAffinitygroup struct {
- Account string `json:"account"`
- Description string `json:"description"`
- Domain string `json:"domain"`
- Domainid string `json:"domainid"`
- Id string `json:"id"`
- Name string `json:"name"`
- Project string `json:"project"`
- Projectid string `json:"projectid"`
- Type string `json:"type"`
- VirtualmachineIds []string `json:"virtualmachineIds"`
+ Account string `json:"account"`
+ Dedicatedresources []string `json:"dedicatedresources"`
+ Description string `json:"description"`
+ Domain string `json:"domain"`
+ Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
+ Id string `json:"id"`
+ Name string `json:"name"`
+ Project string `json:"project"`
+ Projectid string `json:"projectid"`
+ Type string `json:"type"`
+ VirtualmachineIds []string `json:"virtualmachineIds"`
}
func (r *UpdateVMAffinityGroupResponse) UnmarshalJSON(b []byte) error {
diff --git a/cloudstack/AutoScaleService.go b/cloudstack/AutoScaleService.go
index 9e482d5..6432747 100644
--- a/cloudstack/AutoScaleService.go
+++ b/cloudstack/AutoScaleService.go
@@ -268,6 +268,7 @@ type CreateAutoScalePolicyResponse struct {
Conditions []string `json:"conditions"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Duration int `json:"duration"`
Id string `json:"id"`
JobID string `json:"jobid"`
@@ -569,6 +570,7 @@ type CreateAutoScaleVmGroupResponse struct {
Created string `json:"created"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Fordisplay bool `json:"fordisplay"`
Hasannotations bool `json:"hasannotations"`
Id string `json:"id"`
@@ -1005,6 +1007,7 @@ type CreateAutoScaleVmProfileResponse struct {
Autoscaleuserid string `json:"autoscaleuserid"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Expungevmgraceperiod int `json:"expungevmgraceperiod"`
Fordisplay bool `json:"fordisplay"`
Id string `json:"id"`
@@ -1233,6 +1236,7 @@ type CreateConditionResponse struct {
Countername string `json:"countername"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Id string `json:"id"`
JobID string `json:"jobid"`
Jobstatus int `json:"jobstatus"`
@@ -1932,6 +1936,7 @@ type DisableAutoScaleVmGroupResponse struct {
Created string `json:"created"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Fordisplay bool `json:"fordisplay"`
Hasannotations bool `json:"hasannotations"`
Id string `json:"id"`
@@ -2043,6 +2048,7 @@ type EnableAutoScaleVmGroupResponse struct {
Created string `json:"created"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Fordisplay bool `json:"fordisplay"`
Hasannotations bool `json:"hasannotations"`
Id string `json:"id"`
@@ -2511,6 +2517,7 @@ type AutoScalePolicy struct {
Conditions []string `json:"conditions"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Duration int `json:"duration"`
Id string `json:"id"`
JobID string `json:"jobid"`
@@ -3017,6 +3024,7 @@ type AutoScaleVmGroup struct {
Created string `json:"created"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Fordisplay bool `json:"fordisplay"`
Hasannotations bool `json:"hasannotations"`
Id string `json:"id"`
@@ -3459,6 +3467,7 @@ type AutoScaleVmProfile struct {
Autoscaleuserid string `json:"autoscaleuserid"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Expungevmgraceperiod int `json:"expungevmgraceperiod"`
Fordisplay bool `json:"fordisplay"`
Id string `json:"id"`
@@ -3825,6 +3834,7 @@ type Condition struct {
Countername string `json:"countername"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Id string `json:"id"`
JobID string `json:"jobid"`
Jobstatus int `json:"jobstatus"`
@@ -4324,6 +4334,7 @@ type UpdateAutoScalePolicyResponse struct {
Conditions []string `json:"conditions"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Duration int `json:"duration"`
Id string `json:"id"`
JobID string `json:"jobid"`
@@ -4620,6 +4631,7 @@ type UpdateAutoScaleVmGroupResponse struct {
Created string `json:"created"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Fordisplay bool `json:"fordisplay"`
Hasannotations bool `json:"hasannotations"`
Id string `json:"id"`
@@ -5006,6 +5018,7 @@ type UpdateAutoScaleVmProfileResponse struct {
Autoscaleuserid string `json:"autoscaleuserid"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Expungevmgraceperiod int `json:"expungevmgraceperiod"`
Fordisplay bool `json:"fordisplay"`
Id string `json:"id"`
diff --git a/cloudstack/BrocadeVCSService.go b/cloudstack/BrocadeVCSService.go
index a00bfc1..3825883 100644
--- a/cloudstack/BrocadeVCSService.go
+++ b/cloudstack/BrocadeVCSService.go
@@ -466,8 +466,11 @@ type BrocadeVcsDeviceNetwork struct {
Aclid string `json:"aclid"`
Aclname string `json:"aclname"`
Acltype string `json:"acltype"`
+ Asnumber int64 `json:"asnumber"`
+ Asnumberid string `json:"asnumberid"`
Associatednetwork string `json:"associatednetwork"`
Associatednetworkid string `json:"associatednetworkid"`
+ Bgppeers []interface{} `json:"bgppeers"`
Broadcastdomaintype string `json:"broadcastdomaintype"`
Broadcasturi string `json:"broadcasturi"`
Canusefordeploy bool `json:"canusefordeploy"`
@@ -488,6 +491,8 @@ type BrocadeVcsDeviceNetwork struct {
Icon interface{} `json:"icon"`
Id string `json:"id"`
Internetprotocol string `json:"internetprotocol"`
+ Ip4routes []interface{} `json:"ip4routes"`
+ Ip4routing string `json:"ip4routing"`
Ip6cidr string `json:"ip6cidr"`
Ip6dns1 string `json:"ip6dns1"`
Ip6dns2 string `json:"ip6dns2"`
diff --git a/cloudstack/ClusterService.go b/cloudstack/ClusterService.go
index a8f4847..219ef40 100644
--- a/cloudstack/ClusterService.go
+++ b/cloudstack/ClusterService.go
@@ -72,6 +72,9 @@ func (p *AddClusterParams) toURLValues() url.Values {
if v, found := p.p["allocationstate"]; found {
u.Set("allocationstate", v.(string))
}
+ if v, found := p.p["arch"]; found {
+ u.Set("arch", v.(string))
+ }
if v, found := p.p["clustername"]; found {
u.Set("clustername", v.(string))
}
@@ -150,6 +153,27 @@ func (p *AddClusterParams) GetAllocationstate() (string, bool) {
return value, ok
}
+func (p *AddClusterParams) SetArch(v string) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ p.p["arch"] = v
+}
+
+func (p *AddClusterParams) ResetArch() {
+ if p.p != nil && p.p["arch"] != nil {
+ delete(p.p, "arch")
+ }
+}
+
+func (p *AddClusterParams) GetArch() (string, bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ value, ok := p.p["arch"].(string)
+ return value, ok
+}
+
func (p *AddClusterParams) SetClustername(v string) {
if p.p == nil {
p.p = make(map[string]interface{})
@@ -562,6 +586,7 @@ func (s *ClusterService) AddCluster(p *AddClusterParams) (*AddClusterResponse, e
type AddClusterResponse struct {
Allocationstate string `json:"allocationstate"`
+ Arch string `json:"arch"`
Capacity []AddClusterResponseCapacity `json:"capacity"`
Clustertype string `json:"clustertype"`
Cpuovercommitratio string `json:"cpuovercommitratio"`
@@ -591,6 +616,7 @@ type AddClusterResponseCapacity struct {
Percentused string `json:"percentused"`
Podid string `json:"podid"`
Podname string `json:"podname"`
+ Tag string `json:"tag"`
Type int `json:"type"`
Zoneid string `json:"zoneid"`
Zonename string `json:"zonename"`
@@ -1602,6 +1628,7 @@ type ListClustersResponse struct {
type Cluster struct {
Allocationstate string `json:"allocationstate"`
+ Arch string `json:"arch"`
Capacity []ClusterCapacity `json:"capacity"`
Clustertype string `json:"clustertype"`
Cpuovercommitratio string `json:"cpuovercommitratio"`
@@ -1631,6 +1658,7 @@ type ClusterCapacity struct {
Percentused string `json:"percentused"`
Podid string `json:"podid"`
Podname string `json:"podname"`
+ Tag string `json:"tag"`
Type int `json:"type"`
Zoneid string `json:"zoneid"`
Zonename string `json:"zonename"`
@@ -2052,6 +2080,7 @@ type ListClustersMetricsResponse struct {
type ClustersMetric struct {
Allocationstate string `json:"allocationstate"`
+ Arch string `json:"arch"`
Capacity []ClustersMetricCapacity `json:"capacity"`
Clustertype string `json:"clustertype"`
Cpuallocated string `json:"cpuallocated"`
@@ -2063,6 +2092,7 @@ type ClustersMetric struct {
Cputhreshold bool `json:"cputhreshold"`
Cputotal string `json:"cputotal"`
Cpuused string `json:"cpuused"`
+ Drsimbalance string `json:"drsimbalance"`
Hasannotations bool `json:"hasannotations"`
Hosts string `json:"hosts"`
Hypervisortype string `json:"hypervisortype"`
@@ -2099,6 +2129,7 @@ type ClustersMetricCapacity struct {
Percentused string `json:"percentused"`
Podid string `json:"podid"`
Podname string `json:"podname"`
+ Tag string `json:"tag"`
Type int `json:"type"`
Zoneid string `json:"zoneid"`
Zonename string `json:"zonename"`
@@ -2419,6 +2450,9 @@ func (p *UpdateClusterParams) toURLValues() url.Values {
if v, found := p.p["allocationstate"]; found {
u.Set("allocationstate", v.(string))
}
+ if v, found := p.p["arch"]; found {
+ u.Set("arch", v.(string))
+ }
if v, found := p.p["clustername"]; found {
u.Set("clustername", v.(string))
}
@@ -2458,6 +2492,27 @@ func (p *UpdateClusterParams) GetAllocationstate() (string, bool) {
return value, ok
}
+func (p *UpdateClusterParams) SetArch(v string) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ p.p["arch"] = v
+}
+
+func (p *UpdateClusterParams) ResetArch() {
+ if p.p != nil && p.p["arch"] != nil {
+ delete(p.p, "arch")
+ }
+}
+
+func (p *UpdateClusterParams) GetArch() (string, bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ value, ok := p.p["arch"].(string)
+ return value, ok
+}
+
func (p *UpdateClusterParams) SetClustername(v string) {
if p.p == nil {
p.p = make(map[string]interface{})
@@ -2593,6 +2648,7 @@ func (s *ClusterService) UpdateCluster(p *UpdateClusterParams) (*UpdateClusterRe
type UpdateClusterResponse struct {
Allocationstate string `json:"allocationstate"`
+ Arch string `json:"arch"`
Capacity []UpdateClusterResponseCapacity `json:"capacity"`
Clustertype string `json:"clustertype"`
Cpuovercommitratio string `json:"cpuovercommitratio"`
@@ -2622,6 +2678,7 @@ type UpdateClusterResponseCapacity struct {
Percentused string `json:"percentused"`
Podid string `json:"podid"`
Podname string `json:"podname"`
+ Tag string `json:"tag"`
Type int `json:"type"`
Zoneid string `json:"zoneid"`
Zonename string `json:"zonename"`
diff --git a/cloudstack/ConfigurationService.go b/cloudstack/ConfigurationService.go
index 0a1e39b..93c1ce4 100644
--- a/cloudstack/ConfigurationService.go
+++ b/cloudstack/ConfigurationService.go
@@ -81,6 +81,7 @@ type Capability struct {
Allowusercreateprojects bool `json:"allowusercreateprojects"`
Allowuserexpungerecovervm bool `json:"allowuserexpungerecovervm"`
Allowuserexpungerecovervolume bool `json:"allowuserexpungerecovervolume"`
+ Allowuserforcestopvm bool `json:"allowuserforcestopvm"`
Allowuserviewalldomainaccounts bool `json:"allowuserviewalldomainaccounts"`
Allowuserviewdestroyedvm bool `json:"allowuserviewdestroyedvm"`
Apilimitinterval int `json:"apilimitinterval"`
@@ -103,6 +104,8 @@ type Capability struct {
Projectinviterequired bool `json:"projectinviterequired"`
Regionsecondaryenabled bool `json:"regionsecondaryenabled"`
Securitygroupsenabled bool `json:"securitygroupsenabled"`
+ Sharedfsvmmincpucount int `json:"sharedfsvmmincpucount"`
+ Sharedfsvmminramsize int `json:"sharedfsvmminramsize"`
SupportELB string `json:"supportELB"`
Userpublictemplateenabled bool `json:"userpublictemplateenabled"`
}
diff --git a/cloudstack/DiskOfferingService.go b/cloudstack/DiskOfferingService.go
index e3228fe..079aaea 100644
--- a/cloudstack/DiskOfferingService.go
+++ b/cloudstack/DiskOfferingService.go
@@ -886,7 +886,9 @@ type CreateDiskOfferingResponse struct {
Miniops int64 `json:"miniops"`
Name string `json:"name"`
Provisioningtype string `json:"provisioningtype"`
+ State string `json:"state"`
Storagetype string `json:"storagetype"`
+ Suitableforvirtualmachine bool `json:"suitableforvirtualmachine"`
Tags string `json:"tags"`
Vspherestoragepolicy string `json:"vspherestoragepolicy"`
Zone string `json:"zone"`
@@ -1034,12 +1036,18 @@ func (p *ListDiskOfferingsParams) toURLValues() url.Values {
if v, found := p.p["projectid"]; found {
u.Set("projectid", v.(string))
}
+ if v, found := p.p["state"]; found {
+ u.Set("state", v.(string))
+ }
if v, found := p.p["storageid"]; found {
u.Set("storageid", v.(string))
}
if v, found := p.p["storagetype"]; found {
u.Set("storagetype", v.(string))
}
+ if v, found := p.p["virtualmachineid"]; found {
+ u.Set("virtualmachineid", v.(string))
+ }
if v, found := p.p["volumeid"]; found {
u.Set("volumeid", v.(string))
}
@@ -1280,6 +1288,27 @@ func (p *ListDiskOfferingsParams) GetProjectid() (string, bool) {
return value, ok
}
+func (p *ListDiskOfferingsParams) SetState(v string) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ p.p["state"] = v
+}
+
+func (p *ListDiskOfferingsParams) ResetState() {
+ if p.p != nil && p.p["state"] != nil {
+ delete(p.p, "state")
+ }
+}
+
+func (p *ListDiskOfferingsParams) GetState() (string, bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ value, ok := p.p["state"].(string)
+ return value, ok
+}
+
func (p *ListDiskOfferingsParams) SetStorageid(v string) {
if p.p == nil {
p.p = make(map[string]interface{})
@@ -1322,6 +1351,27 @@ func (p *ListDiskOfferingsParams) GetStoragetype() (string, bool) {
return value, ok
}
+func (p *ListDiskOfferingsParams) SetVirtualmachineid(v string) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ p.p["virtualmachineid"] = v
+}
+
+func (p *ListDiskOfferingsParams) ResetVirtualmachineid() {
+ if p.p != nil && p.p["virtualmachineid"] != nil {
+ delete(p.p, "virtualmachineid")
+ }
+}
+
+func (p *ListDiskOfferingsParams) GetVirtualmachineid() (string, bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ value, ok := p.p["virtualmachineid"].(string)
+ return value, ok
+}
+
func (p *ListDiskOfferingsParams) SetVolumeid(v string) {
if p.p == nil {
p.p = make(map[string]interface{})
@@ -1509,7 +1559,9 @@ type DiskOffering struct {
Miniops int64 `json:"miniops"`
Name string `json:"name"`
Provisioningtype string `json:"provisioningtype"`
+ State string `json:"state"`
Storagetype string `json:"storagetype"`
+ Suitableforvirtualmachine bool `json:"suitableforvirtualmachine"`
Tags string `json:"tags"`
Vspherestoragepolicy string `json:"vspherestoragepolicy"`
Zone string `json:"zone"`
@@ -1596,6 +1648,9 @@ func (p *UpdateDiskOfferingParams) toURLValues() url.Values {
vv := strconv.Itoa(v.(int))
u.Set("sortkey", vv)
}
+ if v, found := p.p["state"]; found {
+ u.Set("state", v.(string))
+ }
if v, found := p.p["tags"]; found {
u.Set("tags", v.(string))
}
@@ -2004,6 +2059,27 @@ func (p *UpdateDiskOfferingParams) GetSortkey() (int, bool) {
return value, ok
}
+func (p *UpdateDiskOfferingParams) SetState(v string) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ p.p["state"] = v
+}
+
+func (p *UpdateDiskOfferingParams) ResetState() {
+ if p.p != nil && p.p["state"] != nil {
+ delete(p.p, "state")
+ }
+}
+
+func (p *UpdateDiskOfferingParams) GetState() (string, bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ value, ok := p.p["state"].(string)
+ return value, ok
+}
+
func (p *UpdateDiskOfferingParams) SetTags(v string) {
if p.p == nil {
p.p = make(map[string]interface{})
@@ -2104,7 +2180,9 @@ type UpdateDiskOfferingResponse struct {
Miniops int64 `json:"miniops"`
Name string `json:"name"`
Provisioningtype string `json:"provisioningtype"`
+ State string `json:"state"`
Storagetype string `json:"storagetype"`
+ Suitableforvirtualmachine bool `json:"suitableforvirtualmachine"`
Tags string `json:"tags"`
Vspherestoragepolicy string `json:"vspherestoragepolicy"`
Zone string `json:"zone"`
diff --git a/cloudstack/DomainService.go b/cloudstack/DomainService.go
index 3448044..d6adbe8 100644
--- a/cloudstack/DomainService.go
+++ b/cloudstack/DomainService.go
@@ -222,6 +222,7 @@ type CreateDomainResponse struct {
Snapshotlimit string `json:"snapshotlimit"`
Snapshottotal int64 `json:"snapshottotal"`
State string `json:"state"`
+ Taggedresources []string `json:"taggedresources"`
Templateavailable string `json:"templateavailable"`
Templatelimit string `json:"templatelimit"`
Templatetotal int64 `json:"templatetotal"`
@@ -703,6 +704,7 @@ type DomainChildren struct {
Snapshotlimit string `json:"snapshotlimit"`
Snapshottotal int64 `json:"snapshottotal"`
State string `json:"state"`
+ Taggedresources []string `json:"taggedresources"`
Templateavailable string `json:"templateavailable"`
Templatelimit string `json:"templatelimit"`
Templatetotal int64 `json:"templatetotal"`
@@ -759,6 +761,9 @@ func (p *ListDomainsParams) toURLValues() url.Values {
vv := strconv.FormatBool(v.(bool))
u.Set("showicon", vv)
}
+ if v, found := p.p["tag"]; found {
+ u.Set("tag", v.(string))
+ }
return u
}
@@ -951,6 +956,27 @@ func (p *ListDomainsParams) GetShowicon() (bool, bool) {
return value, ok
}
+func (p *ListDomainsParams) SetTag(v string) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ p.p["tag"] = v
+}
+
+func (p *ListDomainsParams) ResetTag() {
+ if p.p != nil && p.p["tag"] != nil {
+ delete(p.p, "tag")
+ }
+}
+
+func (p *ListDomainsParams) GetTag() (string, bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ value, ok := p.p["tag"].(string)
+ return value, ok
+}
+
// You should always use this function to get a new ListDomainsParams instance,
// as then you are sure you have configured all required params
func (s *DomainService) NewListDomainsParams() *ListDomainsParams {
@@ -1102,6 +1128,7 @@ type Domain struct {
Snapshotlimit string `json:"snapshotlimit"`
Snapshottotal int64 `json:"snapshottotal"`
State string `json:"state"`
+ Taggedresources []string `json:"taggedresources"`
Templateavailable string `json:"templateavailable"`
Templatelimit string `json:"templatelimit"`
Templatetotal int64 `json:"templatetotal"`
@@ -1268,6 +1295,7 @@ type UpdateDomainResponse struct {
Snapshotlimit string `json:"snapshotlimit"`
Snapshottotal int64 `json:"snapshottotal"`
State string `json:"state"`
+ Taggedresources []string `json:"taggedresources"`
Templateavailable string `json:"templateavailable"`
Templatelimit string `json:"templatelimit"`
Templatetotal int64 `json:"templatetotal"`
diff --git a/cloudstack/EventService.go b/cloudstack/EventService.go
index 2755615..c55c86f 100644
--- a/cloudstack/EventService.go
+++ b/cloudstack/EventService.go
@@ -960,6 +960,7 @@ type Event struct {
Description string `json:"description"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Id string `json:"id"`
JobID string `json:"jobid"`
Jobstatus int `json:"jobstatus"`
diff --git a/cloudstack/FirewallService.go b/cloudstack/FirewallService.go
index 8adbda9..6aa94f1 100644
--- a/cloudstack/FirewallService.go
+++ b/cloudstack/FirewallService.go
@@ -4523,7 +4523,7 @@ func (s *FirewallService) NewCreateIpv6FirewallRuleParams(networkid string, prot
return p
}
-// Creates an Ipv6 firewall rule in the given network (the network has to belong to VPC)
+// Creates an Ipv6 firewall rule in the given network (the network must not belong to VPC)
func (s *FirewallService) CreateIpv6FirewallRule(p *CreateIpv6FirewallRuleParams) (*CreateIpv6FirewallRuleResponse, error) {
resp, err := s.cs.newRequest("createIpv6FirewallRule", p.toURLValues())
if err != nil {
diff --git a/cloudstack/HostService.go b/cloudstack/HostService.go
index 3980564..cd5a9b1 100644
--- a/cloudstack/HostService.go
+++ b/cloudstack/HostService.go
@@ -387,6 +387,7 @@ func (s *HostService) AddBaremetalHost(p *AddBaremetalHostParams) (*AddBaremetal
type AddBaremetalHostResponse struct {
Annotation string `json:"annotation"`
+ Arch string `json:"arch"`
Capabilities string `json:"capabilities"`
Clusterid string `json:"clusterid"`
Clustername string `json:"clustername"`
@@ -408,6 +409,7 @@ type AddBaremetalHostResponse struct {
Disksizetotal int64 `json:"disksizetotal"`
Encryptionsupported bool `json:"encryptionsupported"`
Events string `json:"events"`
+ Explicithosttags string `json:"explicithosttags"`
Gpugroup []AddBaremetalHostResponseGpugroup `json:"gpugroup"`
Hahost bool `json:"hahost"`
Hasannotations bool `json:"hasannotations"`
@@ -417,6 +419,8 @@ type AddBaremetalHostResponse struct {
Hypervisor string `json:"hypervisor"`
Hypervisorversion string `json:"hypervisorversion"`
Id string `json:"id"`
+ Implicithosttags string `json:"implicithosttags"`
+ Instanceconversionsupported bool `json:"instanceconversionsupported"`
Ipaddress string `json:"ipaddress"`
Islocalstorageactive bool `json:"islocalstorageactive"`
Istagarule bool `json:"istagarule"`
@@ -910,6 +914,7 @@ func (s *HostService) AddHost(p *AddHostParams) (*AddHostResponse, error) {
type AddHostResponse struct {
Annotation string `json:"annotation"`
+ Arch string `json:"arch"`
Capabilities string `json:"capabilities"`
Clusterid string `json:"clusterid"`
Clustername string `json:"clustername"`
@@ -931,6 +936,7 @@ type AddHostResponse struct {
Disksizetotal int64 `json:"disksizetotal"`
Encryptionsupported bool `json:"encryptionsupported"`
Events string `json:"events"`
+ Explicithosttags string `json:"explicithosttags"`
Gpugroup []AddHostResponseGpugroup `json:"gpugroup"`
Hahost bool `json:"hahost"`
Hasannotations bool `json:"hasannotations"`
@@ -940,6 +946,8 @@ type AddHostResponse struct {
Hypervisor string `json:"hypervisor"`
Hypervisorversion string `json:"hypervisorversion"`
Id string `json:"id"`
+ Implicithosttags string `json:"implicithosttags"`
+ Instanceconversionsupported bool `json:"instanceconversionsupported"`
Ipaddress string `json:"ipaddress"`
Islocalstorageactive bool `json:"islocalstorageactive"`
Istagarule bool `json:"istagarule"`
@@ -1173,6 +1181,7 @@ func (s *HostService) CancelHostMaintenance(p *CancelHostMaintenanceParams) (*Ca
type CancelHostMaintenanceResponse struct {
Annotation string `json:"annotation"`
+ Arch string `json:"arch"`
Capabilities string `json:"capabilities"`
Clusterid string `json:"clusterid"`
Clustername string `json:"clustername"`
@@ -1194,6 +1203,7 @@ type CancelHostMaintenanceResponse struct {
Disksizetotal int64 `json:"disksizetotal"`
Encryptionsupported bool `json:"encryptionsupported"`
Events string `json:"events"`
+ Explicithosttags string `json:"explicithosttags"`
Gpugroup []CancelHostMaintenanceResponseGpugroup `json:"gpugroup"`
Hahost bool `json:"hahost"`
Hasannotations bool `json:"hasannotations"`
@@ -1203,6 +1213,8 @@ type CancelHostMaintenanceResponse struct {
Hypervisor string `json:"hypervisor"`
Hypervisorversion string `json:"hypervisorversion"`
Id string `json:"id"`
+ Implicithosttags string `json:"implicithosttags"`
+ Instanceconversionsupported bool `json:"instanceconversionsupported"`
Ipaddress string `json:"ipaddress"`
Islocalstorageactive bool `json:"islocalstorageactive"`
Istagarule bool `json:"istagarule"`
@@ -2092,12 +2104,14 @@ type HostForMigration struct {
Disksizeallocated int64 `json:"disksizeallocated"`
Disksizetotal int64 `json:"disksizetotal"`
Events string `json:"events"`
+ Explicithosttags string `json:"explicithosttags"`
Hahost bool `json:"hahost"`
Hasenoughcapacity bool `json:"hasenoughcapacity"`
Hosttags string `json:"hosttags"`
Hypervisor string `json:"hypervisor"`
Hypervisorversion string `json:"hypervisorversion"`
Id string `json:"id"`
+ Implicithosttags string `json:"implicithosttags"`
Ipaddress string `json:"ipaddress"`
Islocalstorageactive bool `json:"islocalstorageactive"`
JobID string `json:"jobid"`
@@ -2500,11 +2514,12 @@ type ListHostTagsResponse struct {
}
type HostTag struct {
- Hostid int64 `json:"hostid"`
- Id string `json:"id"`
- JobID string `json:"jobid"`
- Jobstatus int `json:"jobstatus"`
- Name string `json:"name"`
+ Hostid int64 `json:"hostid"`
+ Id string `json:"id"`
+ Isimplicit bool `json:"isimplicit"`
+ JobID string `json:"jobid"`
+ Jobstatus int `json:"jobstatus"`
+ Name string `json:"name"`
}
type ListHostsParams struct {
@@ -3045,6 +3060,7 @@ type ListHostsResponse struct {
type Host struct {
Annotation string `json:"annotation"`
+ Arch string `json:"arch"`
Capabilities string `json:"capabilities"`
Clusterid string `json:"clusterid"`
Clustername string `json:"clustername"`
@@ -3066,6 +3082,7 @@ type Host struct {
Disksizetotal int64 `json:"disksizetotal"`
Encryptionsupported bool `json:"encryptionsupported"`
Events string `json:"events"`
+ Explicithosttags string `json:"explicithosttags"`
Gpugroup []HostGpugroup `json:"gpugroup"`
Hahost bool `json:"hahost"`
Hasannotations bool `json:"hasannotations"`
@@ -3075,6 +3092,8 @@ type Host struct {
Hypervisor string `json:"hypervisor"`
Hypervisorversion string `json:"hypervisorversion"`
Id string `json:"id"`
+ Implicithosttags string `json:"implicithosttags"`
+ Instanceconversionsupported bool `json:"instanceconversionsupported"`
Ipaddress string `json:"ipaddress"`
Islocalstorageactive bool `json:"islocalstorageactive"`
Istagarule bool `json:"istagarule"`
@@ -3663,6 +3682,7 @@ type ListHostsMetricsResponse struct {
type HostsMetric struct {
Annotation string `json:"annotation"`
+ Arch string `json:"arch"`
Capabilities string `json:"capabilities"`
Clusterid string `json:"clusterid"`
Clustername string `json:"clustername"`
@@ -3691,6 +3711,7 @@ type HostsMetric struct {
Disksizetotal int64 `json:"disksizetotal"`
Encryptionsupported bool `json:"encryptionsupported"`
Events string `json:"events"`
+ Explicithosttags string `json:"explicithosttags"`
Gpugroup []HostsMetricGpugroup `json:"gpugroup"`
Hahost bool `json:"hahost"`
Hasannotations bool `json:"hasannotations"`
@@ -3700,6 +3721,8 @@ type HostsMetric struct {
Hypervisor string `json:"hypervisor"`
Hypervisorversion string `json:"hypervisorversion"`
Id string `json:"id"`
+ Implicithosttags string `json:"implicithosttags"`
+ Instanceconversionsupported bool `json:"instanceconversionsupported"`
Instances string `json:"instances"`
Ipaddress string `json:"ipaddress"`
Islocalstorageactive bool `json:"islocalstorageactive"`
@@ -3844,6 +3867,7 @@ func (s *HostService) PrepareHostForMaintenance(p *PrepareHostForMaintenancePara
type PrepareHostForMaintenanceResponse struct {
Annotation string `json:"annotation"`
+ Arch string `json:"arch"`
Capabilities string `json:"capabilities"`
Clusterid string `json:"clusterid"`
Clustername string `json:"clustername"`
@@ -3865,6 +3889,7 @@ type PrepareHostForMaintenanceResponse struct {
Disksizetotal int64 `json:"disksizetotal"`
Encryptionsupported bool `json:"encryptionsupported"`
Events string `json:"events"`
+ Explicithosttags string `json:"explicithosttags"`
Gpugroup []PrepareHostForMaintenanceResponseGpugroup `json:"gpugroup"`
Hahost bool `json:"hahost"`
Hasannotations bool `json:"hasannotations"`
@@ -3874,6 +3899,8 @@ type PrepareHostForMaintenanceResponse struct {
Hypervisor string `json:"hypervisor"`
Hypervisorversion string `json:"hypervisorversion"`
Id string `json:"id"`
+ Implicithosttags string `json:"implicithosttags"`
+ Instanceconversionsupported bool `json:"instanceconversionsupported"`
Ipaddress string `json:"ipaddress"`
Islocalstorageactive bool `json:"islocalstorageactive"`
Istagarule bool `json:"istagarule"`
@@ -4006,6 +4033,7 @@ func (s *HostService) ReconnectHost(p *ReconnectHostParams) (*ReconnectHostRespo
type ReconnectHostResponse struct {
Annotation string `json:"annotation"`
+ Arch string `json:"arch"`
Capabilities string `json:"capabilities"`
Clusterid string `json:"clusterid"`
Clustername string `json:"clustername"`
@@ -4027,6 +4055,7 @@ type ReconnectHostResponse struct {
Disksizetotal int64 `json:"disksizetotal"`
Encryptionsupported bool `json:"encryptionsupported"`
Events string `json:"events"`
+ Explicithosttags string `json:"explicithosttags"`
Gpugroup []ReconnectHostResponseGpugroup `json:"gpugroup"`
Hahost bool `json:"hahost"`
Hasannotations bool `json:"hasannotations"`
@@ -4036,6 +4065,8 @@ type ReconnectHostResponse struct {
Hypervisor string `json:"hypervisor"`
Hypervisorversion string `json:"hypervisorversion"`
Id string `json:"id"`
+ Implicithosttags string `json:"implicithosttags"`
+ Instanceconversionsupported bool `json:"instanceconversionsupported"`
Ipaddress string `json:"ipaddress"`
Islocalstorageactive bool `json:"islocalstorageactive"`
Istagarule bool `json:"istagarule"`
@@ -4482,6 +4513,7 @@ func (s *HostService) UpdateHost(p *UpdateHostParams) (*UpdateHostResponse, erro
type UpdateHostResponse struct {
Annotation string `json:"annotation"`
+ Arch string `json:"arch"`
Capabilities string `json:"capabilities"`
Clusterid string `json:"clusterid"`
Clustername string `json:"clustername"`
@@ -4503,6 +4535,7 @@ type UpdateHostResponse struct {
Disksizetotal int64 `json:"disksizetotal"`
Encryptionsupported bool `json:"encryptionsupported"`
Events string `json:"events"`
+ Explicithosttags string `json:"explicithosttags"`
Gpugroup []UpdateHostResponseGpugroup `json:"gpugroup"`
Hahost bool `json:"hahost"`
Hasannotations bool `json:"hasannotations"`
@@ -4512,6 +4545,8 @@ type UpdateHostResponse struct {
Hypervisor string `json:"hypervisor"`
Hypervisorversion string `json:"hypervisorversion"`
Id string `json:"id"`
+ Implicithosttags string `json:"implicithosttags"`
+ Instanceconversionsupported bool `json:"instanceconversionsupported"`
Ipaddress string `json:"ipaddress"`
Islocalstorageactive bool `json:"islocalstorageactive"`
Istagarule bool `json:"istagarule"`
diff --git a/cloudstack/HypervisorService.go b/cloudstack/HypervisorService.go
index 949033b..7c89bcd 100644
--- a/cloudstack/HypervisorService.go
+++ b/cloudstack/HypervisorService.go
@@ -325,6 +325,12 @@ func (p *UpdateHypervisorCapabilitiesParams) toURLValues() url.Values {
if p.p == nil {
return u
}
+ if v, found := p.p["hypervisor"]; found {
+ u.Set("hypervisor", v.(string))
+ }
+ if v, found := p.p["hypervisorversion"]; found {
+ u.Set("hypervisorversion", v.(string))
+ }
if v, found := p.p["id"]; found {
u.Set("id", v.(string))
}
@@ -355,6 +361,48 @@ func (p *UpdateHypervisorCapabilitiesParams) toURLValues() url.Values {
return u
}
+func (p *UpdateHypervisorCapabilitiesParams) SetHypervisor(v string) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ p.p["hypervisor"] = v
+}
+
+func (p *UpdateHypervisorCapabilitiesParams) ResetHypervisor() {
+ if p.p != nil && p.p["hypervisor"] != nil {
+ delete(p.p, "hypervisor")
+ }
+}
+
+func (p *UpdateHypervisorCapabilitiesParams) GetHypervisor() (string, bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ value, ok := p.p["hypervisor"].(string)
+ return value, ok
+}
+
+func (p *UpdateHypervisorCapabilitiesParams) SetHypervisorversion(v string) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ p.p["hypervisorversion"] = v
+}
+
+func (p *UpdateHypervisorCapabilitiesParams) ResetHypervisorversion() {
+ if p.p != nil && p.p["hypervisorversion"] != nil {
+ delete(p.p, "hypervisorversion")
+ }
+}
+
+func (p *UpdateHypervisorCapabilitiesParams) GetHypervisorversion() (string, bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ value, ok := p.p["hypervisorversion"].(string)
+ return value, ok
+}
+
func (p *UpdateHypervisorCapabilitiesParams) SetId(v string) {
if p.p == nil {
p.p = make(map[string]interface{})
diff --git a/cloudstack/ISOService.go b/cloudstack/ISOService.go
index 1c055bf..ac00d45 100644
--- a/cloudstack/ISOService.go
+++ b/cloudstack/ISOService.go
@@ -197,6 +197,7 @@ type AttachIsoResponse struct {
Cpuspeed int `json:"cpuspeed"`
Cpuused string `json:"cpuused"`
Created string `json:"created"`
+ Deleteprotection bool `json:"deleteprotection"`
Details map[string]string `json:"details"`
Diskioread int64 `json:"diskioread"`
Diskiowrite int64 `json:"diskiowrite"`
@@ -208,6 +209,7 @@ type AttachIsoResponse struct {
Displayvm bool `json:"displayvm"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Forvirtualnetwork bool `json:"forvirtualnetwork"`
Group string `json:"group"`
Groupid string `json:"groupid"`
@@ -221,6 +223,7 @@ type AttachIsoResponse struct {
Icon interface{} `json:"icon"`
Id string `json:"id"`
Instancename string `json:"instancename"`
+ Ipaddress string `json:"ipaddress"`
Isdynamicallyscalable bool `json:"isdynamicallyscalable"`
Isodisplaytext string `json:"isodisplaytext"`
Isoid string `json:"isoid"`
@@ -258,6 +261,7 @@ type AttachIsoResponse struct {
State string `json:"state"`
Tags []Tags `json:"tags"`
Templatedisplaytext string `json:"templatedisplaytext"`
+ Templateformat string `json:"templateformat"`
Templateid string `json:"templateid"`
Templatename string `json:"templatename"`
Templatetype string `json:"templatetype"`
@@ -269,6 +273,7 @@ type AttachIsoResponse struct {
Userid string `json:"userid"`
Username string `json:"username"`
Vgpu string `json:"vgpu"`
+ Vmtype string `json:"vmtype"`
Vnfdetails map[string]string `json:"vnfdetails"`
Vnfnics []string `json:"vnfnics"`
Zoneid string `json:"zoneid"`
@@ -280,6 +285,7 @@ type AttachIsoResponseSecuritygroup struct {
Description string `json:"description"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Egressrule []AttachIsoResponseSecuritygroupRule `json:"egressrule"`
Id string `json:"id"`
Ingressrule []AttachIsoResponseSecuritygroupRule `json:"ingressrule"`
@@ -305,16 +311,18 @@ type AttachIsoResponseSecuritygroupRule struct {
}
type AttachIsoResponseAffinitygroup struct {
- Account string `json:"account"`
- Description string `json:"description"`
- Domain string `json:"domain"`
- Domainid string `json:"domainid"`
- Id string `json:"id"`
- Name string `json:"name"`
- Project string `json:"project"`
- Projectid string `json:"projectid"`
- Type string `json:"type"`
- VirtualmachineIds []string `json:"virtualmachineIds"`
+ Account string `json:"account"`
+ Dedicatedresources []string `json:"dedicatedresources"`
+ Description string `json:"description"`
+ Domain string `json:"domain"`
+ Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
+ Id string `json:"id"`
+ Name string `json:"name"`
+ Project string `json:"project"`
+ Projectid string `json:"projectid"`
+ Type string `json:"type"`
+ VirtualmachineIds []string `json:"virtualmachineIds"`
}
func (r *AttachIsoResponse) UnmarshalJSON(b []byte) error {
@@ -500,6 +508,7 @@ func (s *ISOService) CopyIso(p *CopyIsoParams) (*CopyIsoResponse, error) {
type CopyIsoResponse struct {
Account string `json:"account"`
Accountid string `json:"accountid"`
+ Arch string `json:"arch"`
Bits int `json:"bits"`
Bootable bool `json:"bootable"`
Checksum string `json:"checksum"`
@@ -513,6 +522,7 @@ type CopyIsoResponse struct {
Displaytext string `json:"displaytext"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Downloaddetails []map[string]string `json:"downloaddetails"`
Format string `json:"format"`
Hasannotations bool `json:"hasannotations"`
@@ -805,6 +815,7 @@ type DetachIsoResponse struct {
Cpuspeed int `json:"cpuspeed"`
Cpuused string `json:"cpuused"`
Created string `json:"created"`
+ Deleteprotection bool `json:"deleteprotection"`
Details map[string]string `json:"details"`
Diskioread int64 `json:"diskioread"`
Diskiowrite int64 `json:"diskiowrite"`
@@ -816,6 +827,7 @@ type DetachIsoResponse struct {
Displayvm bool `json:"displayvm"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Forvirtualnetwork bool `json:"forvirtualnetwork"`
Group string `json:"group"`
Groupid string `json:"groupid"`
@@ -829,6 +841,7 @@ type DetachIsoResponse struct {
Icon interface{} `json:"icon"`
Id string `json:"id"`
Instancename string `json:"instancename"`
+ Ipaddress string `json:"ipaddress"`
Isdynamicallyscalable bool `json:"isdynamicallyscalable"`
Isodisplaytext string `json:"isodisplaytext"`
Isoid string `json:"isoid"`
@@ -866,6 +879,7 @@ type DetachIsoResponse struct {
State string `json:"state"`
Tags []Tags `json:"tags"`
Templatedisplaytext string `json:"templatedisplaytext"`
+ Templateformat string `json:"templateformat"`
Templateid string `json:"templateid"`
Templatename string `json:"templatename"`
Templatetype string `json:"templatetype"`
@@ -877,6 +891,7 @@ type DetachIsoResponse struct {
Userid string `json:"userid"`
Username string `json:"username"`
Vgpu string `json:"vgpu"`
+ Vmtype string `json:"vmtype"`
Vnfdetails map[string]string `json:"vnfdetails"`
Vnfnics []string `json:"vnfnics"`
Zoneid string `json:"zoneid"`
@@ -888,6 +903,7 @@ type DetachIsoResponseSecuritygroup struct {
Description string `json:"description"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Egressrule []DetachIsoResponseSecuritygroupRule `json:"egressrule"`
Id string `json:"id"`
Ingressrule []DetachIsoResponseSecuritygroupRule `json:"ingressrule"`
@@ -913,16 +929,18 @@ type DetachIsoResponseSecuritygroupRule struct {
}
type DetachIsoResponseAffinitygroup struct {
- Account string `json:"account"`
- Description string `json:"description"`
- Domain string `json:"domain"`
- Domainid string `json:"domainid"`
- Id string `json:"id"`
- Name string `json:"name"`
- Project string `json:"project"`
- Projectid string `json:"projectid"`
- Type string `json:"type"`
- VirtualmachineIds []string `json:"virtualmachineIds"`
+ Account string `json:"account"`
+ Dedicatedresources []string `json:"dedicatedresources"`
+ Description string `json:"description"`
+ Domain string `json:"domain"`
+ Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
+ Id string `json:"id"`
+ Name string `json:"name"`
+ Project string `json:"project"`
+ Projectid string `json:"projectid"`
+ Type string `json:"type"`
+ VirtualmachineIds []string `json:"virtualmachineIds"`
}
func (r *DetachIsoResponse) UnmarshalJSON(b []byte) error {
@@ -1244,6 +1262,9 @@ func (p *ListIsosParams) toURLValues() url.Values {
if v, found := p.p["account"]; found {
u.Set("account", v.(string))
}
+ if v, found := p.p["arch"]; found {
+ u.Set("arch", v.(string))
+ }
if v, found := p.p["bootable"]; found {
vv := strconv.FormatBool(v.(bool))
u.Set("bootable", vv)
@@ -1345,6 +1366,27 @@ func (p *ListIsosParams) GetAccount() (string, bool) {
return value, ok
}
+func (p *ListIsosParams) SetArch(v string) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ p.p["arch"] = v
+}
+
+func (p *ListIsosParams) ResetArch() {
+ if p.p != nil && p.p["arch"] != nil {
+ delete(p.p, "arch")
+ }
+}
+
+func (p *ListIsosParams) GetArch() (string, bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ value, ok := p.p["arch"].(string)
+ return value, ok
+}
+
func (p *ListIsosParams) SetBootable(v bool) {
if p.p == nil {
p.p = make(map[string]interface{})
@@ -1902,6 +1944,7 @@ type ListIsosResponse struct {
type Iso struct {
Account string `json:"account"`
Accountid string `json:"accountid"`
+ Arch string `json:"arch"`
Bits int `json:"bits"`
Bootable bool `json:"bootable"`
Checksum string `json:"checksum"`
@@ -1915,6 +1958,7 @@ type Iso struct {
Displaytext string `json:"displaytext"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Downloaddetails []map[string]string `json:"downloaddetails"`
Format string `json:"format"`
Hasannotations bool `json:"hasannotations"`
@@ -1995,6 +2039,9 @@ func (p *RegisterIsoParams) toURLValues() url.Values {
if v, found := p.p["account"]; found {
u.Set("account", v.(string))
}
+ if v, found := p.p["arch"]; found {
+ u.Set("arch", v.(string))
+ }
if v, found := p.p["bootable"]; found {
vv := strconv.FormatBool(v.(bool))
u.Set("bootable", vv)
@@ -2074,6 +2121,27 @@ func (p *RegisterIsoParams) GetAccount() (string, bool) {
return value, ok
}
+func (p *RegisterIsoParams) SetArch(v string) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ p.p["arch"] = v
+}
+
+func (p *RegisterIsoParams) ResetArch() {
+ if p.p != nil && p.p["arch"] != nil {
+ delete(p.p, "arch")
+ }
+}
+
+func (p *RegisterIsoParams) GetArch() (string, bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ value, ok := p.p["arch"].(string)
+ return value, ok
+}
+
func (p *RegisterIsoParams) SetBootable(v bool) {
if p.p == nil {
p.p = make(map[string]interface{})
@@ -2444,6 +2512,7 @@ func (s *ISOService) RegisterIso(p *RegisterIsoParams) (*RegisterIsoResponse, er
type RegisterIsoResponse struct {
Account string `json:"account"`
Accountid string `json:"accountid"`
+ Arch string `json:"arch"`
Bits int `json:"bits"`
Bootable bool `json:"bootable"`
Checksum string `json:"checksum"`
@@ -2457,6 +2526,7 @@ type RegisterIsoResponse struct {
Displaytext string `json:"displaytext"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Downloaddetails []map[string]string `json:"downloaddetails"`
Format string `json:"format"`
Hasannotations bool `json:"hasannotations"`
@@ -2534,6 +2604,9 @@ func (p *UpdateIsoParams) toURLValues() url.Values {
if p.p == nil {
return u
}
+ if v, found := p.p["arch"]; found {
+ u.Set("arch", v.(string))
+ }
if v, found := p.p["bootable"]; found {
vv := strconv.FormatBool(v.(bool))
u.Set("bootable", vv)
@@ -2590,6 +2663,27 @@ func (p *UpdateIsoParams) toURLValues() url.Values {
return u
}
+func (p *UpdateIsoParams) SetArch(v string) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ p.p["arch"] = v
+}
+
+func (p *UpdateIsoParams) ResetArch() {
+ if p.p != nil && p.p["arch"] != nil {
+ delete(p.p, "arch")
+ }
+}
+
+func (p *UpdateIsoParams) GetArch() (string, bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ value, ok := p.p["arch"].(string)
+ return value, ok
+}
+
func (p *UpdateIsoParams) SetBootable(v bool) {
if p.p == nil {
p.p = make(map[string]interface{})
@@ -2911,6 +3005,7 @@ func (s *ISOService) UpdateIso(p *UpdateIsoParams) (*UpdateIsoResponse, error) {
type UpdateIsoResponse struct {
Account string `json:"account"`
Accountid string `json:"accountid"`
+ Arch string `json:"arch"`
Bits int `json:"bits"`
Bootable bool `json:"bootable"`
Checksum string `json:"checksum"`
@@ -2924,6 +3019,7 @@ type UpdateIsoResponse struct {
Displaytext string `json:"displaytext"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Downloaddetails []map[string]string `json:"downloaddetails"`
Format string `json:"format"`
Hasannotations bool `json:"hasannotations"`
diff --git a/cloudstack/InternalLBService.go b/cloudstack/InternalLBService.go
index 9c4f1e1..b4a27c8 100644
--- a/cloudstack/InternalLBService.go
+++ b/cloudstack/InternalLBService.go
@@ -1044,6 +1044,7 @@ type InternalLoadBalancerVM struct {
Dns2 string `json:"dns2"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Gateway string `json:"gateway"`
Guestipaddress string `json:"guestipaddress"`
Guestmacaddress string `json:"guestmacaddress"`
@@ -1190,6 +1191,7 @@ type StartInternalLoadBalancerVMResponse struct {
Dns2 string `json:"dns2"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Gateway string `json:"gateway"`
Guestipaddress string `json:"guestipaddress"`
Guestmacaddress string `json:"guestmacaddress"`
@@ -1361,6 +1363,7 @@ type StopInternalLoadBalancerVMResponse struct {
Dns2 string `json:"dns2"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Gateway string `json:"gateway"`
Guestipaddress string `json:"guestipaddress"`
Guestmacaddress string `json:"guestmacaddress"`
diff --git a/cloudstack/KubernetesService.go b/cloudstack/KubernetesService.go
index 2aaf352..9b06673 100644
--- a/cloudstack/KubernetesService.go
+++ b/cloudstack/KubernetesService.go
@@ -73,6 +73,9 @@ func (p *AddKubernetesSupportedVersionParams) toURLValues() url.Values {
if p.p == nil {
return u
}
+ if v, found := p.p["arch"]; found {
+ u.Set("arch", v.(string))
+ }
if v, found := p.p["checksum"]; found {
u.Set("checksum", v.(string))
}
@@ -103,6 +106,27 @@ func (p *AddKubernetesSupportedVersionParams) toURLValues() url.Values {
return u
}
+func (p *AddKubernetesSupportedVersionParams) SetArch(v string) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ p.p["arch"] = v
+}
+
+func (p *AddKubernetesSupportedVersionParams) ResetArch() {
+ if p.p != nil && p.p["arch"] != nil {
+ delete(p.p, "arch")
+ }
+}
+
+func (p *AddKubernetesSupportedVersionParams) GetArch() (string, bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ value, ok := p.p["arch"].(string)
+ return value, ok
+}
+
func (p *AddKubernetesSupportedVersionParams) SetChecksum(v string) {
if p.p == nil {
p.p = make(map[string]interface{})
@@ -854,6 +878,7 @@ type CreateKubernetesClusterResponse struct {
Description string `json:"description"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Endpoint string `json:"endpoint"`
Hasannotations bool `json:"hasannotations"`
Id string `json:"id"`
@@ -1593,6 +1618,7 @@ type KubernetesCluster struct {
Description string `json:"description"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Endpoint string `json:"endpoint"`
Hasannotations bool `json:"hasannotations"`
Id string `json:"id"`
@@ -2175,6 +2201,7 @@ type ScaleKubernetesClusterResponse struct {
Description string `json:"description"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Endpoint string `json:"endpoint"`
Hasannotations bool `json:"hasannotations"`
Id string `json:"id"`
@@ -2295,6 +2322,7 @@ type StartKubernetesClusterResponse struct {
Description string `json:"description"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Endpoint string `json:"endpoint"`
Hasannotations bool `json:"hasannotations"`
Id string `json:"id"`
@@ -2627,6 +2655,7 @@ type UpgradeKubernetesClusterResponse struct {
Description string `json:"description"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Endpoint string `json:"endpoint"`
Hasannotations bool `json:"hasannotations"`
Id string `json:"id"`
diff --git a/cloudstack/LDAPService.go b/cloudstack/LDAPService.go
index 4c25f23..4d3a707 100644
--- a/cloudstack/LDAPService.go
+++ b/cloudstack/LDAPService.go
@@ -1196,6 +1196,7 @@ type LdapCreateAccountResponse struct {
Snapshotlimit string `json:"snapshotlimit"`
Snapshottotal int64 `json:"snapshottotal"`
State string `json:"state"`
+ Taggedresources []string `json:"taggedresources"`
Templateavailable string `json:"templateavailable"`
Templatelimit string `json:"templatelimit"`
Templatetotal int64 `json:"templatetotal"`
diff --git a/cloudstack/LimitService.go b/cloudstack/LimitService.go
index 81b6513..58e74e5 100644
--- a/cloudstack/LimitService.go
+++ b/cloudstack/LimitService.go
@@ -131,6 +131,9 @@ func (p *ListResourceLimitsParams) toURLValues() url.Values {
if v, found := p.p["resourcetypename"]; found {
u.Set("resourcetypename", v.(string))
}
+ if v, found := p.p["tag"]; found {
+ u.Set("tag", v.(string))
+ }
return u
}
@@ -365,6 +368,27 @@ func (p *ListResourceLimitsParams) GetResourcetypename() (string, bool) {
return value, ok
}
+func (p *ListResourceLimitsParams) SetTag(v string) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ p.p["tag"] = v
+}
+
+func (p *ListResourceLimitsParams) ResetTag() {
+ if p.p != nil && p.p["tag"] != nil {
+ delete(p.p, "tag")
+ }
+}
+
+func (p *ListResourceLimitsParams) GetTag() (string, bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ value, ok := p.p["tag"].(string)
+ return value, ok
+}
+
// You should always use this function to get a new ListResourceLimitsParams instance,
// as then you are sure you have configured all required params
func (s *LimitService) NewListResourceLimitsParams() *ListResourceLimitsParams {
@@ -397,6 +421,7 @@ type ResourceLimit struct {
Account string `json:"account"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
JobID string `json:"jobid"`
Jobstatus int `json:"jobstatus"`
Max int64 `json:"max"`
@@ -404,6 +429,7 @@ type ResourceLimit struct {
Projectid string `json:"projectid"`
Resourcetype string `json:"resourcetype"`
Resourcetypename string `json:"resourcetypename"`
+ Tag string `json:"tag"`
}
type ResetApiLimitParams struct {
@@ -521,6 +547,9 @@ func (p *UpdateResourceCountParams) toURLValues() url.Values {
vv := strconv.Itoa(v.(int))
u.Set("resourcetype", vv)
}
+ if v, found := p.p["tag"]; found {
+ u.Set("tag", v.(string))
+ }
return u
}
@@ -608,6 +637,27 @@ func (p *UpdateResourceCountParams) GetResourcetype() (int, bool) {
return value, ok
}
+func (p *UpdateResourceCountParams) SetTag(v string) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ p.p["tag"] = v
+}
+
+func (p *UpdateResourceCountParams) ResetTag() {
+ if p.p != nil && p.p["tag"] != nil {
+ delete(p.p, "tag")
+ }
+}
+
+func (p *UpdateResourceCountParams) GetTag() (string, bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ value, ok := p.p["tag"].(string)
+ return value, ok
+}
+
// You should always use this function to get a new UpdateResourceCountParams instance,
// as then you are sure you have configured all required params
func (s *LimitService) NewUpdateResourceCountParams(domainid string) *UpdateResourceCountParams {
@@ -617,7 +667,7 @@ func (s *LimitService) NewUpdateResourceCountParams(domainid string) *UpdateReso
return p
}
-// Recalculate and update resource count for an account or domain.
+// Recalculate and update resource count for an account or domain. This also executes some cleanup tasks before calculating resource counts.
func (s *LimitService) UpdateResourceCount(p *UpdateResourceCountParams) (*UpdateResourceCountResponse, error) {
resp, err := s.cs.newRequest("updateResourceCount", p.toURLValues())
if err != nil {
@@ -636,6 +686,7 @@ type UpdateResourceCountResponse struct {
Account string `json:"account"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
JobID string `json:"jobid"`
Jobstatus int `json:"jobstatus"`
Project string `json:"project"`
@@ -643,6 +694,7 @@ type UpdateResourceCountResponse struct {
Resourcecount int64 `json:"resourcecount"`
Resourcetype string `json:"resourcetype"`
Resourcetypename string `json:"resourcetypename"`
+ Tag string `json:"tag"`
}
type UpdateResourceLimitParams struct {
@@ -671,6 +723,9 @@ func (p *UpdateResourceLimitParams) toURLValues() url.Values {
vv := strconv.Itoa(v.(int))
u.Set("resourcetype", vv)
}
+ if v, found := p.p["tag"]; found {
+ u.Set("tag", v.(string))
+ }
return u
}
@@ -779,6 +834,27 @@ func (p *UpdateResourceLimitParams) GetResourcetype() (int, bool) {
return value, ok
}
+func (p *UpdateResourceLimitParams) SetTag(v string) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ p.p["tag"] = v
+}
+
+func (p *UpdateResourceLimitParams) ResetTag() {
+ if p.p != nil && p.p["tag"] != nil {
+ delete(p.p, "tag")
+ }
+}
+
+func (p *UpdateResourceLimitParams) GetTag() (string, bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ value, ok := p.p["tag"].(string)
+ return value, ok
+}
+
// You should always use this function to get a new UpdateResourceLimitParams instance,
// as then you are sure you have configured all required params
func (s *LimitService) NewUpdateResourceLimitParams(resourcetype int) *UpdateResourceLimitParams {
@@ -807,6 +883,7 @@ type UpdateResourceLimitResponse struct {
Account string `json:"account"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
JobID string `json:"jobid"`
Jobstatus int `json:"jobstatus"`
Max int64 `json:"max"`
@@ -814,4 +891,5 @@ type UpdateResourceLimitResponse struct {
Projectid string `json:"projectid"`
Resourcetype string `json:"resourcetype"`
Resourcetypename string `json:"resourcetypename"`
+ Tag string `json:"tag"`
}
diff --git a/cloudstack/LoadBalancerService.go b/cloudstack/LoadBalancerService.go
index 5a40d05..674a22a 100644
--- a/cloudstack/LoadBalancerService.go
+++ b/cloudstack/LoadBalancerService.go
@@ -1267,6 +1267,7 @@ type CreateGlobalLoadBalancerRuleResponse struct {
Description string `json:"description"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Gslbdomainname string `json:"gslbdomainname"`
Gslblbmethod string `json:"gslblbmethod"`
Gslbservicetype string `json:"gslbservicetype"`
@@ -1288,6 +1289,7 @@ type CreateGlobalLoadBalancerRuleResponseLoadbalancerrule struct {
Description string `json:"description"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Fordisplay bool `json:"fordisplay"`
Id string `json:"id"`
Name string `json:"name"`
@@ -2123,6 +2125,7 @@ type CreateLoadBalancerResponse struct {
Description string `json:"description"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Fordisplay bool `json:"fordisplay"`
Id string `json:"id"`
JobID string `json:"jobid"`
@@ -2558,6 +2561,7 @@ type CreateLoadBalancerRuleResponse struct {
Description string `json:"description"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Fordisplay bool `json:"fordisplay"`
Id string `json:"id"`
JobID string `json:"jobid"`
@@ -3564,6 +3568,7 @@ type GlobalLoadBalancerRule struct {
Description string `json:"description"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Gslbdomainname string `json:"gslbdomainname"`
Gslblbmethod string `json:"gslblbmethod"`
Gslbservicetype string `json:"gslbservicetype"`
@@ -3585,6 +3590,7 @@ type GlobalLoadBalancerRuleLoadbalancerrule struct {
Description string `json:"description"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Fordisplay bool `json:"fordisplay"`
Id string `json:"id"`
Name string `json:"name"`
@@ -4842,6 +4848,7 @@ type LoadBalancerRule struct {
Description string `json:"description"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Fordisplay bool `json:"fordisplay"`
Id string `json:"id"`
JobID string `json:"jobid"`
@@ -5383,6 +5390,7 @@ type LoadBalancer struct {
Description string `json:"description"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Fordisplay bool `json:"fordisplay"`
Id string `json:"id"`
JobID string `json:"jobid"`
@@ -6227,6 +6235,7 @@ type UpdateGlobalLoadBalancerRuleResponse struct {
Description string `json:"description"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Gslbdomainname string `json:"gslbdomainname"`
Gslblbmethod string `json:"gslblbmethod"`
Gslbservicetype string `json:"gslbservicetype"`
@@ -6248,6 +6257,7 @@ type UpdateGlobalLoadBalancerRuleResponseLoadbalancerrule struct {
Description string `json:"description"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Fordisplay bool `json:"fordisplay"`
Id string `json:"id"`
Name string `json:"name"`
@@ -6705,6 +6715,7 @@ type UpdateLoadBalancerResponse struct {
Description string `json:"description"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Fordisplay bool `json:"fordisplay"`
Id string `json:"id"`
JobID string `json:"jobid"`
@@ -6965,6 +6976,7 @@ type UpdateLoadBalancerRuleResponse struct {
Description string `json:"description"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Fordisplay bool `json:"fordisplay"`
Id string `json:"id"`
JobID string `json:"jobid"`
diff --git a/cloudstack/NetworkOfferingService.go b/cloudstack/NetworkOfferingService.go
index 3f0e3c2..3572bad 100644
--- a/cloudstack/NetworkOfferingService.go
+++ b/cloudstack/NetworkOfferingService.go
@@ -78,6 +78,10 @@ func (p *CreateNetworkOfferingParams) toURLValues() url.Values {
vv := strconv.FormatBool(v.(bool))
u.Set("enable", vv)
}
+ if v, found := p.p["fornsx"]; found {
+ vv := strconv.FormatBool(v.(bool))
+ u.Set("fornsx", vv)
+ }
if v, found := p.p["fortungsten"]; found {
vv := strconv.FormatBool(v.(bool))
u.Set("fortungsten", vv)
@@ -107,10 +111,24 @@ func (p *CreateNetworkOfferingParams) toURLValues() url.Values {
if v, found := p.p["name"]; found {
u.Set("name", v.(string))
}
+ if v, found := p.p["networkmode"]; found {
+ u.Set("networkmode", v.(string))
+ }
if v, found := p.p["networkrate"]; found {
vv := strconv.Itoa(v.(int))
u.Set("networkrate", vv)
}
+ if v, found := p.p["nsxsupportlb"]; found {
+ vv := strconv.FormatBool(v.(bool))
+ u.Set("nsxsupportlb", vv)
+ }
+ if v, found := p.p["nsxsupportsinternallb"]; found {
+ vv := strconv.FormatBool(v.(bool))
+ u.Set("nsxsupportsinternallb", vv)
+ }
+ if v, found := p.p["routingmode"]; found {
+ u.Set("routingmode", v.(string))
+ }
if v, found := p.p["servicecapabilitylist"]; found {
m := v.(map[string]string)
for i, k := range getSortedKeysFromMap(m) {
@@ -128,6 +146,10 @@ func (p *CreateNetworkOfferingParams) toURLValues() url.Values {
u.Set(fmt.Sprintf("serviceproviderlist[%d].provider", i), m[k])
}
}
+ if v, found := p.p["specifyasnumber"]; found {
+ vv := strconv.FormatBool(v.(bool))
+ u.Set("specifyasnumber", vv)
+ }
if v, found := p.p["specifyipranges"]; found {
vv := strconv.FormatBool(v.(bool))
u.Set("specifyipranges", vv)
@@ -300,6 +322,27 @@ func (p *CreateNetworkOfferingParams) GetEnable() (bool, bool) {
return value, ok
}
+func (p *CreateNetworkOfferingParams) SetFornsx(v bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ p.p["fornsx"] = v
+}
+
+func (p *CreateNetworkOfferingParams) ResetFornsx() {
+ if p.p != nil && p.p["fornsx"] != nil {
+ delete(p.p, "fornsx")
+ }
+}
+
+func (p *CreateNetworkOfferingParams) GetFornsx() (bool, bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ value, ok := p.p["fornsx"].(bool)
+ return value, ok
+}
+
func (p *CreateNetworkOfferingParams) SetFortungsten(v bool) {
if p.p == nil {
p.p = make(map[string]interface{})
@@ -468,6 +511,27 @@ func (p *CreateNetworkOfferingParams) GetName() (string, bool) {
return value, ok
}
+func (p *CreateNetworkOfferingParams) SetNetworkmode(v string) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ p.p["networkmode"] = v
+}
+
+func (p *CreateNetworkOfferingParams) ResetNetworkmode() {
+ if p.p != nil && p.p["networkmode"] != nil {
+ delete(p.p, "networkmode")
+ }
+}
+
+func (p *CreateNetworkOfferingParams) GetNetworkmode() (string, bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ value, ok := p.p["networkmode"].(string)
+ return value, ok
+}
+
func (p *CreateNetworkOfferingParams) SetNetworkrate(v int) {
if p.p == nil {
p.p = make(map[string]interface{})
@@ -489,6 +553,69 @@ func (p *CreateNetworkOfferingParams) GetNetworkrate() (int, bool) {
return value, ok
}
+func (p *CreateNetworkOfferingParams) SetNsxsupportlb(v bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ p.p["nsxsupportlb"] = v
+}
+
+func (p *CreateNetworkOfferingParams) ResetNsxsupportlb() {
+ if p.p != nil && p.p["nsxsupportlb"] != nil {
+ delete(p.p, "nsxsupportlb")
+ }
+}
+
+func (p *CreateNetworkOfferingParams) GetNsxsupportlb() (bool, bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ value, ok := p.p["nsxsupportlb"].(bool)
+ return value, ok
+}
+
+func (p *CreateNetworkOfferingParams) SetNsxsupportsinternallb(v bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ p.p["nsxsupportsinternallb"] = v
+}
+
+func (p *CreateNetworkOfferingParams) ResetNsxsupportsinternallb() {
+ if p.p != nil && p.p["nsxsupportsinternallb"] != nil {
+ delete(p.p, "nsxsupportsinternallb")
+ }
+}
+
+func (p *CreateNetworkOfferingParams) GetNsxsupportsinternallb() (bool, bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ value, ok := p.p["nsxsupportsinternallb"].(bool)
+ return value, ok
+}
+
+func (p *CreateNetworkOfferingParams) SetRoutingmode(v string) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ p.p["routingmode"] = v
+}
+
+func (p *CreateNetworkOfferingParams) ResetRoutingmode() {
+ if p.p != nil && p.p["routingmode"] != nil {
+ delete(p.p, "routingmode")
+ }
+}
+
+func (p *CreateNetworkOfferingParams) GetRoutingmode() (string, bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ value, ok := p.p["routingmode"].(string)
+ return value, ok
+}
+
func (p *CreateNetworkOfferingParams) SetServicecapabilitylist(v map[string]string) {
if p.p == nil {
p.p = make(map[string]interface{})
@@ -552,6 +679,27 @@ func (p *CreateNetworkOfferingParams) GetServiceproviderlist() (map[string]strin
return value, ok
}
+func (p *CreateNetworkOfferingParams) SetSpecifyasnumber(v bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ p.p["specifyasnumber"] = v
+}
+
+func (p *CreateNetworkOfferingParams) ResetSpecifyasnumber() {
+ if p.p != nil && p.p["specifyasnumber"] != nil {
+ delete(p.p, "specifyasnumber")
+ }
+}
+
+func (p *CreateNetworkOfferingParams) GetSpecifyasnumber() (bool, bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ value, ok := p.p["specifyasnumber"].(bool)
+ return value, ok
+}
+
func (p *CreateNetworkOfferingParams) SetSpecifyipranges(v bool) {
if p.p == nil {
p.p = make(map[string]interface{})
@@ -718,6 +866,7 @@ type CreateNetworkOfferingResponse struct {
Domain string `json:"domain"`
Domainid string `json:"domainid"`
Egressdefaultpolicy bool `json:"egressdefaultpolicy"`
+ Fornsx bool `json:"fornsx"`
Fortungsten bool `json:"fortungsten"`
Forvpc bool `json:"forvpc"`
Guestiptype string `json:"guestiptype"`
@@ -730,12 +879,16 @@ type CreateNetworkOfferingResponse struct {
Jobstatus int `json:"jobstatus"`
Maxconnections int `json:"maxconnections"`
Name string `json:"name"`
+ Networkmode string `json:"networkmode"`
Networkrate int `json:"networkrate"`
+ Routingmode string `json:"routingmode"`
Service []CreateNetworkOfferingResponseService `json:"service"`
Serviceofferingid string `json:"serviceofferingid"`
+ Specifyasnumber bool `json:"specifyasnumber"`
Specifyipranges bool `json:"specifyipranges"`
Specifyvlan bool `json:"specifyvlan"`
State string `json:"state"`
+ Supportsinternallb bool `json:"supportsinternallb"`
Supportspublicaccess bool `json:"supportspublicaccess"`
Supportsstrechedl2subnet bool `json:"supportsstrechedl2subnet"`
Tags string `json:"tags"`
@@ -913,6 +1066,9 @@ func (p *ListNetworkOfferingsParams) toURLValues() url.Values {
vv := strconv.Itoa(v.(int))
u.Set("pagesize", vv)
}
+ if v, found := p.p["routingmode"]; found {
+ u.Set("routingmode", v.(string))
+ }
if v, found := p.p["sourcenatsupported"]; found {
vv := strconv.FormatBool(v.(bool))
u.Set("sourcenatsupported", vv)
@@ -1217,6 +1373,27 @@ func (p *ListNetworkOfferingsParams) GetPagesize() (int, bool) {
return value, ok
}
+func (p *ListNetworkOfferingsParams) SetRoutingmode(v string) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ p.p["routingmode"] = v
+}
+
+func (p *ListNetworkOfferingsParams) ResetRoutingmode() {
+ if p.p != nil && p.p["routingmode"] != nil {
+ delete(p.p, "routingmode")
+ }
+}
+
+func (p *ListNetworkOfferingsParams) GetRoutingmode() (string, bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ value, ok := p.p["routingmode"].(string)
+ return value, ok
+}
+
func (p *ListNetworkOfferingsParams) SetSourcenatsupported(v bool) {
if p.p == nil {
p.p = make(map[string]interface{})
@@ -1505,6 +1682,7 @@ type NetworkOffering struct {
Domain string `json:"domain"`
Domainid string `json:"domainid"`
Egressdefaultpolicy bool `json:"egressdefaultpolicy"`
+ Fornsx bool `json:"fornsx"`
Fortungsten bool `json:"fortungsten"`
Forvpc bool `json:"forvpc"`
Guestiptype string `json:"guestiptype"`
@@ -1517,12 +1695,16 @@ type NetworkOffering struct {
Jobstatus int `json:"jobstatus"`
Maxconnections int `json:"maxconnections"`
Name string `json:"name"`
+ Networkmode string `json:"networkmode"`
Networkrate int `json:"networkrate"`
+ Routingmode string `json:"routingmode"`
Service []NetworkOfferingServiceInternal `json:"service"`
Serviceofferingid string `json:"serviceofferingid"`
+ Specifyasnumber bool `json:"specifyasnumber"`
Specifyipranges bool `json:"specifyipranges"`
Specifyvlan bool `json:"specifyvlan"`
State string `json:"state"`
+ Supportsinternallb bool `json:"supportsinternallb"`
Supportspublicaccess bool `json:"supportspublicaccess"`
Supportsstrechedl2subnet bool `json:"supportsstrechedl2subnet"`
Tags string `json:"tags"`
@@ -1868,6 +2050,7 @@ type UpdateNetworkOfferingResponse struct {
Domain string `json:"domain"`
Domainid string `json:"domainid"`
Egressdefaultpolicy bool `json:"egressdefaultpolicy"`
+ Fornsx bool `json:"fornsx"`
Fortungsten bool `json:"fortungsten"`
Forvpc bool `json:"forvpc"`
Guestiptype string `json:"guestiptype"`
@@ -1880,12 +2063,16 @@ type UpdateNetworkOfferingResponse struct {
Jobstatus int `json:"jobstatus"`
Maxconnections int `json:"maxconnections"`
Name string `json:"name"`
+ Networkmode string `json:"networkmode"`
Networkrate int `json:"networkrate"`
+ Routingmode string `json:"routingmode"`
Service []UpdateNetworkOfferingResponseService `json:"service"`
Serviceofferingid string `json:"serviceofferingid"`
+ Specifyasnumber bool `json:"specifyasnumber"`
Specifyipranges bool `json:"specifyipranges"`
Specifyvlan bool `json:"specifyvlan"`
State string `json:"state"`
+ Supportsinternallb bool `json:"supportsinternallb"`
Supportspublicaccess bool `json:"supportspublicaccess"`
Supportsstrechedl2subnet bool `json:"supportsstrechedl2subnet"`
Tags string `json:"tags"`
diff --git a/cloudstack/NetworkService.go b/cloudstack/NetworkService.go
index 847ecfe..93dcc8d 100644
--- a/cloudstack/NetworkService.go
+++ b/cloudstack/NetworkService.go
@@ -462,13 +462,25 @@ func (p *CreateNetworkParams) toURLValues() url.Values {
if v, found := p.p["acltype"]; found {
u.Set("acltype", v.(string))
}
+ if v, found := p.p["asnumber"]; found {
+ vv := strconv.FormatInt(v.(int64), 10)
+ u.Set("asnumber", vv)
+ }
if v, found := p.p["associatednetworkid"]; found {
u.Set("associatednetworkid", v.(string))
}
+ if v, found := p.p["bgppeerids"]; found {
+ vv := strings.Join(v.([]string), ",")
+ u.Set("bgppeerids", vv)
+ }
if v, found := p.p["bypassvlanoverlapcheck"]; found {
vv := strconv.FormatBool(v.(bool))
u.Set("bypassvlanoverlapcheck", vv)
}
+ if v, found := p.p["cidrsize"]; found {
+ vv := strconv.Itoa(v.(int))
+ u.Set("cidrsize", vv)
+ }
if v, found := p.p["displaynetwork"]; found {
vv := strconv.FormatBool(v.(bool))
u.Set("displaynetwork", vv)
@@ -642,6 +654,27 @@ func (p *CreateNetworkParams) GetAcltype() (string, bool) {
return value, ok
}
+func (p *CreateNetworkParams) SetAsnumber(v int64) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ p.p["asnumber"] = v
+}
+
+func (p *CreateNetworkParams) ResetAsnumber() {
+ if p.p != nil && p.p["asnumber"] != nil {
+ delete(p.p, "asnumber")
+ }
+}
+
+func (p *CreateNetworkParams) GetAsnumber() (int64, bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ value, ok := p.p["asnumber"].(int64)
+ return value, ok
+}
+
func (p *CreateNetworkParams) SetAssociatednetworkid(v string) {
if p.p == nil {
p.p = make(map[string]interface{})
@@ -663,6 +696,27 @@ func (p *CreateNetworkParams) GetAssociatednetworkid() (string, bool) {
return value, ok
}
+func (p *CreateNetworkParams) SetBgppeerids(v []string) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ p.p["bgppeerids"] = v
+}
+
+func (p *CreateNetworkParams) ResetBgppeerids() {
+ if p.p != nil && p.p["bgppeerids"] != nil {
+ delete(p.p, "bgppeerids")
+ }
+}
+
+func (p *CreateNetworkParams) GetBgppeerids() ([]string, bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ value, ok := p.p["bgppeerids"].([]string)
+ return value, ok
+}
+
func (p *CreateNetworkParams) SetBypassvlanoverlapcheck(v bool) {
if p.p == nil {
p.p = make(map[string]interface{})
@@ -684,6 +738,27 @@ func (p *CreateNetworkParams) GetBypassvlanoverlapcheck() (bool, bool) {
return value, ok
}
+func (p *CreateNetworkParams) SetCidrsize(v int) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ p.p["cidrsize"] = v
+}
+
+func (p *CreateNetworkParams) ResetCidrsize() {
+ if p.p != nil && p.p["cidrsize"] != nil {
+ delete(p.p, "cidrsize")
+ }
+}
+
+func (p *CreateNetworkParams) GetCidrsize() (int, bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ value, ok := p.p["cidrsize"].(int)
+ return value, ok
+}
+
func (p *CreateNetworkParams) SetDisplaynetwork(v bool) {
if p.p == nil {
p.p = make(map[string]interface{})
@@ -1433,8 +1508,11 @@ type CreateNetworkResponse struct {
Aclid string `json:"aclid"`
Aclname string `json:"aclname"`
Acltype string `json:"acltype"`
+ Asnumber int64 `json:"asnumber"`
+ Asnumberid string `json:"asnumberid"`
Associatednetwork string `json:"associatednetwork"`
Associatednetworkid string `json:"associatednetworkid"`
+ Bgppeers []interface{} `json:"bgppeers"`
Broadcastdomaintype string `json:"broadcastdomaintype"`
Broadcasturi string `json:"broadcasturi"`
Canusefordeploy bool `json:"canusefordeploy"`
@@ -1455,6 +1533,8 @@ type CreateNetworkResponse struct {
Icon interface{} `json:"icon"`
Id string `json:"id"`
Internetprotocol string `json:"internetprotocol"`
+ Ip4routes []interface{} `json:"ip4routes"`
+ Ip4routing string `json:"ip4routing"`
Ip6cidr string `json:"ip6cidr"`
Ip6dns1 string `json:"ip6dns1"`
Ip6dns2 string `json:"ip6dns2"`
@@ -2075,6 +2155,7 @@ type CreateServiceInstanceResponse struct {
Displayname string `json:"displayname"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Id string `json:"id"`
JobID string `json:"jobid"`
Jobstatus int `json:"jobstatus"`
@@ -2440,8 +2521,10 @@ type DedicatePublicIpRangeResponse struct {
Description string `json:"description"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Endip string `json:"endip"`
Endipv6 string `json:"endipv6"`
+ Fornsx bool `json:"fornsx"`
Forsystemvms bool `json:"forsystemvms"`
Forvirtualnetwork bool `json:"forvirtualnetwork"`
Gateway string `json:"gateway"`
@@ -3087,8 +3170,11 @@ type NetscalerLoadBalancerNetwork struct {
Aclid string `json:"aclid"`
Aclname string `json:"aclname"`
Acltype string `json:"acltype"`
+ Asnumber int64 `json:"asnumber"`
+ Asnumberid string `json:"asnumberid"`
Associatednetwork string `json:"associatednetwork"`
Associatednetworkid string `json:"associatednetworkid"`
+ Bgppeers []interface{} `json:"bgppeers"`
Broadcastdomaintype string `json:"broadcastdomaintype"`
Broadcasturi string `json:"broadcasturi"`
Canusefordeploy bool `json:"canusefordeploy"`
@@ -3109,6 +3195,8 @@ type NetscalerLoadBalancerNetwork struct {
Icon interface{} `json:"icon"`
Id string `json:"id"`
Internetprotocol string `json:"internetprotocol"`
+ Ip4routes []interface{} `json:"ip4routes"`
+ Ip4routing string `json:"ip4routing"`
Ip6cidr string `json:"ip6cidr"`
Ip6dns1 string `json:"ip6dns1"`
Ip6dns2 string `json:"ip6dns2"`
@@ -4375,8 +4463,11 @@ type Network struct {
Aclid string `json:"aclid"`
Aclname string `json:"aclname"`
Acltype string `json:"acltype"`
+ Asnumber int64 `json:"asnumber"`
+ Asnumberid string `json:"asnumberid"`
Associatednetwork string `json:"associatednetwork"`
Associatednetworkid string `json:"associatednetworkid"`
+ Bgppeers []interface{} `json:"bgppeers"`
Broadcastdomaintype string `json:"broadcastdomaintype"`
Broadcasturi string `json:"broadcasturi"`
Canusefordeploy bool `json:"canusefordeploy"`
@@ -4397,6 +4488,8 @@ type Network struct {
Icon interface{} `json:"icon"`
Id string `json:"id"`
Internetprotocol string `json:"internetprotocol"`
+ Ip4routes []interface{} `json:"ip4routes"`
+ Ip4routing string `json:"ip4routing"`
Ip6cidr string `json:"ip6cidr"`
Ip6dns1 string `json:"ip6dns1"`
Ip6dns2 string `json:"ip6dns2"`
@@ -4649,8 +4742,11 @@ type NiciraNvpDeviceNetwork struct {
Aclid string `json:"aclid"`
Aclname string `json:"aclname"`
Acltype string `json:"acltype"`
+ Asnumber int64 `json:"asnumber"`
+ Asnumberid string `json:"asnumberid"`
Associatednetwork string `json:"associatednetwork"`
Associatednetworkid string `json:"associatednetworkid"`
+ Bgppeers []interface{} `json:"bgppeers"`
Broadcastdomaintype string `json:"broadcastdomaintype"`
Broadcasturi string `json:"broadcasturi"`
Canusefordeploy bool `json:"canusefordeploy"`
@@ -4671,6 +4767,8 @@ type NiciraNvpDeviceNetwork struct {
Icon interface{} `json:"icon"`
Id string `json:"id"`
Internetprotocol string `json:"internetprotocol"`
+ Ip4routes []interface{} `json:"ip4routes"`
+ Ip4routing string `json:"ip4routing"`
Ip6cidr string `json:"ip6cidr"`
Ip6dns1 string `json:"ip6dns1"`
Ip6dns2 string `json:"ip6dns2"`
@@ -5054,8 +5152,11 @@ type PaloAltoFirewallNetwork struct {
Aclid string `json:"aclid"`
Aclname string `json:"aclname"`
Acltype string `json:"acltype"`
+ Asnumber int64 `json:"asnumber"`
+ Asnumberid string `json:"asnumberid"`
Associatednetwork string `json:"associatednetwork"`
Associatednetworkid string `json:"associatednetworkid"`
+ Bgppeers []interface{} `json:"bgppeers"`
Broadcastdomaintype string `json:"broadcastdomaintype"`
Broadcasturi string `json:"broadcasturi"`
Canusefordeploy bool `json:"canusefordeploy"`
@@ -5076,6 +5177,8 @@ type PaloAltoFirewallNetwork struct {
Icon interface{} `json:"icon"`
Id string `json:"id"`
Internetprotocol string `json:"internetprotocol"`
+ Ip4routes []interface{} `json:"ip4routes"`
+ Ip4routing string `json:"ip4routing"`
Ip6cidr string `json:"ip6cidr"`
Ip6dns1 string `json:"ip6dns1"`
Ip6dns2 string `json:"ip6dns2"`
@@ -6626,8 +6729,11 @@ type UpdateNetworkResponse struct {
Aclid string `json:"aclid"`
Aclname string `json:"aclname"`
Acltype string `json:"acltype"`
+ Asnumber int64 `json:"asnumber"`
+ Asnumberid string `json:"asnumberid"`
Associatednetwork string `json:"associatednetwork"`
Associatednetworkid string `json:"associatednetworkid"`
+ Bgppeers []interface{} `json:"bgppeers"`
Broadcastdomaintype string `json:"broadcastdomaintype"`
Broadcasturi string `json:"broadcasturi"`
Canusefordeploy bool `json:"canusefordeploy"`
@@ -6648,6 +6754,8 @@ type UpdateNetworkResponse struct {
Icon interface{} `json:"icon"`
Id string `json:"id"`
Internetprotocol string `json:"internetprotocol"`
+ Ip4routes []interface{} `json:"ip4routes"`
+ Ip4routing string `json:"ip4routing"`
Ip6cidr string `json:"ip6cidr"`
Ip6dns1 string `json:"ip6dns1"`
Ip6dns2 string `json:"ip6dns2"`
diff --git a/cloudstack/NicService.go b/cloudstack/NicService.go
index 8147f71..23a48b3 100644
--- a/cloudstack/NicService.go
+++ b/cloudstack/NicService.go
@@ -604,6 +604,7 @@ type UpdateVmNicIpResponse struct {
Cpuspeed int `json:"cpuspeed"`
Cpuused string `json:"cpuused"`
Created string `json:"created"`
+ Deleteprotection bool `json:"deleteprotection"`
Details map[string]string `json:"details"`
Diskioread int64 `json:"diskioread"`
Diskiowrite int64 `json:"diskiowrite"`
@@ -615,6 +616,7 @@ type UpdateVmNicIpResponse struct {
Displayvm bool `json:"displayvm"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Forvirtualnetwork bool `json:"forvirtualnetwork"`
Group string `json:"group"`
Groupid string `json:"groupid"`
@@ -628,6 +630,7 @@ type UpdateVmNicIpResponse struct {
Icon interface{} `json:"icon"`
Id string `json:"id"`
Instancename string `json:"instancename"`
+ Ipaddress string `json:"ipaddress"`
Isdynamicallyscalable bool `json:"isdynamicallyscalable"`
Isodisplaytext string `json:"isodisplaytext"`
Isoid string `json:"isoid"`
@@ -665,6 +668,7 @@ type UpdateVmNicIpResponse struct {
State string `json:"state"`
Tags []Tags `json:"tags"`
Templatedisplaytext string `json:"templatedisplaytext"`
+ Templateformat string `json:"templateformat"`
Templateid string `json:"templateid"`
Templatename string `json:"templatename"`
Templatetype string `json:"templatetype"`
@@ -676,6 +680,7 @@ type UpdateVmNicIpResponse struct {
Userid string `json:"userid"`
Username string `json:"username"`
Vgpu string `json:"vgpu"`
+ Vmtype string `json:"vmtype"`
Vnfdetails map[string]string `json:"vnfdetails"`
Vnfnics []string `json:"vnfnics"`
Zoneid string `json:"zoneid"`
@@ -687,6 +692,7 @@ type UpdateVmNicIpResponseSecuritygroup struct {
Description string `json:"description"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Egressrule []UpdateVmNicIpResponseSecuritygroupRule `json:"egressrule"`
Id string `json:"id"`
Ingressrule []UpdateVmNicIpResponseSecuritygroupRule `json:"ingressrule"`
@@ -712,16 +718,18 @@ type UpdateVmNicIpResponseSecuritygroupRule struct {
}
type UpdateVmNicIpResponseAffinitygroup struct {
- Account string `json:"account"`
- Description string `json:"description"`
- Domain string `json:"domain"`
- Domainid string `json:"domainid"`
- Id string `json:"id"`
- Name string `json:"name"`
- Project string `json:"project"`
- Projectid string `json:"projectid"`
- Type string `json:"type"`
- VirtualmachineIds []string `json:"virtualmachineIds"`
+ Account string `json:"account"`
+ Dedicatedresources []string `json:"dedicatedresources"`
+ Description string `json:"description"`
+ Domain string `json:"domain"`
+ Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
+ Id string `json:"id"`
+ Name string `json:"name"`
+ Project string `json:"project"`
+ Projectid string `json:"projectid"`
+ Type string `json:"type"`
+ VirtualmachineIds []string `json:"virtualmachineIds"`
}
func (r *UpdateVmNicIpResponse) UnmarshalJSON(b []byte) error {
diff --git a/cloudstack/OvsElementService.go b/cloudstack/OvsElementService.go
index 88d9c27..335a175 100644
--- a/cloudstack/OvsElementService.go
+++ b/cloudstack/OvsElementService.go
@@ -142,16 +142,17 @@ func (s *OvsElementService) ConfigureOvsElement(p *ConfigureOvsElementParams) (*
}
type OvsElementResponse struct {
- Account string `json:"account"`
- Domain string `json:"domain"`
- Domainid string `json:"domainid"`
- Enabled bool `json:"enabled"`
- Id string `json:"id"`
- JobID string `json:"jobid"`
- Jobstatus int `json:"jobstatus"`
- Nspid string `json:"nspid"`
- Project string `json:"project"`
- Projectid string `json:"projectid"`
+ Account string `json:"account"`
+ Domain string `json:"domain"`
+ Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
+ Enabled bool `json:"enabled"`
+ Id string `json:"id"`
+ JobID string `json:"jobid"`
+ Jobstatus int `json:"jobstatus"`
+ Nspid string `json:"nspid"`
+ Project string `json:"project"`
+ Projectid string `json:"projectid"`
}
type ListOvsElementsParams struct {
@@ -375,14 +376,15 @@ type ListOvsElementsResponse struct {
}
type OvsElement struct {
- Account string `json:"account"`
- Domain string `json:"domain"`
- Domainid string `json:"domainid"`
- Enabled bool `json:"enabled"`
- Id string `json:"id"`
- JobID string `json:"jobid"`
- Jobstatus int `json:"jobstatus"`
- Nspid string `json:"nspid"`
- Project string `json:"project"`
- Projectid string `json:"projectid"`
+ Account string `json:"account"`
+ Domain string `json:"domain"`
+ Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
+ Enabled bool `json:"enabled"`
+ Id string `json:"id"`
+ JobID string `json:"jobid"`
+ Jobstatus int `json:"jobstatus"`
+ Nspid string `json:"nspid"`
+ Project string `json:"project"`
+ Projectid string `json:"projectid"`
}
diff --git a/cloudstack/PodService.go b/cloudstack/PodService.go
index 34f70f8..104571c 100644
--- a/cloudstack/PodService.go
+++ b/cloudstack/PodService.go
@@ -294,6 +294,7 @@ type CreatePodResponseCapacity struct {
Percentused string `json:"percentused"`
Podid string `json:"podid"`
Podname string `json:"podname"`
+ Tag string `json:"tag"`
Type int `json:"type"`
Zoneid string `json:"zoneid"`
Zonename string `json:"zonename"`
@@ -1110,6 +1111,7 @@ type PodCapacity struct {
Percentused string `json:"percentused"`
Podid string `json:"podid"`
Podname string `json:"podname"`
+ Tag string `json:"tag"`
Type int `json:"type"`
Zoneid string `json:"zoneid"`
Zonename string `json:"zonename"`
@@ -1439,6 +1441,7 @@ type UpdatePodResponseCapacity struct {
Percentused string `json:"percentused"`
Podid string `json:"podid"`
Podname string `json:"podname"`
+ Tag string `json:"tag"`
Type int `json:"type"`
Zoneid string `json:"zoneid"`
Zonename string `json:"zonename"`
diff --git a/cloudstack/PoolService.go b/cloudstack/PoolService.go
index b2f7f1d..1f115ed 100644
--- a/cloudstack/PoolService.go
+++ b/cloudstack/PoolService.go
@@ -446,7 +446,9 @@ type CreateStoragePoolResponse struct {
Istagarule bool `json:"istagarule"`
JobID string `json:"jobid"`
Jobstatus int `json:"jobstatus"`
+ Managed bool `json:"managed"`
Name string `json:"name"`
+ Nfsmountopts string `json:"nfsmountopts"`
Overprovisionfactor string `json:"overprovisionfactor"`
Path string `json:"path"`
Podid string `json:"podid"`
@@ -455,6 +457,7 @@ type CreateStoragePoolResponse struct {
Scope string `json:"scope"`
State string `json:"state"`
Storagecapabilities map[string]string `json:"storagecapabilities"`
+ Storagecustomstats map[string]string `json:"storagecustomstats"`
Suitableformigration bool `json:"suitableformigration"`
Tags string `json:"tags"`
Type string `json:"type"`
@@ -731,7 +734,9 @@ type FindStoragePoolsForMigrationResponse struct {
Istagarule bool `json:"istagarule"`
JobID string `json:"jobid"`
Jobstatus int `json:"jobstatus"`
+ Managed bool `json:"managed"`
Name string `json:"name"`
+ Nfsmountopts string `json:"nfsmountopts"`
Overprovisionfactor string `json:"overprovisionfactor"`
Path string `json:"path"`
Podid string `json:"podid"`
@@ -740,6 +745,7 @@ type FindStoragePoolsForMigrationResponse struct {
Scope string `json:"scope"`
State string `json:"state"`
Storagecapabilities map[string]string `json:"storagecapabilities"`
+ Storagecustomstats map[string]string `json:"storagecustomstats"`
Suitableformigration bool `json:"suitableformigration"`
Tags string `json:"tags"`
Type string `json:"type"`
@@ -794,6 +800,10 @@ func (p *ListStoragePoolsParams) toURLValues() url.Values {
if v, found := p.p["status"]; found {
u.Set("status", v.(string))
}
+ if v, found := p.p["storagecustomstats"]; found {
+ vv := strconv.FormatBool(v.(bool))
+ u.Set("storagecustomstats", vv)
+ }
if v, found := p.p["zoneid"]; found {
u.Set("zoneid", v.(string))
}
@@ -1052,6 +1062,27 @@ func (p *ListStoragePoolsParams) GetStatus() (string, bool) {
return value, ok
}
+func (p *ListStoragePoolsParams) SetStoragecustomstats(v bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ p.p["storagecustomstats"] = v
+}
+
+func (p *ListStoragePoolsParams) ResetStoragecustomstats() {
+ if p.p != nil && p.p["storagecustomstats"] != nil {
+ delete(p.p, "storagecustomstats")
+ }
+}
+
+func (p *ListStoragePoolsParams) GetStoragecustomstats() (bool, bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ value, ok := p.p["storagecustomstats"].(bool)
+ return value, ok
+}
+
func (p *ListStoragePoolsParams) SetZoneid(v string) {
if p.p == nil {
p.p = make(map[string]interface{})
@@ -1200,7 +1231,9 @@ type StoragePool struct {
Istagarule bool `json:"istagarule"`
JobID string `json:"jobid"`
Jobstatus int `json:"jobstatus"`
+ Managed bool `json:"managed"`
Name string `json:"name"`
+ Nfsmountopts string `json:"nfsmountopts"`
Overprovisionfactor string `json:"overprovisionfactor"`
Path string `json:"path"`
Podid string `json:"podid"`
@@ -1209,6 +1242,7 @@ type StoragePool struct {
Scope string `json:"scope"`
State string `json:"state"`
Storagecapabilities map[string]string `json:"storagecapabilities"`
+ Storagecustomstats map[string]string `json:"storagecustomstats"`
Suitableformigration bool `json:"suitableformigration"`
Tags string `json:"tags"`
Type string `json:"type"`
@@ -1312,7 +1346,9 @@ type SyncStoragePoolResponse struct {
Istagarule bool `json:"istagarule"`
JobID string `json:"jobid"`
Jobstatus int `json:"jobstatus"`
+ Managed bool `json:"managed"`
Name string `json:"name"`
+ Nfsmountopts string `json:"nfsmountopts"`
Overprovisionfactor string `json:"overprovisionfactor"`
Path string `json:"path"`
Podid string `json:"podid"`
@@ -1321,6 +1357,7 @@ type SyncStoragePoolResponse struct {
Scope string `json:"scope"`
State string `json:"state"`
Storagecapabilities map[string]string `json:"storagecapabilities"`
+ Storagecustomstats map[string]string `json:"storagecustomstats"`
Suitableformigration bool `json:"suitableformigration"`
Tags string `json:"tags"`
Type string `json:"type"`
@@ -1604,7 +1641,9 @@ type UpdateStoragePoolResponse struct {
Istagarule bool `json:"istagarule"`
JobID string `json:"jobid"`
Jobstatus int `json:"jobstatus"`
+ Managed bool `json:"managed"`
Name string `json:"name"`
+ Nfsmountopts string `json:"nfsmountopts"`
Overprovisionfactor string `json:"overprovisionfactor"`
Path string `json:"path"`
Podid string `json:"podid"`
@@ -1613,6 +1652,7 @@ type UpdateStoragePoolResponse struct {
Scope string `json:"scope"`
State string `json:"state"`
Storagecapabilities map[string]string `json:"storagecapabilities"`
+ Storagecustomstats map[string]string `json:"storagecustomstats"`
Suitableformigration bool `json:"suitableformigration"`
Tags string `json:"tags"`
Type string `json:"type"`
diff --git a/cloudstack/ProjectService.go b/cloudstack/ProjectService.go
index c395376..373065e 100644
--- a/cloudstack/ProjectService.go
+++ b/cloudstack/ProjectService.go
@@ -182,6 +182,7 @@ type ActivateProjectResponse struct {
Snapshotlimit string `json:"snapshotlimit"`
Snapshottotal int64 `json:"snapshottotal"`
State string `json:"state"`
+ Taggedresources []string `json:"taggedresources"`
Tags []Tags `json:"tags"`
Templateavailable string `json:"templateavailable"`
Templatelimit string `json:"templatelimit"`
@@ -791,6 +792,7 @@ type CreateProjectResponse struct {
Snapshotlimit string `json:"snapshotlimit"`
Snapshottotal int64 `json:"snapshottotal"`
State string `json:"state"`
+ Taggedresources []string `json:"taggedresources"`
Tags []Tags `json:"tags"`
Templateavailable string `json:"templateavailable"`
Templatelimit string `json:"templatelimit"`
@@ -1578,17 +1580,18 @@ type ListProjectInvitationsResponse struct {
}
type ProjectInvitation struct {
- Account string `json:"account"`
- Domain string `json:"domain"`
- Domainid string `json:"domainid"`
- Email string `json:"email"`
- Id string `json:"id"`
- JobID string `json:"jobid"`
- Jobstatus int `json:"jobstatus"`
- Project string `json:"project"`
- Projectid string `json:"projectid"`
- State string `json:"state"`
- Userid string `json:"userid"`
+ Account string `json:"account"`
+ Domain string `json:"domain"`
+ Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
+ Email string `json:"email"`
+ Id string `json:"id"`
+ JobID string `json:"jobid"`
+ Jobstatus int `json:"jobstatus"`
+ Project string `json:"project"`
+ Projectid string `json:"projectid"`
+ State string `json:"state"`
+ Userid string `json:"userid"`
}
type ListProjectsParams struct {
@@ -2118,6 +2121,7 @@ type Project struct {
Snapshotlimit string `json:"snapshotlimit"`
Snapshottotal int64 `json:"snapshottotal"`
State string `json:"state"`
+ Taggedresources []string `json:"taggedresources"`
Tags []Tags `json:"tags"`
Templateavailable string `json:"templateavailable"`
Templatelimit string `json:"templatelimit"`
@@ -2249,6 +2253,7 @@ type SuspendProjectResponse struct {
Snapshotlimit string `json:"snapshotlimit"`
Snapshottotal int64 `json:"snapshottotal"`
State string `json:"state"`
+ Taggedresources []string `json:"taggedresources"`
Tags []Tags `json:"tags"`
Templateavailable string `json:"templateavailable"`
Templatelimit string `json:"templatelimit"`
@@ -2525,6 +2530,7 @@ type UpdateProjectResponse struct {
Snapshotlimit string `json:"snapshotlimit"`
Snapshottotal int64 `json:"snapshottotal"`
State string `json:"state"`
+ Taggedresources []string `json:"taggedresources"`
Tags []Tags `json:"tags"`
Templateavailable string `json:"templateavailable"`
Templatelimit string `json:"templatelimit"`
diff --git a/cloudstack/ResourcemetadataService.go b/cloudstack/ResourcemetadataService.go
index 7be87ad..0e3262e 100644
--- a/cloudstack/ResourcemetadataService.go
+++ b/cloudstack/ResourcemetadataService.go
@@ -627,6 +627,7 @@ type ResourceDetail struct {
Customer string `json:"customer"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
JobID string `json:"jobid"`
Jobstatus int `json:"jobstatus"`
Key string `json:"key"`
diff --git a/cloudstack/ResourcetagsService.go b/cloudstack/ResourcetagsService.go
index 51e2505..bd49f0b 100644
--- a/cloudstack/ResourcetagsService.go
+++ b/cloudstack/ResourcetagsService.go
@@ -857,6 +857,7 @@ type Tag struct {
Customer string `json:"customer"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
JobID string `json:"jobid"`
Jobstatus int `json:"jobstatus"`
Key string `json:"key"`
diff --git a/cloudstack/RoleService.go b/cloudstack/RoleService.go
index d3d2cf2..e9704aa 100644
--- a/cloudstack/RoleService.go
+++ b/cloudstack/RoleService.go
@@ -219,6 +219,7 @@ type CreateRoleResponse struct {
JobID string `json:"jobid"`
Jobstatus int `json:"jobstatus"`
Name string `json:"name"`
+ State string `json:"state"`
Type string `json:"type"`
}
@@ -753,6 +754,7 @@ type ImportRoleResponse struct {
JobID string `json:"jobid"`
Jobstatus int `json:"jobstatus"`
Name string `json:"name"`
+ State string `json:"state"`
Type string `json:"type"`
}
@@ -857,6 +859,9 @@ func (p *ListRolesParams) toURLValues() url.Values {
vv := strconv.Itoa(v.(int))
u.Set("pagesize", vv)
}
+ if v, found := p.p["state"]; found {
+ u.Set("state", v.(string))
+ }
if v, found := p.p["type"]; found {
u.Set("type", v.(string))
}
@@ -968,6 +973,27 @@ func (p *ListRolesParams) GetPagesize() (int, bool) {
return value, ok
}
+func (p *ListRolesParams) SetState(v string) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ p.p["state"] = v
+}
+
+func (p *ListRolesParams) ResetState() {
+ if p.p != nil && p.p["state"] != nil {
+ delete(p.p, "state")
+ }
+}
+
+func (p *ListRolesParams) GetState() (string, bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ value, ok := p.p["state"].(string)
+ return value, ok
+}
+
func (p *ListRolesParams) SetType(v string) {
if p.p == nil {
p.p = make(map[string]interface{})
@@ -1108,6 +1134,7 @@ type Role struct {
JobID string `json:"jobid"`
Jobstatus int `json:"jobstatus"`
Name string `json:"name"`
+ State string `json:"state"`
Type string `json:"type"`
}
@@ -1279,6 +1306,7 @@ type UpdateRoleResponse struct {
JobID string `json:"jobid"`
Jobstatus int `json:"jobstatus"`
Name string `json:"name"`
+ State string `json:"state"`
Type string `json:"type"`
}
diff --git a/cloudstack/RouterService.go b/cloudstack/RouterService.go
index 4a9162b..d964cf5 100644
--- a/cloudstack/RouterService.go
+++ b/cloudstack/RouterService.go
@@ -144,6 +144,7 @@ type ChangeServiceForRouterResponse struct {
Dns2 string `json:"dns2"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Gateway string `json:"gateway"`
Guestipaddress string `json:"guestipaddress"`
Guestmacaddress string `json:"guestmacaddress"`
@@ -310,16 +311,17 @@ func (s *RouterService) ConfigureVirtualRouterElement(p *ConfigureVirtualRouterE
}
type VirtualRouterElementResponse struct {
- Account string `json:"account"`
- Domain string `json:"domain"`
- Domainid string `json:"domainid"`
- Enabled bool `json:"enabled"`
- Id string `json:"id"`
- JobID string `json:"jobid"`
- Jobstatus int `json:"jobstatus"`
- Nspid string `json:"nspid"`
- Project string `json:"project"`
- Projectid string `json:"projectid"`
+ Account string `json:"account"`
+ Domain string `json:"domain"`
+ Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
+ Enabled bool `json:"enabled"`
+ Id string `json:"id"`
+ JobID string `json:"jobid"`
+ Jobstatus int `json:"jobstatus"`
+ Nspid string `json:"nspid"`
+ Project string `json:"project"`
+ Projectid string `json:"projectid"`
}
type CreateVirtualRouterElementParams struct {
@@ -427,16 +429,17 @@ func (s *RouterService) CreateVirtualRouterElement(p *CreateVirtualRouterElement
}
type CreateVirtualRouterElementResponse struct {
- Account string `json:"account"`
- Domain string `json:"domain"`
- Domainid string `json:"domainid"`
- Enabled bool `json:"enabled"`
- Id string `json:"id"`
- JobID string `json:"jobid"`
- Jobstatus int `json:"jobstatus"`
- Nspid string `json:"nspid"`
- Project string `json:"project"`
- Projectid string `json:"projectid"`
+ Account string `json:"account"`
+ Domain string `json:"domain"`
+ Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
+ Enabled bool `json:"enabled"`
+ Id string `json:"id"`
+ JobID string `json:"jobid"`
+ Jobstatus int `json:"jobstatus"`
+ Nspid string `json:"nspid"`
+ Project string `json:"project"`
+ Projectid string `json:"projectid"`
}
type DestroyRouterParams struct {
@@ -526,6 +529,7 @@ type DestroyRouterResponse struct {
Dns2 string `json:"dns2"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Gateway string `json:"gateway"`
Guestipaddress string `json:"guestipaddress"`
Guestmacaddress string `json:"guestmacaddress"`
@@ -1226,6 +1230,7 @@ type Router struct {
Dns2 string `json:"dns2"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Gateway string `json:"gateway"`
Guestipaddress string `json:"guestipaddress"`
Guestmacaddress string `json:"guestmacaddress"`
@@ -1506,16 +1511,17 @@ type ListVirtualRouterElementsResponse struct {
}
type VirtualRouterElement struct {
- Account string `json:"account"`
- Domain string `json:"domain"`
- Domainid string `json:"domainid"`
- Enabled bool `json:"enabled"`
- Id string `json:"id"`
- JobID string `json:"jobid"`
- Jobstatus int `json:"jobstatus"`
- Nspid string `json:"nspid"`
- Project string `json:"project"`
- Projectid string `json:"projectid"`
+ Account string `json:"account"`
+ Domain string `json:"domain"`
+ Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
+ Enabled bool `json:"enabled"`
+ Id string `json:"id"`
+ JobID string `json:"jobid"`
+ Jobstatus int `json:"jobstatus"`
+ Nspid string `json:"nspid"`
+ Project string `json:"project"`
+ Projectid string `json:"projectid"`
}
type RebootRouterParams struct {
@@ -1630,6 +1636,7 @@ type RebootRouterResponse struct {
Dns2 string `json:"dns2"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Gateway string `json:"gateway"`
Guestipaddress string `json:"guestipaddress"`
Guestmacaddress string `json:"guestmacaddress"`
@@ -1776,6 +1783,7 @@ type StartRouterResponse struct {
Dns2 string `json:"dns2"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Gateway string `json:"gateway"`
Guestipaddress string `json:"guestipaddress"`
Guestmacaddress string `json:"guestmacaddress"`
@@ -1947,6 +1955,7 @@ type StopRouterResponse struct {
Dns2 string `json:"dns2"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Gateway string `json:"gateway"`
Guestipaddress string `json:"guestipaddress"`
Guestmacaddress string `json:"guestmacaddress"`
diff --git a/cloudstack/SSHService.go b/cloudstack/SSHService.go
index 6d48625..253fb8f 100644
--- a/cloudstack/SSHService.go
+++ b/cloudstack/SSHService.go
@@ -1154,6 +1154,7 @@ type ResetSSHKeyForVirtualMachineResponse struct {
Cpuspeed int `json:"cpuspeed"`
Cpuused string `json:"cpuused"`
Created string `json:"created"`
+ Deleteprotection bool `json:"deleteprotection"`
Details map[string]string `json:"details"`
Diskioread int64 `json:"diskioread"`
Diskiowrite int64 `json:"diskiowrite"`
@@ -1165,6 +1166,7 @@ type ResetSSHKeyForVirtualMachineResponse struct {
Displayvm bool `json:"displayvm"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Forvirtualnetwork bool `json:"forvirtualnetwork"`
Group string `json:"group"`
Groupid string `json:"groupid"`
@@ -1178,6 +1180,7 @@ type ResetSSHKeyForVirtualMachineResponse struct {
Icon interface{} `json:"icon"`
Id string `json:"id"`
Instancename string `json:"instancename"`
+ Ipaddress string `json:"ipaddress"`
Isdynamicallyscalable bool `json:"isdynamicallyscalable"`
Isodisplaytext string `json:"isodisplaytext"`
Isoid string `json:"isoid"`
@@ -1215,6 +1218,7 @@ type ResetSSHKeyForVirtualMachineResponse struct {
State string `json:"state"`
Tags []Tags `json:"tags"`
Templatedisplaytext string `json:"templatedisplaytext"`
+ Templateformat string `json:"templateformat"`
Templateid string `json:"templateid"`
Templatename string `json:"templatename"`
Templatetype string `json:"templatetype"`
@@ -1226,6 +1230,7 @@ type ResetSSHKeyForVirtualMachineResponse struct {
Userid string `json:"userid"`
Username string `json:"username"`
Vgpu string `json:"vgpu"`
+ Vmtype string `json:"vmtype"`
Vnfdetails map[string]string `json:"vnfdetails"`
Vnfnics []string `json:"vnfnics"`
Zoneid string `json:"zoneid"`
@@ -1237,6 +1242,7 @@ type ResetSSHKeyForVirtualMachineResponseSecuritygroup struct {
Description string `json:"description"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Egressrule []ResetSSHKeyForVirtualMachineResponseSecuritygroupRule `json:"egressrule"`
Id string `json:"id"`
Ingressrule []ResetSSHKeyForVirtualMachineResponseSecuritygroupRule `json:"ingressrule"`
@@ -1262,16 +1268,18 @@ type ResetSSHKeyForVirtualMachineResponseSecuritygroupRule struct {
}
type ResetSSHKeyForVirtualMachineResponseAffinitygroup struct {
- Account string `json:"account"`
- Description string `json:"description"`
- Domain string `json:"domain"`
- Domainid string `json:"domainid"`
- Id string `json:"id"`
- Name string `json:"name"`
- Project string `json:"project"`
- Projectid string `json:"projectid"`
- Type string `json:"type"`
- VirtualmachineIds []string `json:"virtualmachineIds"`
+ Account string `json:"account"`
+ Dedicatedresources []string `json:"dedicatedresources"`
+ Description string `json:"description"`
+ Domain string `json:"domain"`
+ Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
+ Id string `json:"id"`
+ Name string `json:"name"`
+ Project string `json:"project"`
+ Projectid string `json:"projectid"`
+ Type string `json:"type"`
+ VirtualmachineIds []string `json:"virtualmachineIds"`
}
func (r *ResetSSHKeyForVirtualMachineResponse) UnmarshalJSON(b []byte) error {
diff --git a/cloudstack/SecurityGroupService.go b/cloudstack/SecurityGroupService.go
index ad30d5c..dcc09d0 100644
--- a/cloudstack/SecurityGroupService.go
+++ b/cloudstack/SecurityGroupService.go
@@ -988,6 +988,7 @@ type CreateSecurityGroupResponse struct {
Description string `json:"description"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Egressrule []CreateSecurityGroupResponseRule `json:"egressrule"`
Id string `json:"id"`
Ingressrule []CreateSecurityGroupResponseRule `json:"ingressrule"`
@@ -1627,6 +1628,7 @@ type SecurityGroup struct {
Description string `json:"description"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Egressrule []SecurityGroupRule `json:"egressrule"`
Id string `json:"id"`
Ingressrule []SecurityGroupRule `json:"ingressrule"`
diff --git a/cloudstack/ServiceOfferingService.go b/cloudstack/ServiceOfferingService.go
index 33c06da..b6f5451 100644
--- a/cloudstack/ServiceOfferingService.go
+++ b/cloudstack/ServiceOfferingService.go
@@ -203,6 +203,10 @@ func (p *CreateServiceOfferingParams) toURLValues() url.Values {
if v, found := p.p["provisioningtype"]; found {
u.Set("provisioningtype", v.(string))
}
+ if v, found := p.p["purgeresources"]; found {
+ vv := strconv.FormatBool(v.(bool))
+ u.Set("purgeresources", vv)
+ }
if v, found := p.p["rootdisksize"]; found {
vv := strconv.FormatInt(v.(int64), 10)
u.Set("rootdisksize", vv)
@@ -1073,6 +1077,27 @@ func (p *CreateServiceOfferingParams) GetProvisioningtype() (string, bool) {
return value, ok
}
+func (p *CreateServiceOfferingParams) SetPurgeresources(v bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ p.p["purgeresources"] = v
+}
+
+func (p *CreateServiceOfferingParams) ResetPurgeresources() {
+ if p.p != nil && p.p["purgeresources"] != nil {
+ delete(p.p, "purgeresources")
+ }
+}
+
+func (p *CreateServiceOfferingParams) GetPurgeresources() (bool, bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ value, ok := p.p["purgeresources"].(bool)
+ return value, ok
+}
+
func (p *CreateServiceOfferingParams) SetRootdisksize(v int64) {
if p.p == nil {
p.p = make(map[string]interface{})
@@ -1295,8 +1320,10 @@ type CreateServiceOfferingResponse struct {
Networkrate int `json:"networkrate"`
Offerha bool `json:"offerha"`
Provisioningtype string `json:"provisioningtype"`
+ Purgeresources bool `json:"purgeresources"`
Rootdisksize int64 `json:"rootdisksize"`
Serviceofferingdetails map[string]string `json:"serviceofferingdetails"`
+ State string `json:"state"`
Storagetags string `json:"storagetags"`
Storagetype string `json:"storagetype"`
Systemvmtype string `json:"systemvmtype"`
@@ -1462,12 +1489,18 @@ func (p *ListServiceOfferingsParams) toURLValues() url.Values {
if v, found := p.p["projectid"]; found {
u.Set("projectid", v.(string))
}
+ if v, found := p.p["state"]; found {
+ u.Set("state", v.(string))
+ }
if v, found := p.p["storagetype"]; found {
u.Set("storagetype", v.(string))
}
if v, found := p.p["systemvmtype"]; found {
u.Set("systemvmtype", v.(string))
}
+ if v, found := p.p["templateid"]; found {
+ u.Set("templateid", v.(string))
+ }
if v, found := p.p["virtualmachineid"]; found {
u.Set("virtualmachineid", v.(string))
}
@@ -1792,6 +1825,27 @@ func (p *ListServiceOfferingsParams) GetProjectid() (string, bool) {
return value, ok
}
+func (p *ListServiceOfferingsParams) SetState(v string) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ p.p["state"] = v
+}
+
+func (p *ListServiceOfferingsParams) ResetState() {
+ if p.p != nil && p.p["state"] != nil {
+ delete(p.p, "state")
+ }
+}
+
+func (p *ListServiceOfferingsParams) GetState() (string, bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ value, ok := p.p["state"].(string)
+ return value, ok
+}
+
func (p *ListServiceOfferingsParams) SetStoragetype(v string) {
if p.p == nil {
p.p = make(map[string]interface{})
@@ -1834,6 +1888,27 @@ func (p *ListServiceOfferingsParams) GetSystemvmtype() (string, bool) {
return value, ok
}
+func (p *ListServiceOfferingsParams) SetTemplateid(v string) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ p.p["templateid"] = v
+}
+
+func (p *ListServiceOfferingsParams) ResetTemplateid() {
+ if p.p != nil && p.p["templateid"] != nil {
+ delete(p.p, "templateid")
+ }
+}
+
+func (p *ListServiceOfferingsParams) GetTemplateid() (string, bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ value, ok := p.p["templateid"].(string)
+ return value, ok
+}
+
func (p *ListServiceOfferingsParams) SetVirtualmachineid(v string) {
if p.p == nil {
p.p = make(map[string]interface{})
@@ -2033,8 +2108,10 @@ type ServiceOffering struct {
Networkrate int `json:"networkrate"`
Offerha bool `json:"offerha"`
Provisioningtype string `json:"provisioningtype"`
+ Purgeresources bool `json:"purgeresources"`
Rootdisksize int64 `json:"rootdisksize"`
Serviceofferingdetails map[string]string `json:"serviceofferingdetails"`
+ State string `json:"state"`
Storagetags string `json:"storagetags"`
Storagetype string `json:"storagetype"`
Systemvmtype string `json:"systemvmtype"`
@@ -2067,10 +2144,17 @@ func (p *UpdateServiceOfferingParams) toURLValues() url.Values {
if v, found := p.p["name"]; found {
u.Set("name", v.(string))
}
+ if v, found := p.p["purgeresources"]; found {
+ vv := strconv.FormatBool(v.(bool))
+ u.Set("purgeresources", vv)
+ }
if v, found := p.p["sortkey"]; found {
vv := strconv.Itoa(v.(int))
u.Set("sortkey", vv)
}
+ if v, found := p.p["state"]; found {
+ u.Set("state", v.(string))
+ }
if v, found := p.p["storagetags"]; found {
u.Set("storagetags", v.(string))
}
@@ -2185,6 +2269,27 @@ func (p *UpdateServiceOfferingParams) GetName() (string, bool) {
return value, ok
}
+func (p *UpdateServiceOfferingParams) SetPurgeresources(v bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ p.p["purgeresources"] = v
+}
+
+func (p *UpdateServiceOfferingParams) ResetPurgeresources() {
+ if p.p != nil && p.p["purgeresources"] != nil {
+ delete(p.p, "purgeresources")
+ }
+}
+
+func (p *UpdateServiceOfferingParams) GetPurgeresources() (bool, bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ value, ok := p.p["purgeresources"].(bool)
+ return value, ok
+}
+
func (p *UpdateServiceOfferingParams) SetSortkey(v int) {
if p.p == nil {
p.p = make(map[string]interface{})
@@ -2206,6 +2311,27 @@ func (p *UpdateServiceOfferingParams) GetSortkey() (int, bool) {
return value, ok
}
+func (p *UpdateServiceOfferingParams) SetState(v string) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ p.p["state"] = v
+}
+
+func (p *UpdateServiceOfferingParams) ResetState() {
+ if p.p != nil && p.p["state"] != nil {
+ delete(p.p, "state")
+ }
+}
+
+func (p *UpdateServiceOfferingParams) GetState() (string, bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ value, ok := p.p["state"].(string)
+ return value, ok
+}
+
func (p *UpdateServiceOfferingParams) SetStoragetags(v string) {
if p.p == nil {
p.p = make(map[string]interface{})
@@ -2322,8 +2448,10 @@ type UpdateServiceOfferingResponse struct {
Networkrate int `json:"networkrate"`
Offerha bool `json:"offerha"`
Provisioningtype string `json:"provisioningtype"`
+ Purgeresources bool `json:"purgeresources"`
Rootdisksize int64 `json:"rootdisksize"`
Serviceofferingdetails map[string]string `json:"serviceofferingdetails"`
+ State string `json:"state"`
Storagetags string `json:"storagetags"`
Storagetype string `json:"storagetype"`
Systemvmtype string `json:"systemvmtype"`
diff --git a/cloudstack/SnapshotService.go b/cloudstack/SnapshotService.go
index c17334b..bc68403 100644
--- a/cloudstack/SnapshotService.go
+++ b/cloudstack/SnapshotService.go
@@ -371,6 +371,7 @@ type CreateSnapshotResponse struct {
Datastoretype string `json:"datastoretype"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Downloaddetails map[string]string `json:"downloaddetails"`
Hasannotations bool `json:"hasannotations"`
Id string `json:"id"`
@@ -392,6 +393,7 @@ type CreateSnapshotResponse struct {
Virtualsize int64 `json:"virtualsize"`
Volumeid string `json:"volumeid"`
Volumename string `json:"volumename"`
+ Volumestate string `json:"volumestate"`
Volumetype string `json:"volumetype"`
Zoneid string `json:"zoneid"`
Zonename string `json:"zonename"`
@@ -864,6 +866,7 @@ type CreateVMSnapshotResponse struct {
Displayname string `json:"displayname"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Hasannotations bool `json:"hasannotations"`
Hypervisor string `json:"hypervisor"`
Id string `json:"id"`
@@ -2046,6 +2049,7 @@ type Snapshot struct {
Datastoretype string `json:"datastoretype"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Downloaddetails map[string]string `json:"downloaddetails"`
Hasannotations bool `json:"hasannotations"`
Id string `json:"id"`
@@ -2067,6 +2071,7 @@ type Snapshot struct {
Virtualsize int64 `json:"virtualsize"`
Volumeid string `json:"volumeid"`
Volumename string `json:"volumename"`
+ Volumestate string `json:"volumestate"`
Volumetype string `json:"volumetype"`
Zoneid string `json:"zoneid"`
Zonename string `json:"zonename"`
@@ -2528,6 +2533,7 @@ type VMSnapshot struct {
Displayname string `json:"displayname"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Hasannotations bool `json:"hasannotations"`
Hypervisor string `json:"hypervisor"`
Id string `json:"id"`
@@ -2636,6 +2642,7 @@ type RevertSnapshotResponse struct {
Datastoretype string `json:"datastoretype"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Downloaddetails map[string]string `json:"downloaddetails"`
Hasannotations bool `json:"hasannotations"`
Id string `json:"id"`
@@ -2657,6 +2664,7 @@ type RevertSnapshotResponse struct {
Virtualsize int64 `json:"virtualsize"`
Volumeid string `json:"volumeid"`
Volumename string `json:"volumename"`
+ Volumestate string `json:"volumestate"`
Volumetype string `json:"volumetype"`
Zoneid string `json:"zoneid"`
Zonename string `json:"zonename"`
@@ -2782,6 +2790,7 @@ type RevertToVMSnapshotResponse struct {
Cpuspeed int `json:"cpuspeed"`
Cpuused string `json:"cpuused"`
Created string `json:"created"`
+ Deleteprotection bool `json:"deleteprotection"`
Details map[string]string `json:"details"`
Diskioread int64 `json:"diskioread"`
Diskiowrite int64 `json:"diskiowrite"`
@@ -2793,6 +2802,7 @@ type RevertToVMSnapshotResponse struct {
Displayvm bool `json:"displayvm"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Forvirtualnetwork bool `json:"forvirtualnetwork"`
Group string `json:"group"`
Groupid string `json:"groupid"`
@@ -2806,6 +2816,7 @@ type RevertToVMSnapshotResponse struct {
Icon interface{} `json:"icon"`
Id string `json:"id"`
Instancename string `json:"instancename"`
+ Ipaddress string `json:"ipaddress"`
Isdynamicallyscalable bool `json:"isdynamicallyscalable"`
Isodisplaytext string `json:"isodisplaytext"`
Isoid string `json:"isoid"`
@@ -2843,6 +2854,7 @@ type RevertToVMSnapshotResponse struct {
State string `json:"state"`
Tags []Tags `json:"tags"`
Templatedisplaytext string `json:"templatedisplaytext"`
+ Templateformat string `json:"templateformat"`
Templateid string `json:"templateid"`
Templatename string `json:"templatename"`
Templatetype string `json:"templatetype"`
@@ -2854,6 +2866,7 @@ type RevertToVMSnapshotResponse struct {
Userid string `json:"userid"`
Username string `json:"username"`
Vgpu string `json:"vgpu"`
+ Vmtype string `json:"vmtype"`
Vnfdetails map[string]string `json:"vnfdetails"`
Vnfnics []string `json:"vnfnics"`
Zoneid string `json:"zoneid"`
@@ -2865,6 +2878,7 @@ type RevertToVMSnapshotResponseSecuritygroup struct {
Description string `json:"description"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Egressrule []RevertToVMSnapshotResponseSecuritygroupRule `json:"egressrule"`
Id string `json:"id"`
Ingressrule []RevertToVMSnapshotResponseSecuritygroupRule `json:"ingressrule"`
@@ -2890,16 +2904,18 @@ type RevertToVMSnapshotResponseSecuritygroupRule struct {
}
type RevertToVMSnapshotResponseAffinitygroup struct {
- Account string `json:"account"`
- Description string `json:"description"`
- Domain string `json:"domain"`
- Domainid string `json:"domainid"`
- Id string `json:"id"`
- Name string `json:"name"`
- Project string `json:"project"`
- Projectid string `json:"projectid"`
- Type string `json:"type"`
- VirtualmachineIds []string `json:"virtualmachineIds"`
+ Account string `json:"account"`
+ Dedicatedresources []string `json:"dedicatedresources"`
+ Description string `json:"description"`
+ Domain string `json:"domain"`
+ Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
+ Id string `json:"id"`
+ Name string `json:"name"`
+ Project string `json:"project"`
+ Projectid string `json:"projectid"`
+ Type string `json:"type"`
+ VirtualmachineIds []string `json:"virtualmachineIds"`
}
func (r *RevertToVMSnapshotResponse) UnmarshalJSON(b []byte) error {
diff --git a/cloudstack/StoragePoolService.go b/cloudstack/StoragePoolService.go
index dd44985..9623195 100644
--- a/cloudstack/StoragePoolService.go
+++ b/cloudstack/StoragePoolService.go
@@ -130,7 +130,9 @@ type CancelStorageMaintenanceResponse struct {
Istagarule bool `json:"istagarule"`
JobID string `json:"jobid"`
Jobstatus int `json:"jobstatus"`
+ Managed bool `json:"managed"`
Name string `json:"name"`
+ Nfsmountopts string `json:"nfsmountopts"`
Overprovisionfactor string `json:"overprovisionfactor"`
Path string `json:"path"`
Podid string `json:"podid"`
@@ -139,6 +141,7 @@ type CancelStorageMaintenanceResponse struct {
Scope string `json:"scope"`
State string `json:"state"`
Storagecapabilities map[string]string `json:"storagecapabilities"`
+ Storagecustomstats map[string]string `json:"storagecustomstats"`
Suitableformigration bool `json:"suitableformigration"`
Tags string `json:"tags"`
Type string `json:"type"`
@@ -242,7 +245,9 @@ type EnableStorageMaintenanceResponse struct {
Istagarule bool `json:"istagarule"`
JobID string `json:"jobid"`
Jobstatus int `json:"jobstatus"`
+ Managed bool `json:"managed"`
Name string `json:"name"`
+ Nfsmountopts string `json:"nfsmountopts"`
Overprovisionfactor string `json:"overprovisionfactor"`
Path string `json:"path"`
Podid string `json:"podid"`
@@ -251,6 +256,7 @@ type EnableStorageMaintenanceResponse struct {
Scope string `json:"scope"`
State string `json:"state"`
Storagecapabilities map[string]string `json:"storagecapabilities"`
+ Storagecustomstats map[string]string `json:"storagecustomstats"`
Suitableformigration bool `json:"suitableformigration"`
Tags string `json:"tags"`
Type string `json:"type"`
diff --git a/cloudstack/SystemCapacityService.go b/cloudstack/SystemCapacityService.go
index ac63ea3..1e815cf 100644
--- a/cloudstack/SystemCapacityService.go
+++ b/cloudstack/SystemCapacityService.go
@@ -63,6 +63,9 @@ func (p *ListCapacityParams) toURLValues() url.Values {
if v, found := p.p["sortby"]; found {
u.Set("sortby", v.(string))
}
+ if v, found := p.p["tag"]; found {
+ u.Set("tag", v.(string))
+ }
if v, found := p.p["type"]; found {
vv := strconv.Itoa(v.(int))
u.Set("type", vv)
@@ -220,6 +223,27 @@ func (p *ListCapacityParams) GetSortby() (string, bool) {
return value, ok
}
+func (p *ListCapacityParams) SetTag(v string) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ p.p["tag"] = v
+}
+
+func (p *ListCapacityParams) ResetTag() {
+ if p.p != nil && p.p["tag"] != nil {
+ delete(p.p, "tag")
+ }
+}
+
+func (p *ListCapacityParams) GetTag() (string, bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ value, ok := p.p["tag"].(string)
+ return value, ok
+}
+
func (p *ListCapacityParams) SetType(v int) {
if p.p == nil {
p.p = make(map[string]interface{})
@@ -302,6 +326,7 @@ type Capacity struct {
Percentused string `json:"percentused"`
Podid string `json:"podid"`
Podname string `json:"podname"`
+ Tag string `json:"tag"`
Type int `json:"type"`
Zoneid string `json:"zoneid"`
Zonename string `json:"zonename"`
diff --git a/cloudstack/TemplateService.go b/cloudstack/TemplateService.go
index dd4edf2..bb3a9ae 100644
--- a/cloudstack/TemplateService.go
+++ b/cloudstack/TemplateService.go
@@ -219,6 +219,7 @@ func (s *TemplateService) CopyTemplate(p *CopyTemplateParams) (*CopyTemplateResp
type CopyTemplateResponse struct {
Account string `json:"account"`
Accountid string `json:"accountid"`
+ Arch string `json:"arch"`
Bits int `json:"bits"`
Bootable bool `json:"bootable"`
Checksum string `json:"checksum"`
@@ -232,6 +233,7 @@ type CopyTemplateResponse struct {
Displaytext string `json:"displaytext"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Downloaddetails []map[string]string `json:"downloaddetails"`
Format string `json:"format"`
Hasannotations bool `json:"hasannotations"`
@@ -851,6 +853,7 @@ func (s *TemplateService) CreateTemplate(p *CreateTemplateParams) (*CreateTempla
type CreateTemplateResponse struct {
Account string `json:"account"`
Accountid string `json:"accountid"`
+ Arch string `json:"arch"`
Bits int `json:"bits"`
Bootable bool `json:"bootable"`
Checksum string `json:"checksum"`
@@ -864,6 +867,7 @@ type CreateTemplateResponse struct {
Displaytext string `json:"displaytext"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Downloaddetails []map[string]string `json:"downloaddetails"`
Format string `json:"format"`
Hasannotations bool `json:"hasannotations"`
@@ -948,6 +952,10 @@ func (p *DeleteTemplateParams) toURLValues() url.Values {
if v, found := p.p["id"]; found {
u.Set("id", v.(string))
}
+ if v, found := p.p["issystem"]; found {
+ vv := strconv.FormatBool(v.(bool))
+ u.Set("issystem", vv)
+ }
if v, found := p.p["zoneid"]; found {
u.Set("zoneid", v.(string))
}
@@ -996,6 +1004,27 @@ func (p *DeleteTemplateParams) GetId() (string, bool) {
return value, ok
}
+func (p *DeleteTemplateParams) SetIssystem(v bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ p.p["issystem"] = v
+}
+
+func (p *DeleteTemplateParams) ResetIssystem() {
+ if p.p != nil && p.p["issystem"] != nil {
+ delete(p.p, "issystem")
+ }
+}
+
+func (p *DeleteTemplateParams) GetIssystem() (bool, bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ value, ok := p.p["issystem"].(bool)
+ return value, ok
+}
+
func (p *DeleteTemplateParams) SetZoneid(v string) {
if p.p == nil {
p.p = make(map[string]interface{})
@@ -1247,6 +1276,9 @@ func (p *GetUploadParamsForTemplateParams) toURLValues() url.Values {
if v, found := p.p["account"]; found {
u.Set("account", v.(string))
}
+ if v, found := p.p["arch"]; found {
+ u.Set("arch", v.(string))
+ }
if v, found := p.p["bits"]; found {
vv := strconv.Itoa(v.(int))
u.Set("bits", vv)
@@ -1347,6 +1379,27 @@ func (p *GetUploadParamsForTemplateParams) GetAccount() (string, bool) {
return value, ok
}
+func (p *GetUploadParamsForTemplateParams) SetArch(v string) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ p.p["arch"] = v
+}
+
+func (p *GetUploadParamsForTemplateParams) ResetArch() {
+ if p.p != nil && p.p["arch"] != nil {
+ delete(p.p, "arch")
+ }
+}
+
+func (p *GetUploadParamsForTemplateParams) GetArch() (string, bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ value, ok := p.p["arch"].(string)
+ return value, ok
+}
+
func (p *GetUploadParamsForTemplateParams) SetBits(v int) {
if p.p == nil {
p.p = make(map[string]interface{})
@@ -1949,6 +2002,9 @@ func (p *ListTemplatesParams) toURLValues() url.Values {
if v, found := p.p["account"]; found {
u.Set("account", v.(string))
}
+ if v, found := p.p["arch"]; found {
+ u.Set("arch", v.(string))
+ }
if v, found := p.p["details"]; found {
vv := strings.Join(v.([]string), ",")
u.Set("details", vv)
@@ -2056,6 +2112,27 @@ func (p *ListTemplatesParams) GetAccount() (string, bool) {
return value, ok
}
+func (p *ListTemplatesParams) SetArch(v string) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ p.p["arch"] = v
+}
+
+func (p *ListTemplatesParams) ResetArch() {
+ if p.p != nil && p.p["arch"] != nil {
+ delete(p.p, "arch")
+ }
+}
+
+func (p *ListTemplatesParams) GetArch() (string, bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ value, ok := p.p["arch"].(string)
+ return value, ok
+}
+
func (p *ListTemplatesParams) SetDetails(v []string) {
if p.p == nil {
p.p = make(map[string]interface{})
@@ -2657,6 +2734,7 @@ type ListTemplatesResponse struct {
type Template struct {
Account string `json:"account"`
Accountid string `json:"accountid"`
+ Arch string `json:"arch"`
Bits int `json:"bits"`
Bootable bool `json:"bootable"`
Checksum string `json:"checksum"`
@@ -2670,6 +2748,7 @@ type Template struct {
Displaytext string `json:"displaytext"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Downloaddetails []map[string]string `json:"downloaddetails"`
Format string `json:"format"`
Hasannotations bool `json:"hasannotations"`
@@ -2850,6 +2929,7 @@ func (s *TemplateService) PrepareTemplate(p *PrepareTemplateParams) (*PrepareTem
type PrepareTemplateResponse struct {
Account string `json:"account"`
Accountid string `json:"accountid"`
+ Arch string `json:"arch"`
Bits int `json:"bits"`
Bootable bool `json:"bootable"`
Checksum string `json:"checksum"`
@@ -2863,6 +2943,7 @@ type PrepareTemplateResponse struct {
Displaytext string `json:"displaytext"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Downloaddetails []map[string]string `json:"downloaddetails"`
Format string `json:"format"`
Hasannotations bool `json:"hasannotations"`
@@ -2943,6 +3024,9 @@ func (p *RegisterTemplateParams) toURLValues() url.Values {
if v, found := p.p["account"]; found {
u.Set("account", v.(string))
}
+ if v, found := p.p["arch"]; found {
+ u.Set("arch", v.(string))
+ }
if v, found := p.p["bits"]; found {
vv := strconv.Itoa(v.(int))
u.Set("bits", vv)
@@ -3057,6 +3141,27 @@ func (p *RegisterTemplateParams) GetAccount() (string, bool) {
return value, ok
}
+func (p *RegisterTemplateParams) SetArch(v string) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ p.p["arch"] = v
+}
+
+func (p *RegisterTemplateParams) ResetArch() {
+ if p.p != nil && p.p["arch"] != nil {
+ delete(p.p, "arch")
+ }
+}
+
+func (p *RegisterTemplateParams) GetArch() (string, bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ value, ok := p.p["arch"].(string)
+ return value, ok
+}
+
func (p *RegisterTemplateParams) SetBits(v int) {
if p.p == nil {
p.p = make(map[string]interface{})
@@ -3618,6 +3723,7 @@ type RegisterTemplateResponse struct {
type RegisterTemplate struct {
Account string `json:"account"`
Accountid string `json:"accountid"`
+ Arch string `json:"arch"`
Bits int `json:"bits"`
Bootable bool `json:"bootable"`
Checksum string `json:"checksum"`
@@ -3631,6 +3737,7 @@ type RegisterTemplate struct {
Displaytext string `json:"displaytext"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Downloaddetails []map[string]string `json:"downloaddetails"`
Format string `json:"format"`
Hasannotations bool `json:"hasannotations"`
@@ -3708,6 +3815,9 @@ func (p *UpdateTemplateParams) toURLValues() url.Values {
if p.p == nil {
return u
}
+ if v, found := p.p["arch"]; found {
+ u.Set("arch", v.(string))
+ }
if v, found := p.p["bootable"]; found {
vv := strconv.FormatBool(v.(bool))
u.Set("bootable", vv)
@@ -3761,12 +3871,36 @@ func (p *UpdateTemplateParams) toURLValues() url.Values {
vv := strconv.FormatBool(v.(bool))
u.Set("sshkeyenabled", vv)
}
+ if v, found := p.p["templatetag"]; found {
+ u.Set("templatetag", v.(string))
+ }
if v, found := p.p["templatetype"]; found {
u.Set("templatetype", v.(string))
}
return u
}
+func (p *UpdateTemplateParams) SetArch(v string) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ p.p["arch"] = v
+}
+
+func (p *UpdateTemplateParams) ResetArch() {
+ if p.p != nil && p.p["arch"] != nil {
+ delete(p.p, "arch")
+ }
+}
+
+func (p *UpdateTemplateParams) GetArch() (string, bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ value, ok := p.p["arch"].(string)
+ return value, ok
+}
+
func (p *UpdateTemplateParams) SetBootable(v bool) {
if p.p == nil {
p.p = make(map[string]interface{})
@@ -4061,6 +4195,27 @@ func (p *UpdateTemplateParams) GetSshkeyenabled() (bool, bool) {
return value, ok
}
+func (p *UpdateTemplateParams) SetTemplatetag(v string) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ p.p["templatetag"] = v
+}
+
+func (p *UpdateTemplateParams) ResetTemplatetag() {
+ if p.p != nil && p.p["templatetag"] != nil {
+ delete(p.p, "templatetag")
+ }
+}
+
+func (p *UpdateTemplateParams) GetTemplatetag() (string, bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ value, ok := p.p["templatetag"].(string)
+ return value, ok
+}
+
func (p *UpdateTemplateParams) SetTemplatetype(v string) {
if p.p == nil {
p.p = make(map[string]interface{})
@@ -4109,6 +4264,7 @@ func (s *TemplateService) UpdateTemplate(p *UpdateTemplateParams) (*UpdateTempla
type UpdateTemplateResponse struct {
Account string `json:"account"`
Accountid string `json:"accountid"`
+ Arch string `json:"arch"`
Bits int `json:"bits"`
Bootable bool `json:"bootable"`
Checksum string `json:"checksum"`
@@ -4122,6 +4278,7 @@ type UpdateTemplateResponse struct {
Displaytext string `json:"displaytext"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Downloaddetails []map[string]string `json:"downloaddetails"`
Format string `json:"format"`
Hasannotations bool `json:"hasannotations"`
diff --git a/cloudstack/UsageService.go b/cloudstack/UsageService.go
index 86c25a1..e8e7a6a 100644
--- a/cloudstack/UsageService.go
+++ b/cloudstack/UsageService.go
@@ -36,7 +36,7 @@ type UsageServiceIface interface {
DeleteTrafficType(p *DeleteTrafficTypeParams) (*DeleteTrafficTypeResponse, error)
NewDeleteTrafficTypeParams(id string) *DeleteTrafficTypeParams
GenerateUsageRecords(p *GenerateUsageRecordsParams) (*GenerateUsageRecordsResponse, error)
- NewGenerateUsageRecordsParams(enddate string, startdate string) *GenerateUsageRecordsParams
+ NewGenerateUsageRecordsParams() *GenerateUsageRecordsParams
ListTrafficMonitors(p *ListTrafficMonitorsParams) (*ListTrafficMonitorsResponse, error)
NewListTrafficMonitorsParams(zoneid string) *ListTrafficMonitorsParams
ListTrafficTypeImplementors(p *ListTrafficTypeImplementorsParams) (*ListTrafficTypeImplementorsResponse, error)
@@ -747,11 +747,9 @@ func (p *GenerateUsageRecordsParams) GetStartdate() (string, bool) {
// You should always use this function to get a new GenerateUsageRecordsParams instance,
// as then you are sure you have configured all required params
-func (s *UsageService) NewGenerateUsageRecordsParams(enddate string, startdate string) *GenerateUsageRecordsParams {
+func (s *UsageService) NewGenerateUsageRecordsParams() *GenerateUsageRecordsParams {
p := &GenerateUsageRecordsParams{}
p.p = make(map[string]interface{})
- p.p["enddate"] = enddate
- p.p["startdate"] = startdate
return p
}
@@ -1678,6 +1676,7 @@ type UsageRecord struct {
Description string `json:"description"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Enddate string `json:"enddate"`
Hasannotations bool `json:"hasannotations"`
Isdefault bool `json:"isdefault"`
@@ -1779,9 +1778,10 @@ type ListUsageTypesResponse struct {
type UsageType struct {
Description string `json:"description"`
+ Id int `json:"id"`
JobID string `json:"jobid"`
Jobstatus int `json:"jobstatus"`
- Usagetypeid int `json:"usagetypeid"`
+ Name string `json:"name"`
}
type RemoveRawUsageRecordsParams struct {
diff --git a/cloudstack/UsageService_mock.go b/cloudstack/UsageService_mock.go
index 9ff4854..8b17157 100644
--- a/cloudstack/UsageService_mock.go
+++ b/cloudstack/UsageService_mock.go
@@ -295,17 +295,17 @@ func (mr *MockUsageServiceIfaceMockRecorder) NewDeleteTrafficTypeParams(id inter
}
// NewGenerateUsageRecordsParams mocks base method.
-func (m *MockUsageServiceIface) NewGenerateUsageRecordsParams(enddate, startdate string) *GenerateUsageRecordsParams {
+func (m *MockUsageServiceIface) NewGenerateUsageRecordsParams() *GenerateUsageRecordsParams {
m.ctrl.T.Helper()
- ret := m.ctrl.Call(m, "NewGenerateUsageRecordsParams", enddate, startdate)
+ ret := m.ctrl.Call(m, "NewGenerateUsageRecordsParams")
ret0, _ := ret[0].(*GenerateUsageRecordsParams)
return ret0
}
// NewGenerateUsageRecordsParams indicates an expected call of NewGenerateUsageRecordsParams.
-func (mr *MockUsageServiceIfaceMockRecorder) NewGenerateUsageRecordsParams(enddate, startdate interface{}) *gomock.Call {
+func (mr *MockUsageServiceIfaceMockRecorder) NewGenerateUsageRecordsParams() *gomock.Call {
mr.mock.ctrl.T.Helper()
- return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "NewGenerateUsageRecordsParams", reflect.TypeOf((*MockUsageServiceIface)(nil).NewGenerateUsageRecordsParams), enddate, startdate)
+ return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "NewGenerateUsageRecordsParams", reflect.TypeOf((*MockUsageServiceIface)(nil).NewGenerateUsageRecordsParams))
}
// NewListTrafficMonitorsParams mocks base method.
diff --git a/cloudstack/VLANService.go b/cloudstack/VLANService.go
index 5f6ddd2..8439665 100644
--- a/cloudstack/VLANService.go
+++ b/cloudstack/VLANService.go
@@ -69,6 +69,10 @@ func (p *CreateVlanIpRangeParams) toURLValues() url.Values {
if v, found := p.p["endipv6"]; found {
u.Set("endipv6", v.(string))
}
+ if v, found := p.p["fornsx"]; found {
+ vv := strconv.FormatBool(v.(bool))
+ u.Set("fornsx", vv)
+ }
if v, found := p.p["forsystemvms"]; found {
vv := strconv.FormatBool(v.(bool))
u.Set("forsystemvms", vv)
@@ -200,6 +204,27 @@ func (p *CreateVlanIpRangeParams) GetEndipv6() (string, bool) {
return value, ok
}
+func (p *CreateVlanIpRangeParams) SetFornsx(v bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ p.p["fornsx"] = v
+}
+
+func (p *CreateVlanIpRangeParams) ResetFornsx() {
+ if p.p != nil && p.p["fornsx"] != nil {
+ delete(p.p, "fornsx")
+ }
+}
+
+func (p *CreateVlanIpRangeParams) GetFornsx() (bool, bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ value, ok := p.p["fornsx"].(bool)
+ return value, ok
+}
+
func (p *CreateVlanIpRangeParams) SetForsystemvms(v bool) {
if p.p == nil {
p.p = make(map[string]interface{})
@@ -527,8 +552,10 @@ type CreateVlanIpRangeResponse struct {
Description string `json:"description"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Endip string `json:"endip"`
Endipv6 string `json:"endipv6"`
+ Fornsx bool `json:"fornsx"`
Forsystemvms bool `json:"forsystemvms"`
Forvirtualnetwork bool `json:"forvirtualnetwork"`
Gateway string `json:"gateway"`
@@ -715,6 +742,7 @@ type DedicateGuestVlanRangeResponse struct {
Account string `json:"account"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Guestvlanrange string `json:"guestvlanrange"`
Id string `json:"id"`
JobID string `json:"jobid"`
@@ -770,7 +798,7 @@ func (s *VLANService) NewDeleteVlanIpRangeParams(id string) *DeleteVlanIpRangePa
return p
}
-// Creates a VLAN IP range.
+// Deletes a VLAN IP range.
func (s *VLANService) DeleteVlanIpRange(p *DeleteVlanIpRangeParams) (*DeleteVlanIpRangeResponse, error) {
resp, err := s.cs.newRequest("deleteVlanIpRange", p.toURLValues())
if err != nil {
@@ -1138,6 +1166,7 @@ type DedicatedGuestVlanRange struct {
Account string `json:"account"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Guestvlanrange string `json:"guestvlanrange"`
Id string `json:"id"`
JobID string `json:"jobid"`
@@ -1542,8 +1571,10 @@ type VlanIpRange struct {
Description string `json:"description"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Endip string `json:"endip"`
Endipv6 string `json:"endipv6"`
+ Fornsx bool `json:"fornsx"`
Forsystemvms bool `json:"forsystemvms"`
Forvirtualnetwork bool `json:"forvirtualnetwork"`
Gateway string `json:"gateway"`
@@ -1888,6 +1919,7 @@ type GuestVlan struct {
Allocationstate string `json:"allocationstate"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Id int64 `json:"id"`
Isdedicated bool `json:"isdedicated"`
JobID string `json:"jobid"`
@@ -2190,8 +2222,10 @@ type UpdateVlanIpRangeResponse struct {
Description string `json:"description"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Endip string `json:"endip"`
Endipv6 string `json:"endipv6"`
+ Fornsx bool `json:"fornsx"`
Forsystemvms bool `json:"forsystemvms"`
Forvirtualnetwork bool `json:"forvirtualnetwork"`
Gateway string `json:"gateway"`
diff --git a/cloudstack/VMGroupService.go b/cloudstack/VMGroupService.go
index 9b4b84a..b2d89f8 100644
--- a/cloudstack/VMGroupService.go
+++ b/cloudstack/VMGroupService.go
@@ -178,6 +178,7 @@ type CreateInstanceGroupResponse struct {
Created string `json:"created"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Hasannotations bool `json:"hasannotations"`
Id string `json:"id"`
JobID string `json:"jobid"`
@@ -653,6 +654,7 @@ type InstanceGroup struct {
Created string `json:"created"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Hasannotations bool `json:"hasannotations"`
Id string `json:"id"`
JobID string `json:"jobid"`
@@ -751,6 +753,7 @@ type UpdateInstanceGroupResponse struct {
Created string `json:"created"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Hasannotations bool `json:"hasannotations"`
Id string `json:"id"`
JobID string `json:"jobid"`
diff --git a/cloudstack/VPCService.go b/cloudstack/VPCService.go
index 857c44c..7af0093 100644
--- a/cloudstack/VPCService.go
+++ b/cloudstack/VPCService.go
@@ -33,9 +33,9 @@ type VPCServiceIface interface {
CreateStaticRoute(p *CreateStaticRouteParams) (*CreateStaticRouteResponse, error)
NewCreateStaticRouteParams(cidr string, gatewayid string) *CreateStaticRouteParams
CreateVPC(p *CreateVPCParams) (*CreateVPCResponse, error)
- NewCreateVPCParams(cidr string, displaytext string, name string, vpcofferingid string, zoneid string) *CreateVPCParams
+ NewCreateVPCParams(displaytext string, name string, vpcofferingid string, zoneid string) *CreateVPCParams
CreateVPCOffering(p *CreateVPCOfferingParams) (*CreateVPCOfferingResponse, error)
- NewCreateVPCOfferingParams(displaytext string, name string, supportedservices []string) *CreateVPCOfferingParams
+ NewCreateVPCOfferingParams(displaytext string, name string) *CreateVPCOfferingParams
DeletePrivateGateway(p *DeletePrivateGatewayParams) (*DeletePrivateGatewayResponse, error)
NewDeletePrivateGatewayParams(id string) *DeletePrivateGatewayParams
DeleteStaticRoute(p *DeleteStaticRouteParams) (*DeleteStaticRouteResponse, error)
@@ -401,6 +401,7 @@ type CreatePrivateGatewayResponse struct {
Associatednetworkid string `json:"associatednetworkid"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Gateway string `json:"gateway"`
Hasannotations bool `json:"hasannotations"`
Id string `json:"id"`
@@ -526,19 +527,20 @@ func (s *VPCService) CreateStaticRoute(p *CreateStaticRouteParams) (*CreateStati
}
type CreateStaticRouteResponse struct {
- Account string `json:"account"`
- Cidr string `json:"cidr"`
- Domain string `json:"domain"`
- Domainid string `json:"domainid"`
- Gatewayid string `json:"gatewayid"`
- Id string `json:"id"`
- JobID string `json:"jobid"`
- Jobstatus int `json:"jobstatus"`
- Project string `json:"project"`
- Projectid string `json:"projectid"`
- State string `json:"state"`
- Tags []Tags `json:"tags"`
- Vpcid string `json:"vpcid"`
+ Account string `json:"account"`
+ Cidr string `json:"cidr"`
+ Domain string `json:"domain"`
+ Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
+ Gatewayid string `json:"gatewayid"`
+ Id string `json:"id"`
+ JobID string `json:"jobid"`
+ Jobstatus int `json:"jobstatus"`
+ Project string `json:"project"`
+ Projectid string `json:"projectid"`
+ State string `json:"state"`
+ Tags []Tags `json:"tags"`
+ Vpcid string `json:"vpcid"`
}
type CreateVPCParams struct {
@@ -553,9 +555,21 @@ func (p *CreateVPCParams) toURLValues() url.Values {
if v, found := p.p["account"]; found {
u.Set("account", v.(string))
}
+ if v, found := p.p["asnumber"]; found {
+ vv := strconv.FormatInt(v.(int64), 10)
+ u.Set("asnumber", vv)
+ }
+ if v, found := p.p["bgppeerids"]; found {
+ vv := strings.Join(v.([]string), ",")
+ u.Set("bgppeerids", vv)
+ }
if v, found := p.p["cidr"]; found {
u.Set("cidr", v.(string))
}
+ if v, found := p.p["cidrsize"]; found {
+ vv := strconv.Itoa(v.(int))
+ u.Set("cidrsize", vv)
+ }
if v, found := p.p["displaytext"]; found {
u.Set("displaytext", v.(string))
}
@@ -628,6 +642,48 @@ func (p *CreateVPCParams) GetAccount() (string, bool) {
return value, ok
}
+func (p *CreateVPCParams) SetAsnumber(v int64) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ p.p["asnumber"] = v
+}
+
+func (p *CreateVPCParams) ResetAsnumber() {
+ if p.p != nil && p.p["asnumber"] != nil {
+ delete(p.p, "asnumber")
+ }
+}
+
+func (p *CreateVPCParams) GetAsnumber() (int64, bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ value, ok := p.p["asnumber"].(int64)
+ return value, ok
+}
+
+func (p *CreateVPCParams) SetBgppeerids(v []string) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ p.p["bgppeerids"] = v
+}
+
+func (p *CreateVPCParams) ResetBgppeerids() {
+ if p.p != nil && p.p["bgppeerids"] != nil {
+ delete(p.p, "bgppeerids")
+ }
+}
+
+func (p *CreateVPCParams) GetBgppeerids() ([]string, bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ value, ok := p.p["bgppeerids"].([]string)
+ return value, ok
+}
+
func (p *CreateVPCParams) SetCidr(v string) {
if p.p == nil {
p.p = make(map[string]interface{})
@@ -649,6 +705,27 @@ func (p *CreateVPCParams) GetCidr() (string, bool) {
return value, ok
}
+func (p *CreateVPCParams) SetCidrsize(v int) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ p.p["cidrsize"] = v
+}
+
+func (p *CreateVPCParams) ResetCidrsize() {
+ if p.p != nil && p.p["cidrsize"] != nil {
+ delete(p.p, "cidrsize")
+ }
+}
+
+func (p *CreateVPCParams) GetCidrsize() (int, bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ value, ok := p.p["cidrsize"].(int)
+ return value, ok
+}
+
func (p *CreateVPCParams) SetDisplaytext(v string) {
if p.p == nil {
p.p = make(map[string]interface{})
@@ -966,10 +1043,9 @@ func (p *CreateVPCParams) GetZoneid() (string, bool) {
// You should always use this function to get a new CreateVPCParams instance,
// as then you are sure you have configured all required params
-func (s *VPCService) NewCreateVPCParams(cidr string, displaytext string, name string, vpcofferingid string, zoneid string) *CreateVPCParams {
+func (s *VPCService) NewCreateVPCParams(displaytext string, name string, vpcofferingid string, zoneid string) *CreateVPCParams {
p := &CreateVPCParams{}
p.p = make(map[string]interface{})
- p.p["cidr"] = cidr
p.p["displaytext"] = displaytext
p.p["name"] = name
p.p["vpcofferingid"] = vpcofferingid
@@ -1014,6 +1090,9 @@ func (s *VPCService) CreateVPC(p *CreateVPCParams) (*CreateVPCResponse, error) {
type CreateVPCResponse struct {
Account string `json:"account"`
+ Asnumber int64 `json:"asnumber"`
+ Asnumberid string `json:"asnumberid"`
+ Bgppeers []interface{} `json:"bgppeers"`
Cidr string `json:"cidr"`
Created string `json:"created"`
Displaytext string `json:"displaytext"`
@@ -1022,10 +1101,13 @@ type CreateVPCResponse struct {
Dns2 string `json:"dns2"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Fordisplay bool `json:"fordisplay"`
Hasannotations bool `json:"hasannotations"`
Icon interface{} `json:"icon"`
Id string `json:"id"`
+ Ip4routes []interface{} `json:"ip4routes"`
+ Ip4routing string `json:"ip4routing"`
Ip6dns1 string `json:"ip6dns1"`
Ip6dns2 string `json:"ip6dns2"`
Ip6routes []interface{} `json:"ip6routes"`
@@ -1091,12 +1173,26 @@ func (p *CreateVPCOfferingParams) toURLValues() url.Values {
vv := strconv.FormatBool(v.(bool))
u.Set("enable", vv)
}
+ if v, found := p.p["fornsx"]; found {
+ vv := strconv.FormatBool(v.(bool))
+ u.Set("fornsx", vv)
+ }
if v, found := p.p["internetprotocol"]; found {
u.Set("internetprotocol", v.(string))
}
if v, found := p.p["name"]; found {
u.Set("name", v.(string))
}
+ if v, found := p.p["networkmode"]; found {
+ u.Set("networkmode", v.(string))
+ }
+ if v, found := p.p["nsxsupportlb"]; found {
+ vv := strconv.FormatBool(v.(bool))
+ u.Set("nsxsupportlb", vv)
+ }
+ if v, found := p.p["routingmode"]; found {
+ u.Set("routingmode", v.(string))
+ }
if v, found := p.p["servicecapabilitylist"]; found {
m := v.(map[string]string)
for i, k := range getSortedKeysFromMap(m) {
@@ -1114,6 +1210,10 @@ func (p *CreateVPCOfferingParams) toURLValues() url.Values {
u.Set(fmt.Sprintf("serviceproviderlist[%d].provider", i), m[k])
}
}
+ if v, found := p.p["specifyasnumber"]; found {
+ vv := strconv.FormatBool(v.(bool))
+ u.Set("specifyasnumber", vv)
+ }
if v, found := p.p["supportedservices"]; found {
vv := strings.Join(v.([]string), ",")
u.Set("supportedservices", vv)
@@ -1188,6 +1288,27 @@ func (p *CreateVPCOfferingParams) GetEnable() (bool, bool) {
return value, ok
}
+func (p *CreateVPCOfferingParams) SetFornsx(v bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ p.p["fornsx"] = v
+}
+
+func (p *CreateVPCOfferingParams) ResetFornsx() {
+ if p.p != nil && p.p["fornsx"] != nil {
+ delete(p.p, "fornsx")
+ }
+}
+
+func (p *CreateVPCOfferingParams) GetFornsx() (bool, bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ value, ok := p.p["fornsx"].(bool)
+ return value, ok
+}
+
func (p *CreateVPCOfferingParams) SetInternetprotocol(v string) {
if p.p == nil {
p.p = make(map[string]interface{})
@@ -1230,6 +1351,69 @@ func (p *CreateVPCOfferingParams) GetName() (string, bool) {
return value, ok
}
+func (p *CreateVPCOfferingParams) SetNetworkmode(v string) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ p.p["networkmode"] = v
+}
+
+func (p *CreateVPCOfferingParams) ResetNetworkmode() {
+ if p.p != nil && p.p["networkmode"] != nil {
+ delete(p.p, "networkmode")
+ }
+}
+
+func (p *CreateVPCOfferingParams) GetNetworkmode() (string, bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ value, ok := p.p["networkmode"].(string)
+ return value, ok
+}
+
+func (p *CreateVPCOfferingParams) SetNsxsupportlb(v bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ p.p["nsxsupportlb"] = v
+}
+
+func (p *CreateVPCOfferingParams) ResetNsxsupportlb() {
+ if p.p != nil && p.p["nsxsupportlb"] != nil {
+ delete(p.p, "nsxsupportlb")
+ }
+}
+
+func (p *CreateVPCOfferingParams) GetNsxsupportlb() (bool, bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ value, ok := p.p["nsxsupportlb"].(bool)
+ return value, ok
+}
+
+func (p *CreateVPCOfferingParams) SetRoutingmode(v string) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ p.p["routingmode"] = v
+}
+
+func (p *CreateVPCOfferingParams) ResetRoutingmode() {
+ if p.p != nil && p.p["routingmode"] != nil {
+ delete(p.p, "routingmode")
+ }
+}
+
+func (p *CreateVPCOfferingParams) GetRoutingmode() (string, bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ value, ok := p.p["routingmode"].(string)
+ return value, ok
+}
+
func (p *CreateVPCOfferingParams) SetServicecapabilitylist(v map[string]string) {
if p.p == nil {
p.p = make(map[string]interface{})
@@ -1293,6 +1477,27 @@ func (p *CreateVPCOfferingParams) GetServiceproviderlist() (map[string]string, b
return value, ok
}
+func (p *CreateVPCOfferingParams) SetSpecifyasnumber(v bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ p.p["specifyasnumber"] = v
+}
+
+func (p *CreateVPCOfferingParams) ResetSpecifyasnumber() {
+ if p.p != nil && p.p["specifyasnumber"] != nil {
+ delete(p.p, "specifyasnumber")
+ }
+}
+
+func (p *CreateVPCOfferingParams) GetSpecifyasnumber() (bool, bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ value, ok := p.p["specifyasnumber"].(bool)
+ return value, ok
+}
+
func (p *CreateVPCOfferingParams) SetSupportedservices(v []string) {
if p.p == nil {
p.p = make(map[string]interface{})
@@ -1337,12 +1542,11 @@ func (p *CreateVPCOfferingParams) GetZoneid() ([]string, bool) {
// You should always use this function to get a new CreateVPCOfferingParams instance,
// as then you are sure you have configured all required params
-func (s *VPCService) NewCreateVPCOfferingParams(displaytext string, name string, supportedservices []string) *CreateVPCOfferingParams {
+func (s *VPCService) NewCreateVPCOfferingParams(displaytext string, name string) *CreateVPCOfferingParams {
p := &CreateVPCOfferingParams{}
p.p = make(map[string]interface{})
p.p["displaytext"] = displaytext
p.p["name"] = name
- p.p["supportedservices"] = supportedservices
return p
}
@@ -1387,13 +1591,17 @@ type CreateVPCOfferingResponse struct {
Distributedvpcrouter bool `json:"distributedvpcrouter"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Fornsx bool `json:"fornsx"`
Id string `json:"id"`
Internetprotocol string `json:"internetprotocol"`
Isdefault bool `json:"isdefault"`
JobID string `json:"jobid"`
Jobstatus int `json:"jobstatus"`
Name string `json:"name"`
+ Networkmode string `json:"networkmode"`
+ Routingmode string `json:"routingmode"`
Service []CreateVPCOfferingResponseService `json:"service"`
+ Specifyasnumber bool `json:"specifyasnumber"`
State string `json:"state"`
SupportsregionLevelvpc bool `json:"supportsregionLevelvpc"`
Zone string `json:"zone"`
@@ -2147,6 +2355,7 @@ type PrivateGateway struct {
Associatednetworkid string `json:"associatednetworkid"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Gateway string `json:"gateway"`
Hasannotations bool `json:"hasannotations"`
Id string `json:"id"`
@@ -2560,19 +2769,20 @@ type ListStaticRoutesResponse struct {
}
type StaticRoute struct {
- Account string `json:"account"`
- Cidr string `json:"cidr"`
- Domain string `json:"domain"`
- Domainid string `json:"domainid"`
- Gatewayid string `json:"gatewayid"`
- Id string `json:"id"`
- JobID string `json:"jobid"`
- Jobstatus int `json:"jobstatus"`
- Project string `json:"project"`
- Projectid string `json:"projectid"`
- State string `json:"state"`
- Tags []Tags `json:"tags"`
- Vpcid string `json:"vpcid"`
+ Account string `json:"account"`
+ Cidr string `json:"cidr"`
+ Domain string `json:"domain"`
+ Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
+ Gatewayid string `json:"gatewayid"`
+ Id string `json:"id"`
+ JobID string `json:"jobid"`
+ Jobstatus int `json:"jobstatus"`
+ Project string `json:"project"`
+ Projectid string `json:"projectid"`
+ State string `json:"state"`
+ Tags []Tags `json:"tags"`
+ Vpcid string `json:"vpcid"`
}
type ListVPCOfferingsParams struct {
@@ -2972,13 +3182,17 @@ type VPCOffering struct {
Distributedvpcrouter bool `json:"distributedvpcrouter"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Fornsx bool `json:"fornsx"`
Id string `json:"id"`
Internetprotocol string `json:"internetprotocol"`
Isdefault bool `json:"isdefault"`
JobID string `json:"jobid"`
Jobstatus int `json:"jobstatus"`
Name string `json:"name"`
+ Networkmode string `json:"networkmode"`
+ Routingmode string `json:"routingmode"`
Service []VPCOfferingService `json:"service"`
+ Specifyasnumber bool `json:"specifyasnumber"`
State string `json:"state"`
SupportsregionLevelvpc bool `json:"supportsregionLevelvpc"`
Zone string `json:"zone"`
@@ -3624,6 +3838,9 @@ type ListVPCsResponse struct {
type VPC struct {
Account string `json:"account"`
+ Asnumber int64 `json:"asnumber"`
+ Asnumberid string `json:"asnumberid"`
+ Bgppeers []interface{} `json:"bgppeers"`
Cidr string `json:"cidr"`
Created string `json:"created"`
Displaytext string `json:"displaytext"`
@@ -3632,10 +3849,13 @@ type VPC struct {
Dns2 string `json:"dns2"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Fordisplay bool `json:"fordisplay"`
Hasannotations bool `json:"hasannotations"`
Icon interface{} `json:"icon"`
Id string `json:"id"`
+ Ip4routes []interface{} `json:"ip4routes"`
+ Ip4routing string `json:"ip4routing"`
Ip6dns1 string `json:"ip6dns1"`
Ip6dns2 string `json:"ip6dns2"`
Ip6routes []interface{} `json:"ip6routes"`
@@ -4066,6 +4286,9 @@ func (s *VPCService) UpdateVPC(p *UpdateVPCParams) (*UpdateVPCResponse, error) {
type UpdateVPCResponse struct {
Account string `json:"account"`
+ Asnumber int64 `json:"asnumber"`
+ Asnumberid string `json:"asnumberid"`
+ Bgppeers []interface{} `json:"bgppeers"`
Cidr string `json:"cidr"`
Created string `json:"created"`
Displaytext string `json:"displaytext"`
@@ -4074,10 +4297,13 @@ type UpdateVPCResponse struct {
Dns2 string `json:"dns2"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Fordisplay bool `json:"fordisplay"`
Hasannotations bool `json:"hasannotations"`
Icon interface{} `json:"icon"`
Id string `json:"id"`
+ Ip4routes []interface{} `json:"ip4routes"`
+ Ip4routing string `json:"ip4routing"`
Ip6dns1 string `json:"ip6dns1"`
Ip6dns2 string `json:"ip6dns2"`
Ip6routes []interface{} `json:"ip6routes"`
@@ -4354,13 +4580,17 @@ type UpdateVPCOfferingResponse struct {
Distributedvpcrouter bool `json:"distributedvpcrouter"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Fornsx bool `json:"fornsx"`
Id string `json:"id"`
Internetprotocol string `json:"internetprotocol"`
Isdefault bool `json:"isdefault"`
JobID string `json:"jobid"`
Jobstatus int `json:"jobstatus"`
Name string `json:"name"`
+ Networkmode string `json:"networkmode"`
+ Routingmode string `json:"routingmode"`
Service []UpdateVPCOfferingResponseService `json:"service"`
+ Specifyasnumber bool `json:"specifyasnumber"`
State string `json:"state"`
SupportsregionLevelvpc bool `json:"supportsregionLevelvpc"`
Zone string `json:"zone"`
diff --git a/cloudstack/VPCService_mock.go b/cloudstack/VPCService_mock.go
index 33dde55..567d26d 100644
--- a/cloudstack/VPCService_mock.go
+++ b/cloudstack/VPCService_mock.go
@@ -429,31 +429,31 @@ func (mr *MockVPCServiceIfaceMockRecorder) NewCreateStaticRouteParams(cidr, gate
}
// NewCreateVPCOfferingParams mocks base method.
-func (m *MockVPCServiceIface) NewCreateVPCOfferingParams(displaytext, name string, supportedservices []string) *CreateVPCOfferingParams {
+func (m *MockVPCServiceIface) NewCreateVPCOfferingParams(displaytext, name string) *CreateVPCOfferingParams {
m.ctrl.T.Helper()
- ret := m.ctrl.Call(m, "NewCreateVPCOfferingParams", displaytext, name, supportedservices)
+ ret := m.ctrl.Call(m, "NewCreateVPCOfferingParams", displaytext, name)
ret0, _ := ret[0].(*CreateVPCOfferingParams)
return ret0
}
// NewCreateVPCOfferingParams indicates an expected call of NewCreateVPCOfferingParams.
-func (mr *MockVPCServiceIfaceMockRecorder) NewCreateVPCOfferingParams(displaytext, name, supportedservices interface{}) *gomock.Call {
+func (mr *MockVPCServiceIfaceMockRecorder) NewCreateVPCOfferingParams(displaytext, name interface{}) *gomock.Call {
mr.mock.ctrl.T.Helper()
- return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "NewCreateVPCOfferingParams", reflect.TypeOf((*MockVPCServiceIface)(nil).NewCreateVPCOfferingParams), displaytext, name, supportedservices)
+ return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "NewCreateVPCOfferingParams", reflect.TypeOf((*MockVPCServiceIface)(nil).NewCreateVPCOfferingParams), displaytext, name)
}
// NewCreateVPCParams mocks base method.
-func (m *MockVPCServiceIface) NewCreateVPCParams(cidr, displaytext, name, vpcofferingid, zoneid string) *CreateVPCParams {
+func (m *MockVPCServiceIface) NewCreateVPCParams(displaytext, name, vpcofferingid, zoneid string) *CreateVPCParams {
m.ctrl.T.Helper()
- ret := m.ctrl.Call(m, "NewCreateVPCParams", cidr, displaytext, name, vpcofferingid, zoneid)
+ ret := m.ctrl.Call(m, "NewCreateVPCParams", displaytext, name, vpcofferingid, zoneid)
ret0, _ := ret[0].(*CreateVPCParams)
return ret0
}
// NewCreateVPCParams indicates an expected call of NewCreateVPCParams.
-func (mr *MockVPCServiceIfaceMockRecorder) NewCreateVPCParams(cidr, displaytext, name, vpcofferingid, zoneid interface{}) *gomock.Call {
+func (mr *MockVPCServiceIfaceMockRecorder) NewCreateVPCParams(displaytext, name, vpcofferingid, zoneid interface{}) *gomock.Call {
mr.mock.ctrl.T.Helper()
- return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "NewCreateVPCParams", reflect.TypeOf((*MockVPCServiceIface)(nil).NewCreateVPCParams), cidr, displaytext, name, vpcofferingid, zoneid)
+ return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "NewCreateVPCParams", reflect.TypeOf((*MockVPCServiceIface)(nil).NewCreateVPCParams), displaytext, name, vpcofferingid, zoneid)
}
// NewDeletePrivateGatewayParams mocks base method.
diff --git a/cloudstack/VPNService.go b/cloudstack/VPNService.go
index 0ec325c..fbbebc2 100644
--- a/cloudstack/VPNService.go
+++ b/cloudstack/VPNService.go
@@ -255,16 +255,17 @@ func (s *VPNService) AddVpnUser(p *AddVpnUserParams) (*AddVpnUserResponse, error
}
type AddVpnUserResponse struct {
- Account string `json:"account"`
- Domain string `json:"domain"`
- Domainid string `json:"domainid"`
- Id string `json:"id"`
- JobID string `json:"jobid"`
- Jobstatus int `json:"jobstatus"`
- Project string `json:"project"`
- Projectid string `json:"projectid"`
- State string `json:"state"`
- Username string `json:"username"`
+ Account string `json:"account"`
+ Domain string `json:"domain"`
+ Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
+ Id string `json:"id"`
+ JobID string `json:"jobid"`
+ Jobstatus int `json:"jobstatus"`
+ Project string `json:"project"`
+ Projectid string `json:"projectid"`
+ State string `json:"state"`
+ Username string `json:"username"`
}
type CreateRemoteAccessVpnParams struct {
@@ -473,6 +474,7 @@ type CreateRemoteAccessVpnResponse struct {
Account string `json:"account"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Fordisplay bool `json:"fordisplay"`
Id string `json:"id"`
Iprange string `json:"iprange"`
@@ -647,6 +649,7 @@ type CreateVpnConnectionResponse struct {
Created string `json:"created"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Dpd bool `json:"dpd"`
Esplifetime int64 `json:"esplifetime"`
Esppolicy string `json:"esppolicy"`
@@ -1101,6 +1104,7 @@ type CreateVpnCustomerGatewayResponse struct {
Cidrlist string `json:"cidrlist"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Dpd bool `json:"dpd"`
Esplifetime int64 `json:"esplifetime"`
Esppolicy string `json:"esppolicy"`
@@ -1231,6 +1235,7 @@ type CreateVpnGatewayResponse struct {
Account string `json:"account"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Fordisplay bool `json:"fordisplay"`
Id string `json:"id"`
JobID string `json:"jobid"`
@@ -1941,6 +1946,7 @@ type RemoteAccessVpn struct {
Account string `json:"account"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Fordisplay bool `json:"fordisplay"`
Id string `json:"id"`
Iprange string `json:"iprange"`
@@ -2302,6 +2308,7 @@ type VpnConnection struct {
Created string `json:"created"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Dpd bool `json:"dpd"`
Esplifetime int64 `json:"esplifetime"`
Esppolicy string `json:"esppolicy"`
@@ -2674,6 +2681,7 @@ type VpnCustomerGateway struct {
Cidrlist string `json:"cidrlist"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Dpd bool `json:"dpd"`
Esplifetime int64 `json:"esplifetime"`
Esppolicy string `json:"esppolicy"`
@@ -3041,6 +3049,7 @@ type VpnGateway struct {
Account string `json:"account"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Fordisplay bool `json:"fordisplay"`
Id string `json:"id"`
JobID string `json:"jobid"`
@@ -3371,16 +3380,17 @@ type ListVpnUsersResponse struct {
}
type VpnUser struct {
- Account string `json:"account"`
- Domain string `json:"domain"`
- Domainid string `json:"domainid"`
- Id string `json:"id"`
- JobID string `json:"jobid"`
- Jobstatus int `json:"jobstatus"`
- Project string `json:"project"`
- Projectid string `json:"projectid"`
- State string `json:"state"`
- Username string `json:"username"`
+ Account string `json:"account"`
+ Domain string `json:"domain"`
+ Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
+ Id string `json:"id"`
+ JobID string `json:"jobid"`
+ Jobstatus int `json:"jobstatus"`
+ Project string `json:"project"`
+ Projectid string `json:"projectid"`
+ State string `json:"state"`
+ Username string `json:"username"`
}
type RemoveVpnUserParams struct {
@@ -3671,6 +3681,7 @@ type ResetVpnConnectionResponse struct {
Created string `json:"created"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Dpd bool `json:"dpd"`
Esplifetime int64 `json:"esplifetime"`
Esppolicy string `json:"esppolicy"`
@@ -3828,6 +3839,7 @@ type UpdateRemoteAccessVpnResponse struct {
Account string `json:"account"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Fordisplay bool `json:"fordisplay"`
Id string `json:"id"`
Iprange string `json:"iprange"`
@@ -3976,6 +3988,7 @@ type UpdateVpnConnectionResponse struct {
Created string `json:"created"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Dpd bool `json:"dpd"`
Esplifetime int64 `json:"esplifetime"`
Esppolicy string `json:"esppolicy"`
@@ -4431,6 +4444,7 @@ type UpdateVpnCustomerGatewayResponse struct {
Cidrlist string `json:"cidrlist"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Dpd bool `json:"dpd"`
Esplifetime int64 `json:"esplifetime"`
Esppolicy string `json:"esppolicy"`
@@ -4585,6 +4599,7 @@ type UpdateVpnGatewayResponse struct {
Account string `json:"account"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Fordisplay bool `json:"fordisplay"`
Id string `json:"id"`
JobID string `json:"jobid"`
diff --git a/cloudstack/VirtualMachineService.go b/cloudstack/VirtualMachineService.go
index 9da4b05..9a1aae7 100644
--- a/cloudstack/VirtualMachineService.go
+++ b/cloudstack/VirtualMachineService.go
@@ -279,6 +279,7 @@ type AddNicToVirtualMachineResponse struct {
Cpuspeed int `json:"cpuspeed"`
Cpuused string `json:"cpuused"`
Created string `json:"created"`
+ Deleteprotection bool `json:"deleteprotection"`
Details map[string]string `json:"details"`
Diskioread int64 `json:"diskioread"`
Diskiowrite int64 `json:"diskiowrite"`
@@ -290,6 +291,7 @@ type AddNicToVirtualMachineResponse struct {
Displayvm bool `json:"displayvm"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Forvirtualnetwork bool `json:"forvirtualnetwork"`
Group string `json:"group"`
Groupid string `json:"groupid"`
@@ -303,6 +305,7 @@ type AddNicToVirtualMachineResponse struct {
Icon interface{} `json:"icon"`
Id string `json:"id"`
Instancename string `json:"instancename"`
+ Ipaddress string `json:"ipaddress"`
Isdynamicallyscalable bool `json:"isdynamicallyscalable"`
Isodisplaytext string `json:"isodisplaytext"`
Isoid string `json:"isoid"`
@@ -340,6 +343,7 @@ type AddNicToVirtualMachineResponse struct {
State string `json:"state"`
Tags []Tags `json:"tags"`
Templatedisplaytext string `json:"templatedisplaytext"`
+ Templateformat string `json:"templateformat"`
Templateid string `json:"templateid"`
Templatename string `json:"templatename"`
Templatetype string `json:"templatetype"`
@@ -351,6 +355,7 @@ type AddNicToVirtualMachineResponse struct {
Userid string `json:"userid"`
Username string `json:"username"`
Vgpu string `json:"vgpu"`
+ Vmtype string `json:"vmtype"`
Vnfdetails map[string]string `json:"vnfdetails"`
Vnfnics []string `json:"vnfnics"`
Zoneid string `json:"zoneid"`
@@ -362,6 +367,7 @@ type AddNicToVirtualMachineResponseSecuritygroup struct {
Description string `json:"description"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Egressrule []AddNicToVirtualMachineResponseSecuritygroupRule `json:"egressrule"`
Id string `json:"id"`
Ingressrule []AddNicToVirtualMachineResponseSecuritygroupRule `json:"ingressrule"`
@@ -387,16 +393,18 @@ type AddNicToVirtualMachineResponseSecuritygroupRule struct {
}
type AddNicToVirtualMachineResponseAffinitygroup struct {
- Account string `json:"account"`
- Description string `json:"description"`
- Domain string `json:"domain"`
- Domainid string `json:"domainid"`
- Id string `json:"id"`
- Name string `json:"name"`
- Project string `json:"project"`
- Projectid string `json:"projectid"`
- Type string `json:"type"`
- VirtualmachineIds []string `json:"virtualmachineIds"`
+ Account string `json:"account"`
+ Dedicatedresources []string `json:"dedicatedresources"`
+ Description string `json:"description"`
+ Domain string `json:"domain"`
+ Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
+ Id string `json:"id"`
+ Name string `json:"name"`
+ Project string `json:"project"`
+ Projectid string `json:"projectid"`
+ Type string `json:"type"`
+ VirtualmachineIds []string `json:"virtualmachineIds"`
}
func (r *AddNicToVirtualMachineResponse) UnmarshalJSON(b []byte) error {
@@ -621,6 +629,7 @@ type AssignVirtualMachineResponse struct {
Cpuspeed int `json:"cpuspeed"`
Cpuused string `json:"cpuused"`
Created string `json:"created"`
+ Deleteprotection bool `json:"deleteprotection"`
Details map[string]string `json:"details"`
Diskioread int64 `json:"diskioread"`
Diskiowrite int64 `json:"diskiowrite"`
@@ -632,6 +641,7 @@ type AssignVirtualMachineResponse struct {
Displayvm bool `json:"displayvm"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Forvirtualnetwork bool `json:"forvirtualnetwork"`
Group string `json:"group"`
Groupid string `json:"groupid"`
@@ -645,6 +655,7 @@ type AssignVirtualMachineResponse struct {
Icon interface{} `json:"icon"`
Id string `json:"id"`
Instancename string `json:"instancename"`
+ Ipaddress string `json:"ipaddress"`
Isdynamicallyscalable bool `json:"isdynamicallyscalable"`
Isodisplaytext string `json:"isodisplaytext"`
Isoid string `json:"isoid"`
@@ -682,6 +693,7 @@ type AssignVirtualMachineResponse struct {
State string `json:"state"`
Tags []Tags `json:"tags"`
Templatedisplaytext string `json:"templatedisplaytext"`
+ Templateformat string `json:"templateformat"`
Templateid string `json:"templateid"`
Templatename string `json:"templatename"`
Templatetype string `json:"templatetype"`
@@ -693,6 +705,7 @@ type AssignVirtualMachineResponse struct {
Userid string `json:"userid"`
Username string `json:"username"`
Vgpu string `json:"vgpu"`
+ Vmtype string `json:"vmtype"`
Vnfdetails map[string]string `json:"vnfdetails"`
Vnfnics []string `json:"vnfnics"`
Zoneid string `json:"zoneid"`
@@ -704,6 +717,7 @@ type AssignVirtualMachineResponseSecuritygroup struct {
Description string `json:"description"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Egressrule []AssignVirtualMachineResponseSecuritygroupRule `json:"egressrule"`
Id string `json:"id"`
Ingressrule []AssignVirtualMachineResponseSecuritygroupRule `json:"ingressrule"`
@@ -729,16 +743,18 @@ type AssignVirtualMachineResponseSecuritygroupRule struct {
}
type AssignVirtualMachineResponseAffinitygroup struct {
- Account string `json:"account"`
- Description string `json:"description"`
- Domain string `json:"domain"`
- Domainid string `json:"domainid"`
- Id string `json:"id"`
- Name string `json:"name"`
- Project string `json:"project"`
- Projectid string `json:"projectid"`
- Type string `json:"type"`
- VirtualmachineIds []string `json:"virtualmachineIds"`
+ Account string `json:"account"`
+ Dedicatedresources []string `json:"dedicatedresources"`
+ Description string `json:"description"`
+ Domain string `json:"domain"`
+ Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
+ Id string `json:"id"`
+ Name string `json:"name"`
+ Project string `json:"project"`
+ Projectid string `json:"projectid"`
+ Type string `json:"type"`
+ VirtualmachineIds []string `json:"virtualmachineIds"`
}
func (r *AssignVirtualMachineResponse) UnmarshalJSON(b []byte) error {
@@ -993,6 +1009,7 @@ type ChangeServiceForVirtualMachineResponse struct {
Cpuspeed int `json:"cpuspeed"`
Cpuused string `json:"cpuused"`
Created string `json:"created"`
+ Deleteprotection bool `json:"deleteprotection"`
Details map[string]string `json:"details"`
Diskioread int64 `json:"diskioread"`
Diskiowrite int64 `json:"diskiowrite"`
@@ -1004,6 +1021,7 @@ type ChangeServiceForVirtualMachineResponse struct {
Displayvm bool `json:"displayvm"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Forvirtualnetwork bool `json:"forvirtualnetwork"`
Group string `json:"group"`
Groupid string `json:"groupid"`
@@ -1017,6 +1035,7 @@ type ChangeServiceForVirtualMachineResponse struct {
Icon interface{} `json:"icon"`
Id string `json:"id"`
Instancename string `json:"instancename"`
+ Ipaddress string `json:"ipaddress"`
Isdynamicallyscalable bool `json:"isdynamicallyscalable"`
Isodisplaytext string `json:"isodisplaytext"`
Isoid string `json:"isoid"`
@@ -1054,6 +1073,7 @@ type ChangeServiceForVirtualMachineResponse struct {
State string `json:"state"`
Tags []Tags `json:"tags"`
Templatedisplaytext string `json:"templatedisplaytext"`
+ Templateformat string `json:"templateformat"`
Templateid string `json:"templateid"`
Templatename string `json:"templatename"`
Templatetype string `json:"templatetype"`
@@ -1065,6 +1085,7 @@ type ChangeServiceForVirtualMachineResponse struct {
Userid string `json:"userid"`
Username string `json:"username"`
Vgpu string `json:"vgpu"`
+ Vmtype string `json:"vmtype"`
Vnfdetails map[string]string `json:"vnfdetails"`
Vnfnics []string `json:"vnfnics"`
Zoneid string `json:"zoneid"`
@@ -1076,6 +1097,7 @@ type ChangeServiceForVirtualMachineResponseSecuritygroup struct {
Description string `json:"description"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Egressrule []ChangeServiceForVirtualMachineResponseSecuritygroupRule `json:"egressrule"`
Id string `json:"id"`
Ingressrule []ChangeServiceForVirtualMachineResponseSecuritygroupRule `json:"ingressrule"`
@@ -1101,16 +1123,18 @@ type ChangeServiceForVirtualMachineResponseSecuritygroupRule struct {
}
type ChangeServiceForVirtualMachineResponseAffinitygroup struct {
- Account string `json:"account"`
- Description string `json:"description"`
- Domain string `json:"domain"`
- Domainid string `json:"domainid"`
- Id string `json:"id"`
- Name string `json:"name"`
- Project string `json:"project"`
- Projectid string `json:"projectid"`
- Type string `json:"type"`
- VirtualmachineIds []string `json:"virtualmachineIds"`
+ Account string `json:"account"`
+ Dedicatedresources []string `json:"dedicatedresources"`
+ Description string `json:"description"`
+ Domain string `json:"domain"`
+ Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
+ Id string `json:"id"`
+ Name string `json:"name"`
+ Project string `json:"project"`
+ Projectid string `json:"projectid"`
+ Type string `json:"type"`
+ VirtualmachineIds []string `json:"virtualmachineIds"`
}
func (r *ChangeServiceForVirtualMachineResponse) UnmarshalJSON(b []byte) error {
@@ -2604,6 +2628,7 @@ type DeployVirtualMachineResponse struct {
Cpuspeed int `json:"cpuspeed"`
Cpuused string `json:"cpuused"`
Created string `json:"created"`
+ Deleteprotection bool `json:"deleteprotection"`
Details map[string]string `json:"details"`
Diskioread int64 `json:"diskioread"`
Diskiowrite int64 `json:"diskiowrite"`
@@ -2615,6 +2640,7 @@ type DeployVirtualMachineResponse struct {
Displayvm bool `json:"displayvm"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Forvirtualnetwork bool `json:"forvirtualnetwork"`
Group string `json:"group"`
Groupid string `json:"groupid"`
@@ -2628,6 +2654,7 @@ type DeployVirtualMachineResponse struct {
Icon interface{} `json:"icon"`
Id string `json:"id"`
Instancename string `json:"instancename"`
+ Ipaddress string `json:"ipaddress"`
Isdynamicallyscalable bool `json:"isdynamicallyscalable"`
Isodisplaytext string `json:"isodisplaytext"`
Isoid string `json:"isoid"`
@@ -2665,6 +2692,7 @@ type DeployVirtualMachineResponse struct {
State string `json:"state"`
Tags []Tags `json:"tags"`
Templatedisplaytext string `json:"templatedisplaytext"`
+ Templateformat string `json:"templateformat"`
Templateid string `json:"templateid"`
Templatename string `json:"templatename"`
Templatetype string `json:"templatetype"`
@@ -2676,6 +2704,7 @@ type DeployVirtualMachineResponse struct {
Userid string `json:"userid"`
Username string `json:"username"`
Vgpu string `json:"vgpu"`
+ Vmtype string `json:"vmtype"`
Vnfdetails map[string]string `json:"vnfdetails"`
Vnfnics []string `json:"vnfnics"`
Zoneid string `json:"zoneid"`
@@ -2687,6 +2716,7 @@ type DeployVirtualMachineResponseSecuritygroup struct {
Description string `json:"description"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Egressrule []DeployVirtualMachineResponseSecuritygroupRule `json:"egressrule"`
Id string `json:"id"`
Ingressrule []DeployVirtualMachineResponseSecuritygroupRule `json:"ingressrule"`
@@ -2712,16 +2742,18 @@ type DeployVirtualMachineResponseSecuritygroupRule struct {
}
type DeployVirtualMachineResponseAffinitygroup struct {
- Account string `json:"account"`
- Description string `json:"description"`
- Domain string `json:"domain"`
- Domainid string `json:"domainid"`
- Id string `json:"id"`
- Name string `json:"name"`
- Project string `json:"project"`
- Projectid string `json:"projectid"`
- Type string `json:"type"`
- VirtualmachineIds []string `json:"virtualmachineIds"`
+ Account string `json:"account"`
+ Dedicatedresources []string `json:"dedicatedresources"`
+ Description string `json:"description"`
+ Domain string `json:"domain"`
+ Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
+ Id string `json:"id"`
+ Name string `json:"name"`
+ Project string `json:"project"`
+ Projectid string `json:"projectid"`
+ Type string `json:"type"`
+ VirtualmachineIds []string `json:"virtualmachineIds"`
}
func (r *DeployVirtualMachineResponse) UnmarshalJSON(b []byte) error {
@@ -2894,6 +2926,7 @@ type DestroyVirtualMachineResponse struct {
Cpuspeed int `json:"cpuspeed"`
Cpuused string `json:"cpuused"`
Created string `json:"created"`
+ Deleteprotection bool `json:"deleteprotection"`
Details map[string]string `json:"details"`
Diskioread int64 `json:"diskioread"`
Diskiowrite int64 `json:"diskiowrite"`
@@ -2905,6 +2938,7 @@ type DestroyVirtualMachineResponse struct {
Displayvm bool `json:"displayvm"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Forvirtualnetwork bool `json:"forvirtualnetwork"`
Group string `json:"group"`
Groupid string `json:"groupid"`
@@ -2918,6 +2952,7 @@ type DestroyVirtualMachineResponse struct {
Icon interface{} `json:"icon"`
Id string `json:"id"`
Instancename string `json:"instancename"`
+ Ipaddress string `json:"ipaddress"`
Isdynamicallyscalable bool `json:"isdynamicallyscalable"`
Isodisplaytext string `json:"isodisplaytext"`
Isoid string `json:"isoid"`
@@ -2955,6 +2990,7 @@ type DestroyVirtualMachineResponse struct {
State string `json:"state"`
Tags []Tags `json:"tags"`
Templatedisplaytext string `json:"templatedisplaytext"`
+ Templateformat string `json:"templateformat"`
Templateid string `json:"templateid"`
Templatename string `json:"templatename"`
Templatetype string `json:"templatetype"`
@@ -2966,6 +3002,7 @@ type DestroyVirtualMachineResponse struct {
Userid string `json:"userid"`
Username string `json:"username"`
Vgpu string `json:"vgpu"`
+ Vmtype string `json:"vmtype"`
Vnfdetails map[string]string `json:"vnfdetails"`
Vnfnics []string `json:"vnfnics"`
Zoneid string `json:"zoneid"`
@@ -2977,6 +3014,7 @@ type DestroyVirtualMachineResponseSecuritygroup struct {
Description string `json:"description"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Egressrule []DestroyVirtualMachineResponseSecuritygroupRule `json:"egressrule"`
Id string `json:"id"`
Ingressrule []DestroyVirtualMachineResponseSecuritygroupRule `json:"ingressrule"`
@@ -3002,16 +3040,18 @@ type DestroyVirtualMachineResponseSecuritygroupRule struct {
}
type DestroyVirtualMachineResponseAffinitygroup struct {
- Account string `json:"account"`
- Description string `json:"description"`
- Domain string `json:"domain"`
- Domainid string `json:"domainid"`
- Id string `json:"id"`
- Name string `json:"name"`
- Project string `json:"project"`
- Projectid string `json:"projectid"`
- Type string `json:"type"`
- VirtualmachineIds []string `json:"virtualmachineIds"`
+ Account string `json:"account"`
+ Dedicatedresources []string `json:"dedicatedresources"`
+ Description string `json:"description"`
+ Domain string `json:"domain"`
+ Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
+ Id string `json:"id"`
+ Name string `json:"name"`
+ Project string `json:"project"`
+ Projectid string `json:"projectid"`
+ Type string `json:"type"`
+ VirtualmachineIds []string `json:"virtualmachineIds"`
}
func (r *DestroyVirtualMachineResponse) UnmarshalJSON(b []byte) error {
@@ -4303,6 +4343,7 @@ type VirtualMachine struct {
Cpuspeed int `json:"cpuspeed"`
Cpuused string `json:"cpuused"`
Created string `json:"created"`
+ Deleteprotection bool `json:"deleteprotection"`
Details map[string]string `json:"details"`
Diskioread int64 `json:"diskioread"`
Diskiowrite int64 `json:"diskiowrite"`
@@ -4314,6 +4355,7 @@ type VirtualMachine struct {
Displayvm bool `json:"displayvm"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Forvirtualnetwork bool `json:"forvirtualnetwork"`
Group string `json:"group"`
Groupid string `json:"groupid"`
@@ -4327,6 +4369,7 @@ type VirtualMachine struct {
Icon interface{} `json:"icon"`
Id string `json:"id"`
Instancename string `json:"instancename"`
+ Ipaddress string `json:"ipaddress"`
Isdynamicallyscalable bool `json:"isdynamicallyscalable"`
Isodisplaytext string `json:"isodisplaytext"`
Isoid string `json:"isoid"`
@@ -4364,6 +4407,7 @@ type VirtualMachine struct {
State string `json:"state"`
Tags []Tags `json:"tags"`
Templatedisplaytext string `json:"templatedisplaytext"`
+ Templateformat string `json:"templateformat"`
Templateid string `json:"templateid"`
Templatename string `json:"templatename"`
Templatetype string `json:"templatetype"`
@@ -4375,6 +4419,7 @@ type VirtualMachine struct {
Userid string `json:"userid"`
Username string `json:"username"`
Vgpu string `json:"vgpu"`
+ Vmtype string `json:"vmtype"`
Vnfdetails map[string]string `json:"vnfdetails"`
Vnfnics []string `json:"vnfnics"`
Zoneid string `json:"zoneid"`
@@ -4386,6 +4431,7 @@ type VirtualMachineSecuritygroup struct {
Description string `json:"description"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Egressrule []VirtualMachineSecuritygroupRule `json:"egressrule"`
Id string `json:"id"`
Ingressrule []VirtualMachineSecuritygroupRule `json:"ingressrule"`
@@ -4411,16 +4457,18 @@ type VirtualMachineSecuritygroupRule struct {
}
type VirtualMachineAffinitygroup struct {
- Account string `json:"account"`
- Description string `json:"description"`
- Domain string `json:"domain"`
- Domainid string `json:"domainid"`
- Id string `json:"id"`
- Name string `json:"name"`
- Project string `json:"project"`
- Projectid string `json:"projectid"`
- Type string `json:"type"`
- VirtualmachineIds []string `json:"virtualmachineIds"`
+ Account string `json:"account"`
+ Dedicatedresources []string `json:"dedicatedresources"`
+ Description string `json:"description"`
+ Domain string `json:"domain"`
+ Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
+ Id string `json:"id"`
+ Name string `json:"name"`
+ Project string `json:"project"`
+ Projectid string `json:"projectid"`
+ Type string `json:"type"`
+ VirtualmachineIds []string `json:"virtualmachineIds"`
}
func (r *VirtualMachine) UnmarshalJSON(b []byte) error {
@@ -5565,6 +5613,7 @@ type VirtualMachinesMetric struct {
Cputotal string `json:"cputotal"`
Cpuused string `json:"cpuused"`
Created string `json:"created"`
+ Deleteprotection bool `json:"deleteprotection"`
Details map[string]string `json:"details"`
Diskiopstotal int64 `json:"diskiopstotal"`
Diskioread int64 `json:"diskioread"`
@@ -5579,6 +5628,7 @@ type VirtualMachinesMetric struct {
Displayvm bool `json:"displayvm"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Forvirtualnetwork bool `json:"forvirtualnetwork"`
Group string `json:"group"`
Groupid string `json:"groupid"`
@@ -5633,6 +5683,7 @@ type VirtualMachinesMetric struct {
State string `json:"state"`
Tags []Tags `json:"tags"`
Templatedisplaytext string `json:"templatedisplaytext"`
+ Templateformat string `json:"templateformat"`
Templateid string `json:"templateid"`
Templatename string `json:"templatename"`
Templatetype string `json:"templatetype"`
@@ -5644,6 +5695,7 @@ type VirtualMachinesMetric struct {
Userid string `json:"userid"`
Username string `json:"username"`
Vgpu string `json:"vgpu"`
+ Vmtype string `json:"vmtype"`
Vnfdetails map[string]string `json:"vnfdetails"`
Vnfnics []string `json:"vnfnics"`
Zoneid string `json:"zoneid"`
@@ -5655,6 +5707,7 @@ type VirtualMachinesMetricSecuritygroup struct {
Description string `json:"description"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Egressrule []VirtualMachinesMetricSecuritygroupRule `json:"egressrule"`
Id string `json:"id"`
Ingressrule []VirtualMachinesMetricSecuritygroupRule `json:"ingressrule"`
@@ -5680,16 +5733,18 @@ type VirtualMachinesMetricSecuritygroupRule struct {
}
type VirtualMachinesMetricAffinitygroup struct {
- Account string `json:"account"`
- Description string `json:"description"`
- Domain string `json:"domain"`
- Domainid string `json:"domainid"`
- Id string `json:"id"`
- Name string `json:"name"`
- Project string `json:"project"`
- Projectid string `json:"projectid"`
- Type string `json:"type"`
- VirtualmachineIds []string `json:"virtualmachineIds"`
+ Account string `json:"account"`
+ Dedicatedresources []string `json:"dedicatedresources"`
+ Description string `json:"description"`
+ Domain string `json:"domain"`
+ Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
+ Id string `json:"id"`
+ Name string `json:"name"`
+ Project string `json:"project"`
+ Projectid string `json:"projectid"`
+ Type string `json:"type"`
+ VirtualmachineIds []string `json:"virtualmachineIds"`
}
func (r *VirtualMachinesMetric) UnmarshalJSON(b []byte) error {
@@ -5885,6 +5940,7 @@ type MigrateVirtualMachineResponse struct {
Cpuspeed int `json:"cpuspeed"`
Cpuused string `json:"cpuused"`
Created string `json:"created"`
+ Deleteprotection bool `json:"deleteprotection"`
Details map[string]string `json:"details"`
Diskioread int64 `json:"diskioread"`
Diskiowrite int64 `json:"diskiowrite"`
@@ -5896,6 +5952,7 @@ type MigrateVirtualMachineResponse struct {
Displayvm bool `json:"displayvm"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Forvirtualnetwork bool `json:"forvirtualnetwork"`
Group string `json:"group"`
Groupid string `json:"groupid"`
@@ -5909,6 +5966,7 @@ type MigrateVirtualMachineResponse struct {
Icon interface{} `json:"icon"`
Id string `json:"id"`
Instancename string `json:"instancename"`
+ Ipaddress string `json:"ipaddress"`
Isdynamicallyscalable bool `json:"isdynamicallyscalable"`
Isodisplaytext string `json:"isodisplaytext"`
Isoid string `json:"isoid"`
@@ -5946,6 +6004,7 @@ type MigrateVirtualMachineResponse struct {
State string `json:"state"`
Tags []Tags `json:"tags"`
Templatedisplaytext string `json:"templatedisplaytext"`
+ Templateformat string `json:"templateformat"`
Templateid string `json:"templateid"`
Templatename string `json:"templatename"`
Templatetype string `json:"templatetype"`
@@ -5957,6 +6016,7 @@ type MigrateVirtualMachineResponse struct {
Userid string `json:"userid"`
Username string `json:"username"`
Vgpu string `json:"vgpu"`
+ Vmtype string `json:"vmtype"`
Vnfdetails map[string]string `json:"vnfdetails"`
Vnfnics []string `json:"vnfnics"`
Zoneid string `json:"zoneid"`
@@ -5968,6 +6028,7 @@ type MigrateVirtualMachineResponseSecuritygroup struct {
Description string `json:"description"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Egressrule []MigrateVirtualMachineResponseSecuritygroupRule `json:"egressrule"`
Id string `json:"id"`
Ingressrule []MigrateVirtualMachineResponseSecuritygroupRule `json:"ingressrule"`
@@ -5993,16 +6054,18 @@ type MigrateVirtualMachineResponseSecuritygroupRule struct {
}
type MigrateVirtualMachineResponseAffinitygroup struct {
- Account string `json:"account"`
- Description string `json:"description"`
- Domain string `json:"domain"`
- Domainid string `json:"domainid"`
- Id string `json:"id"`
- Name string `json:"name"`
- Project string `json:"project"`
- Projectid string `json:"projectid"`
- Type string `json:"type"`
- VirtualmachineIds []string `json:"virtualmachineIds"`
+ Account string `json:"account"`
+ Dedicatedresources []string `json:"dedicatedresources"`
+ Description string `json:"description"`
+ Domain string `json:"domain"`
+ Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
+ Id string `json:"id"`
+ Name string `json:"name"`
+ Project string `json:"project"`
+ Projectid string `json:"projectid"`
+ Type string `json:"type"`
+ VirtualmachineIds []string `json:"virtualmachineIds"`
}
func (r *MigrateVirtualMachineResponse) UnmarshalJSON(b []byte) error {
@@ -6217,6 +6280,7 @@ type MigrateVirtualMachineWithVolumeResponse struct {
Cpuspeed int `json:"cpuspeed"`
Cpuused string `json:"cpuused"`
Created string `json:"created"`
+ Deleteprotection bool `json:"deleteprotection"`
Details map[string]string `json:"details"`
Diskioread int64 `json:"diskioread"`
Diskiowrite int64 `json:"diskiowrite"`
@@ -6228,6 +6292,7 @@ type MigrateVirtualMachineWithVolumeResponse struct {
Displayvm bool `json:"displayvm"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Forvirtualnetwork bool `json:"forvirtualnetwork"`
Group string `json:"group"`
Groupid string `json:"groupid"`
@@ -6241,6 +6306,7 @@ type MigrateVirtualMachineWithVolumeResponse struct {
Icon interface{} `json:"icon"`
Id string `json:"id"`
Instancename string `json:"instancename"`
+ Ipaddress string `json:"ipaddress"`
Isdynamicallyscalable bool `json:"isdynamicallyscalable"`
Isodisplaytext string `json:"isodisplaytext"`
Isoid string `json:"isoid"`
@@ -6278,6 +6344,7 @@ type MigrateVirtualMachineWithVolumeResponse struct {
State string `json:"state"`
Tags []Tags `json:"tags"`
Templatedisplaytext string `json:"templatedisplaytext"`
+ Templateformat string `json:"templateformat"`
Templateid string `json:"templateid"`
Templatename string `json:"templatename"`
Templatetype string `json:"templatetype"`
@@ -6289,6 +6356,7 @@ type MigrateVirtualMachineWithVolumeResponse struct {
Userid string `json:"userid"`
Username string `json:"username"`
Vgpu string `json:"vgpu"`
+ Vmtype string `json:"vmtype"`
Vnfdetails map[string]string `json:"vnfdetails"`
Vnfnics []string `json:"vnfnics"`
Zoneid string `json:"zoneid"`
@@ -6300,6 +6368,7 @@ type MigrateVirtualMachineWithVolumeResponseSecuritygroup struct {
Description string `json:"description"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Egressrule []MigrateVirtualMachineWithVolumeResponseSecuritygroupRule `json:"egressrule"`
Id string `json:"id"`
Ingressrule []MigrateVirtualMachineWithVolumeResponseSecuritygroupRule `json:"ingressrule"`
@@ -6325,16 +6394,18 @@ type MigrateVirtualMachineWithVolumeResponseSecuritygroupRule struct {
}
type MigrateVirtualMachineWithVolumeResponseAffinitygroup struct {
- Account string `json:"account"`
- Description string `json:"description"`
- Domain string `json:"domain"`
- Domainid string `json:"domainid"`
- Id string `json:"id"`
- Name string `json:"name"`
- Project string `json:"project"`
- Projectid string `json:"projectid"`
- Type string `json:"type"`
- VirtualmachineIds []string `json:"virtualmachineIds"`
+ Account string `json:"account"`
+ Dedicatedresources []string `json:"dedicatedresources"`
+ Description string `json:"description"`
+ Domain string `json:"domain"`
+ Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
+ Id string `json:"id"`
+ Name string `json:"name"`
+ Project string `json:"project"`
+ Projectid string `json:"projectid"`
+ Type string `json:"type"`
+ VirtualmachineIds []string `json:"virtualmachineIds"`
}
func (r *MigrateVirtualMachineWithVolumeResponse) UnmarshalJSON(b []byte) error {
@@ -6507,6 +6578,7 @@ type RebootVirtualMachineResponse struct {
Cpuspeed int `json:"cpuspeed"`
Cpuused string `json:"cpuused"`
Created string `json:"created"`
+ Deleteprotection bool `json:"deleteprotection"`
Details map[string]string `json:"details"`
Diskioread int64 `json:"diskioread"`
Diskiowrite int64 `json:"diskiowrite"`
@@ -6518,6 +6590,7 @@ type RebootVirtualMachineResponse struct {
Displayvm bool `json:"displayvm"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Forvirtualnetwork bool `json:"forvirtualnetwork"`
Group string `json:"group"`
Groupid string `json:"groupid"`
@@ -6531,6 +6604,7 @@ type RebootVirtualMachineResponse struct {
Icon interface{} `json:"icon"`
Id string `json:"id"`
Instancename string `json:"instancename"`
+ Ipaddress string `json:"ipaddress"`
Isdynamicallyscalable bool `json:"isdynamicallyscalable"`
Isodisplaytext string `json:"isodisplaytext"`
Isoid string `json:"isoid"`
@@ -6568,6 +6642,7 @@ type RebootVirtualMachineResponse struct {
State string `json:"state"`
Tags []Tags `json:"tags"`
Templatedisplaytext string `json:"templatedisplaytext"`
+ Templateformat string `json:"templateformat"`
Templateid string `json:"templateid"`
Templatename string `json:"templatename"`
Templatetype string `json:"templatetype"`
@@ -6579,6 +6654,7 @@ type RebootVirtualMachineResponse struct {
Userid string `json:"userid"`
Username string `json:"username"`
Vgpu string `json:"vgpu"`
+ Vmtype string `json:"vmtype"`
Vnfdetails map[string]string `json:"vnfdetails"`
Vnfnics []string `json:"vnfnics"`
Zoneid string `json:"zoneid"`
@@ -6590,6 +6666,7 @@ type RebootVirtualMachineResponseSecuritygroup struct {
Description string `json:"description"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Egressrule []RebootVirtualMachineResponseSecuritygroupRule `json:"egressrule"`
Id string `json:"id"`
Ingressrule []RebootVirtualMachineResponseSecuritygroupRule `json:"ingressrule"`
@@ -6615,16 +6692,18 @@ type RebootVirtualMachineResponseSecuritygroupRule struct {
}
type RebootVirtualMachineResponseAffinitygroup struct {
- Account string `json:"account"`
- Description string `json:"description"`
- Domain string `json:"domain"`
- Domainid string `json:"domainid"`
- Id string `json:"id"`
- Name string `json:"name"`
- Project string `json:"project"`
- Projectid string `json:"projectid"`
- Type string `json:"type"`
- VirtualmachineIds []string `json:"virtualmachineIds"`
+ Account string `json:"account"`
+ Dedicatedresources []string `json:"dedicatedresources"`
+ Description string `json:"description"`
+ Domain string `json:"domain"`
+ Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
+ Id string `json:"id"`
+ Name string `json:"name"`
+ Project string `json:"project"`
+ Projectid string `json:"projectid"`
+ Type string `json:"type"`
+ VirtualmachineIds []string `json:"virtualmachineIds"`
}
func (r *RebootVirtualMachineResponse) UnmarshalJSON(b []byte) error {
@@ -6727,6 +6806,7 @@ type RecoverVirtualMachineResponse struct {
Cpuspeed int `json:"cpuspeed"`
Cpuused string `json:"cpuused"`
Created string `json:"created"`
+ Deleteprotection bool `json:"deleteprotection"`
Details map[string]string `json:"details"`
Diskioread int64 `json:"diskioread"`
Diskiowrite int64 `json:"diskiowrite"`
@@ -6738,6 +6818,7 @@ type RecoverVirtualMachineResponse struct {
Displayvm bool `json:"displayvm"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Forvirtualnetwork bool `json:"forvirtualnetwork"`
Group string `json:"group"`
Groupid string `json:"groupid"`
@@ -6751,6 +6832,7 @@ type RecoverVirtualMachineResponse struct {
Icon interface{} `json:"icon"`
Id string `json:"id"`
Instancename string `json:"instancename"`
+ Ipaddress string `json:"ipaddress"`
Isdynamicallyscalable bool `json:"isdynamicallyscalable"`
Isodisplaytext string `json:"isodisplaytext"`
Isoid string `json:"isoid"`
@@ -6788,6 +6870,7 @@ type RecoverVirtualMachineResponse struct {
State string `json:"state"`
Tags []Tags `json:"tags"`
Templatedisplaytext string `json:"templatedisplaytext"`
+ Templateformat string `json:"templateformat"`
Templateid string `json:"templateid"`
Templatename string `json:"templatename"`
Templatetype string `json:"templatetype"`
@@ -6799,6 +6882,7 @@ type RecoverVirtualMachineResponse struct {
Userid string `json:"userid"`
Username string `json:"username"`
Vgpu string `json:"vgpu"`
+ Vmtype string `json:"vmtype"`
Vnfdetails map[string]string `json:"vnfdetails"`
Vnfnics []string `json:"vnfnics"`
Zoneid string `json:"zoneid"`
@@ -6810,6 +6894,7 @@ type RecoverVirtualMachineResponseSecuritygroup struct {
Description string `json:"description"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Egressrule []RecoverVirtualMachineResponseSecuritygroupRule `json:"egressrule"`
Id string `json:"id"`
Ingressrule []RecoverVirtualMachineResponseSecuritygroupRule `json:"ingressrule"`
@@ -6835,16 +6920,18 @@ type RecoverVirtualMachineResponseSecuritygroupRule struct {
}
type RecoverVirtualMachineResponseAffinitygroup struct {
- Account string `json:"account"`
- Description string `json:"description"`
- Domain string `json:"domain"`
- Domainid string `json:"domainid"`
- Id string `json:"id"`
- Name string `json:"name"`
- Project string `json:"project"`
- Projectid string `json:"projectid"`
- Type string `json:"type"`
- VirtualmachineIds []string `json:"virtualmachineIds"`
+ Account string `json:"account"`
+ Dedicatedresources []string `json:"dedicatedresources"`
+ Description string `json:"description"`
+ Domain string `json:"domain"`
+ Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
+ Id string `json:"id"`
+ Name string `json:"name"`
+ Project string `json:"project"`
+ Projectid string `json:"projectid"`
+ Type string `json:"type"`
+ VirtualmachineIds []string `json:"virtualmachineIds"`
}
func (r *RecoverVirtualMachineResponse) UnmarshalJSON(b []byte) error {
@@ -6992,6 +7079,7 @@ type RemoveNicFromVirtualMachineResponse struct {
Cpuspeed int `json:"cpuspeed"`
Cpuused string `json:"cpuused"`
Created string `json:"created"`
+ Deleteprotection bool `json:"deleteprotection"`
Details map[string]string `json:"details"`
Diskioread int64 `json:"diskioread"`
Diskiowrite int64 `json:"diskiowrite"`
@@ -7003,6 +7091,7 @@ type RemoveNicFromVirtualMachineResponse struct {
Displayvm bool `json:"displayvm"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Forvirtualnetwork bool `json:"forvirtualnetwork"`
Group string `json:"group"`
Groupid string `json:"groupid"`
@@ -7016,6 +7105,7 @@ type RemoveNicFromVirtualMachineResponse struct {
Icon interface{} `json:"icon"`
Id string `json:"id"`
Instancename string `json:"instancename"`
+ Ipaddress string `json:"ipaddress"`
Isdynamicallyscalable bool `json:"isdynamicallyscalable"`
Isodisplaytext string `json:"isodisplaytext"`
Isoid string `json:"isoid"`
@@ -7053,6 +7143,7 @@ type RemoveNicFromVirtualMachineResponse struct {
State string `json:"state"`
Tags []Tags `json:"tags"`
Templatedisplaytext string `json:"templatedisplaytext"`
+ Templateformat string `json:"templateformat"`
Templateid string `json:"templateid"`
Templatename string `json:"templatename"`
Templatetype string `json:"templatetype"`
@@ -7064,6 +7155,7 @@ type RemoveNicFromVirtualMachineResponse struct {
Userid string `json:"userid"`
Username string `json:"username"`
Vgpu string `json:"vgpu"`
+ Vmtype string `json:"vmtype"`
Vnfdetails map[string]string `json:"vnfdetails"`
Vnfnics []string `json:"vnfnics"`
Zoneid string `json:"zoneid"`
@@ -7075,6 +7167,7 @@ type RemoveNicFromVirtualMachineResponseSecuritygroup struct {
Description string `json:"description"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Egressrule []RemoveNicFromVirtualMachineResponseSecuritygroupRule `json:"egressrule"`
Id string `json:"id"`
Ingressrule []RemoveNicFromVirtualMachineResponseSecuritygroupRule `json:"ingressrule"`
@@ -7100,16 +7193,18 @@ type RemoveNicFromVirtualMachineResponseSecuritygroupRule struct {
}
type RemoveNicFromVirtualMachineResponseAffinitygroup struct {
- Account string `json:"account"`
- Description string `json:"description"`
- Domain string `json:"domain"`
- Domainid string `json:"domainid"`
- Id string `json:"id"`
- Name string `json:"name"`
- Project string `json:"project"`
- Projectid string `json:"projectid"`
- Type string `json:"type"`
- VirtualmachineIds []string `json:"virtualmachineIds"`
+ Account string `json:"account"`
+ Dedicatedresources []string `json:"dedicatedresources"`
+ Description string `json:"description"`
+ Domain string `json:"domain"`
+ Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
+ Id string `json:"id"`
+ Name string `json:"name"`
+ Project string `json:"project"`
+ Projectid string `json:"projectid"`
+ Type string `json:"type"`
+ VirtualmachineIds []string `json:"virtualmachineIds"`
}
func (r *RemoveNicFromVirtualMachineResponse) UnmarshalJSON(b []byte) error {
@@ -7256,6 +7351,7 @@ type ResetPasswordForVirtualMachineResponse struct {
Cpuspeed int `json:"cpuspeed"`
Cpuused string `json:"cpuused"`
Created string `json:"created"`
+ Deleteprotection bool `json:"deleteprotection"`
Details map[string]string `json:"details"`
Diskioread int64 `json:"diskioread"`
Diskiowrite int64 `json:"diskiowrite"`
@@ -7267,6 +7363,7 @@ type ResetPasswordForVirtualMachineResponse struct {
Displayvm bool `json:"displayvm"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Forvirtualnetwork bool `json:"forvirtualnetwork"`
Group string `json:"group"`
Groupid string `json:"groupid"`
@@ -7280,6 +7377,7 @@ type ResetPasswordForVirtualMachineResponse struct {
Icon interface{} `json:"icon"`
Id string `json:"id"`
Instancename string `json:"instancename"`
+ Ipaddress string `json:"ipaddress"`
Isdynamicallyscalable bool `json:"isdynamicallyscalable"`
Isodisplaytext string `json:"isodisplaytext"`
Isoid string `json:"isoid"`
@@ -7317,6 +7415,7 @@ type ResetPasswordForVirtualMachineResponse struct {
State string `json:"state"`
Tags []Tags `json:"tags"`
Templatedisplaytext string `json:"templatedisplaytext"`
+ Templateformat string `json:"templateformat"`
Templateid string `json:"templateid"`
Templatename string `json:"templatename"`
Templatetype string `json:"templatetype"`
@@ -7328,6 +7427,7 @@ type ResetPasswordForVirtualMachineResponse struct {
Userid string `json:"userid"`
Username string `json:"username"`
Vgpu string `json:"vgpu"`
+ Vmtype string `json:"vmtype"`
Vnfdetails map[string]string `json:"vnfdetails"`
Vnfnics []string `json:"vnfnics"`
Zoneid string `json:"zoneid"`
@@ -7339,6 +7439,7 @@ type ResetPasswordForVirtualMachineResponseSecuritygroup struct {
Description string `json:"description"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Egressrule []ResetPasswordForVirtualMachineResponseSecuritygroupRule `json:"egressrule"`
Id string `json:"id"`
Ingressrule []ResetPasswordForVirtualMachineResponseSecuritygroupRule `json:"ingressrule"`
@@ -7364,16 +7465,18 @@ type ResetPasswordForVirtualMachineResponseSecuritygroupRule struct {
}
type ResetPasswordForVirtualMachineResponseAffinitygroup struct {
- Account string `json:"account"`
- Description string `json:"description"`
- Domain string `json:"domain"`
- Domainid string `json:"domainid"`
- Id string `json:"id"`
- Name string `json:"name"`
- Project string `json:"project"`
- Projectid string `json:"projectid"`
- Type string `json:"type"`
- VirtualmachineIds []string `json:"virtualmachineIds"`
+ Account string `json:"account"`
+ Dedicatedresources []string `json:"dedicatedresources"`
+ Description string `json:"description"`
+ Domain string `json:"domain"`
+ Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
+ Id string `json:"id"`
+ Name string `json:"name"`
+ Project string `json:"project"`
+ Projectid string `json:"projectid"`
+ Type string `json:"type"`
+ VirtualmachineIds []string `json:"virtualmachineIds"`
}
func (r *ResetPasswordForVirtualMachineResponse) UnmarshalJSON(b []byte) error {
@@ -7412,6 +7515,23 @@ func (p *RestoreVirtualMachineParams) toURLValues() url.Values {
if p.p == nil {
return u
}
+ if v, found := p.p["details"]; found {
+ m := v.(map[string]string)
+ for i, k := range getSortedKeysFromMap(m) {
+ u.Set(fmt.Sprintf("details[%d].%s", i, k), m[k])
+ }
+ }
+ if v, found := p.p["diskofferingid"]; found {
+ u.Set("diskofferingid", v.(string))
+ }
+ if v, found := p.p["expunge"]; found {
+ vv := strconv.FormatBool(v.(bool))
+ u.Set("expunge", vv)
+ }
+ if v, found := p.p["rootdisksize"]; found {
+ vv := strconv.FormatInt(v.(int64), 10)
+ u.Set("rootdisksize", vv)
+ }
if v, found := p.p["templateid"]; found {
u.Set("templateid", v.(string))
}
@@ -7421,6 +7541,90 @@ func (p *RestoreVirtualMachineParams) toURLValues() url.Values {
return u
}
+func (p *RestoreVirtualMachineParams) SetDetails(v map[string]string) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ p.p["details"] = v
+}
+
+func (p *RestoreVirtualMachineParams) ResetDetails() {
+ if p.p != nil && p.p["details"] != nil {
+ delete(p.p, "details")
+ }
+}
+
+func (p *RestoreVirtualMachineParams) GetDetails() (map[string]string, bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ value, ok := p.p["details"].(map[string]string)
+ return value, ok
+}
+
+func (p *RestoreVirtualMachineParams) SetDiskofferingid(v string) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ p.p["diskofferingid"] = v
+}
+
+func (p *RestoreVirtualMachineParams) ResetDiskofferingid() {
+ if p.p != nil && p.p["diskofferingid"] != nil {
+ delete(p.p, "diskofferingid")
+ }
+}
+
+func (p *RestoreVirtualMachineParams) GetDiskofferingid() (string, bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ value, ok := p.p["diskofferingid"].(string)
+ return value, ok
+}
+
+func (p *RestoreVirtualMachineParams) SetExpunge(v bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ p.p["expunge"] = v
+}
+
+func (p *RestoreVirtualMachineParams) ResetExpunge() {
+ if p.p != nil && p.p["expunge"] != nil {
+ delete(p.p, "expunge")
+ }
+}
+
+func (p *RestoreVirtualMachineParams) GetExpunge() (bool, bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ value, ok := p.p["expunge"].(bool)
+ return value, ok
+}
+
+func (p *RestoreVirtualMachineParams) SetRootdisksize(v int64) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ p.p["rootdisksize"] = v
+}
+
+func (p *RestoreVirtualMachineParams) ResetRootdisksize() {
+ if p.p != nil && p.p["rootdisksize"] != nil {
+ delete(p.p, "rootdisksize")
+ }
+}
+
+func (p *RestoreVirtualMachineParams) GetRootdisksize() (int64, bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ value, ok := p.p["rootdisksize"].(int64)
+ return value, ok
+}
+
func (p *RestoreVirtualMachineParams) SetTemplateid(v string) {
if p.p == nil {
p.p = make(map[string]interface{})
@@ -7520,6 +7724,7 @@ type RestoreVirtualMachineResponse struct {
Cpuspeed int `json:"cpuspeed"`
Cpuused string `json:"cpuused"`
Created string `json:"created"`
+ Deleteprotection bool `json:"deleteprotection"`
Details map[string]string `json:"details"`
Diskioread int64 `json:"diskioread"`
Diskiowrite int64 `json:"diskiowrite"`
@@ -7531,6 +7736,7 @@ type RestoreVirtualMachineResponse struct {
Displayvm bool `json:"displayvm"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Forvirtualnetwork bool `json:"forvirtualnetwork"`
Group string `json:"group"`
Groupid string `json:"groupid"`
@@ -7544,6 +7750,7 @@ type RestoreVirtualMachineResponse struct {
Icon interface{} `json:"icon"`
Id string `json:"id"`
Instancename string `json:"instancename"`
+ Ipaddress string `json:"ipaddress"`
Isdynamicallyscalable bool `json:"isdynamicallyscalable"`
Isodisplaytext string `json:"isodisplaytext"`
Isoid string `json:"isoid"`
@@ -7581,6 +7788,7 @@ type RestoreVirtualMachineResponse struct {
State string `json:"state"`
Tags []Tags `json:"tags"`
Templatedisplaytext string `json:"templatedisplaytext"`
+ Templateformat string `json:"templateformat"`
Templateid string `json:"templateid"`
Templatename string `json:"templatename"`
Templatetype string `json:"templatetype"`
@@ -7592,6 +7800,7 @@ type RestoreVirtualMachineResponse struct {
Userid string `json:"userid"`
Username string `json:"username"`
Vgpu string `json:"vgpu"`
+ Vmtype string `json:"vmtype"`
Vnfdetails map[string]string `json:"vnfdetails"`
Vnfnics []string `json:"vnfnics"`
Zoneid string `json:"zoneid"`
@@ -7603,6 +7812,7 @@ type RestoreVirtualMachineResponseSecuritygroup struct {
Description string `json:"description"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Egressrule []RestoreVirtualMachineResponseSecuritygroupRule `json:"egressrule"`
Id string `json:"id"`
Ingressrule []RestoreVirtualMachineResponseSecuritygroupRule `json:"ingressrule"`
@@ -7628,16 +7838,18 @@ type RestoreVirtualMachineResponseSecuritygroupRule struct {
}
type RestoreVirtualMachineResponseAffinitygroup struct {
- Account string `json:"account"`
- Description string `json:"description"`
- Domain string `json:"domain"`
- Domainid string `json:"domainid"`
- Id string `json:"id"`
- Name string `json:"name"`
- Project string `json:"project"`
- Projectid string `json:"projectid"`
- Type string `json:"type"`
- VirtualmachineIds []string `json:"virtualmachineIds"`
+ Account string `json:"account"`
+ Dedicatedresources []string `json:"dedicatedresources"`
+ Description string `json:"description"`
+ Domain string `json:"domain"`
+ Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
+ Id string `json:"id"`
+ Name string `json:"name"`
+ Project string `json:"project"`
+ Projectid string `json:"projectid"`
+ Type string `json:"type"`
+ VirtualmachineIds []string `json:"virtualmachineIds"`
}
func (r *RestoreVirtualMachineResponse) UnmarshalJSON(b []byte) error {
@@ -8140,6 +8352,7 @@ type StartVirtualMachineResponse struct {
Cpuspeed int `json:"cpuspeed"`
Cpuused string `json:"cpuused"`
Created string `json:"created"`
+ Deleteprotection bool `json:"deleteprotection"`
Details map[string]string `json:"details"`
Diskioread int64 `json:"diskioread"`
Diskiowrite int64 `json:"diskiowrite"`
@@ -8151,6 +8364,7 @@ type StartVirtualMachineResponse struct {
Displayvm bool `json:"displayvm"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Forvirtualnetwork bool `json:"forvirtualnetwork"`
Group string `json:"group"`
Groupid string `json:"groupid"`
@@ -8164,6 +8378,7 @@ type StartVirtualMachineResponse struct {
Icon interface{} `json:"icon"`
Id string `json:"id"`
Instancename string `json:"instancename"`
+ Ipaddress string `json:"ipaddress"`
Isdynamicallyscalable bool `json:"isdynamicallyscalable"`
Isodisplaytext string `json:"isodisplaytext"`
Isoid string `json:"isoid"`
@@ -8201,6 +8416,7 @@ type StartVirtualMachineResponse struct {
State string `json:"state"`
Tags []Tags `json:"tags"`
Templatedisplaytext string `json:"templatedisplaytext"`
+ Templateformat string `json:"templateformat"`
Templateid string `json:"templateid"`
Templatename string `json:"templatename"`
Templatetype string `json:"templatetype"`
@@ -8212,6 +8428,7 @@ type StartVirtualMachineResponse struct {
Userid string `json:"userid"`
Username string `json:"username"`
Vgpu string `json:"vgpu"`
+ Vmtype string `json:"vmtype"`
Vnfdetails map[string]string `json:"vnfdetails"`
Vnfnics []string `json:"vnfnics"`
Zoneid string `json:"zoneid"`
@@ -8223,6 +8440,7 @@ type StartVirtualMachineResponseSecuritygroup struct {
Description string `json:"description"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Egressrule []StartVirtualMachineResponseSecuritygroupRule `json:"egressrule"`
Id string `json:"id"`
Ingressrule []StartVirtualMachineResponseSecuritygroupRule `json:"ingressrule"`
@@ -8248,16 +8466,18 @@ type StartVirtualMachineResponseSecuritygroupRule struct {
}
type StartVirtualMachineResponseAffinitygroup struct {
- Account string `json:"account"`
- Description string `json:"description"`
- Domain string `json:"domain"`
- Domainid string `json:"domainid"`
- Id string `json:"id"`
- Name string `json:"name"`
- Project string `json:"project"`
- Projectid string `json:"projectid"`
- Type string `json:"type"`
- VirtualmachineIds []string `json:"virtualmachineIds"`
+ Account string `json:"account"`
+ Dedicatedresources []string `json:"dedicatedresources"`
+ Description string `json:"description"`
+ Domain string `json:"domain"`
+ Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
+ Id string `json:"id"`
+ Name string `json:"name"`
+ Project string `json:"project"`
+ Projectid string `json:"projectid"`
+ Type string `json:"type"`
+ VirtualmachineIds []string `json:"virtualmachineIds"`
}
func (r *StartVirtualMachineResponse) UnmarshalJSON(b []byte) error {
@@ -8405,6 +8625,7 @@ type StopVirtualMachineResponse struct {
Cpuspeed int `json:"cpuspeed"`
Cpuused string `json:"cpuused"`
Created string `json:"created"`
+ Deleteprotection bool `json:"deleteprotection"`
Details map[string]string `json:"details"`
Diskioread int64 `json:"diskioread"`
Diskiowrite int64 `json:"diskiowrite"`
@@ -8416,6 +8637,7 @@ type StopVirtualMachineResponse struct {
Displayvm bool `json:"displayvm"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Forvirtualnetwork bool `json:"forvirtualnetwork"`
Group string `json:"group"`
Groupid string `json:"groupid"`
@@ -8429,6 +8651,7 @@ type StopVirtualMachineResponse struct {
Icon interface{} `json:"icon"`
Id string `json:"id"`
Instancename string `json:"instancename"`
+ Ipaddress string `json:"ipaddress"`
Isdynamicallyscalable bool `json:"isdynamicallyscalable"`
Isodisplaytext string `json:"isodisplaytext"`
Isoid string `json:"isoid"`
@@ -8466,6 +8689,7 @@ type StopVirtualMachineResponse struct {
State string `json:"state"`
Tags []Tags `json:"tags"`
Templatedisplaytext string `json:"templatedisplaytext"`
+ Templateformat string `json:"templateformat"`
Templateid string `json:"templateid"`
Templatename string `json:"templatename"`
Templatetype string `json:"templatetype"`
@@ -8477,6 +8701,7 @@ type StopVirtualMachineResponse struct {
Userid string `json:"userid"`
Username string `json:"username"`
Vgpu string `json:"vgpu"`
+ Vmtype string `json:"vmtype"`
Vnfdetails map[string]string `json:"vnfdetails"`
Vnfnics []string `json:"vnfnics"`
Zoneid string `json:"zoneid"`
@@ -8488,6 +8713,7 @@ type StopVirtualMachineResponseSecuritygroup struct {
Description string `json:"description"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Egressrule []StopVirtualMachineResponseSecuritygroupRule `json:"egressrule"`
Id string `json:"id"`
Ingressrule []StopVirtualMachineResponseSecuritygroupRule `json:"ingressrule"`
@@ -8513,16 +8739,18 @@ type StopVirtualMachineResponseSecuritygroupRule struct {
}
type StopVirtualMachineResponseAffinitygroup struct {
- Account string `json:"account"`
- Description string `json:"description"`
- Domain string `json:"domain"`
- Domainid string `json:"domainid"`
- Id string `json:"id"`
- Name string `json:"name"`
- Project string `json:"project"`
- Projectid string `json:"projectid"`
- Type string `json:"type"`
- VirtualmachineIds []string `json:"virtualmachineIds"`
+ Account string `json:"account"`
+ Dedicatedresources []string `json:"dedicatedresources"`
+ Description string `json:"description"`
+ Domain string `json:"domain"`
+ Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
+ Id string `json:"id"`
+ Name string `json:"name"`
+ Project string `json:"project"`
+ Projectid string `json:"projectid"`
+ Type string `json:"type"`
+ VirtualmachineIds []string `json:"virtualmachineIds"`
}
func (r *StopVirtualMachineResponse) UnmarshalJSON(b []byte) error {
@@ -8670,6 +8898,7 @@ type UpdateDefaultNicForVirtualMachineResponse struct {
Cpuspeed int `json:"cpuspeed"`
Cpuused string `json:"cpuused"`
Created string `json:"created"`
+ Deleteprotection bool `json:"deleteprotection"`
Details map[string]string `json:"details"`
Diskioread int64 `json:"diskioread"`
Diskiowrite int64 `json:"diskiowrite"`
@@ -8681,6 +8910,7 @@ type UpdateDefaultNicForVirtualMachineResponse struct {
Displayvm bool `json:"displayvm"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Forvirtualnetwork bool `json:"forvirtualnetwork"`
Group string `json:"group"`
Groupid string `json:"groupid"`
@@ -8694,6 +8924,7 @@ type UpdateDefaultNicForVirtualMachineResponse struct {
Icon interface{} `json:"icon"`
Id string `json:"id"`
Instancename string `json:"instancename"`
+ Ipaddress string `json:"ipaddress"`
Isdynamicallyscalable bool `json:"isdynamicallyscalable"`
Isodisplaytext string `json:"isodisplaytext"`
Isoid string `json:"isoid"`
@@ -8731,6 +8962,7 @@ type UpdateDefaultNicForVirtualMachineResponse struct {
State string `json:"state"`
Tags []Tags `json:"tags"`
Templatedisplaytext string `json:"templatedisplaytext"`
+ Templateformat string `json:"templateformat"`
Templateid string `json:"templateid"`
Templatename string `json:"templatename"`
Templatetype string `json:"templatetype"`
@@ -8742,6 +8974,7 @@ type UpdateDefaultNicForVirtualMachineResponse struct {
Userid string `json:"userid"`
Username string `json:"username"`
Vgpu string `json:"vgpu"`
+ Vmtype string `json:"vmtype"`
Vnfdetails map[string]string `json:"vnfdetails"`
Vnfnics []string `json:"vnfnics"`
Zoneid string `json:"zoneid"`
@@ -8753,6 +8986,7 @@ type UpdateDefaultNicForVirtualMachineResponseSecuritygroup struct {
Description string `json:"description"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Egressrule []UpdateDefaultNicForVirtualMachineResponseSecuritygroupRule `json:"egressrule"`
Id string `json:"id"`
Ingressrule []UpdateDefaultNicForVirtualMachineResponseSecuritygroupRule `json:"ingressrule"`
@@ -8778,16 +9012,18 @@ type UpdateDefaultNicForVirtualMachineResponseSecuritygroupRule struct {
}
type UpdateDefaultNicForVirtualMachineResponseAffinitygroup struct {
- Account string `json:"account"`
- Description string `json:"description"`
- Domain string `json:"domain"`
- Domainid string `json:"domainid"`
- Id string `json:"id"`
- Name string `json:"name"`
- Project string `json:"project"`
- Projectid string `json:"projectid"`
- Type string `json:"type"`
- VirtualmachineIds []string `json:"virtualmachineIds"`
+ Account string `json:"account"`
+ Dedicatedresources []string `json:"dedicatedresources"`
+ Description string `json:"description"`
+ Domain string `json:"domain"`
+ Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
+ Id string `json:"id"`
+ Name string `json:"name"`
+ Project string `json:"project"`
+ Projectid string `json:"projectid"`
+ Type string `json:"type"`
+ VirtualmachineIds []string `json:"virtualmachineIds"`
}
func (r *UpdateDefaultNicForVirtualMachineResponse) UnmarshalJSON(b []byte) error {
@@ -8833,6 +9069,10 @@ func (p *UpdateVirtualMachineParams) toURLValues() url.Values {
if v, found := p.p["customid"]; found {
u.Set("customid", v.(string))
}
+ if v, found := p.p["deleteprotection"]; found {
+ vv := strconv.FormatBool(v.(bool))
+ u.Set("deleteprotection", vv)
+ }
if v, found := p.p["details"]; found {
m := v.(map[string]string)
for i, k := range getSortedKeysFromMap(m) {
@@ -8946,6 +9186,27 @@ func (p *UpdateVirtualMachineParams) GetCustomid() (string, bool) {
return value, ok
}
+func (p *UpdateVirtualMachineParams) SetDeleteprotection(v bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ p.p["deleteprotection"] = v
+}
+
+func (p *UpdateVirtualMachineParams) ResetDeleteprotection() {
+ if p.p != nil && p.p["deleteprotection"] != nil {
+ delete(p.p, "deleteprotection")
+ }
+}
+
+func (p *UpdateVirtualMachineParams) GetDeleteprotection() (bool, bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ value, ok := p.p["deleteprotection"].(bool)
+ return value, ok
+}
+
func (p *UpdateVirtualMachineParams) SetDetails(v map[string]string) {
if p.p == nil {
p.p = make(map[string]interface{})
@@ -9354,6 +9615,7 @@ type UpdateVirtualMachineResponse struct {
Cpuspeed int `json:"cpuspeed"`
Cpuused string `json:"cpuused"`
Created string `json:"created"`
+ Deleteprotection bool `json:"deleteprotection"`
Details map[string]string `json:"details"`
Diskioread int64 `json:"diskioread"`
Diskiowrite int64 `json:"diskiowrite"`
@@ -9365,6 +9627,7 @@ type UpdateVirtualMachineResponse struct {
Displayvm bool `json:"displayvm"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Forvirtualnetwork bool `json:"forvirtualnetwork"`
Group string `json:"group"`
Groupid string `json:"groupid"`
@@ -9378,6 +9641,7 @@ type UpdateVirtualMachineResponse struct {
Icon interface{} `json:"icon"`
Id string `json:"id"`
Instancename string `json:"instancename"`
+ Ipaddress string `json:"ipaddress"`
Isdynamicallyscalable bool `json:"isdynamicallyscalable"`
Isodisplaytext string `json:"isodisplaytext"`
Isoid string `json:"isoid"`
@@ -9415,6 +9679,7 @@ type UpdateVirtualMachineResponse struct {
State string `json:"state"`
Tags []Tags `json:"tags"`
Templatedisplaytext string `json:"templatedisplaytext"`
+ Templateformat string `json:"templateformat"`
Templateid string `json:"templateid"`
Templatename string `json:"templatename"`
Templatetype string `json:"templatetype"`
@@ -9426,6 +9691,7 @@ type UpdateVirtualMachineResponse struct {
Userid string `json:"userid"`
Username string `json:"username"`
Vgpu string `json:"vgpu"`
+ Vmtype string `json:"vmtype"`
Vnfdetails map[string]string `json:"vnfdetails"`
Vnfnics []string `json:"vnfnics"`
Zoneid string `json:"zoneid"`
@@ -9437,6 +9703,7 @@ type UpdateVirtualMachineResponseSecuritygroup struct {
Description string `json:"description"`
Domain string `json:"domain"`
Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
Egressrule []UpdateVirtualMachineResponseSecuritygroupRule `json:"egressrule"`
Id string `json:"id"`
Ingressrule []UpdateVirtualMachineResponseSecuritygroupRule `json:"ingressrule"`
@@ -9462,16 +9729,18 @@ type UpdateVirtualMachineResponseSecuritygroupRule struct {
}
type UpdateVirtualMachineResponseAffinitygroup struct {
- Account string `json:"account"`
- Description string `json:"description"`
- Domain string `json:"domain"`
- Domainid string `json:"domainid"`
- Id string `json:"id"`
- Name string `json:"name"`
- Project string `json:"project"`
- Projectid string `json:"projectid"`
- Type string `json:"type"`
- VirtualmachineIds []string `json:"virtualmachineIds"`
+ Account string `json:"account"`
+ Dedicatedresources []string `json:"dedicatedresources"`
+ Description string `json:"description"`
+ Domain string `json:"domain"`
+ Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
+ Id string `json:"id"`
+ Name string `json:"name"`
+ Project string `json:"project"`
+ Projectid string `json:"projectid"`
+ Type string `json:"type"`
+ VirtualmachineIds []string `json:"virtualmachineIds"`
}
func (r *UpdateVirtualMachineResponse) UnmarshalJSON(b []byte) error {
diff --git a/cloudstack/VolumeService.go b/cloudstack/VolumeService.go
index 65ce826..281e52d 100644
--- a/cloudstack/VolumeService.go
+++ b/cloudstack/VolumeService.go
@@ -203,74 +203,79 @@ func (s *VolumeService) AttachVolume(p *AttachVolumeParams) (*AttachVolumeRespon
}
type AttachVolumeResponse struct {
- Account string `json:"account"`
- Attached string `json:"attached"`
- Chaininfo string `json:"chaininfo"`
- Clusterid string `json:"clusterid"`
- Clustername string `json:"clustername"`
- Created string `json:"created"`
- Destroyed bool `json:"destroyed"`
- Deviceid int64 `json:"deviceid"`
- DiskBytesReadRate int64 `json:"diskBytesReadRate"`
- DiskBytesWriteRate int64 `json:"diskBytesWriteRate"`
- DiskIopsReadRate int64 `json:"diskIopsReadRate"`
- DiskIopsWriteRate int64 `json:"diskIopsWriteRate"`
- Diskioread int64 `json:"diskioread"`
- Diskiowrite int64 `json:"diskiowrite"`
- Diskkbsread int64 `json:"diskkbsread"`
- Diskkbswrite int64 `json:"diskkbswrite"`
- Diskofferingdisplaytext string `json:"diskofferingdisplaytext"`
- Diskofferingid string `json:"diskofferingid"`
- Diskofferingname string `json:"diskofferingname"`
- Displayvolume bool `json:"displayvolume"`
- Domain string `json:"domain"`
- Domainid string `json:"domainid"`
- Externaluuid string `json:"externaluuid"`
- Hasannotations bool `json:"hasannotations"`
- Hypervisor string `json:"hypervisor"`
- Id string `json:"id"`
- Isextractable bool `json:"isextractable"`
- Isodisplaytext string `json:"isodisplaytext"`
- Isoid string `json:"isoid"`
- Isoname string `json:"isoname"`
- JobID string `json:"jobid"`
- Jobstatus int `json:"jobstatus"`
- Maxiops int64 `json:"maxiops"`
- Miniops int64 `json:"miniops"`
- Name string `json:"name"`
- Path string `json:"path"`
- Physicalsize int64 `json:"physicalsize"`
- Podid string `json:"podid"`
- Podname string `json:"podname"`
- Project string `json:"project"`
- Projectid string `json:"projectid"`
- Provisioningtype string `json:"provisioningtype"`
- Quiescevm bool `json:"quiescevm"`
- Serviceofferingdisplaytext string `json:"serviceofferingdisplaytext"`
- Serviceofferingid string `json:"serviceofferingid"`
- Serviceofferingname string `json:"serviceofferingname"`
- Size int64 `json:"size"`
- Snapshotid string `json:"snapshotid"`
- State string `json:"state"`
- Status string `json:"status"`
- Storage string `json:"storage"`
- Storageid string `json:"storageid"`
- Storagetype string `json:"storagetype"`
- Supportsstoragesnapshot bool `json:"supportsstoragesnapshot"`
- Tags []Tags `json:"tags"`
- Templatedisplaytext string `json:"templatedisplaytext"`
- Templateid string `json:"templateid"`
- Templatename string `json:"templatename"`
- Type string `json:"type"`
- Utilization string `json:"utilization"`
- Virtualmachineid string `json:"virtualmachineid"`
- Virtualsize int64 `json:"virtualsize"`
- Vmdisplayname string `json:"vmdisplayname"`
- Vmname string `json:"vmname"`
- Vmstate string `json:"vmstate"`
- Vmtype string `json:"vmtype"`
- Zoneid string `json:"zoneid"`
- Zonename string `json:"zonename"`
+ Account string `json:"account"`
+ Attached string `json:"attached"`
+ Chaininfo string `json:"chaininfo"`
+ Clusterid string `json:"clusterid"`
+ Clustername string `json:"clustername"`
+ Created string `json:"created"`
+ Deleteprotection bool `json:"deleteprotection"`
+ Destroyed bool `json:"destroyed"`
+ Deviceid int64 `json:"deviceid"`
+ DiskBytesReadRate int64 `json:"diskBytesReadRate"`
+ DiskBytesWriteRate int64 `json:"diskBytesWriteRate"`
+ DiskIopsReadRate int64 `json:"diskIopsReadRate"`
+ DiskIopsWriteRate int64 `json:"diskIopsWriteRate"`
+ Diskioread int64 `json:"diskioread"`
+ Diskiowrite int64 `json:"diskiowrite"`
+ Diskkbsread int64 `json:"diskkbsread"`
+ Diskkbswrite int64 `json:"diskkbswrite"`
+ Diskofferingdisplaytext string `json:"diskofferingdisplaytext"`
+ Diskofferingid string `json:"diskofferingid"`
+ Diskofferingname string `json:"diskofferingname"`
+ Displayvolume bool `json:"displayvolume"`
+ Domain string `json:"domain"`
+ Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
+ Encryptformat string `json:"encryptformat"`
+ Externaluuid string `json:"externaluuid"`
+ Hasannotations bool `json:"hasannotations"`
+ Hypervisor string `json:"hypervisor"`
+ Id string `json:"id"`
+ Isextractable bool `json:"isextractable"`
+ Isodisplaytext string `json:"isodisplaytext"`
+ Isoid string `json:"isoid"`
+ Isoname string `json:"isoname"`
+ JobID string `json:"jobid"`
+ Jobstatus int `json:"jobstatus"`
+ Maxiops int64 `json:"maxiops"`
+ Miniops int64 `json:"miniops"`
+ Name string `json:"name"`
+ Path string `json:"path"`
+ Physicalsize int64 `json:"physicalsize"`
+ Podid string `json:"podid"`
+ Podname string `json:"podname"`
+ Project string `json:"project"`
+ Projectid string `json:"projectid"`
+ Provisioningtype string `json:"provisioningtype"`
+ Quiescevm bool `json:"quiescevm"`
+ Serviceofferingdisplaytext string `json:"serviceofferingdisplaytext"`
+ Serviceofferingid string `json:"serviceofferingid"`
+ Serviceofferingname string `json:"serviceofferingname"`
+ Size int64 `json:"size"`
+ Snapshotid string `json:"snapshotid"`
+ State string `json:"state"`
+ Status string `json:"status"`
+ Storage string `json:"storage"`
+ Storageid string `json:"storageid"`
+ Storagetype string `json:"storagetype"`
+ Supportsstoragesnapshot bool `json:"supportsstoragesnapshot"`
+ Tags []Tags `json:"tags"`
+ Templatedisplaytext string `json:"templatedisplaytext"`
+ Templateid string `json:"templateid"`
+ Templatename string `json:"templatename"`
+ Type string `json:"type"`
+ Utilization string `json:"utilization"`
+ Virtualmachineid string `json:"virtualmachineid"`
+ Virtualsize int64 `json:"virtualsize"`
+ Vmdisplayname string `json:"vmdisplayname"`
+ Vmname string `json:"vmname"`
+ Vmstate string `json:"vmstate"`
+ Vmtype string `json:"vmtype"`
+ Volumecheckresult map[string]string `json:"volumecheckresult"`
+ Volumerepairresult map[string]string `json:"volumerepairresult"`
+ Zoneid string `json:"zoneid"`
+ Zonename string `json:"zonename"`
}
type CreateVolumeParams struct {
@@ -645,74 +650,79 @@ func (s *VolumeService) CreateVolume(p *CreateVolumeParams) (*CreateVolumeRespon
}
type CreateVolumeResponse struct {
- Account string `json:"account"`
- Attached string `json:"attached"`
- Chaininfo string `json:"chaininfo"`
- Clusterid string `json:"clusterid"`
- Clustername string `json:"clustername"`
- Created string `json:"created"`
- Destroyed bool `json:"destroyed"`
- Deviceid int64 `json:"deviceid"`
- DiskBytesReadRate int64 `json:"diskBytesReadRate"`
- DiskBytesWriteRate int64 `json:"diskBytesWriteRate"`
- DiskIopsReadRate int64 `json:"diskIopsReadRate"`
- DiskIopsWriteRate int64 `json:"diskIopsWriteRate"`
- Diskioread int64 `json:"diskioread"`
- Diskiowrite int64 `json:"diskiowrite"`
- Diskkbsread int64 `json:"diskkbsread"`
- Diskkbswrite int64 `json:"diskkbswrite"`
- Diskofferingdisplaytext string `json:"diskofferingdisplaytext"`
- Diskofferingid string `json:"diskofferingid"`
- Diskofferingname string `json:"diskofferingname"`
- Displayvolume bool `json:"displayvolume"`
- Domain string `json:"domain"`
- Domainid string `json:"domainid"`
- Externaluuid string `json:"externaluuid"`
- Hasannotations bool `json:"hasannotations"`
- Hypervisor string `json:"hypervisor"`
- Id string `json:"id"`
- Isextractable bool `json:"isextractable"`
- Isodisplaytext string `json:"isodisplaytext"`
- Isoid string `json:"isoid"`
- Isoname string `json:"isoname"`
- JobID string `json:"jobid"`
- Jobstatus int `json:"jobstatus"`
- Maxiops int64 `json:"maxiops"`
- Miniops int64 `json:"miniops"`
- Name string `json:"name"`
- Path string `json:"path"`
- Physicalsize int64 `json:"physicalsize"`
- Podid string `json:"podid"`
- Podname string `json:"podname"`
- Project string `json:"project"`
- Projectid string `json:"projectid"`
- Provisioningtype string `json:"provisioningtype"`
- Quiescevm bool `json:"quiescevm"`
- Serviceofferingdisplaytext string `json:"serviceofferingdisplaytext"`
- Serviceofferingid string `json:"serviceofferingid"`
- Serviceofferingname string `json:"serviceofferingname"`
- Size int64 `json:"size"`
- Snapshotid string `json:"snapshotid"`
- State string `json:"state"`
- Status string `json:"status"`
- Storage string `json:"storage"`
- Storageid string `json:"storageid"`
- Storagetype string `json:"storagetype"`
- Supportsstoragesnapshot bool `json:"supportsstoragesnapshot"`
- Tags []Tags `json:"tags"`
- Templatedisplaytext string `json:"templatedisplaytext"`
- Templateid string `json:"templateid"`
- Templatename string `json:"templatename"`
- Type string `json:"type"`
- Utilization string `json:"utilization"`
- Virtualmachineid string `json:"virtualmachineid"`
- Virtualsize int64 `json:"virtualsize"`
- Vmdisplayname string `json:"vmdisplayname"`
- Vmname string `json:"vmname"`
- Vmstate string `json:"vmstate"`
- Vmtype string `json:"vmtype"`
- Zoneid string `json:"zoneid"`
- Zonename string `json:"zonename"`
+ Account string `json:"account"`
+ Attached string `json:"attached"`
+ Chaininfo string `json:"chaininfo"`
+ Clusterid string `json:"clusterid"`
+ Clustername string `json:"clustername"`
+ Created string `json:"created"`
+ Deleteprotection bool `json:"deleteprotection"`
+ Destroyed bool `json:"destroyed"`
+ Deviceid int64 `json:"deviceid"`
+ DiskBytesReadRate int64 `json:"diskBytesReadRate"`
+ DiskBytesWriteRate int64 `json:"diskBytesWriteRate"`
+ DiskIopsReadRate int64 `json:"diskIopsReadRate"`
+ DiskIopsWriteRate int64 `json:"diskIopsWriteRate"`
+ Diskioread int64 `json:"diskioread"`
+ Diskiowrite int64 `json:"diskiowrite"`
+ Diskkbsread int64 `json:"diskkbsread"`
+ Diskkbswrite int64 `json:"diskkbswrite"`
+ Diskofferingdisplaytext string `json:"diskofferingdisplaytext"`
+ Diskofferingid string `json:"diskofferingid"`
+ Diskofferingname string `json:"diskofferingname"`
+ Displayvolume bool `json:"displayvolume"`
+ Domain string `json:"domain"`
+ Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
+ Encryptformat string `json:"encryptformat"`
+ Externaluuid string `json:"externaluuid"`
+ Hasannotations bool `json:"hasannotations"`
+ Hypervisor string `json:"hypervisor"`
+ Id string `json:"id"`
+ Isextractable bool `json:"isextractable"`
+ Isodisplaytext string `json:"isodisplaytext"`
+ Isoid string `json:"isoid"`
+ Isoname string `json:"isoname"`
+ JobID string `json:"jobid"`
+ Jobstatus int `json:"jobstatus"`
+ Maxiops int64 `json:"maxiops"`
+ Miniops int64 `json:"miniops"`
+ Name string `json:"name"`
+ Path string `json:"path"`
+ Physicalsize int64 `json:"physicalsize"`
+ Podid string `json:"podid"`
+ Podname string `json:"podname"`
+ Project string `json:"project"`
+ Projectid string `json:"projectid"`
+ Provisioningtype string `json:"provisioningtype"`
+ Quiescevm bool `json:"quiescevm"`
+ Serviceofferingdisplaytext string `json:"serviceofferingdisplaytext"`
+ Serviceofferingid string `json:"serviceofferingid"`
+ Serviceofferingname string `json:"serviceofferingname"`
+ Size int64 `json:"size"`
+ Snapshotid string `json:"snapshotid"`
+ State string `json:"state"`
+ Status string `json:"status"`
+ Storage string `json:"storage"`
+ Storageid string `json:"storageid"`
+ Storagetype string `json:"storagetype"`
+ Supportsstoragesnapshot bool `json:"supportsstoragesnapshot"`
+ Tags []Tags `json:"tags"`
+ Templatedisplaytext string `json:"templatedisplaytext"`
+ Templateid string `json:"templateid"`
+ Templatename string `json:"templatename"`
+ Type string `json:"type"`
+ Utilization string `json:"utilization"`
+ Virtualmachineid string `json:"virtualmachineid"`
+ Virtualsize int64 `json:"virtualsize"`
+ Vmdisplayname string `json:"vmdisplayname"`
+ Vmname string `json:"vmname"`
+ Vmstate string `json:"vmstate"`
+ Vmtype string `json:"vmtype"`
+ Volumecheckresult map[string]string `json:"volumecheckresult"`
+ Volumerepairresult map[string]string `json:"volumerepairresult"`
+ Zoneid string `json:"zoneid"`
+ Zonename string `json:"zonename"`
}
type DeleteVolumeParams struct {
@@ -915,74 +925,79 @@ func (s *VolumeService) DestroyVolume(p *DestroyVolumeParams) (*DestroyVolumeRes
}
type DestroyVolumeResponse struct {
- Account string `json:"account"`
- Attached string `json:"attached"`
- Chaininfo string `json:"chaininfo"`
- Clusterid string `json:"clusterid"`
- Clustername string `json:"clustername"`
- Created string `json:"created"`
- Destroyed bool `json:"destroyed"`
- Deviceid int64 `json:"deviceid"`
- DiskBytesReadRate int64 `json:"diskBytesReadRate"`
- DiskBytesWriteRate int64 `json:"diskBytesWriteRate"`
- DiskIopsReadRate int64 `json:"diskIopsReadRate"`
- DiskIopsWriteRate int64 `json:"diskIopsWriteRate"`
- Diskioread int64 `json:"diskioread"`
- Diskiowrite int64 `json:"diskiowrite"`
- Diskkbsread int64 `json:"diskkbsread"`
- Diskkbswrite int64 `json:"diskkbswrite"`
- Diskofferingdisplaytext string `json:"diskofferingdisplaytext"`
- Diskofferingid string `json:"diskofferingid"`
- Diskofferingname string `json:"diskofferingname"`
- Displayvolume bool `json:"displayvolume"`
- Domain string `json:"domain"`
- Domainid string `json:"domainid"`
- Externaluuid string `json:"externaluuid"`
- Hasannotations bool `json:"hasannotations"`
- Hypervisor string `json:"hypervisor"`
- Id string `json:"id"`
- Isextractable bool `json:"isextractable"`
- Isodisplaytext string `json:"isodisplaytext"`
- Isoid string `json:"isoid"`
- Isoname string `json:"isoname"`
- JobID string `json:"jobid"`
- Jobstatus int `json:"jobstatus"`
- Maxiops int64 `json:"maxiops"`
- Miniops int64 `json:"miniops"`
- Name string `json:"name"`
- Path string `json:"path"`
- Physicalsize int64 `json:"physicalsize"`
- Podid string `json:"podid"`
- Podname string `json:"podname"`
- Project string `json:"project"`
- Projectid string `json:"projectid"`
- Provisioningtype string `json:"provisioningtype"`
- Quiescevm bool `json:"quiescevm"`
- Serviceofferingdisplaytext string `json:"serviceofferingdisplaytext"`
- Serviceofferingid string `json:"serviceofferingid"`
- Serviceofferingname string `json:"serviceofferingname"`
- Size int64 `json:"size"`
- Snapshotid string `json:"snapshotid"`
- State string `json:"state"`
- Status string `json:"status"`
- Storage string `json:"storage"`
- Storageid string `json:"storageid"`
- Storagetype string `json:"storagetype"`
- Supportsstoragesnapshot bool `json:"supportsstoragesnapshot"`
- Tags []Tags `json:"tags"`
- Templatedisplaytext string `json:"templatedisplaytext"`
- Templateid string `json:"templateid"`
- Templatename string `json:"templatename"`
- Type string `json:"type"`
- Utilization string `json:"utilization"`
- Virtualmachineid string `json:"virtualmachineid"`
- Virtualsize int64 `json:"virtualsize"`
- Vmdisplayname string `json:"vmdisplayname"`
- Vmname string `json:"vmname"`
- Vmstate string `json:"vmstate"`
- Vmtype string `json:"vmtype"`
- Zoneid string `json:"zoneid"`
- Zonename string `json:"zonename"`
+ Account string `json:"account"`
+ Attached string `json:"attached"`
+ Chaininfo string `json:"chaininfo"`
+ Clusterid string `json:"clusterid"`
+ Clustername string `json:"clustername"`
+ Created string `json:"created"`
+ Deleteprotection bool `json:"deleteprotection"`
+ Destroyed bool `json:"destroyed"`
+ Deviceid int64 `json:"deviceid"`
+ DiskBytesReadRate int64 `json:"diskBytesReadRate"`
+ DiskBytesWriteRate int64 `json:"diskBytesWriteRate"`
+ DiskIopsReadRate int64 `json:"diskIopsReadRate"`
+ DiskIopsWriteRate int64 `json:"diskIopsWriteRate"`
+ Diskioread int64 `json:"diskioread"`
+ Diskiowrite int64 `json:"diskiowrite"`
+ Diskkbsread int64 `json:"diskkbsread"`
+ Diskkbswrite int64 `json:"diskkbswrite"`
+ Diskofferingdisplaytext string `json:"diskofferingdisplaytext"`
+ Diskofferingid string `json:"diskofferingid"`
+ Diskofferingname string `json:"diskofferingname"`
+ Displayvolume bool `json:"displayvolume"`
+ Domain string `json:"domain"`
+ Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
+ Encryptformat string `json:"encryptformat"`
+ Externaluuid string `json:"externaluuid"`
+ Hasannotations bool `json:"hasannotations"`
+ Hypervisor string `json:"hypervisor"`
+ Id string `json:"id"`
+ Isextractable bool `json:"isextractable"`
+ Isodisplaytext string `json:"isodisplaytext"`
+ Isoid string `json:"isoid"`
+ Isoname string `json:"isoname"`
+ JobID string `json:"jobid"`
+ Jobstatus int `json:"jobstatus"`
+ Maxiops int64 `json:"maxiops"`
+ Miniops int64 `json:"miniops"`
+ Name string `json:"name"`
+ Path string `json:"path"`
+ Physicalsize int64 `json:"physicalsize"`
+ Podid string `json:"podid"`
+ Podname string `json:"podname"`
+ Project string `json:"project"`
+ Projectid string `json:"projectid"`
+ Provisioningtype string `json:"provisioningtype"`
+ Quiescevm bool `json:"quiescevm"`
+ Serviceofferingdisplaytext string `json:"serviceofferingdisplaytext"`
+ Serviceofferingid string `json:"serviceofferingid"`
+ Serviceofferingname string `json:"serviceofferingname"`
+ Size int64 `json:"size"`
+ Snapshotid string `json:"snapshotid"`
+ State string `json:"state"`
+ Status string `json:"status"`
+ Storage string `json:"storage"`
+ Storageid string `json:"storageid"`
+ Storagetype string `json:"storagetype"`
+ Supportsstoragesnapshot bool `json:"supportsstoragesnapshot"`
+ Tags []Tags `json:"tags"`
+ Templatedisplaytext string `json:"templatedisplaytext"`
+ Templateid string `json:"templateid"`
+ Templatename string `json:"templatename"`
+ Type string `json:"type"`
+ Utilization string `json:"utilization"`
+ Virtualmachineid string `json:"virtualmachineid"`
+ Virtualsize int64 `json:"virtualsize"`
+ Vmdisplayname string `json:"vmdisplayname"`
+ Vmname string `json:"vmname"`
+ Vmstate string `json:"vmstate"`
+ Vmtype string `json:"vmtype"`
+ Volumecheckresult map[string]string `json:"volumecheckresult"`
+ Volumerepairresult map[string]string `json:"volumerepairresult"`
+ Zoneid string `json:"zoneid"`
+ Zonename string `json:"zonename"`
}
type DetachVolumeParams struct {
@@ -1114,74 +1129,79 @@ func (s *VolumeService) DetachVolume(p *DetachVolumeParams) (*DetachVolumeRespon
}
type DetachVolumeResponse struct {
- Account string `json:"account"`
- Attached string `json:"attached"`
- Chaininfo string `json:"chaininfo"`
- Clusterid string `json:"clusterid"`
- Clustername string `json:"clustername"`
- Created string `json:"created"`
- Destroyed bool `json:"destroyed"`
- Deviceid int64 `json:"deviceid"`
- DiskBytesReadRate int64 `json:"diskBytesReadRate"`
- DiskBytesWriteRate int64 `json:"diskBytesWriteRate"`
- DiskIopsReadRate int64 `json:"diskIopsReadRate"`
- DiskIopsWriteRate int64 `json:"diskIopsWriteRate"`
- Diskioread int64 `json:"diskioread"`
- Diskiowrite int64 `json:"diskiowrite"`
- Diskkbsread int64 `json:"diskkbsread"`
- Diskkbswrite int64 `json:"diskkbswrite"`
- Diskofferingdisplaytext string `json:"diskofferingdisplaytext"`
- Diskofferingid string `json:"diskofferingid"`
- Diskofferingname string `json:"diskofferingname"`
- Displayvolume bool `json:"displayvolume"`
- Domain string `json:"domain"`
- Domainid string `json:"domainid"`
- Externaluuid string `json:"externaluuid"`
- Hasannotations bool `json:"hasannotations"`
- Hypervisor string `json:"hypervisor"`
- Id string `json:"id"`
- Isextractable bool `json:"isextractable"`
- Isodisplaytext string `json:"isodisplaytext"`
- Isoid string `json:"isoid"`
- Isoname string `json:"isoname"`
- JobID string `json:"jobid"`
- Jobstatus int `json:"jobstatus"`
- Maxiops int64 `json:"maxiops"`
- Miniops int64 `json:"miniops"`
- Name string `json:"name"`
- Path string `json:"path"`
- Physicalsize int64 `json:"physicalsize"`
- Podid string `json:"podid"`
- Podname string `json:"podname"`
- Project string `json:"project"`
- Projectid string `json:"projectid"`
- Provisioningtype string `json:"provisioningtype"`
- Quiescevm bool `json:"quiescevm"`
- Serviceofferingdisplaytext string `json:"serviceofferingdisplaytext"`
- Serviceofferingid string `json:"serviceofferingid"`
- Serviceofferingname string `json:"serviceofferingname"`
- Size int64 `json:"size"`
- Snapshotid string `json:"snapshotid"`
- State string `json:"state"`
- Status string `json:"status"`
- Storage string `json:"storage"`
- Storageid string `json:"storageid"`
- Storagetype string `json:"storagetype"`
- Supportsstoragesnapshot bool `json:"supportsstoragesnapshot"`
- Tags []Tags `json:"tags"`
- Templatedisplaytext string `json:"templatedisplaytext"`
- Templateid string `json:"templateid"`
- Templatename string `json:"templatename"`
- Type string `json:"type"`
- Utilization string `json:"utilization"`
- Virtualmachineid string `json:"virtualmachineid"`
- Virtualsize int64 `json:"virtualsize"`
- Vmdisplayname string `json:"vmdisplayname"`
- Vmname string `json:"vmname"`
- Vmstate string `json:"vmstate"`
- Vmtype string `json:"vmtype"`
- Zoneid string `json:"zoneid"`
- Zonename string `json:"zonename"`
+ Account string `json:"account"`
+ Attached string `json:"attached"`
+ Chaininfo string `json:"chaininfo"`
+ Clusterid string `json:"clusterid"`
+ Clustername string `json:"clustername"`
+ Created string `json:"created"`
+ Deleteprotection bool `json:"deleteprotection"`
+ Destroyed bool `json:"destroyed"`
+ Deviceid int64 `json:"deviceid"`
+ DiskBytesReadRate int64 `json:"diskBytesReadRate"`
+ DiskBytesWriteRate int64 `json:"diskBytesWriteRate"`
+ DiskIopsReadRate int64 `json:"diskIopsReadRate"`
+ DiskIopsWriteRate int64 `json:"diskIopsWriteRate"`
+ Diskioread int64 `json:"diskioread"`
+ Diskiowrite int64 `json:"diskiowrite"`
+ Diskkbsread int64 `json:"diskkbsread"`
+ Diskkbswrite int64 `json:"diskkbswrite"`
+ Diskofferingdisplaytext string `json:"diskofferingdisplaytext"`
+ Diskofferingid string `json:"diskofferingid"`
+ Diskofferingname string `json:"diskofferingname"`
+ Displayvolume bool `json:"displayvolume"`
+ Domain string `json:"domain"`
+ Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
+ Encryptformat string `json:"encryptformat"`
+ Externaluuid string `json:"externaluuid"`
+ Hasannotations bool `json:"hasannotations"`
+ Hypervisor string `json:"hypervisor"`
+ Id string `json:"id"`
+ Isextractable bool `json:"isextractable"`
+ Isodisplaytext string `json:"isodisplaytext"`
+ Isoid string `json:"isoid"`
+ Isoname string `json:"isoname"`
+ JobID string `json:"jobid"`
+ Jobstatus int `json:"jobstatus"`
+ Maxiops int64 `json:"maxiops"`
+ Miniops int64 `json:"miniops"`
+ Name string `json:"name"`
+ Path string `json:"path"`
+ Physicalsize int64 `json:"physicalsize"`
+ Podid string `json:"podid"`
+ Podname string `json:"podname"`
+ Project string `json:"project"`
+ Projectid string `json:"projectid"`
+ Provisioningtype string `json:"provisioningtype"`
+ Quiescevm bool `json:"quiescevm"`
+ Serviceofferingdisplaytext string `json:"serviceofferingdisplaytext"`
+ Serviceofferingid string `json:"serviceofferingid"`
+ Serviceofferingname string `json:"serviceofferingname"`
+ Size int64 `json:"size"`
+ Snapshotid string `json:"snapshotid"`
+ State string `json:"state"`
+ Status string `json:"status"`
+ Storage string `json:"storage"`
+ Storageid string `json:"storageid"`
+ Storagetype string `json:"storagetype"`
+ Supportsstoragesnapshot bool `json:"supportsstoragesnapshot"`
+ Tags []Tags `json:"tags"`
+ Templatedisplaytext string `json:"templatedisplaytext"`
+ Templateid string `json:"templateid"`
+ Templatename string `json:"templatename"`
+ Type string `json:"type"`
+ Utilization string `json:"utilization"`
+ Virtualmachineid string `json:"virtualmachineid"`
+ Virtualsize int64 `json:"virtualsize"`
+ Vmdisplayname string `json:"vmdisplayname"`
+ Vmname string `json:"vmname"`
+ Vmstate string `json:"vmstate"`
+ Vmtype string `json:"vmtype"`
+ Volumecheckresult map[string]string `json:"volumecheckresult"`
+ Volumerepairresult map[string]string `json:"volumerepairresult"`
+ Zoneid string `json:"zoneid"`
+ Zonename string `json:"zonename"`
}
type ExtractVolumeParams struct {
@@ -1860,6 +1880,10 @@ func (p *ListVolumesParams) toURLValues() url.Values {
vv := strings.Join(v.([]string), ",")
u.Set("ids", vv)
}
+ if v, found := p.p["isencrypted"]; found {
+ vv := strconv.FormatBool(v.(bool))
+ u.Set("isencrypted", vv)
+ }
if v, found := p.p["isrecursive"]; found {
vv := strconv.FormatBool(v.(bool))
u.Set("isrecursive", vv)
@@ -1896,6 +1920,9 @@ func (p *ListVolumesParams) toURLValues() url.Values {
vv := strconv.FormatBool(v.(bool))
u.Set("retrieveonlyresourcecount", vv)
}
+ if v, found := p.p["serviceofferingid"]; found {
+ u.Set("serviceofferingid", v.(string))
+ }
if v, found := p.p["state"]; found {
u.Set("state", v.(string))
}
@@ -2089,6 +2116,27 @@ func (p *ListVolumesParams) GetIds() ([]string, bool) {
return value, ok
}
+func (p *ListVolumesParams) SetIsencrypted(v bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ p.p["isencrypted"] = v
+}
+
+func (p *ListVolumesParams) ResetIsencrypted() {
+ if p.p != nil && p.p["isencrypted"] != nil {
+ delete(p.p, "isencrypted")
+ }
+}
+
+func (p *ListVolumesParams) GetIsencrypted() (bool, bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ value, ok := p.p["isencrypted"].(bool)
+ return value, ok
+}
+
func (p *ListVolumesParams) SetIsrecursive(v bool) {
if p.p == nil {
p.p = make(map[string]interface{})
@@ -2299,6 +2347,27 @@ func (p *ListVolumesParams) GetRetrieveonlyresourcecount() (bool, bool) {
return value, ok
}
+func (p *ListVolumesParams) SetServiceofferingid(v string) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ p.p["serviceofferingid"] = v
+}
+
+func (p *ListVolumesParams) ResetServiceofferingid() {
+ if p.p != nil && p.p["serviceofferingid"] != nil {
+ delete(p.p, "serviceofferingid")
+ }
+}
+
+func (p *ListVolumesParams) GetServiceofferingid() (string, bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ value, ok := p.p["serviceofferingid"].(string)
+ return value, ok
+}
+
func (p *ListVolumesParams) SetState(v string) {
if p.p == nil {
p.p = make(map[string]interface{})
@@ -2537,74 +2606,79 @@ type ListVolumesResponse struct {
}
type Volume struct {
- Account string `json:"account"`
- Attached string `json:"attached"`
- Chaininfo string `json:"chaininfo"`
- Clusterid string `json:"clusterid"`
- Clustername string `json:"clustername"`
- Created string `json:"created"`
- Destroyed bool `json:"destroyed"`
- Deviceid int64 `json:"deviceid"`
- DiskBytesReadRate int64 `json:"diskBytesReadRate"`
- DiskBytesWriteRate int64 `json:"diskBytesWriteRate"`
- DiskIopsReadRate int64 `json:"diskIopsReadRate"`
- DiskIopsWriteRate int64 `json:"diskIopsWriteRate"`
- Diskioread int64 `json:"diskioread"`
- Diskiowrite int64 `json:"diskiowrite"`
- Diskkbsread int64 `json:"diskkbsread"`
- Diskkbswrite int64 `json:"diskkbswrite"`
- Diskofferingdisplaytext string `json:"diskofferingdisplaytext"`
- Diskofferingid string `json:"diskofferingid"`
- Diskofferingname string `json:"diskofferingname"`
- Displayvolume bool `json:"displayvolume"`
- Domain string `json:"domain"`
- Domainid string `json:"domainid"`
- Externaluuid string `json:"externaluuid"`
- Hasannotations bool `json:"hasannotations"`
- Hypervisor string `json:"hypervisor"`
- Id string `json:"id"`
- Isextractable bool `json:"isextractable"`
- Isodisplaytext string `json:"isodisplaytext"`
- Isoid string `json:"isoid"`
- Isoname string `json:"isoname"`
- JobID string `json:"jobid"`
- Jobstatus int `json:"jobstatus"`
- Maxiops int64 `json:"maxiops"`
- Miniops int64 `json:"miniops"`
- Name string `json:"name"`
- Path string `json:"path"`
- Physicalsize int64 `json:"physicalsize"`
- Podid string `json:"podid"`
- Podname string `json:"podname"`
- Project string `json:"project"`
- Projectid string `json:"projectid"`
- Provisioningtype string `json:"provisioningtype"`
- Quiescevm bool `json:"quiescevm"`
- Serviceofferingdisplaytext string `json:"serviceofferingdisplaytext"`
- Serviceofferingid string `json:"serviceofferingid"`
- Serviceofferingname string `json:"serviceofferingname"`
- Size int64 `json:"size"`
- Snapshotid string `json:"snapshotid"`
- State string `json:"state"`
- Status string `json:"status"`
- Storage string `json:"storage"`
- Storageid string `json:"storageid"`
- Storagetype string `json:"storagetype"`
- Supportsstoragesnapshot bool `json:"supportsstoragesnapshot"`
- Tags []Tags `json:"tags"`
- Templatedisplaytext string `json:"templatedisplaytext"`
- Templateid string `json:"templateid"`
- Templatename string `json:"templatename"`
- Type string `json:"type"`
- Utilization string `json:"utilization"`
- Virtualmachineid string `json:"virtualmachineid"`
- Virtualsize int64 `json:"virtualsize"`
- Vmdisplayname string `json:"vmdisplayname"`
- Vmname string `json:"vmname"`
- Vmstate string `json:"vmstate"`
- Vmtype string `json:"vmtype"`
- Zoneid string `json:"zoneid"`
- Zonename string `json:"zonename"`
+ Account string `json:"account"`
+ Attached string `json:"attached"`
+ Chaininfo string `json:"chaininfo"`
+ Clusterid string `json:"clusterid"`
+ Clustername string `json:"clustername"`
+ Created string `json:"created"`
+ Deleteprotection bool `json:"deleteprotection"`
+ Destroyed bool `json:"destroyed"`
+ Deviceid int64 `json:"deviceid"`
+ DiskBytesReadRate int64 `json:"diskBytesReadRate"`
+ DiskBytesWriteRate int64 `json:"diskBytesWriteRate"`
+ DiskIopsReadRate int64 `json:"diskIopsReadRate"`
+ DiskIopsWriteRate int64 `json:"diskIopsWriteRate"`
+ Diskioread int64 `json:"diskioread"`
+ Diskiowrite int64 `json:"diskiowrite"`
+ Diskkbsread int64 `json:"diskkbsread"`
+ Diskkbswrite int64 `json:"diskkbswrite"`
+ Diskofferingdisplaytext string `json:"diskofferingdisplaytext"`
+ Diskofferingid string `json:"diskofferingid"`
+ Diskofferingname string `json:"diskofferingname"`
+ Displayvolume bool `json:"displayvolume"`
+ Domain string `json:"domain"`
+ Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
+ Encryptformat string `json:"encryptformat"`
+ Externaluuid string `json:"externaluuid"`
+ Hasannotations bool `json:"hasannotations"`
+ Hypervisor string `json:"hypervisor"`
+ Id string `json:"id"`
+ Isextractable bool `json:"isextractable"`
+ Isodisplaytext string `json:"isodisplaytext"`
+ Isoid string `json:"isoid"`
+ Isoname string `json:"isoname"`
+ JobID string `json:"jobid"`
+ Jobstatus int `json:"jobstatus"`
+ Maxiops int64 `json:"maxiops"`
+ Miniops int64 `json:"miniops"`
+ Name string `json:"name"`
+ Path string `json:"path"`
+ Physicalsize int64 `json:"physicalsize"`
+ Podid string `json:"podid"`
+ Podname string `json:"podname"`
+ Project string `json:"project"`
+ Projectid string `json:"projectid"`
+ Provisioningtype string `json:"provisioningtype"`
+ Quiescevm bool `json:"quiescevm"`
+ Serviceofferingdisplaytext string `json:"serviceofferingdisplaytext"`
+ Serviceofferingid string `json:"serviceofferingid"`
+ Serviceofferingname string `json:"serviceofferingname"`
+ Size int64 `json:"size"`
+ Snapshotid string `json:"snapshotid"`
+ State string `json:"state"`
+ Status string `json:"status"`
+ Storage string `json:"storage"`
+ Storageid string `json:"storageid"`
+ Storagetype string `json:"storagetype"`
+ Supportsstoragesnapshot bool `json:"supportsstoragesnapshot"`
+ Tags []Tags `json:"tags"`
+ Templatedisplaytext string `json:"templatedisplaytext"`
+ Templateid string `json:"templateid"`
+ Templatename string `json:"templatename"`
+ Type string `json:"type"`
+ Utilization string `json:"utilization"`
+ Virtualmachineid string `json:"virtualmachineid"`
+ Virtualsize int64 `json:"virtualsize"`
+ Vmdisplayname string `json:"vmdisplayname"`
+ Vmname string `json:"vmname"`
+ Vmstate string `json:"vmstate"`
+ Vmtype string `json:"vmtype"`
+ Volumecheckresult map[string]string `json:"volumecheckresult"`
+ Volumerepairresult map[string]string `json:"volumerepairresult"`
+ Zoneid string `json:"zoneid"`
+ Zonename string `json:"zonename"`
}
type ListVolumesMetricsParams struct {
@@ -2642,6 +2716,10 @@ func (p *ListVolumesMetricsParams) toURLValues() url.Values {
vv := strings.Join(v.([]string), ",")
u.Set("ids", vv)
}
+ if v, found := p.p["isencrypted"]; found {
+ vv := strconv.FormatBool(v.(bool))
+ u.Set("isencrypted", vv)
+ }
if v, found := p.p["isrecursive"]; found {
vv := strconv.FormatBool(v.(bool))
u.Set("isrecursive", vv)
@@ -2678,6 +2756,9 @@ func (p *ListVolumesMetricsParams) toURLValues() url.Values {
vv := strconv.FormatBool(v.(bool))
u.Set("retrieveonlyresourcecount", vv)
}
+ if v, found := p.p["serviceofferingid"]; found {
+ u.Set("serviceofferingid", v.(string))
+ }
if v, found := p.p["state"]; found {
u.Set("state", v.(string))
}
@@ -2871,6 +2952,27 @@ func (p *ListVolumesMetricsParams) GetIds() ([]string, bool) {
return value, ok
}
+func (p *ListVolumesMetricsParams) SetIsencrypted(v bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ p.p["isencrypted"] = v
+}
+
+func (p *ListVolumesMetricsParams) ResetIsencrypted() {
+ if p.p != nil && p.p["isencrypted"] != nil {
+ delete(p.p, "isencrypted")
+ }
+}
+
+func (p *ListVolumesMetricsParams) GetIsencrypted() (bool, bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ value, ok := p.p["isencrypted"].(bool)
+ return value, ok
+}
+
func (p *ListVolumesMetricsParams) SetIsrecursive(v bool) {
if p.p == nil {
p.p = make(map[string]interface{})
@@ -3081,6 +3183,27 @@ func (p *ListVolumesMetricsParams) GetRetrieveonlyresourcecount() (bool, bool) {
return value, ok
}
+func (p *ListVolumesMetricsParams) SetServiceofferingid(v string) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ p.p["serviceofferingid"] = v
+}
+
+func (p *ListVolumesMetricsParams) ResetServiceofferingid() {
+ if p.p != nil && p.p["serviceofferingid"] != nil {
+ delete(p.p, "serviceofferingid")
+ }
+}
+
+func (p *ListVolumesMetricsParams) GetServiceofferingid() (string, bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ value, ok := p.p["serviceofferingid"].(string)
+ return value, ok
+}
+
func (p *ListVolumesMetricsParams) SetState(v string) {
if p.p == nil {
p.p = make(map[string]interface{})
@@ -3319,76 +3442,81 @@ type ListVolumesMetricsResponse struct {
}
type VolumesMetric struct {
- Account string `json:"account"`
- Attached string `json:"attached"`
- Chaininfo string `json:"chaininfo"`
- Clusterid string `json:"clusterid"`
- Clustername string `json:"clustername"`
- Created string `json:"created"`
- Destroyed bool `json:"destroyed"`
- Deviceid int64 `json:"deviceid"`
- DiskBytesReadRate int64 `json:"diskBytesReadRate"`
- DiskBytesWriteRate int64 `json:"diskBytesWriteRate"`
- DiskIopsReadRate int64 `json:"diskIopsReadRate"`
- DiskIopsWriteRate int64 `json:"diskIopsWriteRate"`
- Diskiopstotal int64 `json:"diskiopstotal"`
- Diskioread int64 `json:"diskioread"`
- Diskiowrite int64 `json:"diskiowrite"`
- Diskkbsread int64 `json:"diskkbsread"`
- Diskkbswrite int64 `json:"diskkbswrite"`
- Diskofferingdisplaytext string `json:"diskofferingdisplaytext"`
- Diskofferingid string `json:"diskofferingid"`
- Diskofferingname string `json:"diskofferingname"`
- Displayvolume bool `json:"displayvolume"`
- Domain string `json:"domain"`
- Domainid string `json:"domainid"`
- Externaluuid string `json:"externaluuid"`
- Hasannotations bool `json:"hasannotations"`
- Hypervisor string `json:"hypervisor"`
- Id string `json:"id"`
- Isextractable bool `json:"isextractable"`
- Isodisplaytext string `json:"isodisplaytext"`
- Isoid string `json:"isoid"`
- Isoname string `json:"isoname"`
- JobID string `json:"jobid"`
- Jobstatus int `json:"jobstatus"`
- Maxiops int64 `json:"maxiops"`
- Miniops int64 `json:"miniops"`
- Name string `json:"name"`
- Path string `json:"path"`
- Physicalsize int64 `json:"physicalsize"`
- Podid string `json:"podid"`
- Podname string `json:"podname"`
- Project string `json:"project"`
- Projectid string `json:"projectid"`
- Provisioningtype string `json:"provisioningtype"`
- Quiescevm bool `json:"quiescevm"`
- Serviceofferingdisplaytext string `json:"serviceofferingdisplaytext"`
- Serviceofferingid string `json:"serviceofferingid"`
- Serviceofferingname string `json:"serviceofferingname"`
- Size int64 `json:"size"`
- Sizegb string `json:"sizegb"`
- Snapshotid string `json:"snapshotid"`
- State string `json:"state"`
- Status string `json:"status"`
- Storage string `json:"storage"`
- Storageid string `json:"storageid"`
- Storagetype string `json:"storagetype"`
- Supportsstoragesnapshot bool `json:"supportsstoragesnapshot"`
- Tags []Tags `json:"tags"`
- Templatedisplaytext string `json:"templatedisplaytext"`
- Templateid string `json:"templateid"`
- Templatename string `json:"templatename"`
- Type string `json:"type"`
- Utilization string `json:"utilization"`
- Virtualmachineid string `json:"virtualmachineid"`
- Virtualsize int64 `json:"virtualsize"`
- Vmdisplayname string `json:"vmdisplayname"`
- Vmname string `json:"vmname"`
- Vmstate string `json:"vmstate"`
- Vmtype string `json:"vmtype"`
- Zoneid string `json:"zoneid"`
- Zonename string `json:"zonename"`
+ Account string `json:"account"`
+ Attached string `json:"attached"`
+ Chaininfo string `json:"chaininfo"`
+ Clusterid string `json:"clusterid"`
+ Clustername string `json:"clustername"`
+ Created string `json:"created"`
+ Deleteprotection bool `json:"deleteprotection"`
+ Destroyed bool `json:"destroyed"`
+ Deviceid int64 `json:"deviceid"`
+ DiskBytesReadRate int64 `json:"diskBytesReadRate"`
+ DiskBytesWriteRate int64 `json:"diskBytesWriteRate"`
+ DiskIopsReadRate int64 `json:"diskIopsReadRate"`
+ DiskIopsWriteRate int64 `json:"diskIopsWriteRate"`
+ Diskiopstotal int64 `json:"diskiopstotal"`
+ Diskioread int64 `json:"diskioread"`
+ Diskiowrite int64 `json:"diskiowrite"`
+ Diskkbsread int64 `json:"diskkbsread"`
+ Diskkbswrite int64 `json:"diskkbswrite"`
+ Diskofferingdisplaytext string `json:"diskofferingdisplaytext"`
+ Diskofferingid string `json:"diskofferingid"`
+ Diskofferingname string `json:"diskofferingname"`
+ Displayvolume bool `json:"displayvolume"`
+ Domain string `json:"domain"`
+ Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
+ Encryptformat string `json:"encryptformat"`
+ Externaluuid string `json:"externaluuid"`
+ Hasannotations bool `json:"hasannotations"`
+ Hypervisor string `json:"hypervisor"`
+ Id string `json:"id"`
+ Isextractable bool `json:"isextractable"`
+ Isodisplaytext string `json:"isodisplaytext"`
+ Isoid string `json:"isoid"`
+ Isoname string `json:"isoname"`
+ JobID string `json:"jobid"`
+ Jobstatus int `json:"jobstatus"`
+ Maxiops int64 `json:"maxiops"`
+ Miniops int64 `json:"miniops"`
+ Name string `json:"name"`
+ Path string `json:"path"`
+ Physicalsize int64 `json:"physicalsize"`
+ Podid string `json:"podid"`
+ Podname string `json:"podname"`
+ Project string `json:"project"`
+ Projectid string `json:"projectid"`
+ Provisioningtype string `json:"provisioningtype"`
+ Quiescevm bool `json:"quiescevm"`
+ Serviceofferingdisplaytext string `json:"serviceofferingdisplaytext"`
+ Serviceofferingid string `json:"serviceofferingid"`
+ Serviceofferingname string `json:"serviceofferingname"`
+ Size int64 `json:"size"`
+ Sizegb string `json:"sizegb"`
+ Snapshotid string `json:"snapshotid"`
+ State string `json:"state"`
+ Status string `json:"status"`
+ Storage string `json:"storage"`
+ Storageid string `json:"storageid"`
+ Storagetype string `json:"storagetype"`
+ Supportsstoragesnapshot bool `json:"supportsstoragesnapshot"`
+ Tags []Tags `json:"tags"`
+ Templatedisplaytext string `json:"templatedisplaytext"`
+ Templateid string `json:"templateid"`
+ Templatename string `json:"templatename"`
+ Type string `json:"type"`
+ Utilization string `json:"utilization"`
+ Virtualmachineid string `json:"virtualmachineid"`
+ Virtualsize int64 `json:"virtualsize"`
+ Vmdisplayname string `json:"vmdisplayname"`
+ Vmname string `json:"vmname"`
+ Vmstate string `json:"vmstate"`
+ Vmtype string `json:"vmtype"`
+ Volumecheckresult map[string]string `json:"volumecheckresult"`
+ Volumerepairresult map[string]string `json:"volumerepairresult"`
+ Zoneid string `json:"zoneid"`
+ Zonename string `json:"zonename"`
}
type MigrateVolumeParams struct {
@@ -3546,74 +3674,79 @@ func (s *VolumeService) MigrateVolume(p *MigrateVolumeParams) (*MigrateVolumeRes
}
type MigrateVolumeResponse struct {
- Account string `json:"account"`
- Attached string `json:"attached"`
- Chaininfo string `json:"chaininfo"`
- Clusterid string `json:"clusterid"`
- Clustername string `json:"clustername"`
- Created string `json:"created"`
- Destroyed bool `json:"destroyed"`
- Deviceid int64 `json:"deviceid"`
- DiskBytesReadRate int64 `json:"diskBytesReadRate"`
- DiskBytesWriteRate int64 `json:"diskBytesWriteRate"`
- DiskIopsReadRate int64 `json:"diskIopsReadRate"`
- DiskIopsWriteRate int64 `json:"diskIopsWriteRate"`
- Diskioread int64 `json:"diskioread"`
- Diskiowrite int64 `json:"diskiowrite"`
- Diskkbsread int64 `json:"diskkbsread"`
- Diskkbswrite int64 `json:"diskkbswrite"`
- Diskofferingdisplaytext string `json:"diskofferingdisplaytext"`
- Diskofferingid string `json:"diskofferingid"`
- Diskofferingname string `json:"diskofferingname"`
- Displayvolume bool `json:"displayvolume"`
- Domain string `json:"domain"`
- Domainid string `json:"domainid"`
- Externaluuid string `json:"externaluuid"`
- Hasannotations bool `json:"hasannotations"`
- Hypervisor string `json:"hypervisor"`
- Id string `json:"id"`
- Isextractable bool `json:"isextractable"`
- Isodisplaytext string `json:"isodisplaytext"`
- Isoid string `json:"isoid"`
- Isoname string `json:"isoname"`
- JobID string `json:"jobid"`
- Jobstatus int `json:"jobstatus"`
- Maxiops int64 `json:"maxiops"`
- Miniops int64 `json:"miniops"`
- Name string `json:"name"`
- Path string `json:"path"`
- Physicalsize int64 `json:"physicalsize"`
- Podid string `json:"podid"`
- Podname string `json:"podname"`
- Project string `json:"project"`
- Projectid string `json:"projectid"`
- Provisioningtype string `json:"provisioningtype"`
- Quiescevm bool `json:"quiescevm"`
- Serviceofferingdisplaytext string `json:"serviceofferingdisplaytext"`
- Serviceofferingid string `json:"serviceofferingid"`
- Serviceofferingname string `json:"serviceofferingname"`
- Size int64 `json:"size"`
- Snapshotid string `json:"snapshotid"`
- State string `json:"state"`
- Status string `json:"status"`
- Storage string `json:"storage"`
- Storageid string `json:"storageid"`
- Storagetype string `json:"storagetype"`
- Supportsstoragesnapshot bool `json:"supportsstoragesnapshot"`
- Tags []Tags `json:"tags"`
- Templatedisplaytext string `json:"templatedisplaytext"`
- Templateid string `json:"templateid"`
- Templatename string `json:"templatename"`
- Type string `json:"type"`
- Utilization string `json:"utilization"`
- Virtualmachineid string `json:"virtualmachineid"`
- Virtualsize int64 `json:"virtualsize"`
- Vmdisplayname string `json:"vmdisplayname"`
- Vmname string `json:"vmname"`
- Vmstate string `json:"vmstate"`
- Vmtype string `json:"vmtype"`
- Zoneid string `json:"zoneid"`
- Zonename string `json:"zonename"`
+ Account string `json:"account"`
+ Attached string `json:"attached"`
+ Chaininfo string `json:"chaininfo"`
+ Clusterid string `json:"clusterid"`
+ Clustername string `json:"clustername"`
+ Created string `json:"created"`
+ Deleteprotection bool `json:"deleteprotection"`
+ Destroyed bool `json:"destroyed"`
+ Deviceid int64 `json:"deviceid"`
+ DiskBytesReadRate int64 `json:"diskBytesReadRate"`
+ DiskBytesWriteRate int64 `json:"diskBytesWriteRate"`
+ DiskIopsReadRate int64 `json:"diskIopsReadRate"`
+ DiskIopsWriteRate int64 `json:"diskIopsWriteRate"`
+ Diskioread int64 `json:"diskioread"`
+ Diskiowrite int64 `json:"diskiowrite"`
+ Diskkbsread int64 `json:"diskkbsread"`
+ Diskkbswrite int64 `json:"diskkbswrite"`
+ Diskofferingdisplaytext string `json:"diskofferingdisplaytext"`
+ Diskofferingid string `json:"diskofferingid"`
+ Diskofferingname string `json:"diskofferingname"`
+ Displayvolume bool `json:"displayvolume"`
+ Domain string `json:"domain"`
+ Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
+ Encryptformat string `json:"encryptformat"`
+ Externaluuid string `json:"externaluuid"`
+ Hasannotations bool `json:"hasannotations"`
+ Hypervisor string `json:"hypervisor"`
+ Id string `json:"id"`
+ Isextractable bool `json:"isextractable"`
+ Isodisplaytext string `json:"isodisplaytext"`
+ Isoid string `json:"isoid"`
+ Isoname string `json:"isoname"`
+ JobID string `json:"jobid"`
+ Jobstatus int `json:"jobstatus"`
+ Maxiops int64 `json:"maxiops"`
+ Miniops int64 `json:"miniops"`
+ Name string `json:"name"`
+ Path string `json:"path"`
+ Physicalsize int64 `json:"physicalsize"`
+ Podid string `json:"podid"`
+ Podname string `json:"podname"`
+ Project string `json:"project"`
+ Projectid string `json:"projectid"`
+ Provisioningtype string `json:"provisioningtype"`
+ Quiescevm bool `json:"quiescevm"`
+ Serviceofferingdisplaytext string `json:"serviceofferingdisplaytext"`
+ Serviceofferingid string `json:"serviceofferingid"`
+ Serviceofferingname string `json:"serviceofferingname"`
+ Size int64 `json:"size"`
+ Snapshotid string `json:"snapshotid"`
+ State string `json:"state"`
+ Status string `json:"status"`
+ Storage string `json:"storage"`
+ Storageid string `json:"storageid"`
+ Storagetype string `json:"storagetype"`
+ Supportsstoragesnapshot bool `json:"supportsstoragesnapshot"`
+ Tags []Tags `json:"tags"`
+ Templatedisplaytext string `json:"templatedisplaytext"`
+ Templateid string `json:"templateid"`
+ Templatename string `json:"templatename"`
+ Type string `json:"type"`
+ Utilization string `json:"utilization"`
+ Virtualmachineid string `json:"virtualmachineid"`
+ Virtualsize int64 `json:"virtualsize"`
+ Vmdisplayname string `json:"vmdisplayname"`
+ Vmname string `json:"vmname"`
+ Vmstate string `json:"vmstate"`
+ Vmtype string `json:"vmtype"`
+ Volumecheckresult map[string]string `json:"volumecheckresult"`
+ Volumerepairresult map[string]string `json:"volumerepairresult"`
+ Zoneid string `json:"zoneid"`
+ Zonename string `json:"zonename"`
}
type RecoverVolumeParams struct {
@@ -3677,74 +3810,79 @@ func (s *VolumeService) RecoverVolume(p *RecoverVolumeParams) (*RecoverVolumeRes
}
type RecoverVolumeResponse struct {
- Account string `json:"account"`
- Attached string `json:"attached"`
- Chaininfo string `json:"chaininfo"`
- Clusterid string `json:"clusterid"`
- Clustername string `json:"clustername"`
- Created string `json:"created"`
- Destroyed bool `json:"destroyed"`
- Deviceid int64 `json:"deviceid"`
- DiskBytesReadRate int64 `json:"diskBytesReadRate"`
- DiskBytesWriteRate int64 `json:"diskBytesWriteRate"`
- DiskIopsReadRate int64 `json:"diskIopsReadRate"`
- DiskIopsWriteRate int64 `json:"diskIopsWriteRate"`
- Diskioread int64 `json:"diskioread"`
- Diskiowrite int64 `json:"diskiowrite"`
- Diskkbsread int64 `json:"diskkbsread"`
- Diskkbswrite int64 `json:"diskkbswrite"`
- Diskofferingdisplaytext string `json:"diskofferingdisplaytext"`
- Diskofferingid string `json:"diskofferingid"`
- Diskofferingname string `json:"diskofferingname"`
- Displayvolume bool `json:"displayvolume"`
- Domain string `json:"domain"`
- Domainid string `json:"domainid"`
- Externaluuid string `json:"externaluuid"`
- Hasannotations bool `json:"hasannotations"`
- Hypervisor string `json:"hypervisor"`
- Id string `json:"id"`
- Isextractable bool `json:"isextractable"`
- Isodisplaytext string `json:"isodisplaytext"`
- Isoid string `json:"isoid"`
- Isoname string `json:"isoname"`
- JobID string `json:"jobid"`
- Jobstatus int `json:"jobstatus"`
- Maxiops int64 `json:"maxiops"`
- Miniops int64 `json:"miniops"`
- Name string `json:"name"`
- Path string `json:"path"`
- Physicalsize int64 `json:"physicalsize"`
- Podid string `json:"podid"`
- Podname string `json:"podname"`
- Project string `json:"project"`
- Projectid string `json:"projectid"`
- Provisioningtype string `json:"provisioningtype"`
- Quiescevm bool `json:"quiescevm"`
- Serviceofferingdisplaytext string `json:"serviceofferingdisplaytext"`
- Serviceofferingid string `json:"serviceofferingid"`
- Serviceofferingname string `json:"serviceofferingname"`
- Size int64 `json:"size"`
- Snapshotid string `json:"snapshotid"`
- State string `json:"state"`
- Status string `json:"status"`
- Storage string `json:"storage"`
- Storageid string `json:"storageid"`
- Storagetype string `json:"storagetype"`
- Supportsstoragesnapshot bool `json:"supportsstoragesnapshot"`
- Tags []Tags `json:"tags"`
- Templatedisplaytext string `json:"templatedisplaytext"`
- Templateid string `json:"templateid"`
- Templatename string `json:"templatename"`
- Type string `json:"type"`
- Utilization string `json:"utilization"`
- Virtualmachineid string `json:"virtualmachineid"`
- Virtualsize int64 `json:"virtualsize"`
- Vmdisplayname string `json:"vmdisplayname"`
- Vmname string `json:"vmname"`
- Vmstate string `json:"vmstate"`
- Vmtype string `json:"vmtype"`
- Zoneid string `json:"zoneid"`
- Zonename string `json:"zonename"`
+ Account string `json:"account"`
+ Attached string `json:"attached"`
+ Chaininfo string `json:"chaininfo"`
+ Clusterid string `json:"clusterid"`
+ Clustername string `json:"clustername"`
+ Created string `json:"created"`
+ Deleteprotection bool `json:"deleteprotection"`
+ Destroyed bool `json:"destroyed"`
+ Deviceid int64 `json:"deviceid"`
+ DiskBytesReadRate int64 `json:"diskBytesReadRate"`
+ DiskBytesWriteRate int64 `json:"diskBytesWriteRate"`
+ DiskIopsReadRate int64 `json:"diskIopsReadRate"`
+ DiskIopsWriteRate int64 `json:"diskIopsWriteRate"`
+ Diskioread int64 `json:"diskioread"`
+ Diskiowrite int64 `json:"diskiowrite"`
+ Diskkbsread int64 `json:"diskkbsread"`
+ Diskkbswrite int64 `json:"diskkbswrite"`
+ Diskofferingdisplaytext string `json:"diskofferingdisplaytext"`
+ Diskofferingid string `json:"diskofferingid"`
+ Diskofferingname string `json:"diskofferingname"`
+ Displayvolume bool `json:"displayvolume"`
+ Domain string `json:"domain"`
+ Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
+ Encryptformat string `json:"encryptformat"`
+ Externaluuid string `json:"externaluuid"`
+ Hasannotations bool `json:"hasannotations"`
+ Hypervisor string `json:"hypervisor"`
+ Id string `json:"id"`
+ Isextractable bool `json:"isextractable"`
+ Isodisplaytext string `json:"isodisplaytext"`
+ Isoid string `json:"isoid"`
+ Isoname string `json:"isoname"`
+ JobID string `json:"jobid"`
+ Jobstatus int `json:"jobstatus"`
+ Maxiops int64 `json:"maxiops"`
+ Miniops int64 `json:"miniops"`
+ Name string `json:"name"`
+ Path string `json:"path"`
+ Physicalsize int64 `json:"physicalsize"`
+ Podid string `json:"podid"`
+ Podname string `json:"podname"`
+ Project string `json:"project"`
+ Projectid string `json:"projectid"`
+ Provisioningtype string `json:"provisioningtype"`
+ Quiescevm bool `json:"quiescevm"`
+ Serviceofferingdisplaytext string `json:"serviceofferingdisplaytext"`
+ Serviceofferingid string `json:"serviceofferingid"`
+ Serviceofferingname string `json:"serviceofferingname"`
+ Size int64 `json:"size"`
+ Snapshotid string `json:"snapshotid"`
+ State string `json:"state"`
+ Status string `json:"status"`
+ Storage string `json:"storage"`
+ Storageid string `json:"storageid"`
+ Storagetype string `json:"storagetype"`
+ Supportsstoragesnapshot bool `json:"supportsstoragesnapshot"`
+ Tags []Tags `json:"tags"`
+ Templatedisplaytext string `json:"templatedisplaytext"`
+ Templateid string `json:"templateid"`
+ Templatename string `json:"templatename"`
+ Type string `json:"type"`
+ Utilization string `json:"utilization"`
+ Virtualmachineid string `json:"virtualmachineid"`
+ Virtualsize int64 `json:"virtualsize"`
+ Vmdisplayname string `json:"vmdisplayname"`
+ Vmname string `json:"vmname"`
+ Vmstate string `json:"vmstate"`
+ Vmtype string `json:"vmtype"`
+ Volumecheckresult map[string]string `json:"volumecheckresult"`
+ Volumerepairresult map[string]string `json:"volumerepairresult"`
+ Zoneid string `json:"zoneid"`
+ Zonename string `json:"zonename"`
}
type ResizeVolumeParams struct {
@@ -3952,74 +4090,79 @@ func (s *VolumeService) ResizeVolume(p *ResizeVolumeParams) (*ResizeVolumeRespon
}
type ResizeVolumeResponse struct {
- Account string `json:"account"`
- Attached string `json:"attached"`
- Chaininfo string `json:"chaininfo"`
- Clusterid string `json:"clusterid"`
- Clustername string `json:"clustername"`
- Created string `json:"created"`
- Destroyed bool `json:"destroyed"`
- Deviceid int64 `json:"deviceid"`
- DiskBytesReadRate int64 `json:"diskBytesReadRate"`
- DiskBytesWriteRate int64 `json:"diskBytesWriteRate"`
- DiskIopsReadRate int64 `json:"diskIopsReadRate"`
- DiskIopsWriteRate int64 `json:"diskIopsWriteRate"`
- Diskioread int64 `json:"diskioread"`
- Diskiowrite int64 `json:"diskiowrite"`
- Diskkbsread int64 `json:"diskkbsread"`
- Diskkbswrite int64 `json:"diskkbswrite"`
- Diskofferingdisplaytext string `json:"diskofferingdisplaytext"`
- Diskofferingid string `json:"diskofferingid"`
- Diskofferingname string `json:"diskofferingname"`
- Displayvolume bool `json:"displayvolume"`
- Domain string `json:"domain"`
- Domainid string `json:"domainid"`
- Externaluuid string `json:"externaluuid"`
- Hasannotations bool `json:"hasannotations"`
- Hypervisor string `json:"hypervisor"`
- Id string `json:"id"`
- Isextractable bool `json:"isextractable"`
- Isodisplaytext string `json:"isodisplaytext"`
- Isoid string `json:"isoid"`
- Isoname string `json:"isoname"`
- JobID string `json:"jobid"`
- Jobstatus int `json:"jobstatus"`
- Maxiops int64 `json:"maxiops"`
- Miniops int64 `json:"miniops"`
- Name string `json:"name"`
- Path string `json:"path"`
- Physicalsize int64 `json:"physicalsize"`
- Podid string `json:"podid"`
- Podname string `json:"podname"`
- Project string `json:"project"`
- Projectid string `json:"projectid"`
- Provisioningtype string `json:"provisioningtype"`
- Quiescevm bool `json:"quiescevm"`
- Serviceofferingdisplaytext string `json:"serviceofferingdisplaytext"`
- Serviceofferingid string `json:"serviceofferingid"`
- Serviceofferingname string `json:"serviceofferingname"`
- Size int64 `json:"size"`
- Snapshotid string `json:"snapshotid"`
- State string `json:"state"`
- Status string `json:"status"`
- Storage string `json:"storage"`
- Storageid string `json:"storageid"`
- Storagetype string `json:"storagetype"`
- Supportsstoragesnapshot bool `json:"supportsstoragesnapshot"`
- Tags []Tags `json:"tags"`
- Templatedisplaytext string `json:"templatedisplaytext"`
- Templateid string `json:"templateid"`
- Templatename string `json:"templatename"`
- Type string `json:"type"`
- Utilization string `json:"utilization"`
- Virtualmachineid string `json:"virtualmachineid"`
- Virtualsize int64 `json:"virtualsize"`
- Vmdisplayname string `json:"vmdisplayname"`
- Vmname string `json:"vmname"`
- Vmstate string `json:"vmstate"`
- Vmtype string `json:"vmtype"`
- Zoneid string `json:"zoneid"`
- Zonename string `json:"zonename"`
+ Account string `json:"account"`
+ Attached string `json:"attached"`
+ Chaininfo string `json:"chaininfo"`
+ Clusterid string `json:"clusterid"`
+ Clustername string `json:"clustername"`
+ Created string `json:"created"`
+ Deleteprotection bool `json:"deleteprotection"`
+ Destroyed bool `json:"destroyed"`
+ Deviceid int64 `json:"deviceid"`
+ DiskBytesReadRate int64 `json:"diskBytesReadRate"`
+ DiskBytesWriteRate int64 `json:"diskBytesWriteRate"`
+ DiskIopsReadRate int64 `json:"diskIopsReadRate"`
+ DiskIopsWriteRate int64 `json:"diskIopsWriteRate"`
+ Diskioread int64 `json:"diskioread"`
+ Diskiowrite int64 `json:"diskiowrite"`
+ Diskkbsread int64 `json:"diskkbsread"`
+ Diskkbswrite int64 `json:"diskkbswrite"`
+ Diskofferingdisplaytext string `json:"diskofferingdisplaytext"`
+ Diskofferingid string `json:"diskofferingid"`
+ Diskofferingname string `json:"diskofferingname"`
+ Displayvolume bool `json:"displayvolume"`
+ Domain string `json:"domain"`
+ Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
+ Encryptformat string `json:"encryptformat"`
+ Externaluuid string `json:"externaluuid"`
+ Hasannotations bool `json:"hasannotations"`
+ Hypervisor string `json:"hypervisor"`
+ Id string `json:"id"`
+ Isextractable bool `json:"isextractable"`
+ Isodisplaytext string `json:"isodisplaytext"`
+ Isoid string `json:"isoid"`
+ Isoname string `json:"isoname"`
+ JobID string `json:"jobid"`
+ Jobstatus int `json:"jobstatus"`
+ Maxiops int64 `json:"maxiops"`
+ Miniops int64 `json:"miniops"`
+ Name string `json:"name"`
+ Path string `json:"path"`
+ Physicalsize int64 `json:"physicalsize"`
+ Podid string `json:"podid"`
+ Podname string `json:"podname"`
+ Project string `json:"project"`
+ Projectid string `json:"projectid"`
+ Provisioningtype string `json:"provisioningtype"`
+ Quiescevm bool `json:"quiescevm"`
+ Serviceofferingdisplaytext string `json:"serviceofferingdisplaytext"`
+ Serviceofferingid string `json:"serviceofferingid"`
+ Serviceofferingname string `json:"serviceofferingname"`
+ Size int64 `json:"size"`
+ Snapshotid string `json:"snapshotid"`
+ State string `json:"state"`
+ Status string `json:"status"`
+ Storage string `json:"storage"`
+ Storageid string `json:"storageid"`
+ Storagetype string `json:"storagetype"`
+ Supportsstoragesnapshot bool `json:"supportsstoragesnapshot"`
+ Tags []Tags `json:"tags"`
+ Templatedisplaytext string `json:"templatedisplaytext"`
+ Templateid string `json:"templateid"`
+ Templatename string `json:"templatename"`
+ Type string `json:"type"`
+ Utilization string `json:"utilization"`
+ Virtualmachineid string `json:"virtualmachineid"`
+ Virtualsize int64 `json:"virtualsize"`
+ Vmdisplayname string `json:"vmdisplayname"`
+ Vmname string `json:"vmname"`
+ Vmstate string `json:"vmstate"`
+ Vmtype string `json:"vmtype"`
+ Volumecheckresult map[string]string `json:"volumecheckresult"`
+ Volumerepairresult map[string]string `json:"volumerepairresult"`
+ Zoneid string `json:"zoneid"`
+ Zonename string `json:"zonename"`
}
type UpdateVolumeParams struct {
@@ -4037,6 +4180,10 @@ func (p *UpdateVolumeParams) toURLValues() url.Values {
if v, found := p.p["customid"]; found {
u.Set("customid", v.(string))
}
+ if v, found := p.p["deleteprotection"]; found {
+ vv := strconv.FormatBool(v.(bool))
+ u.Set("deleteprotection", vv)
+ }
if v, found := p.p["displayvolume"]; found {
vv := strconv.FormatBool(v.(bool))
u.Set("displayvolume", vv)
@@ -4101,6 +4248,27 @@ func (p *UpdateVolumeParams) GetCustomid() (string, bool) {
return value, ok
}
+func (p *UpdateVolumeParams) SetDeleteprotection(v bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ p.p["deleteprotection"] = v
+}
+
+func (p *UpdateVolumeParams) ResetDeleteprotection() {
+ if p.p != nil && p.p["deleteprotection"] != nil {
+ delete(p.p, "deleteprotection")
+ }
+}
+
+func (p *UpdateVolumeParams) GetDeleteprotection() (bool, bool) {
+ if p.p == nil {
+ p.p = make(map[string]interface{})
+ }
+ value, ok := p.p["deleteprotection"].(bool)
+ return value, ok
+}
+
func (p *UpdateVolumeParams) SetDisplayvolume(v bool) {
if p.p == nil {
p.p = make(map[string]interface{})
@@ -4271,74 +4439,79 @@ func (s *VolumeService) UpdateVolume(p *UpdateVolumeParams) (*UpdateVolumeRespon
}
type UpdateVolumeResponse struct {
- Account string `json:"account"`
- Attached string `json:"attached"`
- Chaininfo string `json:"chaininfo"`
- Clusterid string `json:"clusterid"`
- Clustername string `json:"clustername"`
- Created string `json:"created"`
- Destroyed bool `json:"destroyed"`
- Deviceid int64 `json:"deviceid"`
- DiskBytesReadRate int64 `json:"diskBytesReadRate"`
- DiskBytesWriteRate int64 `json:"diskBytesWriteRate"`
- DiskIopsReadRate int64 `json:"diskIopsReadRate"`
- DiskIopsWriteRate int64 `json:"diskIopsWriteRate"`
- Diskioread int64 `json:"diskioread"`
- Diskiowrite int64 `json:"diskiowrite"`
- Diskkbsread int64 `json:"diskkbsread"`
- Diskkbswrite int64 `json:"diskkbswrite"`
- Diskofferingdisplaytext string `json:"diskofferingdisplaytext"`
- Diskofferingid string `json:"diskofferingid"`
- Diskofferingname string `json:"diskofferingname"`
- Displayvolume bool `json:"displayvolume"`
- Domain string `json:"domain"`
- Domainid string `json:"domainid"`
- Externaluuid string `json:"externaluuid"`
- Hasannotations bool `json:"hasannotations"`
- Hypervisor string `json:"hypervisor"`
- Id string `json:"id"`
- Isextractable bool `json:"isextractable"`
- Isodisplaytext string `json:"isodisplaytext"`
- Isoid string `json:"isoid"`
- Isoname string `json:"isoname"`
- JobID string `json:"jobid"`
- Jobstatus int `json:"jobstatus"`
- Maxiops int64 `json:"maxiops"`
- Miniops int64 `json:"miniops"`
- Name string `json:"name"`
- Path string `json:"path"`
- Physicalsize int64 `json:"physicalsize"`
- Podid string `json:"podid"`
- Podname string `json:"podname"`
- Project string `json:"project"`
- Projectid string `json:"projectid"`
- Provisioningtype string `json:"provisioningtype"`
- Quiescevm bool `json:"quiescevm"`
- Serviceofferingdisplaytext string `json:"serviceofferingdisplaytext"`
- Serviceofferingid string `json:"serviceofferingid"`
- Serviceofferingname string `json:"serviceofferingname"`
- Size int64 `json:"size"`
- Snapshotid string `json:"snapshotid"`
- State string `json:"state"`
- Status string `json:"status"`
- Storage string `json:"storage"`
- Storageid string `json:"storageid"`
- Storagetype string `json:"storagetype"`
- Supportsstoragesnapshot bool `json:"supportsstoragesnapshot"`
- Tags []Tags `json:"tags"`
- Templatedisplaytext string `json:"templatedisplaytext"`
- Templateid string `json:"templateid"`
- Templatename string `json:"templatename"`
- Type string `json:"type"`
- Utilization string `json:"utilization"`
- Virtualmachineid string `json:"virtualmachineid"`
- Virtualsize int64 `json:"virtualsize"`
- Vmdisplayname string `json:"vmdisplayname"`
- Vmname string `json:"vmname"`
- Vmstate string `json:"vmstate"`
- Vmtype string `json:"vmtype"`
- Zoneid string `json:"zoneid"`
- Zonename string `json:"zonename"`
+ Account string `json:"account"`
+ Attached string `json:"attached"`
+ Chaininfo string `json:"chaininfo"`
+ Clusterid string `json:"clusterid"`
+ Clustername string `json:"clustername"`
+ Created string `json:"created"`
+ Deleteprotection bool `json:"deleteprotection"`
+ Destroyed bool `json:"destroyed"`
+ Deviceid int64 `json:"deviceid"`
+ DiskBytesReadRate int64 `json:"diskBytesReadRate"`
+ DiskBytesWriteRate int64 `json:"diskBytesWriteRate"`
+ DiskIopsReadRate int64 `json:"diskIopsReadRate"`
+ DiskIopsWriteRate int64 `json:"diskIopsWriteRate"`
+ Diskioread int64 `json:"diskioread"`
+ Diskiowrite int64 `json:"diskiowrite"`
+ Diskkbsread int64 `json:"diskkbsread"`
+ Diskkbswrite int64 `json:"diskkbswrite"`
+ Diskofferingdisplaytext string `json:"diskofferingdisplaytext"`
+ Diskofferingid string `json:"diskofferingid"`
+ Diskofferingname string `json:"diskofferingname"`
+ Displayvolume bool `json:"displayvolume"`
+ Domain string `json:"domain"`
+ Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
+ Encryptformat string `json:"encryptformat"`
+ Externaluuid string `json:"externaluuid"`
+ Hasannotations bool `json:"hasannotations"`
+ Hypervisor string `json:"hypervisor"`
+ Id string `json:"id"`
+ Isextractable bool `json:"isextractable"`
+ Isodisplaytext string `json:"isodisplaytext"`
+ Isoid string `json:"isoid"`
+ Isoname string `json:"isoname"`
+ JobID string `json:"jobid"`
+ Jobstatus int `json:"jobstatus"`
+ Maxiops int64 `json:"maxiops"`
+ Miniops int64 `json:"miniops"`
+ Name string `json:"name"`
+ Path string `json:"path"`
+ Physicalsize int64 `json:"physicalsize"`
+ Podid string `json:"podid"`
+ Podname string `json:"podname"`
+ Project string `json:"project"`
+ Projectid string `json:"projectid"`
+ Provisioningtype string `json:"provisioningtype"`
+ Quiescevm bool `json:"quiescevm"`
+ Serviceofferingdisplaytext string `json:"serviceofferingdisplaytext"`
+ Serviceofferingid string `json:"serviceofferingid"`
+ Serviceofferingname string `json:"serviceofferingname"`
+ Size int64 `json:"size"`
+ Snapshotid string `json:"snapshotid"`
+ State string `json:"state"`
+ Status string `json:"status"`
+ Storage string `json:"storage"`
+ Storageid string `json:"storageid"`
+ Storagetype string `json:"storagetype"`
+ Supportsstoragesnapshot bool `json:"supportsstoragesnapshot"`
+ Tags []Tags `json:"tags"`
+ Templatedisplaytext string `json:"templatedisplaytext"`
+ Templateid string `json:"templateid"`
+ Templatename string `json:"templatename"`
+ Type string `json:"type"`
+ Utilization string `json:"utilization"`
+ Virtualmachineid string `json:"virtualmachineid"`
+ Virtualsize int64 `json:"virtualsize"`
+ Vmdisplayname string `json:"vmdisplayname"`
+ Vmname string `json:"vmname"`
+ Vmstate string `json:"vmstate"`
+ Vmtype string `json:"vmtype"`
+ Volumecheckresult map[string]string `json:"volumecheckresult"`
+ Volumerepairresult map[string]string `json:"volumerepairresult"`
+ Zoneid string `json:"zoneid"`
+ Zonename string `json:"zonename"`
}
type UploadVolumeParams struct {
@@ -4641,74 +4814,79 @@ func (s *VolumeService) UploadVolume(p *UploadVolumeParams) (*UploadVolumeRespon
}
type UploadVolumeResponse struct {
- Account string `json:"account"`
- Attached string `json:"attached"`
- Chaininfo string `json:"chaininfo"`
- Clusterid string `json:"clusterid"`
- Clustername string `json:"clustername"`
- Created string `json:"created"`
- Destroyed bool `json:"destroyed"`
- Deviceid int64 `json:"deviceid"`
- DiskBytesReadRate int64 `json:"diskBytesReadRate"`
- DiskBytesWriteRate int64 `json:"diskBytesWriteRate"`
- DiskIopsReadRate int64 `json:"diskIopsReadRate"`
- DiskIopsWriteRate int64 `json:"diskIopsWriteRate"`
- Diskioread int64 `json:"diskioread"`
- Diskiowrite int64 `json:"diskiowrite"`
- Diskkbsread int64 `json:"diskkbsread"`
- Diskkbswrite int64 `json:"diskkbswrite"`
- Diskofferingdisplaytext string `json:"diskofferingdisplaytext"`
- Diskofferingid string `json:"diskofferingid"`
- Diskofferingname string `json:"diskofferingname"`
- Displayvolume bool `json:"displayvolume"`
- Domain string `json:"domain"`
- Domainid string `json:"domainid"`
- Externaluuid string `json:"externaluuid"`
- Hasannotations bool `json:"hasannotations"`
- Hypervisor string `json:"hypervisor"`
- Id string `json:"id"`
- Isextractable bool `json:"isextractable"`
- Isodisplaytext string `json:"isodisplaytext"`
- Isoid string `json:"isoid"`
- Isoname string `json:"isoname"`
- JobID string `json:"jobid"`
- Jobstatus int `json:"jobstatus"`
- Maxiops int64 `json:"maxiops"`
- Miniops int64 `json:"miniops"`
- Name string `json:"name"`
- Path string `json:"path"`
- Physicalsize int64 `json:"physicalsize"`
- Podid string `json:"podid"`
- Podname string `json:"podname"`
- Project string `json:"project"`
- Projectid string `json:"projectid"`
- Provisioningtype string `json:"provisioningtype"`
- Quiescevm bool `json:"quiescevm"`
- Serviceofferingdisplaytext string `json:"serviceofferingdisplaytext"`
- Serviceofferingid string `json:"serviceofferingid"`
- Serviceofferingname string `json:"serviceofferingname"`
- Size int64 `json:"size"`
- Snapshotid string `json:"snapshotid"`
- State string `json:"state"`
- Status string `json:"status"`
- Storage string `json:"storage"`
- Storageid string `json:"storageid"`
- Storagetype string `json:"storagetype"`
- Supportsstoragesnapshot bool `json:"supportsstoragesnapshot"`
- Tags []Tags `json:"tags"`
- Templatedisplaytext string `json:"templatedisplaytext"`
- Templateid string `json:"templateid"`
- Templatename string `json:"templatename"`
- Type string `json:"type"`
- Utilization string `json:"utilization"`
- Virtualmachineid string `json:"virtualmachineid"`
- Virtualsize int64 `json:"virtualsize"`
- Vmdisplayname string `json:"vmdisplayname"`
- Vmname string `json:"vmname"`
- Vmstate string `json:"vmstate"`
- Vmtype string `json:"vmtype"`
- Zoneid string `json:"zoneid"`
- Zonename string `json:"zonename"`
+ Account string `json:"account"`
+ Attached string `json:"attached"`
+ Chaininfo string `json:"chaininfo"`
+ Clusterid string `json:"clusterid"`
+ Clustername string `json:"clustername"`
+ Created string `json:"created"`
+ Deleteprotection bool `json:"deleteprotection"`
+ Destroyed bool `json:"destroyed"`
+ Deviceid int64 `json:"deviceid"`
+ DiskBytesReadRate int64 `json:"diskBytesReadRate"`
+ DiskBytesWriteRate int64 `json:"diskBytesWriteRate"`
+ DiskIopsReadRate int64 `json:"diskIopsReadRate"`
+ DiskIopsWriteRate int64 `json:"diskIopsWriteRate"`
+ Diskioread int64 `json:"diskioread"`
+ Diskiowrite int64 `json:"diskiowrite"`
+ Diskkbsread int64 `json:"diskkbsread"`
+ Diskkbswrite int64 `json:"diskkbswrite"`
+ Diskofferingdisplaytext string `json:"diskofferingdisplaytext"`
+ Diskofferingid string `json:"diskofferingid"`
+ Diskofferingname string `json:"diskofferingname"`
+ Displayvolume bool `json:"displayvolume"`
+ Domain string `json:"domain"`
+ Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
+ Encryptformat string `json:"encryptformat"`
+ Externaluuid string `json:"externaluuid"`
+ Hasannotations bool `json:"hasannotations"`
+ Hypervisor string `json:"hypervisor"`
+ Id string `json:"id"`
+ Isextractable bool `json:"isextractable"`
+ Isodisplaytext string `json:"isodisplaytext"`
+ Isoid string `json:"isoid"`
+ Isoname string `json:"isoname"`
+ JobID string `json:"jobid"`
+ Jobstatus int `json:"jobstatus"`
+ Maxiops int64 `json:"maxiops"`
+ Miniops int64 `json:"miniops"`
+ Name string `json:"name"`
+ Path string `json:"path"`
+ Physicalsize int64 `json:"physicalsize"`
+ Podid string `json:"podid"`
+ Podname string `json:"podname"`
+ Project string `json:"project"`
+ Projectid string `json:"projectid"`
+ Provisioningtype string `json:"provisioningtype"`
+ Quiescevm bool `json:"quiescevm"`
+ Serviceofferingdisplaytext string `json:"serviceofferingdisplaytext"`
+ Serviceofferingid string `json:"serviceofferingid"`
+ Serviceofferingname string `json:"serviceofferingname"`
+ Size int64 `json:"size"`
+ Snapshotid string `json:"snapshotid"`
+ State string `json:"state"`
+ Status string `json:"status"`
+ Storage string `json:"storage"`
+ Storageid string `json:"storageid"`
+ Storagetype string `json:"storagetype"`
+ Supportsstoragesnapshot bool `json:"supportsstoragesnapshot"`
+ Tags []Tags `json:"tags"`
+ Templatedisplaytext string `json:"templatedisplaytext"`
+ Templateid string `json:"templateid"`
+ Templatename string `json:"templatename"`
+ Type string `json:"type"`
+ Utilization string `json:"utilization"`
+ Virtualmachineid string `json:"virtualmachineid"`
+ Virtualsize int64 `json:"virtualsize"`
+ Vmdisplayname string `json:"vmdisplayname"`
+ Vmname string `json:"vmname"`
+ Vmstate string `json:"vmstate"`
+ Vmtype string `json:"vmtype"`
+ Volumecheckresult map[string]string `json:"volumecheckresult"`
+ Volumerepairresult map[string]string `json:"volumerepairresult"`
+ Zoneid string `json:"zoneid"`
+ Zonename string `json:"zonename"`
}
type ChangeOfferingForVolumeParams struct {
@@ -4942,72 +5120,77 @@ func (s *VolumeService) ChangeOfferingForVolume(p *ChangeOfferingForVolumeParams
}
type ChangeOfferingForVolumeResponse struct {
- Account string `json:"account"`
- Attached string `json:"attached"`
- Chaininfo string `json:"chaininfo"`
- Clusterid string `json:"clusterid"`
- Clustername string `json:"clustername"`
- Created string `json:"created"`
- Destroyed bool `json:"destroyed"`
- Deviceid int64 `json:"deviceid"`
- DiskBytesReadRate int64 `json:"diskBytesReadRate"`
- DiskBytesWriteRate int64 `json:"diskBytesWriteRate"`
- DiskIopsReadRate int64 `json:"diskIopsReadRate"`
- DiskIopsWriteRate int64 `json:"diskIopsWriteRate"`
- Diskioread int64 `json:"diskioread"`
- Diskiowrite int64 `json:"diskiowrite"`
- Diskkbsread int64 `json:"diskkbsread"`
- Diskkbswrite int64 `json:"diskkbswrite"`
- Diskofferingdisplaytext string `json:"diskofferingdisplaytext"`
- Diskofferingid string `json:"diskofferingid"`
- Diskofferingname string `json:"diskofferingname"`
- Displayvolume bool `json:"displayvolume"`
- Domain string `json:"domain"`
- Domainid string `json:"domainid"`
- Externaluuid string `json:"externaluuid"`
- Hasannotations bool `json:"hasannotations"`
- Hypervisor string `json:"hypervisor"`
- Id string `json:"id"`
- Isextractable bool `json:"isextractable"`
- Isodisplaytext string `json:"isodisplaytext"`
- Isoid string `json:"isoid"`
- Isoname string `json:"isoname"`
- JobID string `json:"jobid"`
- Jobstatus int `json:"jobstatus"`
- Maxiops int64 `json:"maxiops"`
- Miniops int64 `json:"miniops"`
- Name string `json:"name"`
- Path string `json:"path"`
- Physicalsize int64 `json:"physicalsize"`
- Podid string `json:"podid"`
- Podname string `json:"podname"`
- Project string `json:"project"`
- Projectid string `json:"projectid"`
- Provisioningtype string `json:"provisioningtype"`
- Quiescevm bool `json:"quiescevm"`
- Serviceofferingdisplaytext string `json:"serviceofferingdisplaytext"`
- Serviceofferingid string `json:"serviceofferingid"`
- Serviceofferingname string `json:"serviceofferingname"`
- Size int64 `json:"size"`
- Snapshotid string `json:"snapshotid"`
- State string `json:"state"`
- Status string `json:"status"`
- Storage string `json:"storage"`
- Storageid string `json:"storageid"`
- Storagetype string `json:"storagetype"`
- Supportsstoragesnapshot bool `json:"supportsstoragesnapshot"`
- Tags []Tags `json:"tags"`
- Templatedisplaytext string `json:"templatedisplaytext"`
- Templateid string `json:"templateid"`
- Templatename string `json:"templatename"`
- Type string `json:"type"`
- Utilization string `json:"utilization"`
- Virtualmachineid string `json:"virtualmachineid"`
- Virtualsize int64 `json:"virtualsize"`
- Vmdisplayname string `json:"vmdisplayname"`
- Vmname string `json:"vmname"`
- Vmstate string `json:"vmstate"`
- Vmtype string `json:"vmtype"`
- Zoneid string `json:"zoneid"`
- Zonename string `json:"zonename"`
+ Account string `json:"account"`
+ Attached string `json:"attached"`
+ Chaininfo string `json:"chaininfo"`
+ Clusterid string `json:"clusterid"`
+ Clustername string `json:"clustername"`
+ Created string `json:"created"`
+ Deleteprotection bool `json:"deleteprotection"`
+ Destroyed bool `json:"destroyed"`
+ Deviceid int64 `json:"deviceid"`
+ DiskBytesReadRate int64 `json:"diskBytesReadRate"`
+ DiskBytesWriteRate int64 `json:"diskBytesWriteRate"`
+ DiskIopsReadRate int64 `json:"diskIopsReadRate"`
+ DiskIopsWriteRate int64 `json:"diskIopsWriteRate"`
+ Diskioread int64 `json:"diskioread"`
+ Diskiowrite int64 `json:"diskiowrite"`
+ Diskkbsread int64 `json:"diskkbsread"`
+ Diskkbswrite int64 `json:"diskkbswrite"`
+ Diskofferingdisplaytext string `json:"diskofferingdisplaytext"`
+ Diskofferingid string `json:"diskofferingid"`
+ Diskofferingname string `json:"diskofferingname"`
+ Displayvolume bool `json:"displayvolume"`
+ Domain string `json:"domain"`
+ Domainid string `json:"domainid"`
+ Domainpath string `json:"domainpath"`
+ Encryptformat string `json:"encryptformat"`
+ Externaluuid string `json:"externaluuid"`
+ Hasannotations bool `json:"hasannotations"`
+ Hypervisor string `json:"hypervisor"`
+ Id string `json:"id"`
+ Isextractable bool `json:"isextractable"`
+ Isodisplaytext string `json:"isodisplaytext"`
+ Isoid string `json:"isoid"`
+ Isoname string `json:"isoname"`
+ JobID string `json:"jobid"`
+ Jobstatus int `json:"jobstatus"`
+ Maxiops int64 `json:"maxiops"`
+ Miniops int64 `json:"miniops"`
+ Name string `json:"name"`
+ Path string `json:"path"`
+ Physicalsize int64 `json:"physicalsize"`
+ Podid string `json:"podid"`
+ Podname string `json:"podname"`
+ Project string `json:"project"`
+ Projectid string `json:"projectid"`
+ Provisioningtype string `json:"provisioningtype"`
+ Quiescevm bool `json:"quiescevm"`
+ Serviceofferingdisplaytext string `json:"serviceofferingdisplaytext"`
+ Serviceofferingid string `json:"serviceofferingid"`
+ Serviceofferingname string `json:"serviceofferingname"`
+ Size int64 `json:"size"`
+ Snapshotid string `json:"snapshotid"`
+ State string `json:"state"`
+ Status string `json:"status"`
+ Storage string `json:"storage"`
+ Storageid string `json:"storageid"`
+ Storagetype string `json:"storagetype"`
+ Supportsstoragesnapshot bool `json:"supportsstoragesnapshot"`
+ Tags []Tags `json:"tags"`
+ Templatedisplaytext string `json:"templatedisplaytext"`
+ Templateid string `json:"templateid"`
+ Templatename string `json:"templatename"`
+ Type string `json:"type"`
+ Utilization string `json:"utilization"`
+ Virtualmachineid string `json:"virtualmachineid"`
+ Virtualsize int64 `json:"virtualsize"`
+ Vmdisplayname string `json:"vmdisplayname"`
+ Vmname string `json:"vmname"`
+ Vmstate string `json:"vmstate"`
+ Vmtype string `json:"vmtype"`
+ Volumecheckresult map[string]string `json:"volumecheckresult"`
+ Volumerepairresult map[string]string `json:"volumerepairresult"`
+ Zoneid string `json:"zoneid"`
+ Zonename string `json:"zonename"`
}
diff --git a/cloudstack/ZoneService.go b/cloudstack/ZoneService.go
index 954c5c3..24c1452 100644
--- a/cloudstack/ZoneService.go
+++ b/cloudstack/ZoneService.go
@@ -469,6 +469,7 @@ func (s *ZoneService) CreateZone(p *CreateZoneParams) (*CreateZoneResponse, erro
type CreateZoneResponse struct {
Allocationstate string `json:"allocationstate"`
Allowuserspecifyvrmtu bool `json:"allowuserspecifyvrmtu"`
+ Asnrange string `json:"asnrange"`
Capacity []CreateZoneResponseCapacity `json:"capacity"`
Description string `json:"description"`
Dhcpprovider string `json:"dhcpprovider"`
@@ -486,6 +487,8 @@ type CreateZoneResponse struct {
Internaldns2 string `json:"internaldns2"`
Ip6dns1 string `json:"ip6dns1"`
Ip6dns2 string `json:"ip6dns2"`
+ Ismultiarch bool `json:"ismultiarch"`
+ Isnsxenabled bool `json:"isnsxenabled"`
JobID string `json:"jobid"`
Jobstatus int `json:"jobstatus"`
Localstorageenabled bool `json:"localstorageenabled"`
@@ -510,6 +513,7 @@ type CreateZoneResponseCapacity struct {
Percentused string `json:"percentused"`
Podid string `json:"podid"`
Podname string `json:"podname"`
+ Tag string `json:"tag"`
Type int `json:"type"`
Zoneid string `json:"zoneid"`
Zonename string `json:"zonename"`
@@ -1750,6 +1754,7 @@ type ListZonesResponse struct {
type Zone struct {
Allocationstate string `json:"allocationstate"`
Allowuserspecifyvrmtu bool `json:"allowuserspecifyvrmtu"`
+ Asnrange string `json:"asnrange"`
Capacity []ZoneCapacity `json:"capacity"`
Description string `json:"description"`
Dhcpprovider string `json:"dhcpprovider"`
@@ -1767,6 +1772,8 @@ type Zone struct {
Internaldns2 string `json:"internaldns2"`
Ip6dns1 string `json:"ip6dns1"`
Ip6dns2 string `json:"ip6dns2"`
+ Ismultiarch bool `json:"ismultiarch"`
+ Isnsxenabled bool `json:"isnsxenabled"`
JobID string `json:"jobid"`
Jobstatus int `json:"jobstatus"`
Localstorageenabled bool `json:"localstorageenabled"`
@@ -1791,6 +1798,7 @@ type ZoneCapacity struct {
Percentused string `json:"percentused"`
Podid string `json:"podid"`
Podname string `json:"podname"`
+ Tag string `json:"tag"`
Type int `json:"type"`
Zoneid string `json:"zoneid"`
Zonename string `json:"zonename"`
@@ -2220,6 +2228,7 @@ type ListZonesMetricsResponse struct {
type ZonesMetric struct {
Allocationstate string `json:"allocationstate"`
Allowuserspecifyvrmtu bool `json:"allowuserspecifyvrmtu"`
+ Asnrange string `json:"asnrange"`
Capacity []ZonesMetricCapacity `json:"capacity"`
Clusters string `json:"clusters"`
Cpuallocated string `json:"cpuallocated"`
@@ -2246,6 +2255,8 @@ type ZonesMetric struct {
Internaldns2 string `json:"internaldns2"`
Ip6dns1 string `json:"ip6dns1"`
Ip6dns2 string `json:"ip6dns2"`
+ Ismultiarch bool `json:"ismultiarch"`
+ Isnsxenabled bool `json:"isnsxenabled"`
JobID string `json:"jobid"`
Jobstatus int `json:"jobstatus"`
Localstorageenabled bool `json:"localstorageenabled"`
@@ -2279,6 +2290,7 @@ type ZonesMetricCapacity struct {
Percentused string `json:"percentused"`
Podid string `json:"podid"`
Podname string `json:"podname"`
+ Tag string `json:"tag"`
Type int `json:"type"`
Zoneid string `json:"zoneid"`
Zonename string `json:"zonename"`
@@ -2821,6 +2833,7 @@ func (s *ZoneService) UpdateZone(p *UpdateZoneParams) (*UpdateZoneResponse, erro
type UpdateZoneResponse struct {
Allocationstate string `json:"allocationstate"`
Allowuserspecifyvrmtu bool `json:"allowuserspecifyvrmtu"`
+ Asnrange string `json:"asnrange"`
Capacity []UpdateZoneResponseCapacity `json:"capacity"`
Description string `json:"description"`
Dhcpprovider string `json:"dhcpprovider"`
@@ -2838,6 +2851,8 @@ type UpdateZoneResponse struct {
Internaldns2 string `json:"internaldns2"`
Ip6dns1 string `json:"ip6dns1"`
Ip6dns2 string `json:"ip6dns2"`
+ Ismultiarch bool `json:"ismultiarch"`
+ Isnsxenabled bool `json:"isnsxenabled"`
JobID string `json:"jobid"`
Jobstatus int `json:"jobstatus"`
Localstorageenabled bool `json:"localstorageenabled"`
@@ -2862,6 +2877,7 @@ type UpdateZoneResponseCapacity struct {
Percentused string `json:"percentused"`
Podid string `json:"podid"`
Podname string `json:"podname"`
+ Tag string `json:"tag"`
Type int `json:"type"`
Zoneid string `json:"zoneid"`
Zonename string `json:"zonename"`
diff --git a/generate/listApis.json b/generate/listApis.json
index bbc5c76..48b5266 100644
--- a/generate/listApis.json
+++ b/generate/listApis.json
@@ -1,62 +1,26 @@
{
"api": [
{
- "description": "Lists the resource icon for the specified resource(s)",
- "isasync": false,
- "name": "listResourceIcon",
+ "description": "Creates VPC offering",
+ "isasync": true,
+ "name": "createVPCOffering",
"params": [
{
- "description": "type of the resource",
+ "description": "true if network offering is meant to be used for NSX, false otherwise.",
"length": 255,
- "name": "resourcetype",
- "required": true,
- "type": "string"
+ "name": "fornsx",
+ "required": false,
+ "since": "4.20.0",
+ "type": "boolean"
},
{
- "description": "list of resources to upload the icon/image for",
+ "description": "the ID of the service offering for the VPC router appliance",
"length": 255,
- "name": "resourceids",
- "required": true,
- "type": "list"
- }
- ],
- "related": "",
- "response": [
- {
- "description": "id of the resource",
- "name": "resourceid",
- "type": "string"
- },
- {
- "description": "base64 representation of resource icon",
- "name": "base64image",
- "type": "string"
- },
- {},
- {},
- {
- "description": "the UUID of the latest async job acting on this object",
- "name": "jobid",
- "type": "string"
- },
- {
- "description": "resource type",
- "name": "resourcetype",
- "type": "resourceobjecttype"
+ "name": "serviceofferingid",
+ "related": "createServiceOffering,updateServiceOffering,listServiceOfferings",
+ "required": false,
+ "type": "uuid"
},
- {
- "description": "the current status of the latest async job acting on this object",
- "name": "jobstatus",
- "type": "integer"
- }
- ],
- "since": "4.16.0.0"
- },
- {
- "description": "Creates VPC offering",
- "isasync": true,
- "name": "createVPCOffering",
- "params": [
{
"description": "the display text of the vpc offering, defaults to the 'name'",
"length": 255,
@@ -65,27 +29,26 @@
"type": "string"
},
{
- "description": "desired service capabilities as part of vpc offering",
+ "description": "the ID of the containing domain(s), null for public offerings",
"length": 255,
- "name": "servicecapabilitylist",
+ "name": "domainid",
+ "related": "createDomain,listDomainChildren,listDomains,listDomains,updateDomain,moveDomain",
"required": false,
- "since": "4.4",
- "type": "map"
+ "type": "list"
},
{
- "description": "provider to service mapping. If not specified, the provider for the service will be mapped to the default provider on the physical network",
+ "description": "The internet protocol of the offering. Options are ipv4 and dualstack. Default is ipv4. dualstack will create an offering that supports both IPv4 and IPv6",
"length": 255,
- "name": "serviceproviderlist",
+ "name": "internetprotocol",
"required": false,
- "type": "map"
+ "since": "4.17.0",
+ "type": "string"
},
{
- "description": "the ID of the containing zone(s), null for public offerings",
+ "description": "services supported by the vpc offering",
"length": 255,
- "name": "zoneid",
- "related": "createZone,updateZone,listZones,listZones",
+ "name": "supportedservices",
"required": false,
- "since": "4.13",
"type": "list"
},
{
@@ -104,165 +67,99 @@
"type": "boolean"
},
{
- "description": "the ID of the containing domain(s), null for public offerings",
+ "description": "the ID of the containing zone(s), null for public offerings",
"length": 255,
- "name": "domainid",
- "related": "createDomain,listDomainChildren,listDomains,listDomains,updateDomain,moveDomain",
+ "name": "zoneid",
+ "related": "createZone,updateZone,listZones,listZones",
"required": false,
+ "since": "4.13",
"type": "list"
},
{
- "description": "The internet protocol of the offering. Options are ipv4 and dualstack. Default is ipv4. dualstack will create an offering that supports both IPv4 and IPv6",
+ "description": "Indicates the mode with which the network will operate. Valid option: NATTED or ROUTED",
"length": 255,
- "name": "internetprotocol",
+ "name": "networkmode",
"required": false,
- "since": "4.17.0",
+ "since": "4.20.0",
"type": "string"
},
{
- "description": "the ID of the service offering for the VPC router appliance",
+ "description": "the routing mode for the VPC offering. Supported types are: Static or Dynamic.",
"length": 255,
- "name": "serviceofferingid",
- "related": "createServiceOffering,updateServiceOffering,listServiceOfferings",
+ "name": "routingmode",
"required": false,
- "type": "uuid"
+ "since": "4.20.0",
+ "type": "string"
},
{
- "description": "services supported by the vpc offering",
+ "description": "true if network offering for NSX VPC offering supports Load balancer service.",
"length": 255,
- "name": "supportedservices",
- "required": true,
- "type": "list"
- }
- ],
- "related": "updateVPCOffering,listVPCOfferings",
- "response": [
- {
- "description": "the UUID of the latest async job acting on this object",
- "name": "jobid",
- "type": "string"
+ "name": "nsxsupportlb",
+ "required": false,
+ "since": "4.20.0",
+ "type": "boolean"
},
{
- "description": "an alternate display text of the vpc offering.",
- "name": "displaytext",
- "type": "string"
+ "description": "true if the VPC offering supports choosing AS number",
+ "length": 255,
+ "name": "specifyasnumber",
+ "required": false,
+ "since": "4.20.0",
+ "type": "boolean"
},
{
- "description": "the list of supported services",
- "name": "service",
- "response": [
- {
- "description": "the list of capabilities",
- "name": "capability",
- "response": [
- {
- "description": "the capability value",
- "name": "value",
- "type": "string"
- },
- {
- "description": "the capability name",
- "name": "name",
- "type": "string"
- },
- {
- "description": "can this service capability value can be choosable while creatine network offerings",
- "name": "canchooseservicecapability",
- "type": "boolean"
- }
- ],
- "type": "list"
- },
- {
- "description": "the service name",
- "name": "name",
- "type": "string"
- },
- {
- "description": "the service provider name",
- "name": "provider",
- "response": [
- {
- "description": "true if individual services can be enabled/disabled",
- "name": "canenableindividualservice",
- "type": "boolean"
- },
- {
- "description": "the destination physical network",
- "name": "destinationphysicalnetworkid",
- "type": "string"
- },
- {
- "description": "the physical network this belongs to",
- "name": "physicalnetworkid",
- "type": "string"
- },
- {
- "description": "state of the network provider",
- "name": "state",
- "type": "string"
- },
- {
- "description": "the provider name",
- "name": "name",
- "type": "string"
- },
- {
- "description": "uuid of the network provider",
- "name": "id",
- "type": "string"
- },
- {
- "description": "services for this provider",
- "name": "servicelist",
- "type": "list"
- }
- ],
- "type": "list"
- }
- ],
- "type": "list"
+ "description": "desired service capabilities as part of vpc offering",
+ "length": 255,
+ "name": "servicecapabilitylist",
+ "required": false,
+ "since": "4.4",
+ "type": "map"
},
- {},
{
- "description": " indicates if the vpc offering supports distributed router for one-hop forwarding",
- "name": "distributedvpcrouter",
- "type": "boolean"
- },
+ "description": "provider to service mapping. If not specified, the provider for the service will be mapped to the default provider on the physical network",
+ "length": 255,
+ "name": "serviceproviderlist",
+ "required": false,
+ "type": "map"
+ }
+ ],
+ "related": "updateVPCOffering,listVPCOfferings",
+ "response": [
{
- "description": "the zone ID(s) this disk offering belongs to. Ignore this information as it is not currently applicable.",
- "name": "zoneid",
+ "description": "the routing mode for the network offering, supported types are Static or Dynamic.",
+ "name": "routingmode",
"type": "string"
},
+ {},
{
- "description": "the domain name(s) this disk offering belongs to. Ignore this information as it is not currently applicable.",
- "name": "domain",
- "type": "string"
+ "description": "true if network offering supports choosing AS numbers",
+ "name": "specifyasnumber",
+ "type": "boolean"
},
{
- "description": "the date this vpc offering was created",
- "name": "created",
- "type": "date"
+ "description": "the current status of the latest async job acting on this object",
+ "name": "jobstatus",
+ "type": "integer"
},
{
- "description": "the zone name(s) this disk offering belongs to. Ignore this information as it is not currently applicable.",
- "name": "zone",
+ "description": "an alternate display text of the vpc offering.",
+ "name": "displaytext",
"type": "string"
},
{
- "description": "the id of the vpc offering",
- "name": "id",
+ "description": "Mode in which the network will operate. The valid values are NATTED and ROUTED",
+ "name": "networkmode",
"type": "string"
},
{
- "description": "the name of the vpc offering",
- "name": "name",
- "type": "string"
+ "description": "true if vpc offering is default, false otherwise",
+ "name": "isdefault",
+ "type": "boolean"
},
{
- "description": "the domain ID(s) this disk offering belongs to. Ignore this information as it is not currently applicable.",
- "name": "domainid",
- "type": "string"
+ "description": "indicated if the offering can support region level vpc",
+ "name": "supportsregionLevelvpc",
+ "type": "boolean"
},
{
"description": "state of the vpc offering. Can be Disabled/Enabled",
@@ -270,18 +167,8 @@
"type": "string"
},
{
- "description": "the current status of the latest async job acting on this object",
- "name": "jobstatus",
- "type": "integer"
- },
- {
- "description": "true if vpc offering is default, false otherwise",
- "name": "isdefault",
- "type": "boolean"
- },
- {
- "description": " indicated if the offering can support region level vpc",
- "name": "supportsregionLevelvpc",
+ "description": "true if vpc offering can be used by NSX networks only",
+ "name": "fornsx",
"type": "boolean"
},
{
@@ -289,243 +176,128 @@
"name": "internetprotocol",
"type": "string"
},
- {}
- ]
- },
- {
- "description": "Creates a new Pod.",
- "isasync": false,
- "name": "createPod",
- "params": [
{
- "description": "the ending IP address for the Pod",
- "length": 255,
- "name": "endip",
- "required": false,
+ "description": "the name of the vpc offering",
+ "name": "name",
"type": "string"
},
{
- "description": "the Zone ID in which the Pod will be created",
- "length": 255,
- "name": "zoneid",
- "related": "createZone,updateZone,listZones,listZones",
- "required": true,
- "type": "uuid"
+ "description": " indicates if the vpc offering supports distributed router for one-hop forwarding",
+ "name": "distributedvpcrouter",
+ "type": "boolean"
},
{
- "description": "the starting IP address for the Pod",
- "length": 255,
- "name": "startip",
- "required": false,
+ "description": "the domain name(s) this disk offering belongs to. Ignore this information as it is not currently applicable.",
+ "name": "domain",
"type": "string"
},
{
- "description": "the netmask for the Pod",
- "length": 255,
- "name": "netmask",
- "required": false,
+ "description": "the zone ID(s) this disk offering belongs to. Ignore this information as it is not currently applicable.",
+ "name": "zoneid",
"type": "string"
},
{
- "description": "the gateway for the Pod",
- "length": 255,
- "name": "gateway",
- "required": false,
+ "description": "the zone name(s) this disk offering belongs to. Ignore this information as it is not currently applicable.",
+ "name": "zone",
"type": "string"
},
+ {},
{
- "description": "Allocation state of this Pod for allocation of new resources",
- "length": 255,
- "name": "allocationstate",
- "required": false,
+ "description": "the id of the vpc offering",
+ "name": "id",
"type": "string"
},
{
- "description": "the name of the Pod",
- "length": 255,
- "name": "name",
- "required": true,
+ "description": "the domain ID(s) this disk offering belongs to. Ignore this information as it is not currently applicable.",
+ "name": "domainid",
"type": "string"
- }
- ],
- "related": "listPods,updatePod,createManagementNetworkIpRange",
- "response": [
+ },
{
- "description": "the capacity of the Pod",
- "name": "capacity",
+ "description": "the list of supported services",
+ "name": "service",
"response": [
{
- "description": "the capacity type",
- "name": "type",
- "type": "short"
- },
- {
- "description": "the percentage of capacity currently in use",
- "name": "percentused",
- "type": "string"
- },
- {
- "description": "the Zone name",
- "name": "zonename",
- "type": "string"
- },
- {
- "description": "the total capacity available",
- "name": "capacitytotal",
- "type": "long"
- },
- {
- "description": "the Pod ID",
- "name": "podid",
- "type": "string"
- },
- {
- "description": "the Pod name",
- "name": "podname",
- "type": "string"
- },
- {
- "description": "the capacity currently in allocated",
- "name": "capacityallocated",
- "type": "long"
- },
- {
- "description": "the Cluster ID",
- "name": "clusterid",
- "type": "string"
- },
- {
- "description": "the capacity name",
+ "description": "the service name",
"name": "name",
"type": "string"
},
{
- "description": "the capacity currently in use",
- "name": "capacityused",
- "type": "long"
- },
- {
- "description": "the Zone ID",
- "name": "zoneid",
- "type": "string"
+ "description": "the service provider name",
+ "name": "provider",
+ "response": [
+ {
+ "description": "the provider name",
+ "name": "name",
+ "type": "string"
+ },
+ {
+ "description": "the physical network this belongs to",
+ "name": "physicalnetworkid",
+ "type": "string"
+ },
+ {
+ "description": "uuid of the network provider",
+ "name": "id",
+ "type": "string"
+ },
+ {
+ "description": "the destination physical network",
+ "name": "destinationphysicalnetworkid",
+ "type": "string"
+ },
+ {
+ "description": "true if individual services can be enabled/disabled",
+ "name": "canenableindividualservice",
+ "type": "boolean"
+ },
+ {
+ "description": "state of the network provider",
+ "name": "state",
+ "type": "string"
+ },
+ {
+ "description": "services for this provider",
+ "name": "servicelist",
+ "type": "list"
+ }
+ ],
+ "type": "list"
},
{
- "description": "the Cluster name",
- "name": "clustername",
- "type": "string"
+ "description": "the list of capabilities",
+ "name": "capability",
+ "response": [
+ {
+ "description": "the capability value",
+ "name": "value",
+ "type": "string"
+ },
+ {
+ "description": "can this service capability value can be choosable while creatine network offerings",
+ "name": "canchooseservicecapability",
+ "type": "boolean"
+ },
+ {
+ "description": "the capability name",
+ "name": "name",
+ "type": "string"
+ }
+ ],
+ "type": "list"
}
],
"type": "list"
},
{
- "description": "true if the entity/resource has annotations",
- "name": "hasannotations",
- "type": "boolean"
- },
- {
- "description": "the current status of the latest async job acting on this object",
- "name": "jobstatus",
- "type": "integer"
- },
- {
- "description": "indicates Vlan ID for the range. This parameter is deprecated, please use 'vlanid' from ipranges parameter.",
- "name": "vlanid",
- "type": "list"
- },
- {
- "description": "the ID of the Pod",
- "name": "id",
- "type": "string"
- },
- {
- "description": "the gateway of the Pod",
- "name": "gateway",
- "type": "string"
+ "description": "the date this vpc offering was created",
+ "name": "created",
+ "type": "date"
},
{
"description": "the UUID of the latest async job acting on this object",
"name": "jobid",
"type": "string"
- },
- {
- "description": "the netmask of the Pod",
- "name": "netmask",
- "type": "string"
- },
- {
- "description": "indicates if range is dedicated for CPVM and SSVM. This parameter is deprecated, please use 'forsystemvms' from ipranges parameter.",
- "name": "forsystemvms",
- "type": "list"
- },
- {
- "description": "the Zone name of the Pod",
- "name": "zonename",
- "type": "string"
- },
- {
- "description": "the ending IP for the Pod. This parameter is deprecated, please use 'endip' from ipranges parameter.",
- "name": "endip",
- "type": "list"
- },
- {
- "description": "the allocation state of the Pod",
- "name": "allocationstate",
- "type": "string"
- },
- {
- "description": "the name of the Pod",
- "name": "name",
- "type": "string"
- },
- {
- "description": "the starting IP for the Pod. This parameter is deprecated, please use 'startip' from ipranges parameter.",
- "name": "startip",
- "type": "list"
- },
- {
- "description": "the Zone ID of the Pod",
- "name": "zoneid",
- "type": "string"
- },
- {
- "description": "the IP ranges for the Pod",
- "name": "ipranges",
- "response": [
- {
- "description": "the gateway for the range",
- "name": "gateway",
- "type": "string"
- },
- {
- "description": "the CIDR for the range",
- "name": "cidr",
- "type": "string"
- },
- {
- "description": "the starting IP for the range",
- "name": "startip",
- "type": "string"
- },
- {
- "description": "indicates Vlan ID for the range",
- "name": "vlanid",
- "type": "string"
- },
- {
- "description": "the ending IP for the range",
- "name": "endip",
- "type": "string"
- },
- {
- "description": "indicates if range is dedicated for CPVM and SSVM",
- "name": "forsystemvms",
- "type": "string"
- }
- ],
- "type": "list"
- },
- {},
- {}
+ }
]
},
{
@@ -548,40 +320,40 @@
"type": "string"
},
{
- "description": "Network domain for the account's networks",
+ "description": "Creates the user under the specified domain.",
"length": 255,
- "name": "networkdomain",
+ "name": "domainid",
+ "related": "createDomain,listDomainChildren,listDomains,listDomains,updateDomain,moveDomain",
"required": false,
- "type": "string"
+ "type": "uuid"
},
{
- "description": "Creates the account under the specified role.",
+ "description": "User UUID, required for adding account from external provisioning system",
"length": 255,
- "name": "roleid",
- "related": "createRole,importRole,listRoles,updateRole",
+ "name": "userid",
"required": false,
- "type": "uuid"
+ "type": "string"
},
{
- "description": "details for account used to store specific parameters",
+ "description": "Unique username.",
"length": 255,
- "name": "accountdetails",
- "required": false,
- "type": "map"
+ "name": "username",
+ "required": true,
+ "type": "string"
},
{
- "description": "Type of the account. Specify 0 for user, 1 for root admin, and 2 for domain admin",
+ "description": "Network domain for the account's networks",
"length": 255,
- "name": "accounttype",
+ "name": "networkdomain",
"required": false,
- "type": "integer"
+ "type": "string"
},
{
- "description": "Unique username.",
+ "description": "details for account used to store specific parameters",
"length": 255,
- "name": "username",
- "required": true,
- "type": "string"
+ "name": "accountdetails",
+ "required": false,
+ "type": "map"
},
{
"description": "Creates the user under the specified account. If no account is specified, the username will be used as the account name.",
@@ -591,92 +363,86 @@
"type": "string"
},
{
- "description": "Creates the user under the specified domain.",
+ "description": "Type of the account. Specify 0 for user, 1 for root admin, and 2 for domain admin",
"length": 255,
- "name": "domainid",
- "related": "createDomain,listDomainChildren,listDomains,listDomains,updateDomain,moveDomain",
+ "name": "accounttype",
"required": false,
- "type": "uuid"
+ "type": "integer"
},
{
- "description": "User UUID, required for adding account from external provisioning system",
+ "description": "Creates the account under the specified role.",
"length": 255,
- "name": "userid",
+ "name": "roleid",
+ "related": "createRole,importRole,listRoles,updateRole",
"required": false,
- "type": "string"
+ "type": "uuid"
}
],
"related": "createAccount,disableAccount,enableAccount,lockAccount,updateAccount,markDefaultZoneForAccount,listAccounts,listAccounts",
"response": [
- {},
- {
- "description": "the total secondary storage space (in GiB) owned by account",
- "name": "secondarystoragetotal",
- "type": "float"
- },
{
- "description": "the UUID of the latest async job acting on this object",
- "name": "jobid",
+ "description": "the total memory (in MB) available to be created for this account",
+ "name": "memoryavailable",
"type": "string"
},
{
- "description": "the name of the role",
- "name": "rolename",
- "type": "string"
+ "description": "the list of acl groups that account belongs to",
+ "name": "groups",
+ "type": "list"
},
{
- "description": "the total number of network traffic bytes received",
- "name": "receivedbytes",
+ "description": "the total number of vpcs owned by account",
+ "name": "vpctotal",
"type": "long"
},
{
- "description": "the total secondary storage space (in GiB) available to be used for this account",
- "name": "secondarystorageavailable",
+ "description": "the total secondary storage space (in GiB) the account can own",
+ "name": "secondarystoragelimit",
"type": "string"
},
{
- "description": "the total number of public ip addresses allocated for this account",
- "name": "iptotal",
- "type": "long"
- },
- {
- "description": "the total number of snapshots stored by this account",
- "name": "snapshottotal",
+ "description": "the total volume being used by this account",
+ "name": "volumetotal",
"type": "long"
},
{
- "description": "the total secondary storage space (in GiB) the account can own",
- "name": "secondarystoragelimit",
+ "description": "the state of the account",
+ "name": "state",
"type": "string"
},
{
- "description": "Base64 string representation of the resource icon",
- "name": "icon",
- "type": "resourceiconresponse"
+ "description": "true if the account requires cleanup",
+ "name": "iscleanuprequired",
+ "type": "boolean"
},
{
- "description": "the total number of virtual machines that can be deployed by this account",
- "name": "vmlimit",
+ "description": "the name of the account",
+ "name": "name",
"type": "string"
},
{
- "description": "the total number of networks available to be created for this account",
- "name": "networkavailable",
- "type": "string"
+ "description": "the total number of network traffic bytes received",
+ "name": "receivedbytes",
+ "type": "long"
},
{
- "description": "the total number of vpcs the account can own",
- "name": "vpclimit",
+ "description": "the ID of the role",
+ "name": "roleid",
"type": "string"
},
{
- "description": "the date when this account was created",
- "name": "created",
- "type": "date"
+ "description": "account type (admin, domain-admin, user)",
+ "name": "accounttype",
+ "type": "integer"
},
{
- "description": "the default zone of the account",
- "name": "defaultzoneid",
+ "description": "the total primary storage space (in GiB) owned by account",
+ "name": "primarystoragetotal",
+ "type": "long"
+ },
+ {
+ "description": "the total secondary storage space (in GiB) available to be used for this account",
+ "name": "secondarystorageavailable",
"type": "string"
},
{
@@ -685,70 +451,95 @@
"type": "string"
},
{
- "description": "the id of the account",
- "name": "id",
+ "description": "the total number of public ip addresses available for this account to acquire",
+ "name": "ipavailable",
"type": "string"
},
{
- "description": "the total number of virtual machines stopped for this account",
- "name": "vmstopped",
- "type": "integer"
+ "description": "the total number of projects being administrated by this account",
+ "name": "projecttotal",
+ "type": "long"
},
{
- "description": "the total number of virtual machines running for this account",
- "name": "vmrunning",
+ "description": "true if account is default, false otherwise",
+ "name": "isdefault",
+ "type": "boolean"
+ },
+ {
+ "description": "the current status of the latest async job acting on this object",
+ "name": "jobstatus",
"type": "integer"
},
{
- "description": "the total number of snapshots available for this account",
- "name": "snapshotavailable",
- "type": "string"
+ "description": "the total number of network traffic bytes sent",
+ "name": "sentbytes",
+ "type": "long"
},
{
- "description": "id of the Domain the account belongs to",
- "name": "domainid",
+ "description": "the id of the account",
+ "name": "id",
"type": "string"
},
{},
{
- "description": "the total number of cpu cores the account can own",
- "name": "cpulimit",
+ "description": "the total secondary storage space (in GiB) owned by account",
+ "name": "secondarystoragetotal",
+ "type": "float"
+ },
+ {
+ "description": "the total volume available for this account",
+ "name": "volumeavailable",
"type": "string"
},
{
- "description": "the total number of projects the account can own",
- "name": "projectlimit",
+ "description": "the total number of virtual machines running for this account",
+ "name": "vmrunning",
+ "type": "integer"
+ },
+ {
+ "description": "the total number of templates which have been created by this account",
+ "name": "templatetotal",
+ "type": "long"
+ },
+ {
+ "description": "the total number of projects available for administration by this account",
+ "name": "projectavailable",
"type": "string"
},
{
- "description": "the list of acl groups that account belongs to",
- "name": "groups",
+ "description": "The tagged resource limit and count for the account",
+ "name": "taggedresources",
"type": "list"
},
{
- "description": "the total primary storage space (in GiB) owned by account",
- "name": "primarystoragetotal",
+ "description": "the UUID of the latest async job acting on this object",
+ "name": "jobid",
+ "type": "string"
+ },
+ {
+ "description": "the total number of public ip addresses allocated for this account",
+ "name": "iptotal",
"type": "long"
},
{
- "description": "the type of the role (Admin, ResourceAdmin, DomainAdmin, User)",
- "name": "roletype",
+ "description": "the name of the role",
+ "name": "rolename",
"type": "string"
},
{
- "description": "the total number of snapshots which can be stored by this account",
- "name": "snapshotlimit",
- "type": "string"
+ "description": "the total memory (in MB) owned by account",
+ "name": "memorytotal",
+ "type": "long"
},
{
- "description": "the total memory (in MB) the account can own",
- "name": "memorylimit",
+ "description": "the total number of networks the account can own",
+ "name": "networklimit",
"type": "string"
},
{
- "description": "true if the account requires cleanup",
- "name": "iscleanuprequired",
- "type": "boolean"
+ "description": "the network domain",
+ "name": "networkdomain",
+ "type": "string"
},
{
"description": "the total number of networks owned by account",
@@ -756,24 +547,19 @@
"type": "long"
},
{
- "description": "the name of the account",
- "name": "name",
+ "description": "the total number of virtual machines that can be deployed by this account",
+ "name": "vmlimit",
"type": "string"
},
{
- "description": "the total number of network traffic bytes sent",
- "name": "sentbytes",
+ "description": "the total number of virtual machines deployed by this account",
+ "name": "vmtotal",
"type": "long"
},
{
- "description": "the state of the account",
- "name": "state",
- "type": "string"
- },
- {
- "description": "name of the Domain the account belongs to",
- "name": "domain",
- "type": "string"
+ "description": "the date when this account was created",
+ "name": "created",
+ "type": "date"
},
{
"description": "details for the account",
@@ -781,64 +567,50 @@
"type": "map"
},
{
- "description": "the current status of the latest async job acting on this object",
- "name": "jobstatus",
- "type": "integer"
+ "description": "the total number of cpu cores owned by account",
+ "name": "cputotal",
+ "type": "long"
},
{
- "description": "the total number of public ip addresses this account can acquire",
- "name": "iplimit",
- "type": "string"
+ "description": "the total number of snapshots stored by this account",
+ "name": "snapshottotal",
+ "type": "long"
},
{
- "description": "the total primary storage space (in GiB) available to be used for this account",
- "name": "primarystorageavailable",
+ "description": "the total number of snapshots which can be stored by this account",
+ "name": "snapshotlimit",
"type": "string"
},
{
- "description": "account type (admin, domain-admin, user)",
- "name": "accounttype",
- "type": "integer"
+ "description": "Base64 string representation of the resource icon",
+ "name": "icon",
+ "type": "resourceiconresponse"
},
{
- "description": "the total volume which can be used by this account",
- "name": "volumelimit",
+ "description": "the total memory (in MB) the account can own",
+ "name": "memorylimit",
"type": "string"
},
+ {},
{
"description": "the total number of vpcs available to be created for this account",
"name": "vpcavailable",
"type": "string"
},
{
- "description": "the total number of virtual machines deployed by this account",
- "name": "vmtotal",
- "type": "long"
- },
- {
- "description": "the total volume being used by this account",
- "name": "volumetotal",
- "type": "long"
- },
- {
- "description": "the total number of projects available for administration by this account",
- "name": "projectavailable",
+ "description": "the total number of templates which can be created by this account",
+ "name": "templatelimit",
"type": "string"
},
{
- "description": "the total memory (in MB) available to be created for this account",
- "name": "memoryavailable",
+ "description": "the total primary storage space (in GiB) available to be used for this account",
+ "name": "primarystorageavailable",
"type": "string"
},
{
- "description": "the total number of projects being administrated by this account",
- "name": "projecttotal",
- "type": "long"
- },
- {
- "description": "the total number of cpu cores owned by account",
- "name": "cputotal",
- "type": "long"
+ "description": "the total primary storage space (in GiB) the account can own",
+ "name": "primarystoragelimit",
+ "type": "string"
},
{
"description": "path of the Domain the account belongs to",
@@ -846,102 +618,87 @@
"type": "string"
},
{
- "description": "the total number of networks the account can own",
- "name": "networklimit",
+ "description": "the default zone of the account",
+ "name": "defaultzoneid",
"type": "string"
},
{
- "description": "the total number of vpcs owned by account",
- "name": "vpctotal",
- "type": "long"
+ "description": "the total number of virtual machines stopped for this account",
+ "name": "vmstopped",
+ "type": "integer"
},
{
- "description": "the total number of cpu cores available to be created for this account",
- "name": "cpuavailable",
+ "description": "the total number of cpu cores the account can own",
+ "name": "cpulimit",
"type": "string"
},
{
- "description": "the network domain",
- "name": "networkdomain",
+ "description": "the total number of cpu cores available to be created for this account",
+ "name": "cpuavailable",
"type": "string"
},
{
- "description": "the total number of public ip addresses available for this account to acquire",
- "name": "ipavailable",
+ "description": "the total number of vpcs the account can own",
+ "name": "vpclimit",
"type": "string"
},
{
- "description": "the total memory (in MB) owned by account",
- "name": "memorytotal",
- "type": "long"
- },
- {
- "description": "the total volume available for this account",
- "name": "volumeavailable",
+ "description": "the total number of public ip addresses this account can acquire",
+ "name": "iplimit",
"type": "string"
},
{
- "description": "the total number of templates available to be created by this account",
- "name": "templateavailable",
+ "description": "the total volume which can be used by this account",
+ "name": "volumelimit",
"type": "string"
},
{
- "description": "the ID of the role",
- "name": "roleid",
+ "description": "the total number of snapshots available for this account",
+ "name": "snapshotavailable",
"type": "string"
},
{
- "description": "the total number of templates which have been created by this account",
- "name": "templatetotal",
- "type": "long"
+ "description": "the total number of networks available to be created for this account",
+ "name": "networkavailable",
+ "type": "string"
},
{
- "description": "true if account is default, false otherwise",
- "name": "isdefault",
- "type": "boolean"
+ "description": "id of the Domain the account belongs to",
+ "name": "domainid",
+ "type": "string"
},
{
- "description": "the total number of templates which can be created by this account",
- "name": "templatelimit",
+ "description": "the type of the role (Admin, ResourceAdmin, DomainAdmin, User)",
+ "name": "roletype",
"type": "string"
},
{
"description": "the list of users associated with account",
"name": "user",
"response": [
- {
- "description": "the user firstname",
- "name": "firstname",
- "type": "string"
- },
- {
- "description": "the date and time the user account was created",
- "name": "created",
- "type": "date"
- },
{
"description": "the account ID of the user",
"name": "accountid",
"type": "string"
},
{
- "description": "the type of the role",
- "name": "roletype",
- "type": "string"
+ "description": "the boolean value representing if the updating target is in caller's child domain",
+ "name": "iscallerchilddomain",
+ "type": "boolean"
},
{
- "description": "the name of the role",
- "name": "rolename",
+ "description": "the timezone user was created in",
+ "name": "timezone",
"type": "string"
},
{
- "description": "the user state",
- "name": "state",
+ "description": "the user name",
+ "name": "username",
"type": "string"
},
{
- "description": "the timezone user was created in",
- "name": "timezone",
+ "description": "the user email address",
+ "name": "email",
"type": "string"
},
{
@@ -954,44 +711,44 @@
"name": "account",
"type": "string"
},
- {
- "description": "Base64 string representation of the resource icon",
- "name": "icon",
- "type": "resourceiconresponse"
- },
- {
- "description": "the source type of the user in lowercase, such as native, ldap, saml2",
- "name": "usersource",
- "type": "string"
- },
{
"description": "the domain name of the user",
"name": "domain",
"type": "string"
},
{
- "description": "the ID of the role",
- "name": "roleid",
+ "description": "the user state",
+ "name": "state",
"type": "string"
},
{
- "description": "the boolean value representing if the updating target is in caller's child domain",
- "name": "iscallerchilddomain",
+ "description": "true if user is default, false otherwise",
+ "name": "isdefault",
"type": "boolean"
},
{
- "description": "true if user is default, false otherwise",
- "name": "isdefault",
+ "description": "true if user has two factor authentication enabled",
+ "name": "is2faenabled",
"type": "boolean"
},
{
- "description": "the user email address",
- "name": "email",
+ "description": "the source type of the user in lowercase, such as native, ldap, saml2",
+ "name": "usersource",
"type": "string"
},
{
- "description": "the user ID",
- "name": "id",
+ "description": "Base64 string representation of the resource icon",
+ "name": "icon",
+ "type": "resourceiconresponse"
+ },
+ {
+ "description": "the ID of the role",
+ "name": "roleid",
+ "type": "string"
+ },
+ {
+ "description": "the domain ID of the user",
+ "name": "domainid",
"type": "string"
},
{
@@ -1004,80 +761,61 @@
"name": "is2famandated",
"type": "boolean"
},
+ {
+ "description": "the user firstname",
+ "name": "firstname",
+ "type": "string"
+ },
{
"description": "the api key of the user",
"name": "apikey",
"type": "string"
},
{
- "description": "true if user has two factor authentication enabled",
- "name": "is2faenabled",
- "type": "boolean"
+ "description": "the name of the role",
+ "name": "rolename",
+ "type": "string"
},
{
- "description": "the user name",
- "name": "username",
+ "description": "the date and time the user account was created",
+ "name": "created",
+ "type": "date"
+ },
+ {
+ "description": "the user ID",
+ "name": "id",
+ "type": "string"
+ },
+ {
+ "description": "the type of the role",
+ "name": "roletype",
"type": "string"
},
{
"description": "the account type of the user",
"name": "accounttype",
"type": "integer"
- },
- {
- "description": "the domain ID of the user",
- "name": "domainid",
- "type": "string"
}
],
"type": "list"
},
{
- "description": "the total primary storage space (in GiB) the account can own",
- "name": "primarystoragelimit",
+ "description": "the total number of templates available to be created by this account",
+ "name": "templateavailable",
"type": "string"
- }
- ],
- "since": "4.2.0"
- },
- {
- "description": "Safely removes raw records from cloud_usage table",
- "isasync": false,
- "name": "removeRawUsageRecords",
- "params": [
- {
- "description": "Specify the number of days (greater than zero) to remove records that are older than those number of days from today. For example, specifying 10 would result in removing all the records created before 10 days from today",
- "length": 255,
- "name": "interval",
- "required": true,
- "type": "integer"
- }
... 244431 lines suppressed ...