Update to latest `go-cloudstack` package to fix issue #6101
This commit is contained in:
parent
b04c6f9de0
commit
41b99a4ebc
|
@ -1,7 +1,7 @@
|
||||||
{
|
{
|
||||||
"ImportPath": "github.com/hashicorp/terraform",
|
"ImportPath": "github.com/hashicorp/terraform",
|
||||||
"GoVersion": "go1.6",
|
"GoVersion": "go1.6",
|
||||||
"GodepVersion": "v61",
|
"GodepVersion": "v62",
|
||||||
"Packages": [
|
"Packages": [
|
||||||
"./..."
|
"./..."
|
||||||
],
|
],
|
||||||
|
@ -1265,8 +1265,8 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"ImportPath": "github.com/xanzy/go-cloudstack/cloudstack",
|
"ImportPath": "github.com/xanzy/go-cloudstack/cloudstack",
|
||||||
"Comment": "v1.2.0-61-g252eb1b",
|
"Comment": "2.0.0",
|
||||||
"Rev": "252eb1b665d77aa31dedd435fab0a7da57b2d8c1"
|
"Rev": "6e28220a0503ff25e2c1480791e23d12872140ac"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"ImportPath": "github.com/xanzy/ssh-agent",
|
"ImportPath": "github.com/xanzy/ssh-agent",
|
||||||
|
|
|
@ -78,7 +78,8 @@ func resourceCloudStackDiskCreate(d *schema.ResourceData, meta interface{}) erro
|
||||||
name := d.Get("name").(string)
|
name := d.Get("name").(string)
|
||||||
|
|
||||||
// Create a new parameter struct
|
// Create a new parameter struct
|
||||||
p := cs.Volume.NewCreateVolumeParams(name)
|
p := cs.Volume.NewCreateVolumeParams()
|
||||||
|
p.SetName(name)
|
||||||
|
|
||||||
// Retrieve the disk_offering ID
|
// Retrieve the disk_offering ID
|
||||||
diskofferingid, e := retrieveID(cs, "disk_offering", d.Get("disk_offering").(string))
|
diskofferingid, e := retrieveID(cs, "disk_offering", d.Get("disk_offering").(string))
|
||||||
|
|
|
@ -894,7 +894,7 @@ func (s *AccountService) NewLockAccountParams(account string, domainid string) *
|
||||||
return p
|
return p
|
||||||
}
|
}
|
||||||
|
|
||||||
// Locks an account
|
// This deprecated function used to locks an account. Look for the API DisableAccount instead
|
||||||
func (s *AccountService) LockAccount(p *LockAccountParams) (*LockAccountResponse, error) {
|
func (s *AccountService) LockAccount(p *LockAccountParams) (*LockAccountResponse, error) {
|
||||||
resp, err := s.cs.newRequest("lockAccount", p.toURLValues())
|
resp, err := s.cs.newRequest("lockAccount", p.toURLValues())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -1512,7 +1512,7 @@ func (s *AccountService) NewAddAccountToProjectParams(projectid string) *AddAcco
|
||||||
return p
|
return p
|
||||||
}
|
}
|
||||||
|
|
||||||
// Adds acoount to a project
|
// Adds account to a project
|
||||||
func (s *AccountService) AddAccountToProject(p *AddAccountToProjectParams) (*AddAccountToProjectResponse, error) {
|
func (s *AccountService) AddAccountToProject(p *AddAccountToProjectParams) (*AddAccountToProjectResponse, error) {
|
||||||
resp, err := s.cs.newRequest("addAccountToProject", p.toURLValues())
|
resp, err := s.cs.newRequest("addAccountToProject", p.toURLValues())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -1831,3 +1831,65 @@ type ProjectAccount struct {
|
||||||
Vpclimit string `json:"vpclimit,omitempty"`
|
Vpclimit string `json:"vpclimit,omitempty"`
|
||||||
Vpctotal int64 `json:"vpctotal,omitempty"`
|
Vpctotal int64 `json:"vpctotal,omitempty"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
type GetSolidFireAccountIdParams struct {
|
||||||
|
p map[string]interface{}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *GetSolidFireAccountIdParams) toURLValues() url.Values {
|
||||||
|
u := url.Values{}
|
||||||
|
if p.p == nil {
|
||||||
|
return u
|
||||||
|
}
|
||||||
|
if v, found := p.p["accountid"]; found {
|
||||||
|
u.Set("accountid", v.(string))
|
||||||
|
}
|
||||||
|
if v, found := p.p["storageid"]; found {
|
||||||
|
u.Set("storageid", v.(string))
|
||||||
|
}
|
||||||
|
return u
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *GetSolidFireAccountIdParams) SetAccountid(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["accountid"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *GetSolidFireAccountIdParams) SetStorageid(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["storageid"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// You should always use this function to get a new GetSolidFireAccountIdParams instance,
|
||||||
|
// as then you are sure you have configured all required params
|
||||||
|
func (s *AccountService) NewGetSolidFireAccountIdParams(accountid string, storageid string) *GetSolidFireAccountIdParams {
|
||||||
|
p := &GetSolidFireAccountIdParams{}
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
p.p["accountid"] = accountid
|
||||||
|
p.p["storageid"] = storageid
|
||||||
|
return p
|
||||||
|
}
|
||||||
|
|
||||||
|
// Get SolidFire Account ID
|
||||||
|
func (s *AccountService) GetSolidFireAccountId(p *GetSolidFireAccountIdParams) (*GetSolidFireAccountIdResponse, error) {
|
||||||
|
resp, err := s.cs.newRequest("getSolidFireAccountId", p.toURLValues())
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
|
var r GetSolidFireAccountIdResponse
|
||||||
|
if err := json.Unmarshal(resp, &r); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
return &r, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
type GetSolidFireAccountIdResponse struct {
|
||||||
|
SolidFireAccountId int64 `json:"solidFireAccountId,omitempty"`
|
||||||
|
}
|
||||||
|
|
|
@ -257,7 +257,7 @@ func (s *AddressService) NewDisassociateIpAddressParams(id string) *Disassociate
|
||||||
return p
|
return p
|
||||||
}
|
}
|
||||||
|
|
||||||
// Disassociates an ip address from the account.
|
// Disassociates an IP address from the account.
|
||||||
func (s *AddressService) DisassociateIpAddress(p *DisassociateIpAddressParams) (*DisassociateIpAddressResponse, error) {
|
func (s *AddressService) DisassociateIpAddress(p *DisassociateIpAddressParams) (*DisassociateIpAddressResponse, error) {
|
||||||
resp, err := s.cs.newRequest("disassociateIpAddress", p.toURLValues())
|
resp, err := s.cs.newRequest("disassociateIpAddress", p.toURLValues())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -365,6 +365,9 @@ func (p *ListPublicIpAddressesParams) toURLValues() url.Values {
|
||||||
if v, found := p.p["projectid"]; found {
|
if v, found := p.p["projectid"]; found {
|
||||||
u.Set("projectid", v.(string))
|
u.Set("projectid", v.(string))
|
||||||
}
|
}
|
||||||
|
if v, found := p.p["state"]; found {
|
||||||
|
u.Set("state", v.(string))
|
||||||
|
}
|
||||||
if v, found := p.p["tags"]; found {
|
if v, found := p.p["tags"]; found {
|
||||||
i := 0
|
i := 0
|
||||||
for k, vv := range v.(map[string]string) {
|
for k, vv := range v.(map[string]string) {
|
||||||
|
@ -529,6 +532,14 @@ func (p *ListPublicIpAddressesParams) SetProjectid(v string) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *ListPublicIpAddressesParams) SetState(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["state"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
func (p *ListPublicIpAddressesParams) SetTags(v map[string]string) {
|
func (p *ListPublicIpAddressesParams) SetTags(v map[string]string) {
|
||||||
if p.p == nil {
|
if p.p == nil {
|
||||||
p.p = make(map[string]interface{})
|
p.p = make(map[string]interface{})
|
||||||
|
@ -729,7 +740,7 @@ func (s *AddressService) NewUpdateIpAddressParams(id string) *UpdateIpAddressPar
|
||||||
return p
|
return p
|
||||||
}
|
}
|
||||||
|
|
||||||
// Updates an ip address
|
// Updates an IP address
|
||||||
func (s *AddressService) UpdateIpAddress(p *UpdateIpAddressParams) (*UpdateIpAddressResponse, error) {
|
func (s *AddressService) UpdateIpAddress(p *UpdateIpAddressParams) (*UpdateIpAddressResponse, error) {
|
||||||
resp, err := s.cs.newRequest("updateIpAddress", p.toURLValues())
|
resp, err := s.cs.newRequest("updateIpAddress", p.toURLValues())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|
|
@ -45,6 +45,9 @@ func (p *CreateAffinityGroupParams) toURLValues() url.Values {
|
||||||
if v, found := p.p["name"]; found {
|
if v, found := p.p["name"]; found {
|
||||||
u.Set("name", v.(string))
|
u.Set("name", v.(string))
|
||||||
}
|
}
|
||||||
|
if v, found := p.p["projectid"]; found {
|
||||||
|
u.Set("projectid", v.(string))
|
||||||
|
}
|
||||||
if v, found := p.p["type"]; found {
|
if v, found := p.p["type"]; found {
|
||||||
u.Set("type", v.(string))
|
u.Set("type", v.(string))
|
||||||
}
|
}
|
||||||
|
@ -83,6 +86,14 @@ func (p *CreateAffinityGroupParams) SetName(v string) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *CreateAffinityGroupParams) SetProjectid(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["projectid"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
func (p *CreateAffinityGroupParams) SetType(v string) {
|
func (p *CreateAffinityGroupParams) SetType(v string) {
|
||||||
if p.p == nil {
|
if p.p == nil {
|
||||||
p.p = make(map[string]interface{})
|
p.p = make(map[string]interface{})
|
||||||
|
@ -143,6 +154,8 @@ type CreateAffinityGroupResponse struct {
|
||||||
Domainid string `json:"domainid,omitempty"`
|
Domainid string `json:"domainid,omitempty"`
|
||||||
Id string `json:"id,omitempty"`
|
Id string `json:"id,omitempty"`
|
||||||
Name string `json:"name,omitempty"`
|
Name string `json:"name,omitempty"`
|
||||||
|
Project string `json:"project,omitempty"`
|
||||||
|
Projectid string `json:"projectid,omitempty"`
|
||||||
Type string `json:"type,omitempty"`
|
Type string `json:"type,omitempty"`
|
||||||
VirtualmachineIds []string `json:"virtualmachineIds,omitempty"`
|
VirtualmachineIds []string `json:"virtualmachineIds,omitempty"`
|
||||||
}
|
}
|
||||||
|
@ -168,6 +181,9 @@ func (p *DeleteAffinityGroupParams) toURLValues() url.Values {
|
||||||
if v, found := p.p["name"]; found {
|
if v, found := p.p["name"]; found {
|
||||||
u.Set("name", v.(string))
|
u.Set("name", v.(string))
|
||||||
}
|
}
|
||||||
|
if v, found := p.p["projectid"]; found {
|
||||||
|
u.Set("projectid", v.(string))
|
||||||
|
}
|
||||||
return u
|
return u
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -203,6 +219,14 @@ func (p *DeleteAffinityGroupParams) SetName(v string) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *DeleteAffinityGroupParams) SetProjectid(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["projectid"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
// You should always use this function to get a new DeleteAffinityGroupParams instance,
|
// You should always use this function to get a new DeleteAffinityGroupParams instance,
|
||||||
// as then you are sure you have configured all required params
|
// as then you are sure you have configured all required params
|
||||||
func (s *AffinityGroupService) NewDeleteAffinityGroupParams() *DeleteAffinityGroupParams {
|
func (s *AffinityGroupService) NewDeleteAffinityGroupParams() *DeleteAffinityGroupParams {
|
||||||
|
@ -286,6 +310,9 @@ func (p *ListAffinityGroupsParams) toURLValues() url.Values {
|
||||||
vv := strconv.Itoa(v.(int))
|
vv := strconv.Itoa(v.(int))
|
||||||
u.Set("pagesize", vv)
|
u.Set("pagesize", vv)
|
||||||
}
|
}
|
||||||
|
if v, found := p.p["projectid"]; found {
|
||||||
|
u.Set("projectid", v.(string))
|
||||||
|
}
|
||||||
if v, found := p.p["type"]; found {
|
if v, found := p.p["type"]; found {
|
||||||
u.Set("type", v.(string))
|
u.Set("type", v.(string))
|
||||||
}
|
}
|
||||||
|
@ -367,6 +394,14 @@ func (p *ListAffinityGroupsParams) SetPagesize(v int) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *ListAffinityGroupsParams) SetProjectid(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["projectid"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
func (p *ListAffinityGroupsParams) SetType(v string) {
|
func (p *ListAffinityGroupsParams) SetType(v string) {
|
||||||
if p.p == nil {
|
if p.p == nil {
|
||||||
p.p = make(map[string]interface{})
|
p.p = make(map[string]interface{})
|
||||||
|
@ -403,6 +438,16 @@ func (s *AffinityGroupService) GetAffinityGroupID(name string) (string, error) {
|
||||||
return "", err
|
return "", err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if l.Count == 0 {
|
||||||
|
// If no matches, search all projects
|
||||||
|
p.p["projectid"] = "-1"
|
||||||
|
|
||||||
|
l, err = s.ListAffinityGroups(p)
|
||||||
|
if err != nil {
|
||||||
|
return "", err
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if l.Count == 0 {
|
if l.Count == 0 {
|
||||||
return "", fmt.Errorf("No match found for %s: %+v", name, l)
|
return "", fmt.Errorf("No match found for %s: %+v", name, l)
|
||||||
}
|
}
|
||||||
|
@ -452,6 +497,21 @@ func (s *AffinityGroupService) GetAffinityGroupByID(id string) (*AffinityGroup,
|
||||||
return nil, -1, err
|
return nil, -1, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if l.Count == 0 {
|
||||||
|
// If no matches, search all projects
|
||||||
|
p.p["projectid"] = "-1"
|
||||||
|
|
||||||
|
l, err = s.ListAffinityGroups(p)
|
||||||
|
if err != nil {
|
||||||
|
if strings.Contains(err.Error(), fmt.Sprintf(
|
||||||
|
"Invalid parameter id value=%s due to incorrect long value format, "+
|
||||||
|
"or entity does not exist", id)) {
|
||||||
|
return nil, 0, fmt.Errorf("No match found for %s: %+v", id, l)
|
||||||
|
}
|
||||||
|
return nil, -1, err
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if l.Count == 0 {
|
if l.Count == 0 {
|
||||||
return nil, l.Count, fmt.Errorf("No match found for %s: %+v", id, l)
|
return nil, l.Count, fmt.Errorf("No match found for %s: %+v", id, l)
|
||||||
}
|
}
|
||||||
|
@ -488,6 +548,8 @@ type AffinityGroup struct {
|
||||||
Domainid string `json:"domainid,omitempty"`
|
Domainid string `json:"domainid,omitempty"`
|
||||||
Id string `json:"id,omitempty"`
|
Id string `json:"id,omitempty"`
|
||||||
Name string `json:"name,omitempty"`
|
Name string `json:"name,omitempty"`
|
||||||
|
Project string `json:"project,omitempty"`
|
||||||
|
Projectid string `json:"projectid,omitempty"`
|
||||||
Type string `json:"type,omitempty"`
|
Type string `json:"type,omitempty"`
|
||||||
VirtualmachineIds []string `json:"virtualmachineIds,omitempty"`
|
VirtualmachineIds []string `json:"virtualmachineIds,omitempty"`
|
||||||
}
|
}
|
||||||
|
@ -592,6 +654,8 @@ type UpdateVMAffinityGroupResponse struct {
|
||||||
Domainid string `json:"domainid,omitempty"`
|
Domainid string `json:"domainid,omitempty"`
|
||||||
Id string `json:"id,omitempty"`
|
Id string `json:"id,omitempty"`
|
||||||
Name string `json:"name,omitempty"`
|
Name string `json:"name,omitempty"`
|
||||||
|
Project string `json:"project,omitempty"`
|
||||||
|
Projectid string `json:"projectid,omitempty"`
|
||||||
Type string `json:"type,omitempty"`
|
Type string `json:"type,omitempty"`
|
||||||
VirtualmachineIds []string `json:"virtualmachineIds,omitempty"`
|
VirtualmachineIds []string `json:"virtualmachineIds,omitempty"`
|
||||||
} `json:"affinitygroup,omitempty"`
|
} `json:"affinitygroup,omitempty"`
|
||||||
|
@ -728,6 +792,8 @@ type UpdateVMAffinityGroupResponse struct {
|
||||||
Resourcetype string `json:"resourcetype,omitempty"`
|
Resourcetype string `json:"resourcetype,omitempty"`
|
||||||
Value string `json:"value,omitempty"`
|
Value string `json:"value,omitempty"`
|
||||||
} `json:"tags,omitempty"`
|
} `json:"tags,omitempty"`
|
||||||
|
Virtualmachinecount int `json:"virtualmachinecount,omitempty"`
|
||||||
|
Virtualmachineids []string `json:"virtualmachineids,omitempty"`
|
||||||
} `json:"securitygroup,omitempty"`
|
} `json:"securitygroup,omitempty"`
|
||||||
Serviceofferingid string `json:"serviceofferingid,omitempty"`
|
Serviceofferingid string `json:"serviceofferingid,omitempty"`
|
||||||
Serviceofferingname string `json:"serviceofferingname,omitempty"`
|
Serviceofferingname string `json:"serviceofferingname,omitempty"`
|
||||||
|
@ -748,6 +814,8 @@ type UpdateVMAffinityGroupResponse struct {
|
||||||
Templatedisplaytext string `json:"templatedisplaytext,omitempty"`
|
Templatedisplaytext string `json:"templatedisplaytext,omitempty"`
|
||||||
Templateid string `json:"templateid,omitempty"`
|
Templateid string `json:"templateid,omitempty"`
|
||||||
Templatename string `json:"templatename,omitempty"`
|
Templatename string `json:"templatename,omitempty"`
|
||||||
|
Userid string `json:"userid,omitempty"`
|
||||||
|
Username string `json:"username,omitempty"`
|
||||||
Vgpu string `json:"vgpu,omitempty"`
|
Vgpu string `json:"vgpu,omitempty"`
|
||||||
Zoneid string `json:"zoneid,omitempty"`
|
Zoneid string `json:"zoneid,omitempty"`
|
||||||
Zonename string `json:"zonename,omitempty"`
|
Zonename string `json:"zonename,omitempty"`
|
||||||
|
|
156
vendor/github.com/xanzy/go-cloudstack/cloudstack/AuthenticationService.go
generated
vendored
Normal file
156
vendor/github.com/xanzy/go-cloudstack/cloudstack/AuthenticationService.go
generated
vendored
Normal file
|
@ -0,0 +1,156 @@
|
||||||
|
//
|
||||||
|
// Copyright 2014, Sander van Harmelen
|
||||||
|
//
|
||||||
|
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
// you may not use this file except in compliance with the License.
|
||||||
|
// You may obtain a copy of the License at
|
||||||
|
//
|
||||||
|
// http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
//
|
||||||
|
// Unless required by applicable law or agreed to in writing, software
|
||||||
|
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
// See the License for the specific language governing permissions and
|
||||||
|
// limitations under the License.
|
||||||
|
//
|
||||||
|
|
||||||
|
package cloudstack
|
||||||
|
|
||||||
|
import (
|
||||||
|
"encoding/json"
|
||||||
|
"net/url"
|
||||||
|
"strconv"
|
||||||
|
)
|
||||||
|
|
||||||
|
type LoginParams struct {
|
||||||
|
p map[string]interface{}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *LoginParams) toURLValues() url.Values {
|
||||||
|
u := url.Values{}
|
||||||
|
if p.p == nil {
|
||||||
|
return u
|
||||||
|
}
|
||||||
|
if v, found := p.p["domain"]; found {
|
||||||
|
u.Set("domain", v.(string))
|
||||||
|
}
|
||||||
|
if v, found := p.p["domainId"]; found {
|
||||||
|
vv := strconv.FormatInt(v.(int64), 10)
|
||||||
|
u.Set("domainId", vv)
|
||||||
|
}
|
||||||
|
if v, found := p.p["password"]; found {
|
||||||
|
u.Set("password", v.(string))
|
||||||
|
}
|
||||||
|
if v, found := p.p["username"]; found {
|
||||||
|
u.Set("username", v.(string))
|
||||||
|
}
|
||||||
|
return u
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *LoginParams) SetDomain(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["domain"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *LoginParams) SetDomainId(v int64) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["domainId"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *LoginParams) SetPassword(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["password"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *LoginParams) SetUsername(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["username"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// You should always use this function to get a new LoginParams instance,
|
||||||
|
// as then you are sure you have configured all required params
|
||||||
|
func (s *AuthenticationService) NewLoginParams(password string, username string) *LoginParams {
|
||||||
|
p := &LoginParams{}
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
p.p["password"] = password
|
||||||
|
p.p["username"] = username
|
||||||
|
return p
|
||||||
|
}
|
||||||
|
|
||||||
|
// Logs a user into the CloudStack. A successful login attempt will generate a JSESSIONID cookie value that can be passed in subsequent Query command calls until the "logout" command has been issued or the session has expired.
|
||||||
|
func (s *AuthenticationService) Login(p *LoginParams) (*LoginResponse, error) {
|
||||||
|
resp, err := s.cs.newRequest("login", p.toURLValues())
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
|
var r LoginResponse
|
||||||
|
if err := json.Unmarshal(resp, &r); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
return &r, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
type LoginResponse struct {
|
||||||
|
Account string `json:"account,omitempty"`
|
||||||
|
Domainid string `json:"domainid,omitempty"`
|
||||||
|
Firstname string `json:"firstname,omitempty"`
|
||||||
|
Lastname string `json:"lastname,omitempty"`
|
||||||
|
Registered string `json:"registered,omitempty"`
|
||||||
|
Sessionkey string `json:"sessionkey,omitempty"`
|
||||||
|
Timeout int `json:"timeout,omitempty"`
|
||||||
|
Timezone string `json:"timezone,omitempty"`
|
||||||
|
Type string `json:"type,omitempty"`
|
||||||
|
Userid string `json:"userid,omitempty"`
|
||||||
|
Username string `json:"username,omitempty"`
|
||||||
|
}
|
||||||
|
|
||||||
|
type LogoutParams struct {
|
||||||
|
p map[string]interface{}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *LogoutParams) toURLValues() url.Values {
|
||||||
|
u := url.Values{}
|
||||||
|
if p.p == nil {
|
||||||
|
return u
|
||||||
|
}
|
||||||
|
return u
|
||||||
|
}
|
||||||
|
|
||||||
|
// You should always use this function to get a new LogoutParams instance,
|
||||||
|
// as then you are sure you have configured all required params
|
||||||
|
func (s *AuthenticationService) NewLogoutParams() *LogoutParams {
|
||||||
|
p := &LogoutParams{}
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
return p
|
||||||
|
}
|
||||||
|
|
||||||
|
// Logs out the user
|
||||||
|
func (s *AuthenticationService) Logout(p *LogoutParams) (*LogoutResponse, error) {
|
||||||
|
resp, err := s.cs.newRequest("logout", p.toURLValues())
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
|
var r LogoutResponse
|
||||||
|
if err := json.Unmarshal(resp, &r); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
return &r, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
type LogoutResponse struct {
|
||||||
|
Description string `json:"description,omitempty"`
|
||||||
|
}
|
|
@ -504,6 +504,9 @@ func (p *ListBaremetalDhcpParams) toURLValues() url.Values {
|
||||||
vv := strconv.Itoa(v.(int))
|
vv := strconv.Itoa(v.(int))
|
||||||
u.Set("pagesize", vv)
|
u.Set("pagesize", vv)
|
||||||
}
|
}
|
||||||
|
if v, found := p.p["physicalnetworkid"]; found {
|
||||||
|
u.Set("physicalnetworkid", v.(string))
|
||||||
|
}
|
||||||
return u
|
return u
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -547,11 +550,20 @@ func (p *ListBaremetalDhcpParams) SetPagesize(v int) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *ListBaremetalDhcpParams) SetPhysicalnetworkid(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["physicalnetworkid"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
// You should always use this function to get a new ListBaremetalDhcpParams instance,
|
// You should always use this function to get a new ListBaremetalDhcpParams instance,
|
||||||
// as then you are sure you have configured all required params
|
// as then you are sure you have configured all required params
|
||||||
func (s *BaremetalService) NewListBaremetalDhcpParams() *ListBaremetalDhcpParams {
|
func (s *BaremetalService) NewListBaremetalDhcpParams(physicalnetworkid string) *ListBaremetalDhcpParams {
|
||||||
p := &ListBaremetalDhcpParams{}
|
p := &ListBaremetalDhcpParams{}
|
||||||
p.p = make(map[string]interface{})
|
p.p = make(map[string]interface{})
|
||||||
|
p.p["physicalnetworkid"] = physicalnetworkid
|
||||||
return p
|
return p
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -606,6 +618,9 @@ func (p *ListBaremetalPxeServersParams) toURLValues() url.Values {
|
||||||
vv := strconv.Itoa(v.(int))
|
vv := strconv.Itoa(v.(int))
|
||||||
u.Set("pagesize", vv)
|
u.Set("pagesize", vv)
|
||||||
}
|
}
|
||||||
|
if v, found := p.p["physicalnetworkid"]; found {
|
||||||
|
u.Set("physicalnetworkid", v.(string))
|
||||||
|
}
|
||||||
return u
|
return u
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -641,11 +656,20 @@ func (p *ListBaremetalPxeServersParams) SetPagesize(v int) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *ListBaremetalPxeServersParams) SetPhysicalnetworkid(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["physicalnetworkid"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
// You should always use this function to get a new ListBaremetalPxeServersParams instance,
|
// You should always use this function to get a new ListBaremetalPxeServersParams instance,
|
||||||
// as then you are sure you have configured all required params
|
// as then you are sure you have configured all required params
|
||||||
func (s *BaremetalService) NewListBaremetalPxeServersParams() *ListBaremetalPxeServersParams {
|
func (s *BaremetalService) NewListBaremetalPxeServersParams(physicalnetworkid string) *ListBaremetalPxeServersParams {
|
||||||
p := &ListBaremetalPxeServersParams{}
|
p := &ListBaremetalPxeServersParams{}
|
||||||
p.p = make(map[string]interface{})
|
p.p = make(map[string]interface{})
|
||||||
|
p.p["physicalnetworkid"] = physicalnetworkid
|
||||||
return p
|
return p
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -674,3 +698,221 @@ type BaremetalPxeServer struct {
|
||||||
Provider string `json:"provider,omitempty"`
|
Provider string `json:"provider,omitempty"`
|
||||||
Url string `json:"url,omitempty"`
|
Url string `json:"url,omitempty"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
type AddBaremetalRctParams struct {
|
||||||
|
p map[string]interface{}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *AddBaremetalRctParams) toURLValues() url.Values {
|
||||||
|
u := url.Values{}
|
||||||
|
if p.p == nil {
|
||||||
|
return u
|
||||||
|
}
|
||||||
|
if v, found := p.p["baremetalrcturl"]; found {
|
||||||
|
u.Set("baremetalrcturl", v.(string))
|
||||||
|
}
|
||||||
|
return u
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *AddBaremetalRctParams) SetBaremetalrcturl(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["baremetalrcturl"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// You should always use this function to get a new AddBaremetalRctParams instance,
|
||||||
|
// as then you are sure you have configured all required params
|
||||||
|
func (s *BaremetalService) NewAddBaremetalRctParams(baremetalrcturl string) *AddBaremetalRctParams {
|
||||||
|
p := &AddBaremetalRctParams{}
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
p.p["baremetalrcturl"] = baremetalrcturl
|
||||||
|
return p
|
||||||
|
}
|
||||||
|
|
||||||
|
// adds baremetal rack configuration text
|
||||||
|
func (s *BaremetalService) AddBaremetalRct(p *AddBaremetalRctParams) (*AddBaremetalRctResponse, error) {
|
||||||
|
resp, err := s.cs.newRequest("addBaremetalRct", p.toURLValues())
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
|
var r AddBaremetalRctResponse
|
||||||
|
if err := json.Unmarshal(resp, &r); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
|
// If we have a async client, we need to wait for the async result
|
||||||
|
if s.cs.async {
|
||||||
|
b, err := s.cs.GetAsyncJobResult(r.JobID, s.cs.timeout)
|
||||||
|
if err != nil {
|
||||||
|
if err == AsyncTimeoutErr {
|
||||||
|
return &r, err
|
||||||
|
}
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
|
b, err = getRawValue(b)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
|
if err := json.Unmarshal(b, &r); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return &r, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
type AddBaremetalRctResponse struct {
|
||||||
|
JobID string `json:"jobid,omitempty"`
|
||||||
|
Id string `json:"id,omitempty"`
|
||||||
|
Url string `json:"url,omitempty"`
|
||||||
|
}
|
||||||
|
|
||||||
|
type DeleteBaremetalRctParams struct {
|
||||||
|
p map[string]interface{}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *DeleteBaremetalRctParams) toURLValues() url.Values {
|
||||||
|
u := url.Values{}
|
||||||
|
if p.p == nil {
|
||||||
|
return u
|
||||||
|
}
|
||||||
|
if v, found := p.p["id"]; found {
|
||||||
|
u.Set("id", v.(string))
|
||||||
|
}
|
||||||
|
return u
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *DeleteBaremetalRctParams) SetId(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["id"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// You should always use this function to get a new DeleteBaremetalRctParams instance,
|
||||||
|
// as then you are sure you have configured all required params
|
||||||
|
func (s *BaremetalService) NewDeleteBaremetalRctParams(id string) *DeleteBaremetalRctParams {
|
||||||
|
p := &DeleteBaremetalRctParams{}
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
p.p["id"] = id
|
||||||
|
return p
|
||||||
|
}
|
||||||
|
|
||||||
|
// deletes baremetal rack configuration text
|
||||||
|
func (s *BaremetalService) DeleteBaremetalRct(p *DeleteBaremetalRctParams) (*DeleteBaremetalRctResponse, error) {
|
||||||
|
resp, err := s.cs.newRequest("deleteBaremetalRct", p.toURLValues())
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
|
var r DeleteBaremetalRctResponse
|
||||||
|
if err := json.Unmarshal(resp, &r); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
|
// If we have a async client, we need to wait for the async result
|
||||||
|
if s.cs.async {
|
||||||
|
b, err := s.cs.GetAsyncJobResult(r.JobID, s.cs.timeout)
|
||||||
|
if err != nil {
|
||||||
|
if err == AsyncTimeoutErr {
|
||||||
|
return &r, err
|
||||||
|
}
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
|
if err := json.Unmarshal(b, &r); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return &r, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
type DeleteBaremetalRctResponse struct {
|
||||||
|
JobID string `json:"jobid,omitempty"`
|
||||||
|
Displaytext string `json:"displaytext,omitempty"`
|
||||||
|
Success bool `json:"success,omitempty"`
|
||||||
|
}
|
||||||
|
|
||||||
|
type ListBaremetalRctParams struct {
|
||||||
|
p map[string]interface{}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *ListBaremetalRctParams) toURLValues() url.Values {
|
||||||
|
u := url.Values{}
|
||||||
|
if p.p == nil {
|
||||||
|
return u
|
||||||
|
}
|
||||||
|
if v, found := p.p["keyword"]; found {
|
||||||
|
u.Set("keyword", v.(string))
|
||||||
|
}
|
||||||
|
if v, found := p.p["page"]; found {
|
||||||
|
vv := strconv.Itoa(v.(int))
|
||||||
|
u.Set("page", vv)
|
||||||
|
}
|
||||||
|
if v, found := p.p["pagesize"]; found {
|
||||||
|
vv := strconv.Itoa(v.(int))
|
||||||
|
u.Set("pagesize", vv)
|
||||||
|
}
|
||||||
|
return u
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *ListBaremetalRctParams) SetKeyword(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["keyword"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *ListBaremetalRctParams) SetPage(v int) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["page"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *ListBaremetalRctParams) SetPagesize(v int) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["pagesize"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// You should always use this function to get a new ListBaremetalRctParams instance,
|
||||||
|
// as then you are sure you have configured all required params
|
||||||
|
func (s *BaremetalService) NewListBaremetalRctParams() *ListBaremetalRctParams {
|
||||||
|
p := &ListBaremetalRctParams{}
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
return p
|
||||||
|
}
|
||||||
|
|
||||||
|
// list baremetal rack configuration
|
||||||
|
func (s *BaremetalService) ListBaremetalRct(p *ListBaremetalRctParams) (*ListBaremetalRctResponse, error) {
|
||||||
|
resp, err := s.cs.newRequest("listBaremetalRct", p.toURLValues())
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
|
var r ListBaremetalRctResponse
|
||||||
|
if err := json.Unmarshal(resp, &r); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
return &r, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
type ListBaremetalRctResponse struct {
|
||||||
|
Count int `json:"count"`
|
||||||
|
BaremetalRct []*BaremetalRct `json:"baremetalrct"`
|
||||||
|
}
|
||||||
|
|
||||||
|
type BaremetalRct struct {
|
||||||
|
Id string `json:"id,omitempty"`
|
||||||
|
Url string `json:"url,omitempty"`
|
||||||
|
}
|
||||||
|
|
|
@ -1,281 +0,0 @@
|
||||||
//
|
|
||||||
// Copyright 2014, Sander van Harmelen
|
|
||||||
//
|
|
||||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
// you may not use this file except in compliance with the License.
|
|
||||||
// You may obtain a copy of the License at
|
|
||||||
//
|
|
||||||
// http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
//
|
|
||||||
// Unless required by applicable law or agreed to in writing, software
|
|
||||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
// See the License for the specific language governing permissions and
|
|
||||||
// limitations under the License.
|
|
||||||
//
|
|
||||||
|
|
||||||
package cloudstack
|
|
||||||
|
|
||||||
import (
|
|
||||||
"encoding/json"
|
|
||||||
"net/url"
|
|
||||||
"strconv"
|
|
||||||
)
|
|
||||||
|
|
||||||
type AddBigSwitchVnsDeviceParams struct {
|
|
||||||
p map[string]interface{}
|
|
||||||
}
|
|
||||||
|
|
||||||
func (p *AddBigSwitchVnsDeviceParams) toURLValues() url.Values {
|
|
||||||
u := url.Values{}
|
|
||||||
if p.p == nil {
|
|
||||||
return u
|
|
||||||
}
|
|
||||||
if v, found := p.p["hostname"]; found {
|
|
||||||
u.Set("hostname", v.(string))
|
|
||||||
}
|
|
||||||
if v, found := p.p["physicalnetworkid"]; found {
|
|
||||||
u.Set("physicalnetworkid", v.(string))
|
|
||||||
}
|
|
||||||
return u
|
|
||||||
}
|
|
||||||
|
|
||||||
func (p *AddBigSwitchVnsDeviceParams) SetHostname(v string) {
|
|
||||||
if p.p == nil {
|
|
||||||
p.p = make(map[string]interface{})
|
|
||||||
}
|
|
||||||
p.p["hostname"] = v
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
func (p *AddBigSwitchVnsDeviceParams) SetPhysicalnetworkid(v string) {
|
|
||||||
if p.p == nil {
|
|
||||||
p.p = make(map[string]interface{})
|
|
||||||
}
|
|
||||||
p.p["physicalnetworkid"] = v
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// You should always use this function to get a new AddBigSwitchVnsDeviceParams instance,
|
|
||||||
// as then you are sure you have configured all required params
|
|
||||||
func (s *BigSwitchVNSService) NewAddBigSwitchVnsDeviceParams(hostname string, physicalnetworkid string) *AddBigSwitchVnsDeviceParams {
|
|
||||||
p := &AddBigSwitchVnsDeviceParams{}
|
|
||||||
p.p = make(map[string]interface{})
|
|
||||||
p.p["hostname"] = hostname
|
|
||||||
p.p["physicalnetworkid"] = physicalnetworkid
|
|
||||||
return p
|
|
||||||
}
|
|
||||||
|
|
||||||
// Adds a BigSwitch VNS device
|
|
||||||
func (s *BigSwitchVNSService) AddBigSwitchVnsDevice(p *AddBigSwitchVnsDeviceParams) (*AddBigSwitchVnsDeviceResponse, error) {
|
|
||||||
resp, err := s.cs.newRequest("addBigSwitchVnsDevice", p.toURLValues())
|
|
||||||
if err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
|
|
||||||
var r AddBigSwitchVnsDeviceResponse
|
|
||||||
if err := json.Unmarshal(resp, &r); err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
|
|
||||||
// If we have a async client, we need to wait for the async result
|
|
||||||
if s.cs.async {
|
|
||||||
b, err := s.cs.GetAsyncJobResult(r.JobID, s.cs.timeout)
|
|
||||||
if err != nil {
|
|
||||||
if err == AsyncTimeoutErr {
|
|
||||||
return &r, err
|
|
||||||
}
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
|
|
||||||
b, err = getRawValue(b)
|
|
||||||
if err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
|
|
||||||
if err := json.Unmarshal(b, &r); err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return &r, nil
|
|
||||||
}
|
|
||||||
|
|
||||||
type AddBigSwitchVnsDeviceResponse struct {
|
|
||||||
JobID string `json:"jobid,omitempty"`
|
|
||||||
Bigswitchdevicename string `json:"bigswitchdevicename,omitempty"`
|
|
||||||
Hostname string `json:"hostname,omitempty"`
|
|
||||||
Physicalnetworkid string `json:"physicalnetworkid,omitempty"`
|
|
||||||
Provider string `json:"provider,omitempty"`
|
|
||||||
Vnsdeviceid string `json:"vnsdeviceid,omitempty"`
|
|
||||||
}
|
|
||||||
|
|
||||||
type DeleteBigSwitchVnsDeviceParams struct {
|
|
||||||
p map[string]interface{}
|
|
||||||
}
|
|
||||||
|
|
||||||
func (p *DeleteBigSwitchVnsDeviceParams) toURLValues() url.Values {
|
|
||||||
u := url.Values{}
|
|
||||||
if p.p == nil {
|
|
||||||
return u
|
|
||||||
}
|
|
||||||
if v, found := p.p["vnsdeviceid"]; found {
|
|
||||||
u.Set("vnsdeviceid", v.(string))
|
|
||||||
}
|
|
||||||
return u
|
|
||||||
}
|
|
||||||
|
|
||||||
func (p *DeleteBigSwitchVnsDeviceParams) SetVnsdeviceid(v string) {
|
|
||||||
if p.p == nil {
|
|
||||||
p.p = make(map[string]interface{})
|
|
||||||
}
|
|
||||||
p.p["vnsdeviceid"] = v
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// You should always use this function to get a new DeleteBigSwitchVnsDeviceParams instance,
|
|
||||||
// as then you are sure you have configured all required params
|
|
||||||
func (s *BigSwitchVNSService) NewDeleteBigSwitchVnsDeviceParams(vnsdeviceid string) *DeleteBigSwitchVnsDeviceParams {
|
|
||||||
p := &DeleteBigSwitchVnsDeviceParams{}
|
|
||||||
p.p = make(map[string]interface{})
|
|
||||||
p.p["vnsdeviceid"] = vnsdeviceid
|
|
||||||
return p
|
|
||||||
}
|
|
||||||
|
|
||||||
// delete a bigswitch vns device
|
|
||||||
func (s *BigSwitchVNSService) DeleteBigSwitchVnsDevice(p *DeleteBigSwitchVnsDeviceParams) (*DeleteBigSwitchVnsDeviceResponse, error) {
|
|
||||||
resp, err := s.cs.newRequest("deleteBigSwitchVnsDevice", p.toURLValues())
|
|
||||||
if err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
|
|
||||||
var r DeleteBigSwitchVnsDeviceResponse
|
|
||||||
if err := json.Unmarshal(resp, &r); err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
|
|
||||||
// If we have a async client, we need to wait for the async result
|
|
||||||
if s.cs.async {
|
|
||||||
b, err := s.cs.GetAsyncJobResult(r.JobID, s.cs.timeout)
|
|
||||||
if err != nil {
|
|
||||||
if err == AsyncTimeoutErr {
|
|
||||||
return &r, err
|
|
||||||
}
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
|
|
||||||
if err := json.Unmarshal(b, &r); err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return &r, nil
|
|
||||||
}
|
|
||||||
|
|
||||||
type DeleteBigSwitchVnsDeviceResponse struct {
|
|
||||||
JobID string `json:"jobid,omitempty"`
|
|
||||||
Displaytext string `json:"displaytext,omitempty"`
|
|
||||||
Success bool `json:"success,omitempty"`
|
|
||||||
}
|
|
||||||
|
|
||||||
type ListBigSwitchVnsDevicesParams struct {
|
|
||||||
p map[string]interface{}
|
|
||||||
}
|
|
||||||
|
|
||||||
func (p *ListBigSwitchVnsDevicesParams) toURLValues() url.Values {
|
|
||||||
u := url.Values{}
|
|
||||||
if p.p == nil {
|
|
||||||
return u
|
|
||||||
}
|
|
||||||
if v, found := p.p["keyword"]; found {
|
|
||||||
u.Set("keyword", v.(string))
|
|
||||||
}
|
|
||||||
if v, found := p.p["page"]; found {
|
|
||||||
vv := strconv.Itoa(v.(int))
|
|
||||||
u.Set("page", vv)
|
|
||||||
}
|
|
||||||
if v, found := p.p["pagesize"]; found {
|
|
||||||
vv := strconv.Itoa(v.(int))
|
|
||||||
u.Set("pagesize", vv)
|
|
||||||
}
|
|
||||||
if v, found := p.p["physicalnetworkid"]; found {
|
|
||||||
u.Set("physicalnetworkid", v.(string))
|
|
||||||
}
|
|
||||||
if v, found := p.p["vnsdeviceid"]; found {
|
|
||||||
u.Set("vnsdeviceid", v.(string))
|
|
||||||
}
|
|
||||||
return u
|
|
||||||
}
|
|
||||||
|
|
||||||
func (p *ListBigSwitchVnsDevicesParams) SetKeyword(v string) {
|
|
||||||
if p.p == nil {
|
|
||||||
p.p = make(map[string]interface{})
|
|
||||||
}
|
|
||||||
p.p["keyword"] = v
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
func (p *ListBigSwitchVnsDevicesParams) SetPage(v int) {
|
|
||||||
if p.p == nil {
|
|
||||||
p.p = make(map[string]interface{})
|
|
||||||
}
|
|
||||||
p.p["page"] = v
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
func (p *ListBigSwitchVnsDevicesParams) SetPagesize(v int) {
|
|
||||||
if p.p == nil {
|
|
||||||
p.p = make(map[string]interface{})
|
|
||||||
}
|
|
||||||
p.p["pagesize"] = v
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
func (p *ListBigSwitchVnsDevicesParams) SetPhysicalnetworkid(v string) {
|
|
||||||
if p.p == nil {
|
|
||||||
p.p = make(map[string]interface{})
|
|
||||||
}
|
|
||||||
p.p["physicalnetworkid"] = v
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
func (p *ListBigSwitchVnsDevicesParams) SetVnsdeviceid(v string) {
|
|
||||||
if p.p == nil {
|
|
||||||
p.p = make(map[string]interface{})
|
|
||||||
}
|
|
||||||
p.p["vnsdeviceid"] = v
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// You should always use this function to get a new ListBigSwitchVnsDevicesParams instance,
|
|
||||||
// as then you are sure you have configured all required params
|
|
||||||
func (s *BigSwitchVNSService) NewListBigSwitchVnsDevicesParams() *ListBigSwitchVnsDevicesParams {
|
|
||||||
p := &ListBigSwitchVnsDevicesParams{}
|
|
||||||
p.p = make(map[string]interface{})
|
|
||||||
return p
|
|
||||||
}
|
|
||||||
|
|
||||||
// Lists BigSwitch Vns devices
|
|
||||||
func (s *BigSwitchVNSService) ListBigSwitchVnsDevices(p *ListBigSwitchVnsDevicesParams) (*ListBigSwitchVnsDevicesResponse, error) {
|
|
||||||
resp, err := s.cs.newRequest("listBigSwitchVnsDevices", p.toURLValues())
|
|
||||||
if err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
|
|
||||||
var r ListBigSwitchVnsDevicesResponse
|
|
||||||
if err := json.Unmarshal(resp, &r); err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
return &r, nil
|
|
||||||
}
|
|
||||||
|
|
||||||
type ListBigSwitchVnsDevicesResponse struct {
|
|
||||||
Count int `json:"count"`
|
|
||||||
BigSwitchVnsDevices []*BigSwitchVnsDevice `json:"bigswitchvnsdevice"`
|
|
||||||
}
|
|
||||||
|
|
||||||
type BigSwitchVnsDevice struct {
|
|
||||||
Bigswitchdevicename string `json:"bigswitchdevicename,omitempty"`
|
|
||||||
Hostname string `json:"hostname,omitempty"`
|
|
||||||
Physicalnetworkid string `json:"physicalnetworkid,omitempty"`
|
|
||||||
Provider string `json:"provider,omitempty"`
|
|
||||||
Vnsdeviceid string `json:"vnsdeviceid,omitempty"`
|
|
||||||
}
|
|
|
@ -51,6 +51,15 @@ func (p *AddClusterParams) toURLValues() url.Values {
|
||||||
if v, found := p.p["hypervisor"]; found {
|
if v, found := p.p["hypervisor"]; found {
|
||||||
u.Set("hypervisor", v.(string))
|
u.Set("hypervisor", v.(string))
|
||||||
}
|
}
|
||||||
|
if v, found := p.p["ovm3cluster"]; found {
|
||||||
|
u.Set("ovm3cluster", v.(string))
|
||||||
|
}
|
||||||
|
if v, found := p.p["ovm3pool"]; found {
|
||||||
|
u.Set("ovm3pool", v.(string))
|
||||||
|
}
|
||||||
|
if v, found := p.p["ovm3vip"]; found {
|
||||||
|
u.Set("ovm3vip", v.(string))
|
||||||
|
}
|
||||||
if v, found := p.p["password"]; found {
|
if v, found := p.p["password"]; found {
|
||||||
u.Set("password", v.(string))
|
u.Set("password", v.(string))
|
||||||
}
|
}
|
||||||
|
@ -132,6 +141,30 @@ func (p *AddClusterParams) SetHypervisor(v string) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *AddClusterParams) SetOvm3cluster(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["ovm3cluster"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *AddClusterParams) SetOvm3pool(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["ovm3pool"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *AddClusterParams) SetOvm3vip(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["ovm3vip"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
func (p *AddClusterParams) SetPassword(v string) {
|
func (p *AddClusterParams) SetPassword(v string) {
|
||||||
if p.p == nil {
|
if p.p == nil {
|
||||||
p.p = make(map[string]interface{})
|
p.p = make(map[string]interface{})
|
||||||
|
@ -260,6 +293,7 @@ type AddClusterResponse struct {
|
||||||
Managedstate string `json:"managedstate,omitempty"`
|
Managedstate string `json:"managedstate,omitempty"`
|
||||||
Memoryovercommitratio string `json:"memoryovercommitratio,omitempty"`
|
Memoryovercommitratio string `json:"memoryovercommitratio,omitempty"`
|
||||||
Name string `json:"name,omitempty"`
|
Name string `json:"name,omitempty"`
|
||||||
|
Ovm3vip string `json:"ovm3vip,omitempty"`
|
||||||
Podid string `json:"podid,omitempty"`
|
Podid string `json:"podid,omitempty"`
|
||||||
Podname string `json:"podname,omitempty"`
|
Podname string `json:"podname,omitempty"`
|
||||||
Zoneid string `json:"zoneid,omitempty"`
|
Zoneid string `json:"zoneid,omitempty"`
|
||||||
|
@ -439,6 +473,7 @@ type UpdateClusterResponse struct {
|
||||||
Managedstate string `json:"managedstate,omitempty"`
|
Managedstate string `json:"managedstate,omitempty"`
|
||||||
Memoryovercommitratio string `json:"memoryovercommitratio,omitempty"`
|
Memoryovercommitratio string `json:"memoryovercommitratio,omitempty"`
|
||||||
Name string `json:"name,omitempty"`
|
Name string `json:"name,omitempty"`
|
||||||
|
Ovm3vip string `json:"ovm3vip,omitempty"`
|
||||||
Podid string `json:"podid,omitempty"`
|
Podid string `json:"podid,omitempty"`
|
||||||
Podname string `json:"podname,omitempty"`
|
Podname string `json:"podname,omitempty"`
|
||||||
Zoneid string `json:"zoneid,omitempty"`
|
Zoneid string `json:"zoneid,omitempty"`
|
||||||
|
@ -711,6 +746,7 @@ type Cluster struct {
|
||||||
Managedstate string `json:"managedstate,omitempty"`
|
Managedstate string `json:"managedstate,omitempty"`
|
||||||
Memoryovercommitratio string `json:"memoryovercommitratio,omitempty"`
|
Memoryovercommitratio string `json:"memoryovercommitratio,omitempty"`
|
||||||
Name string `json:"name,omitempty"`
|
Name string `json:"name,omitempty"`
|
||||||
|
Ovm3vip string `json:"ovm3vip,omitempty"`
|
||||||
Podid string `json:"podid,omitempty"`
|
Podid string `json:"podid,omitempty"`
|
||||||
Podname string `json:"podname,omitempty"`
|
Podname string `json:"podname,omitempty"`
|
||||||
Zoneid string `json:"zoneid,omitempty"`
|
Zoneid string `json:"zoneid,omitempty"`
|
||||||
|
|
|
@ -322,6 +322,8 @@ type ListCapabilitiesResponse struct {
|
||||||
|
|
||||||
type Capability struct {
|
type Capability struct {
|
||||||
Allowusercreateprojects bool `json:"allowusercreateprojects,omitempty"`
|
Allowusercreateprojects bool `json:"allowusercreateprojects,omitempty"`
|
||||||
|
Allowuserexpungerecovervm bool `json:"allowuserexpungerecovervm,omitempty"`
|
||||||
|
Allowuserviewdestroyedvm bool `json:"allowuserviewdestroyedvm,omitempty"`
|
||||||
Apilimitinterval int `json:"apilimitinterval,omitempty"`
|
Apilimitinterval int `json:"apilimitinterval,omitempty"`
|
||||||
Apilimitmax int `json:"apilimitmax,omitempty"`
|
Apilimitmax int `json:"apilimitmax,omitempty"`
|
||||||
Cloudstackversion string `json:"cloudstackversion,omitempty"`
|
Cloudstackversion string `json:"cloudstackversion,omitempty"`
|
||||||
|
|
|
@ -86,6 +86,9 @@ func (p *CreateDiskOfferingParams) toURLValues() url.Values {
|
||||||
if v, found := p.p["name"]; found {
|
if v, found := p.p["name"]; found {
|
||||||
u.Set("name", v.(string))
|
u.Set("name", v.(string))
|
||||||
}
|
}
|
||||||
|
if v, found := p.p["provisioningtype"]; found {
|
||||||
|
u.Set("provisioningtype", v.(string))
|
||||||
|
}
|
||||||
if v, found := p.p["storagetype"]; found {
|
if v, found := p.p["storagetype"]; found {
|
||||||
u.Set("storagetype", v.(string))
|
u.Set("storagetype", v.(string))
|
||||||
}
|
}
|
||||||
|
@ -207,6 +210,14 @@ func (p *CreateDiskOfferingParams) SetName(v string) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *CreateDiskOfferingParams) SetProvisioningtype(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["provisioningtype"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
func (p *CreateDiskOfferingParams) SetStoragetype(v string) {
|
func (p *CreateDiskOfferingParams) SetStoragetype(v string) {
|
||||||
if p.p == nil {
|
if p.p == nil {
|
||||||
p.p = make(map[string]interface{})
|
p.p = make(map[string]interface{})
|
||||||
|
@ -266,6 +277,7 @@ type CreateDiskOfferingResponse struct {
|
||||||
Maxiops int64 `json:"maxiops,omitempty"`
|
Maxiops int64 `json:"maxiops,omitempty"`
|
||||||
Miniops int64 `json:"miniops,omitempty"`
|
Miniops int64 `json:"miniops,omitempty"`
|
||||||
Name string `json:"name,omitempty"`
|
Name string `json:"name,omitempty"`
|
||||||
|
Provisioningtype string `json:"provisioningtype,omitempty"`
|
||||||
Storagetype string `json:"storagetype,omitempty"`
|
Storagetype string `json:"storagetype,omitempty"`
|
||||||
Tags string `json:"tags,omitempty"`
|
Tags string `json:"tags,omitempty"`
|
||||||
}
|
}
|
||||||
|
@ -381,6 +393,7 @@ type UpdateDiskOfferingResponse struct {
|
||||||
Maxiops int64 `json:"maxiops,omitempty"`
|
Maxiops int64 `json:"maxiops,omitempty"`
|
||||||
Miniops int64 `json:"miniops,omitempty"`
|
Miniops int64 `json:"miniops,omitempty"`
|
||||||
Name string `json:"name,omitempty"`
|
Name string `json:"name,omitempty"`
|
||||||
|
Provisioningtype string `json:"provisioningtype,omitempty"`
|
||||||
Storagetype string `json:"storagetype,omitempty"`
|
Storagetype string `json:"storagetype,omitempty"`
|
||||||
Tags string `json:"tags,omitempty"`
|
Tags string `json:"tags,omitempty"`
|
||||||
}
|
}
|
||||||
|
@ -451,9 +464,17 @@ func (p *ListDiskOfferingsParams) toURLValues() url.Values {
|
||||||
if v, found := p.p["id"]; found {
|
if v, found := p.p["id"]; found {
|
||||||
u.Set("id", v.(string))
|
u.Set("id", v.(string))
|
||||||
}
|
}
|
||||||
|
if v, found := p.p["isrecursive"]; found {
|
||||||
|
vv := strconv.FormatBool(v.(bool))
|
||||||
|
u.Set("isrecursive", vv)
|
||||||
|
}
|
||||||
if v, found := p.p["keyword"]; found {
|
if v, found := p.p["keyword"]; found {
|
||||||
u.Set("keyword", v.(string))
|
u.Set("keyword", v.(string))
|
||||||
}
|
}
|
||||||
|
if v, found := p.p["listall"]; found {
|
||||||
|
vv := strconv.FormatBool(v.(bool))
|
||||||
|
u.Set("listall", vv)
|
||||||
|
}
|
||||||
if v, found := p.p["name"]; found {
|
if v, found := p.p["name"]; found {
|
||||||
u.Set("name", v.(string))
|
u.Set("name", v.(string))
|
||||||
}
|
}
|
||||||
|
@ -484,6 +505,14 @@ func (p *ListDiskOfferingsParams) SetId(v string) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *ListDiskOfferingsParams) SetIsrecursive(v bool) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["isrecursive"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
func (p *ListDiskOfferingsParams) SetKeyword(v string) {
|
func (p *ListDiskOfferingsParams) SetKeyword(v string) {
|
||||||
if p.p == nil {
|
if p.p == nil {
|
||||||
p.p = make(map[string]interface{})
|
p.p = make(map[string]interface{})
|
||||||
|
@ -492,6 +521,14 @@ func (p *ListDiskOfferingsParams) SetKeyword(v string) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *ListDiskOfferingsParams) SetListall(v bool) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["listall"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
func (p *ListDiskOfferingsParams) SetName(v string) {
|
func (p *ListDiskOfferingsParams) SetName(v string) {
|
||||||
if p.p == nil {
|
if p.p == nil {
|
||||||
p.p = make(map[string]interface{})
|
p.p = make(map[string]interface{})
|
||||||
|
@ -633,6 +670,7 @@ type DiskOffering struct {
|
||||||
Maxiops int64 `json:"maxiops,omitempty"`
|
Maxiops int64 `json:"maxiops,omitempty"`
|
||||||
Miniops int64 `json:"miniops,omitempty"`
|
Miniops int64 `json:"miniops,omitempty"`
|
||||||
Name string `json:"name,omitempty"`
|
Name string `json:"name,omitempty"`
|
||||||
|
Provisioningtype string `json:"provisioningtype,omitempty"`
|
||||||
Storagetype string `json:"storagetype,omitempty"`
|
Storagetype string `json:"storagetype,omitempty"`
|
||||||
Tags string `json:"tags,omitempty"`
|
Tags string `json:"tags,omitempty"`
|
||||||
}
|
}
|
||||||
|
|
|
@ -104,14 +104,51 @@ func (s *DomainService) CreateDomain(p *CreateDomainParams) (*CreateDomainRespon
|
||||||
}
|
}
|
||||||
|
|
||||||
type CreateDomainResponse struct {
|
type CreateDomainResponse struct {
|
||||||
Haschild bool `json:"haschild,omitempty"`
|
Cpuavailable string `json:"cpuavailable,omitempty"`
|
||||||
Id string `json:"id,omitempty"`
|
Cpulimit string `json:"cpulimit,omitempty"`
|
||||||
Level int `json:"level,omitempty"`
|
Cputotal int64 `json:"cputotal,omitempty"`
|
||||||
Name string `json:"name,omitempty"`
|
Haschild bool `json:"haschild,omitempty"`
|
||||||
Networkdomain string `json:"networkdomain,omitempty"`
|
Id string `json:"id,omitempty"`
|
||||||
Parentdomainid string `json:"parentdomainid,omitempty"`
|
Ipavailable string `json:"ipavailable,omitempty"`
|
||||||
Parentdomainname string `json:"parentdomainname,omitempty"`
|
Iplimit string `json:"iplimit,omitempty"`
|
||||||
Path string `json:"path,omitempty"`
|
Iptotal int64 `json:"iptotal,omitempty"`
|
||||||
|
Level int `json:"level,omitempty"`
|
||||||
|
Memoryavailable string `json:"memoryavailable,omitempty"`
|
||||||
|
Memorylimit string `json:"memorylimit,omitempty"`
|
||||||
|
Memorytotal int64 `json:"memorytotal,omitempty"`
|
||||||
|
Name string `json:"name,omitempty"`
|
||||||
|
Networkavailable string `json:"networkavailable,omitempty"`
|
||||||
|
Networkdomain string `json:"networkdomain,omitempty"`
|
||||||
|
Networklimit string `json:"networklimit,omitempty"`
|
||||||
|
Networktotal int64 `json:"networktotal,omitempty"`
|
||||||
|
Parentdomainid string `json:"parentdomainid,omitempty"`
|
||||||
|
Parentdomainname string `json:"parentdomainname,omitempty"`
|
||||||
|
Path string `json:"path,omitempty"`
|
||||||
|
Primarystorageavailable string `json:"primarystorageavailable,omitempty"`
|
||||||
|
Primarystoragelimit string `json:"primarystoragelimit,omitempty"`
|
||||||
|
Primarystoragetotal int64 `json:"primarystoragetotal,omitempty"`
|
||||||
|
Projectavailable string `json:"projectavailable,omitempty"`
|
||||||
|
Projectlimit string `json:"projectlimit,omitempty"`
|
||||||
|
Projecttotal int64 `json:"projecttotal,omitempty"`
|
||||||
|
Secondarystorageavailable string `json:"secondarystorageavailable,omitempty"`
|
||||||
|
Secondarystoragelimit string `json:"secondarystoragelimit,omitempty"`
|
||||||
|
Secondarystoragetotal int64 `json:"secondarystoragetotal,omitempty"`
|
||||||
|
Snapshotavailable string `json:"snapshotavailable,omitempty"`
|
||||||
|
Snapshotlimit string `json:"snapshotlimit,omitempty"`
|
||||||
|
Snapshottotal int64 `json:"snapshottotal,omitempty"`
|
||||||
|
State string `json:"state,omitempty"`
|
||||||
|
Templateavailable string `json:"templateavailable,omitempty"`
|
||||||
|
Templatelimit string `json:"templatelimit,omitempty"`
|
||||||
|
Templatetotal int64 `json:"templatetotal,omitempty"`
|
||||||
|
Vmavailable string `json:"vmavailable,omitempty"`
|
||||||
|
Vmlimit string `json:"vmlimit,omitempty"`
|
||||||
|
Vmtotal int64 `json:"vmtotal,omitempty"`
|
||||||
|
Volumeavailable string `json:"volumeavailable,omitempty"`
|
||||||
|
Volumelimit string `json:"volumelimit,omitempty"`
|
||||||
|
Volumetotal int64 `json:"volumetotal,omitempty"`
|
||||||
|
Vpcavailable string `json:"vpcavailable,omitempty"`
|
||||||
|
Vpclimit string `json:"vpclimit,omitempty"`
|
||||||
|
Vpctotal int64 `json:"vpctotal,omitempty"`
|
||||||
}
|
}
|
||||||
|
|
||||||
type UpdateDomainParams struct {
|
type UpdateDomainParams struct {
|
||||||
|
@ -183,14 +220,51 @@ func (s *DomainService) UpdateDomain(p *UpdateDomainParams) (*UpdateDomainRespon
|
||||||
}
|
}
|
||||||
|
|
||||||
type UpdateDomainResponse struct {
|
type UpdateDomainResponse struct {
|
||||||
Haschild bool `json:"haschild,omitempty"`
|
Cpuavailable string `json:"cpuavailable,omitempty"`
|
||||||
Id string `json:"id,omitempty"`
|
Cpulimit string `json:"cpulimit,omitempty"`
|
||||||
Level int `json:"level,omitempty"`
|
Cputotal int64 `json:"cputotal,omitempty"`
|
||||||
Name string `json:"name,omitempty"`
|
Haschild bool `json:"haschild,omitempty"`
|
||||||
Networkdomain string `json:"networkdomain,omitempty"`
|
Id string `json:"id,omitempty"`
|
||||||
Parentdomainid string `json:"parentdomainid,omitempty"`
|
Ipavailable string `json:"ipavailable,omitempty"`
|
||||||
Parentdomainname string `json:"parentdomainname,omitempty"`
|
Iplimit string `json:"iplimit,omitempty"`
|
||||||
Path string `json:"path,omitempty"`
|
Iptotal int64 `json:"iptotal,omitempty"`
|
||||||
|
Level int `json:"level,omitempty"`
|
||||||
|
Memoryavailable string `json:"memoryavailable,omitempty"`
|
||||||
|
Memorylimit string `json:"memorylimit,omitempty"`
|
||||||
|
Memorytotal int64 `json:"memorytotal,omitempty"`
|
||||||
|
Name string `json:"name,omitempty"`
|
||||||
|
Networkavailable string `json:"networkavailable,omitempty"`
|
||||||
|
Networkdomain string `json:"networkdomain,omitempty"`
|
||||||
|
Networklimit string `json:"networklimit,omitempty"`
|
||||||
|
Networktotal int64 `json:"networktotal,omitempty"`
|
||||||
|
Parentdomainid string `json:"parentdomainid,omitempty"`
|
||||||
|
Parentdomainname string `json:"parentdomainname,omitempty"`
|
||||||
|
Path string `json:"path,omitempty"`
|
||||||
|
Primarystorageavailable string `json:"primarystorageavailable,omitempty"`
|
||||||
|
Primarystoragelimit string `json:"primarystoragelimit,omitempty"`
|
||||||
|
Primarystoragetotal int64 `json:"primarystoragetotal,omitempty"`
|
||||||
|
Projectavailable string `json:"projectavailable,omitempty"`
|
||||||
|
Projectlimit string `json:"projectlimit,omitempty"`
|
||||||
|
Projecttotal int64 `json:"projecttotal,omitempty"`
|
||||||
|
Secondarystorageavailable string `json:"secondarystorageavailable,omitempty"`
|
||||||
|
Secondarystoragelimit string `json:"secondarystoragelimit,omitempty"`
|
||||||
|
Secondarystoragetotal int64 `json:"secondarystoragetotal,omitempty"`
|
||||||
|
Snapshotavailable string `json:"snapshotavailable,omitempty"`
|
||||||
|
Snapshotlimit string `json:"snapshotlimit,omitempty"`
|
||||||
|
Snapshottotal int64 `json:"snapshottotal,omitempty"`
|
||||||
|
State string `json:"state,omitempty"`
|
||||||
|
Templateavailable string `json:"templateavailable,omitempty"`
|
||||||
|
Templatelimit string `json:"templatelimit,omitempty"`
|
||||||
|
Templatetotal int64 `json:"templatetotal,omitempty"`
|
||||||
|
Vmavailable string `json:"vmavailable,omitempty"`
|
||||||
|
Vmlimit string `json:"vmlimit,omitempty"`
|
||||||
|
Vmtotal int64 `json:"vmtotal,omitempty"`
|
||||||
|
Volumeavailable string `json:"volumeavailable,omitempty"`
|
||||||
|
Volumelimit string `json:"volumelimit,omitempty"`
|
||||||
|
Volumetotal int64 `json:"volumetotal,omitempty"`
|
||||||
|
Vpcavailable string `json:"vpcavailable,omitempty"`
|
||||||
|
Vpclimit string `json:"vpclimit,omitempty"`
|
||||||
|
Vpctotal int64 `json:"vpctotal,omitempty"`
|
||||||
}
|
}
|
||||||
|
|
||||||
type DeleteDomainParams struct {
|
type DeleteDomainParams struct {
|
||||||
|
@ -464,14 +538,51 @@ type ListDomainsResponse struct {
|
||||||
}
|
}
|
||||||
|
|
||||||
type Domain struct {
|
type Domain struct {
|
||||||
Haschild bool `json:"haschild,omitempty"`
|
Cpuavailable string `json:"cpuavailable,omitempty"`
|
||||||
Id string `json:"id,omitempty"`
|
Cpulimit string `json:"cpulimit,omitempty"`
|
||||||
Level int `json:"level,omitempty"`
|
Cputotal int64 `json:"cputotal,omitempty"`
|
||||||
Name string `json:"name,omitempty"`
|
Haschild bool `json:"haschild,omitempty"`
|
||||||
Networkdomain string `json:"networkdomain,omitempty"`
|
Id string `json:"id,omitempty"`
|
||||||
Parentdomainid string `json:"parentdomainid,omitempty"`
|
Ipavailable string `json:"ipavailable,omitempty"`
|
||||||
Parentdomainname string `json:"parentdomainname,omitempty"`
|
Iplimit string `json:"iplimit,omitempty"`
|
||||||
Path string `json:"path,omitempty"`
|
Iptotal int64 `json:"iptotal,omitempty"`
|
||||||
|
Level int `json:"level,omitempty"`
|
||||||
|
Memoryavailable string `json:"memoryavailable,omitempty"`
|
||||||
|
Memorylimit string `json:"memorylimit,omitempty"`
|
||||||
|
Memorytotal int64 `json:"memorytotal,omitempty"`
|
||||||
|
Name string `json:"name,omitempty"`
|
||||||
|
Networkavailable string `json:"networkavailable,omitempty"`
|
||||||
|
Networkdomain string `json:"networkdomain,omitempty"`
|
||||||
|
Networklimit string `json:"networklimit,omitempty"`
|
||||||
|
Networktotal int64 `json:"networktotal,omitempty"`
|
||||||
|
Parentdomainid string `json:"parentdomainid,omitempty"`
|
||||||
|
Parentdomainname string `json:"parentdomainname,omitempty"`
|
||||||
|
Path string `json:"path,omitempty"`
|
||||||
|
Primarystorageavailable string `json:"primarystorageavailable,omitempty"`
|
||||||
|
Primarystoragelimit string `json:"primarystoragelimit,omitempty"`
|
||||||
|
Primarystoragetotal int64 `json:"primarystoragetotal,omitempty"`
|
||||||
|
Projectavailable string `json:"projectavailable,omitempty"`
|
||||||
|
Projectlimit string `json:"projectlimit,omitempty"`
|
||||||
|
Projecttotal int64 `json:"projecttotal,omitempty"`
|
||||||
|
Secondarystorageavailable string `json:"secondarystorageavailable,omitempty"`
|
||||||
|
Secondarystoragelimit string `json:"secondarystoragelimit,omitempty"`
|
||||||
|
Secondarystoragetotal int64 `json:"secondarystoragetotal,omitempty"`
|
||||||
|
Snapshotavailable string `json:"snapshotavailable,omitempty"`
|
||||||
|
Snapshotlimit string `json:"snapshotlimit,omitempty"`
|
||||||
|
Snapshottotal int64 `json:"snapshottotal,omitempty"`
|
||||||
|
State string `json:"state,omitempty"`
|
||||||
|
Templateavailable string `json:"templateavailable,omitempty"`
|
||||||
|
Templatelimit string `json:"templatelimit,omitempty"`
|
||||||
|
Templatetotal int64 `json:"templatetotal,omitempty"`
|
||||||
|
Vmavailable string `json:"vmavailable,omitempty"`
|
||||||
|
Vmlimit string `json:"vmlimit,omitempty"`
|
||||||
|
Vmtotal int64 `json:"vmtotal,omitempty"`
|
||||||
|
Volumeavailable string `json:"volumeavailable,omitempty"`
|
||||||
|
Volumelimit string `json:"volumelimit,omitempty"`
|
||||||
|
Volumetotal int64 `json:"volumetotal,omitempty"`
|
||||||
|
Vpcavailable string `json:"vpcavailable,omitempty"`
|
||||||
|
Vpclimit string `json:"vpclimit,omitempty"`
|
||||||
|
Vpctotal int64 `json:"vpctotal,omitempty"`
|
||||||
}
|
}
|
||||||
|
|
||||||
type ListDomainChildrenParams struct {
|
type ListDomainChildrenParams struct {
|
||||||
|
@ -666,12 +777,151 @@ type ListDomainChildrenResponse struct {
|
||||||
}
|
}
|
||||||
|
|
||||||
type DomainChildren struct {
|
type DomainChildren struct {
|
||||||
Haschild bool `json:"haschild,omitempty"`
|
Cpuavailable string `json:"cpuavailable,omitempty"`
|
||||||
Id string `json:"id,omitempty"`
|
Cpulimit string `json:"cpulimit,omitempty"`
|
||||||
Level int `json:"level,omitempty"`
|
Cputotal int64 `json:"cputotal,omitempty"`
|
||||||
Name string `json:"name,omitempty"`
|
Haschild bool `json:"haschild,omitempty"`
|
||||||
Networkdomain string `json:"networkdomain,omitempty"`
|
Id string `json:"id,omitempty"`
|
||||||
Parentdomainid string `json:"parentdomainid,omitempty"`
|
Ipavailable string `json:"ipavailable,omitempty"`
|
||||||
Parentdomainname string `json:"parentdomainname,omitempty"`
|
Iplimit string `json:"iplimit,omitempty"`
|
||||||
Path string `json:"path,omitempty"`
|
Iptotal int64 `json:"iptotal,omitempty"`
|
||||||
|
Level int `json:"level,omitempty"`
|
||||||
|
Memoryavailable string `json:"memoryavailable,omitempty"`
|
||||||
|
Memorylimit string `json:"memorylimit,omitempty"`
|
||||||
|
Memorytotal int64 `json:"memorytotal,omitempty"`
|
||||||
|
Name string `json:"name,omitempty"`
|
||||||
|
Networkavailable string `json:"networkavailable,omitempty"`
|
||||||
|
Networkdomain string `json:"networkdomain,omitempty"`
|
||||||
|
Networklimit string `json:"networklimit,omitempty"`
|
||||||
|
Networktotal int64 `json:"networktotal,omitempty"`
|
||||||
|
Parentdomainid string `json:"parentdomainid,omitempty"`
|
||||||
|
Parentdomainname string `json:"parentdomainname,omitempty"`
|
||||||
|
Path string `json:"path,omitempty"`
|
||||||
|
Primarystorageavailable string `json:"primarystorageavailable,omitempty"`
|
||||||
|
Primarystoragelimit string `json:"primarystoragelimit,omitempty"`
|
||||||
|
Primarystoragetotal int64 `json:"primarystoragetotal,omitempty"`
|
||||||
|
Projectavailable string `json:"projectavailable,omitempty"`
|
||||||
|
Projectlimit string `json:"projectlimit,omitempty"`
|
||||||
|
Projecttotal int64 `json:"projecttotal,omitempty"`
|
||||||
|
Secondarystorageavailable string `json:"secondarystorageavailable,omitempty"`
|
||||||
|
Secondarystoragelimit string `json:"secondarystoragelimit,omitempty"`
|
||||||
|
Secondarystoragetotal int64 `json:"secondarystoragetotal,omitempty"`
|
||||||
|
Snapshotavailable string `json:"snapshotavailable,omitempty"`
|
||||||
|
Snapshotlimit string `json:"snapshotlimit,omitempty"`
|
||||||
|
Snapshottotal int64 `json:"snapshottotal,omitempty"`
|
||||||
|
State string `json:"state,omitempty"`
|
||||||
|
Templateavailable string `json:"templateavailable,omitempty"`
|
||||||
|
Templatelimit string `json:"templatelimit,omitempty"`
|
||||||
|
Templatetotal int64 `json:"templatetotal,omitempty"`
|
||||||
|
Vmavailable string `json:"vmavailable,omitempty"`
|
||||||
|
Vmlimit string `json:"vmlimit,omitempty"`
|
||||||
|
Vmtotal int64 `json:"vmtotal,omitempty"`
|
||||||
|
Volumeavailable string `json:"volumeavailable,omitempty"`
|
||||||
|
Volumelimit string `json:"volumelimit,omitempty"`
|
||||||
|
Volumetotal int64 `json:"volumetotal,omitempty"`
|
||||||
|
Vpcavailable string `json:"vpcavailable,omitempty"`
|
||||||
|
Vpclimit string `json:"vpclimit,omitempty"`
|
||||||
|
Vpctotal int64 `json:"vpctotal,omitempty"`
|
||||||
|
}
|
||||||
|
|
||||||
|
type LinkDomainToLdapParams struct {
|
||||||
|
p map[string]interface{}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *LinkDomainToLdapParams) toURLValues() url.Values {
|
||||||
|
u := url.Values{}
|
||||||
|
if p.p == nil {
|
||||||
|
return u
|
||||||
|
}
|
||||||
|
if v, found := p.p["accounttype"]; found {
|
||||||
|
vv := strconv.Itoa(v.(int))
|
||||||
|
u.Set("accounttype", vv)
|
||||||
|
}
|
||||||
|
if v, found := p.p["admin"]; found {
|
||||||
|
u.Set("admin", v.(string))
|
||||||
|
}
|
||||||
|
if v, found := p.p["domainid"]; found {
|
||||||
|
u.Set("domainid", v.(string))
|
||||||
|
}
|
||||||
|
if v, found := p.p["name"]; found {
|
||||||
|
u.Set("name", v.(string))
|
||||||
|
}
|
||||||
|
if v, found := p.p["type"]; found {
|
||||||
|
u.Set("type", v.(string))
|
||||||
|
}
|
||||||
|
return u
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *LinkDomainToLdapParams) SetAccounttype(v int) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["accounttype"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *LinkDomainToLdapParams) SetAdmin(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["admin"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *LinkDomainToLdapParams) SetDomainid(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["domainid"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *LinkDomainToLdapParams) SetName(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["name"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *LinkDomainToLdapParams) SetType(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["domainType"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// You should always use this function to get a new LinkDomainToLdapParams instance,
|
||||||
|
// as then you are sure you have configured all required params
|
||||||
|
func (s *DomainService) NewLinkDomainToLdapParams(accounttype int, domainid string, name string, domainType string) *LinkDomainToLdapParams {
|
||||||
|
p := &LinkDomainToLdapParams{}
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
p.p["accounttype"] = accounttype
|
||||||
|
p.p["domainid"] = domainid
|
||||||
|
p.p["name"] = name
|
||||||
|
p.p["domainType"] = domainType
|
||||||
|
return p
|
||||||
|
}
|
||||||
|
|
||||||
|
// link an existing cloudstack domain to group or OU in ldap
|
||||||
|
func (s *DomainService) LinkDomainToLdap(p *LinkDomainToLdapParams) (*LinkDomainToLdapResponse, error) {
|
||||||
|
resp, err := s.cs.newRequest("linkDomainToLdap", p.toURLValues())
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
|
var r LinkDomainToLdapResponse
|
||||||
|
if err := json.Unmarshal(resp, &r); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
return &r, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
type LinkDomainToLdapResponse struct {
|
||||||
|
Accountid string `json:"accountid,omitempty"`
|
||||||
|
Accounttype int `json:"accounttype,omitempty"`
|
||||||
|
Domainid int64 `json:"domainid,omitempty"`
|
||||||
|
Name string `json:"name,omitempty"`
|
||||||
|
Type string `json:"type,omitempty"`
|
||||||
}
|
}
|
||||||
|
|
|
@ -24,6 +24,56 @@ import (
|
||||||
"strings"
|
"strings"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
// Helper function for maintaining backwards compatibility
|
||||||
|
func convertFirewallServiceResponse(b []byte) ([]byte, error) {
|
||||||
|
var raw map[string]interface{}
|
||||||
|
if err := json.Unmarshal(b, &raw); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
|
if _, ok := raw["firewallrule"]; ok {
|
||||||
|
return convertFirewallServiceListResponse(b)
|
||||||
|
}
|
||||||
|
|
||||||
|
for _, k := range []string{"endport", "startport"} {
|
||||||
|
if sVal, ok := raw[k].(string); ok {
|
||||||
|
iVal, err := strconv.Atoi(sVal)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
raw[k] = iVal
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return json.Marshal(raw)
|
||||||
|
}
|
||||||
|
|
||||||
|
// Helper function for maintaining backwards compatibility
|
||||||
|
func convertFirewallServiceListResponse(b []byte) ([]byte, error) {
|
||||||
|
var rawList struct {
|
||||||
|
Count int `json:"count"`
|
||||||
|
FirewallRules []map[string]interface{} `json:"firewallrule"`
|
||||||
|
}
|
||||||
|
|
||||||
|
if err := json.Unmarshal(b, &rawList); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
|
for _, r := range rawList.FirewallRules {
|
||||||
|
for _, k := range []string{"endport", "startport"} {
|
||||||
|
if sVal, ok := r[k].(string); ok {
|
||||||
|
iVal, err := strconv.Atoi(sVal)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
r[k] = iVal
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return json.Marshal(rawList)
|
||||||
|
}
|
||||||
|
|
||||||
type ListPortForwardingRulesParams struct {
|
type ListPortForwardingRulesParams struct {
|
||||||
p map[string]interface{}
|
p map[string]interface{}
|
||||||
}
|
}
|
||||||
|
@ -246,6 +296,11 @@ func (s *FirewallService) ListPortForwardingRules(p *ListPortForwardingRulesPara
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
resp, err = convertFirewallServiceResponse(resp)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
var r ListPortForwardingRulesResponse
|
var r ListPortForwardingRulesResponse
|
||||||
if err := json.Unmarshal(resp, &r); err != nil {
|
if err := json.Unmarshal(resp, &r); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
|
@ -460,6 +515,11 @@ func (s *FirewallService) CreatePortForwardingRule(p *CreatePortForwardingRulePa
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
resp, err = convertFirewallServiceResponse(resp)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
var r CreatePortForwardingRuleResponse
|
var r CreatePortForwardingRuleResponse
|
||||||
if err := json.Unmarshal(resp, &r); err != nil {
|
if err := json.Unmarshal(resp, &r); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
|
@ -480,6 +540,11 @@ func (s *FirewallService) CreatePortForwardingRule(p *CreatePortForwardingRulePa
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
b, err = convertFirewallServiceResponse(b)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
if err := json.Unmarshal(b, &r); err != nil {
|
if err := json.Unmarshal(b, &r); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
@ -558,6 +623,11 @@ func (s *FirewallService) DeletePortForwardingRule(p *DeletePortForwardingRulePa
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
resp, err = convertFirewallServiceResponse(resp)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
var r DeletePortForwardingRuleResponse
|
var r DeletePortForwardingRuleResponse
|
||||||
if err := json.Unmarshal(resp, &r); err != nil {
|
if err := json.Unmarshal(resp, &r); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
|
@ -573,6 +643,11 @@ func (s *FirewallService) DeletePortForwardingRule(p *DeletePortForwardingRulePa
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
b, err = convertFirewallServiceResponse(b)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
if err := json.Unmarshal(b, &r); err != nil {
|
if err := json.Unmarshal(b, &r); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
@ -605,24 +680,16 @@ func (p *UpdatePortForwardingRuleParams) toURLValues() url.Values {
|
||||||
if v, found := p.p["id"]; found {
|
if v, found := p.p["id"]; found {
|
||||||
u.Set("id", v.(string))
|
u.Set("id", v.(string))
|
||||||
}
|
}
|
||||||
if v, found := p.p["ipaddressid"]; found {
|
|
||||||
u.Set("ipaddressid", v.(string))
|
|
||||||
}
|
|
||||||
if v, found := p.p["privateip"]; found {
|
|
||||||
u.Set("privateip", v.(string))
|
|
||||||
}
|
|
||||||
if v, found := p.p["privateport"]; found {
|
if v, found := p.p["privateport"]; found {
|
||||||
u.Set("privateport", v.(string))
|
vv := strconv.Itoa(v.(int))
|
||||||
}
|
u.Set("privateport", vv)
|
||||||
if v, found := p.p["protocol"]; found {
|
|
||||||
u.Set("protocol", v.(string))
|
|
||||||
}
|
|
||||||
if v, found := p.p["publicport"]; found {
|
|
||||||
u.Set("publicport", v.(string))
|
|
||||||
}
|
}
|
||||||
if v, found := p.p["virtualmachineid"]; found {
|
if v, found := p.p["virtualmachineid"]; found {
|
||||||
u.Set("virtualmachineid", v.(string))
|
u.Set("virtualmachineid", v.(string))
|
||||||
}
|
}
|
||||||
|
if v, found := p.p["vmguestip"]; found {
|
||||||
|
u.Set("vmguestip", v.(string))
|
||||||
|
}
|
||||||
return u
|
return u
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -650,23 +717,7 @@ func (p *UpdatePortForwardingRuleParams) SetId(v string) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
func (p *UpdatePortForwardingRuleParams) SetIpaddressid(v string) {
|
func (p *UpdatePortForwardingRuleParams) SetPrivateport(v int) {
|
||||||
if p.p == nil {
|
|
||||||
p.p = make(map[string]interface{})
|
|
||||||
}
|
|
||||||
p.p["ipaddressid"] = v
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
func (p *UpdatePortForwardingRuleParams) SetPrivateip(v string) {
|
|
||||||
if p.p == nil {
|
|
||||||
p.p = make(map[string]interface{})
|
|
||||||
}
|
|
||||||
p.p["privateip"] = v
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
func (p *UpdatePortForwardingRuleParams) SetPrivateport(v string) {
|
|
||||||
if p.p == nil {
|
if p.p == nil {
|
||||||
p.p = make(map[string]interface{})
|
p.p = make(map[string]interface{})
|
||||||
}
|
}
|
||||||
|
@ -674,22 +725,6 @@ func (p *UpdatePortForwardingRuleParams) SetPrivateport(v string) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
func (p *UpdatePortForwardingRuleParams) SetProtocol(v string) {
|
|
||||||
if p.p == nil {
|
|
||||||
p.p = make(map[string]interface{})
|
|
||||||
}
|
|
||||||
p.p["protocol"] = v
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
func (p *UpdatePortForwardingRuleParams) SetPublicport(v string) {
|
|
||||||
if p.p == nil {
|
|
||||||
p.p = make(map[string]interface{})
|
|
||||||
}
|
|
||||||
p.p["publicport"] = v
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
func (p *UpdatePortForwardingRuleParams) SetVirtualmachineid(v string) {
|
func (p *UpdatePortForwardingRuleParams) SetVirtualmachineid(v string) {
|
||||||
if p.p == nil {
|
if p.p == nil {
|
||||||
p.p = make(map[string]interface{})
|
p.p = make(map[string]interface{})
|
||||||
|
@ -698,6 +733,14 @@ func (p *UpdatePortForwardingRuleParams) SetVirtualmachineid(v string) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *UpdatePortForwardingRuleParams) SetVmguestip(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["vmguestip"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
// You should always use this function to get a new UpdatePortForwardingRuleParams instance,
|
// You should always use this function to get a new UpdatePortForwardingRuleParams instance,
|
||||||
// as then you are sure you have configured all required params
|
// as then you are sure you have configured all required params
|
||||||
func (s *FirewallService) NewUpdatePortForwardingRuleParams(id string) *UpdatePortForwardingRuleParams {
|
func (s *FirewallService) NewUpdatePortForwardingRuleParams(id string) *UpdatePortForwardingRuleParams {
|
||||||
|
@ -707,13 +750,18 @@ func (s *FirewallService) NewUpdatePortForwardingRuleParams(id string) *UpdatePo
|
||||||
return p
|
return p
|
||||||
}
|
}
|
||||||
|
|
||||||
// Updates a port forwarding rule. Only the private port and the virtual machine can be updated.
|
// Updates a port forwarding rule. Only the private port and the virtual machine can be updated.
|
||||||
func (s *FirewallService) UpdatePortForwardingRule(p *UpdatePortForwardingRuleParams) (*UpdatePortForwardingRuleResponse, error) {
|
func (s *FirewallService) UpdatePortForwardingRule(p *UpdatePortForwardingRuleParams) (*UpdatePortForwardingRuleResponse, error) {
|
||||||
resp, err := s.cs.newRequest("updatePortForwardingRule", p.toURLValues())
|
resp, err := s.cs.newRequest("updatePortForwardingRule", p.toURLValues())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
resp, err = convertFirewallServiceResponse(resp)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
var r UpdatePortForwardingRuleResponse
|
var r UpdatePortForwardingRuleResponse
|
||||||
if err := json.Unmarshal(resp, &r); err != nil {
|
if err := json.Unmarshal(resp, &r); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
|
@ -734,6 +782,11 @@ func (s *FirewallService) UpdatePortForwardingRule(p *UpdatePortForwardingRulePa
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
b, err = convertFirewallServiceResponse(b)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
if err := json.Unmarshal(b, &r); err != nil {
|
if err := json.Unmarshal(b, &r); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
@ -900,13 +953,18 @@ func (s *FirewallService) NewCreateFirewallRuleParams(ipaddressid string, protoc
|
||||||
return p
|
return p
|
||||||
}
|
}
|
||||||
|
|
||||||
// Creates a firewall rule for a given ip address
|
// Creates a firewall rule for a given IP address
|
||||||
func (s *FirewallService) CreateFirewallRule(p *CreateFirewallRuleParams) (*CreateFirewallRuleResponse, error) {
|
func (s *FirewallService) CreateFirewallRule(p *CreateFirewallRuleParams) (*CreateFirewallRuleResponse, error) {
|
||||||
resp, err := s.cs.newRequest("createFirewallRule", p.toURLValues())
|
resp, err := s.cs.newRequest("createFirewallRule", p.toURLValues())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
resp, err = convertFirewallServiceResponse(resp)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
var r CreateFirewallRuleResponse
|
var r CreateFirewallRuleResponse
|
||||||
if err := json.Unmarshal(resp, &r); err != nil {
|
if err := json.Unmarshal(resp, &r); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
|
@ -927,6 +985,11 @@ func (s *FirewallService) CreateFirewallRule(p *CreateFirewallRuleParams) (*Crea
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
b, err = convertFirewallServiceResponse(b)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
if err := json.Unmarshal(b, &r); err != nil {
|
if err := json.Unmarshal(b, &r); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
@ -937,7 +1000,7 @@ func (s *FirewallService) CreateFirewallRule(p *CreateFirewallRuleParams) (*Crea
|
||||||
type CreateFirewallRuleResponse struct {
|
type CreateFirewallRuleResponse struct {
|
||||||
JobID string `json:"jobid,omitempty"`
|
JobID string `json:"jobid,omitempty"`
|
||||||
Cidrlist string `json:"cidrlist,omitempty"`
|
Cidrlist string `json:"cidrlist,omitempty"`
|
||||||
Endport string `json:"endport,omitempty"`
|
Endport int `json:"endport,omitempty"`
|
||||||
Fordisplay bool `json:"fordisplay,omitempty"`
|
Fordisplay bool `json:"fordisplay,omitempty"`
|
||||||
Icmpcode int `json:"icmpcode,omitempty"`
|
Icmpcode int `json:"icmpcode,omitempty"`
|
||||||
Icmptype int `json:"icmptype,omitempty"`
|
Icmptype int `json:"icmptype,omitempty"`
|
||||||
|
@ -946,7 +1009,7 @@ type CreateFirewallRuleResponse struct {
|
||||||
Ipaddressid string `json:"ipaddressid,omitempty"`
|
Ipaddressid string `json:"ipaddressid,omitempty"`
|
||||||
Networkid string `json:"networkid,omitempty"`
|
Networkid string `json:"networkid,omitempty"`
|
||||||
Protocol string `json:"protocol,omitempty"`
|
Protocol string `json:"protocol,omitempty"`
|
||||||
Startport string `json:"startport,omitempty"`
|
Startport int `json:"startport,omitempty"`
|
||||||
State string `json:"state,omitempty"`
|
State string `json:"state,omitempty"`
|
||||||
Tags []struct {
|
Tags []struct {
|
||||||
Account string `json:"account,omitempty"`
|
Account string `json:"account,omitempty"`
|
||||||
|
@ -1001,6 +1064,11 @@ func (s *FirewallService) DeleteFirewallRule(p *DeleteFirewallRuleParams) (*Dele
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
resp, err = convertFirewallServiceResponse(resp)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
var r DeleteFirewallRuleResponse
|
var r DeleteFirewallRuleResponse
|
||||||
if err := json.Unmarshal(resp, &r); err != nil {
|
if err := json.Unmarshal(resp, &r); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
|
@ -1016,6 +1084,11 @@ func (s *FirewallService) DeleteFirewallRule(p *DeleteFirewallRuleParams) (*Dele
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
b, err = convertFirewallServiceResponse(b)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
if err := json.Unmarshal(b, &r); err != nil {
|
if err := json.Unmarshal(b, &r); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
@ -1251,6 +1324,11 @@ func (s *FirewallService) ListFirewallRules(p *ListFirewallRulesParams) (*ListFi
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
resp, err = convertFirewallServiceResponse(resp)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
var r ListFirewallRulesResponse
|
var r ListFirewallRulesResponse
|
||||||
if err := json.Unmarshal(resp, &r); err != nil {
|
if err := json.Unmarshal(resp, &r); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
|
@ -1265,7 +1343,7 @@ type ListFirewallRulesResponse struct {
|
||||||
|
|
||||||
type FirewallRule struct {
|
type FirewallRule struct {
|
||||||
Cidrlist string `json:"cidrlist,omitempty"`
|
Cidrlist string `json:"cidrlist,omitempty"`
|
||||||
Endport string `json:"endport,omitempty"`
|
Endport int `json:"endport,omitempty"`
|
||||||
Fordisplay bool `json:"fordisplay,omitempty"`
|
Fordisplay bool `json:"fordisplay,omitempty"`
|
||||||
Icmpcode int `json:"icmpcode,omitempty"`
|
Icmpcode int `json:"icmpcode,omitempty"`
|
||||||
Icmptype int `json:"icmptype,omitempty"`
|
Icmptype int `json:"icmptype,omitempty"`
|
||||||
|
@ -1274,7 +1352,7 @@ type FirewallRule struct {
|
||||||
Ipaddressid string `json:"ipaddressid,omitempty"`
|
Ipaddressid string `json:"ipaddressid,omitempty"`
|
||||||
Networkid string `json:"networkid,omitempty"`
|
Networkid string `json:"networkid,omitempty"`
|
||||||
Protocol string `json:"protocol,omitempty"`
|
Protocol string `json:"protocol,omitempty"`
|
||||||
Startport string `json:"startport,omitempty"`
|
Startport int `json:"startport,omitempty"`
|
||||||
State string `json:"state,omitempty"`
|
State string `json:"state,omitempty"`
|
||||||
Tags []struct {
|
Tags []struct {
|
||||||
Account string `json:"account,omitempty"`
|
Account string `json:"account,omitempty"`
|
||||||
|
@ -1352,6 +1430,11 @@ func (s *FirewallService) UpdateFirewallRule(p *UpdateFirewallRuleParams) (*Upda
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
resp, err = convertFirewallServiceResponse(resp)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
var r UpdateFirewallRuleResponse
|
var r UpdateFirewallRuleResponse
|
||||||
if err := json.Unmarshal(resp, &r); err != nil {
|
if err := json.Unmarshal(resp, &r); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
|
@ -1372,6 +1455,11 @@ func (s *FirewallService) UpdateFirewallRule(p *UpdateFirewallRuleParams) (*Upda
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
b, err = convertFirewallServiceResponse(b)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
if err := json.Unmarshal(b, &r); err != nil {
|
if err := json.Unmarshal(b, &r); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
@ -1382,7 +1470,7 @@ func (s *FirewallService) UpdateFirewallRule(p *UpdateFirewallRuleParams) (*Upda
|
||||||
type UpdateFirewallRuleResponse struct {
|
type UpdateFirewallRuleResponse struct {
|
||||||
JobID string `json:"jobid,omitempty"`
|
JobID string `json:"jobid,omitempty"`
|
||||||
Cidrlist string `json:"cidrlist,omitempty"`
|
Cidrlist string `json:"cidrlist,omitempty"`
|
||||||
Endport string `json:"endport,omitempty"`
|
Endport int `json:"endport,omitempty"`
|
||||||
Fordisplay bool `json:"fordisplay,omitempty"`
|
Fordisplay bool `json:"fordisplay,omitempty"`
|
||||||
Icmpcode int `json:"icmpcode,omitempty"`
|
Icmpcode int `json:"icmpcode,omitempty"`
|
||||||
Icmptype int `json:"icmptype,omitempty"`
|
Icmptype int `json:"icmptype,omitempty"`
|
||||||
|
@ -1391,7 +1479,7 @@ type UpdateFirewallRuleResponse struct {
|
||||||
Ipaddressid string `json:"ipaddressid,omitempty"`
|
Ipaddressid string `json:"ipaddressid,omitempty"`
|
||||||
Networkid string `json:"networkid,omitempty"`
|
Networkid string `json:"networkid,omitempty"`
|
||||||
Protocol string `json:"protocol,omitempty"`
|
Protocol string `json:"protocol,omitempty"`
|
||||||
Startport string `json:"startport,omitempty"`
|
Startport int `json:"startport,omitempty"`
|
||||||
State string `json:"state,omitempty"`
|
State string `json:"state,omitempty"`
|
||||||
Tags []struct {
|
Tags []struct {
|
||||||
Account string `json:"account,omitempty"`
|
Account string `json:"account,omitempty"`
|
||||||
|
@ -1541,6 +1629,11 @@ func (s *FirewallService) CreateEgressFirewallRule(p *CreateEgressFirewallRulePa
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
resp, err = convertFirewallServiceResponse(resp)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
var r CreateEgressFirewallRuleResponse
|
var r CreateEgressFirewallRuleResponse
|
||||||
if err := json.Unmarshal(resp, &r); err != nil {
|
if err := json.Unmarshal(resp, &r); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
|
@ -1561,6 +1654,11 @@ func (s *FirewallService) CreateEgressFirewallRule(p *CreateEgressFirewallRulePa
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
b, err = convertFirewallServiceResponse(b)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
if err := json.Unmarshal(b, &r); err != nil {
|
if err := json.Unmarshal(b, &r); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
@ -1571,7 +1669,7 @@ func (s *FirewallService) CreateEgressFirewallRule(p *CreateEgressFirewallRulePa
|
||||||
type CreateEgressFirewallRuleResponse struct {
|
type CreateEgressFirewallRuleResponse struct {
|
||||||
JobID string `json:"jobid,omitempty"`
|
JobID string `json:"jobid,omitempty"`
|
||||||
Cidrlist string `json:"cidrlist,omitempty"`
|
Cidrlist string `json:"cidrlist,omitempty"`
|
||||||
Endport string `json:"endport,omitempty"`
|
Endport int `json:"endport,omitempty"`
|
||||||
Fordisplay bool `json:"fordisplay,omitempty"`
|
Fordisplay bool `json:"fordisplay,omitempty"`
|
||||||
Icmpcode int `json:"icmpcode,omitempty"`
|
Icmpcode int `json:"icmpcode,omitempty"`
|
||||||
Icmptype int `json:"icmptype,omitempty"`
|
Icmptype int `json:"icmptype,omitempty"`
|
||||||
|
@ -1580,7 +1678,7 @@ type CreateEgressFirewallRuleResponse struct {
|
||||||
Ipaddressid string `json:"ipaddressid,omitempty"`
|
Ipaddressid string `json:"ipaddressid,omitempty"`
|
||||||
Networkid string `json:"networkid,omitempty"`
|
Networkid string `json:"networkid,omitempty"`
|
||||||
Protocol string `json:"protocol,omitempty"`
|
Protocol string `json:"protocol,omitempty"`
|
||||||
Startport string `json:"startport,omitempty"`
|
Startport int `json:"startport,omitempty"`
|
||||||
State string `json:"state,omitempty"`
|
State string `json:"state,omitempty"`
|
||||||
Tags []struct {
|
Tags []struct {
|
||||||
Account string `json:"account,omitempty"`
|
Account string `json:"account,omitempty"`
|
||||||
|
@ -1628,13 +1726,18 @@ func (s *FirewallService) NewDeleteEgressFirewallRuleParams(id string) *DeleteEg
|
||||||
return p
|
return p
|
||||||
}
|
}
|
||||||
|
|
||||||
// Deletes an ggress firewall rule
|
// Deletes an egress firewall rule
|
||||||
func (s *FirewallService) DeleteEgressFirewallRule(p *DeleteEgressFirewallRuleParams) (*DeleteEgressFirewallRuleResponse, error) {
|
func (s *FirewallService) DeleteEgressFirewallRule(p *DeleteEgressFirewallRuleParams) (*DeleteEgressFirewallRuleResponse, error) {
|
||||||
resp, err := s.cs.newRequest("deleteEgressFirewallRule", p.toURLValues())
|
resp, err := s.cs.newRequest("deleteEgressFirewallRule", p.toURLValues())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
resp, err = convertFirewallServiceResponse(resp)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
var r DeleteEgressFirewallRuleResponse
|
var r DeleteEgressFirewallRuleResponse
|
||||||
if err := json.Unmarshal(resp, &r); err != nil {
|
if err := json.Unmarshal(resp, &r); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
|
@ -1650,6 +1753,11 @@ func (s *FirewallService) DeleteEgressFirewallRule(p *DeleteEgressFirewallRulePa
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
b, err = convertFirewallServiceResponse(b)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
if err := json.Unmarshal(b, &r); err != nil {
|
if err := json.Unmarshal(b, &r); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
@ -1685,9 +1793,6 @@ func (p *ListEgressFirewallRulesParams) toURLValues() url.Values {
|
||||||
if v, found := p.p["id"]; found {
|
if v, found := p.p["id"]; found {
|
||||||
u.Set("id", v.(string))
|
u.Set("id", v.(string))
|
||||||
}
|
}
|
||||||
if v, found := p.p["id"]; found {
|
|
||||||
u.Set("id", v.(string))
|
|
||||||
}
|
|
||||||
if v, found := p.p["ipaddressid"]; found {
|
if v, found := p.p["ipaddressid"]; found {
|
||||||
u.Set("ipaddressid", v.(string))
|
u.Set("ipaddressid", v.(string))
|
||||||
}
|
}
|
||||||
|
@ -1705,9 +1810,6 @@ func (p *ListEgressFirewallRulesParams) toURLValues() url.Values {
|
||||||
if v, found := p.p["networkid"]; found {
|
if v, found := p.p["networkid"]; found {
|
||||||
u.Set("networkid", v.(string))
|
u.Set("networkid", v.(string))
|
||||||
}
|
}
|
||||||
if v, found := p.p["networkid"]; found {
|
|
||||||
u.Set("networkid", v.(string))
|
|
||||||
}
|
|
||||||
if v, found := p.p["page"]; found {
|
if v, found := p.p["page"]; found {
|
||||||
vv := strconv.Itoa(v.(int))
|
vv := strconv.Itoa(v.(int))
|
||||||
u.Set("page", vv)
|
u.Set("page", vv)
|
||||||
|
@ -1884,13 +1986,18 @@ func (s *FirewallService) GetEgressFirewallRuleByID(id string) (*EgressFirewallR
|
||||||
return nil, l.Count, fmt.Errorf("There is more then one result for EgressFirewallRule UUID: %s!", id)
|
return nil, l.Count, fmt.Errorf("There is more then one result for EgressFirewallRule UUID: %s!", id)
|
||||||
}
|
}
|
||||||
|
|
||||||
// Lists all egress firewall rules for network id.
|
// Lists all egress firewall rules for network ID.
|
||||||
func (s *FirewallService) ListEgressFirewallRules(p *ListEgressFirewallRulesParams) (*ListEgressFirewallRulesResponse, error) {
|
func (s *FirewallService) ListEgressFirewallRules(p *ListEgressFirewallRulesParams) (*ListEgressFirewallRulesResponse, error) {
|
||||||
resp, err := s.cs.newRequest("listEgressFirewallRules", p.toURLValues())
|
resp, err := s.cs.newRequest("listEgressFirewallRules", p.toURLValues())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
resp, err = convertFirewallServiceResponse(resp)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
var r ListEgressFirewallRulesResponse
|
var r ListEgressFirewallRulesResponse
|
||||||
if err := json.Unmarshal(resp, &r); err != nil {
|
if err := json.Unmarshal(resp, &r); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
|
@ -1905,7 +2012,7 @@ type ListEgressFirewallRulesResponse struct {
|
||||||
|
|
||||||
type EgressFirewallRule struct {
|
type EgressFirewallRule struct {
|
||||||
Cidrlist string `json:"cidrlist,omitempty"`
|
Cidrlist string `json:"cidrlist,omitempty"`
|
||||||
Endport string `json:"endport,omitempty"`
|
Endport int `json:"endport,omitempty"`
|
||||||
Fordisplay bool `json:"fordisplay,omitempty"`
|
Fordisplay bool `json:"fordisplay,omitempty"`
|
||||||
Icmpcode int `json:"icmpcode,omitempty"`
|
Icmpcode int `json:"icmpcode,omitempty"`
|
||||||
Icmptype int `json:"icmptype,omitempty"`
|
Icmptype int `json:"icmptype,omitempty"`
|
||||||
|
@ -1914,7 +2021,7 @@ type EgressFirewallRule struct {
|
||||||
Ipaddressid string `json:"ipaddressid,omitempty"`
|
Ipaddressid string `json:"ipaddressid,omitempty"`
|
||||||
Networkid string `json:"networkid,omitempty"`
|
Networkid string `json:"networkid,omitempty"`
|
||||||
Protocol string `json:"protocol,omitempty"`
|
Protocol string `json:"protocol,omitempty"`
|
||||||
Startport string `json:"startport,omitempty"`
|
Startport int `json:"startport,omitempty"`
|
||||||
State string `json:"state,omitempty"`
|
State string `json:"state,omitempty"`
|
||||||
Tags []struct {
|
Tags []struct {
|
||||||
Account string `json:"account,omitempty"`
|
Account string `json:"account,omitempty"`
|
||||||
|
@ -1992,6 +2099,11 @@ func (s *FirewallService) UpdateEgressFirewallRule(p *UpdateEgressFirewallRulePa
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
resp, err = convertFirewallServiceResponse(resp)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
var r UpdateEgressFirewallRuleResponse
|
var r UpdateEgressFirewallRuleResponse
|
||||||
if err := json.Unmarshal(resp, &r); err != nil {
|
if err := json.Unmarshal(resp, &r); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
|
@ -2012,6 +2124,11 @@ func (s *FirewallService) UpdateEgressFirewallRule(p *UpdateEgressFirewallRulePa
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
b, err = convertFirewallServiceResponse(b)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
if err := json.Unmarshal(b, &r); err != nil {
|
if err := json.Unmarshal(b, &r); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
@ -2022,7 +2139,7 @@ func (s *FirewallService) UpdateEgressFirewallRule(p *UpdateEgressFirewallRulePa
|
||||||
type UpdateEgressFirewallRuleResponse struct {
|
type UpdateEgressFirewallRuleResponse struct {
|
||||||
JobID string `json:"jobid,omitempty"`
|
JobID string `json:"jobid,omitempty"`
|
||||||
Cidrlist string `json:"cidrlist,omitempty"`
|
Cidrlist string `json:"cidrlist,omitempty"`
|
||||||
Endport string `json:"endport,omitempty"`
|
Endport int `json:"endport,omitempty"`
|
||||||
Fordisplay bool `json:"fordisplay,omitempty"`
|
Fordisplay bool `json:"fordisplay,omitempty"`
|
||||||
Icmpcode int `json:"icmpcode,omitempty"`
|
Icmpcode int `json:"icmpcode,omitempty"`
|
||||||
Icmptype int `json:"icmptype,omitempty"`
|
Icmptype int `json:"icmptype,omitempty"`
|
||||||
|
@ -2031,7 +2148,7 @@ type UpdateEgressFirewallRuleResponse struct {
|
||||||
Ipaddressid string `json:"ipaddressid,omitempty"`
|
Ipaddressid string `json:"ipaddressid,omitempty"`
|
||||||
Networkid string `json:"networkid,omitempty"`
|
Networkid string `json:"networkid,omitempty"`
|
||||||
Protocol string `json:"protocol,omitempty"`
|
Protocol string `json:"protocol,omitempty"`
|
||||||
Startport string `json:"startport,omitempty"`
|
Startport int `json:"startport,omitempty"`
|
||||||
State string `json:"state,omitempty"`
|
State string `json:"state,omitempty"`
|
||||||
Tags []struct {
|
Tags []struct {
|
||||||
Account string `json:"account,omitempty"`
|
Account string `json:"account,omitempty"`
|
||||||
|
@ -2134,6 +2251,11 @@ func (s *FirewallService) AddPaloAltoFirewall(p *AddPaloAltoFirewallParams) (*Ad
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
resp, err = convertFirewallServiceResponse(resp)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
var r AddPaloAltoFirewallResponse
|
var r AddPaloAltoFirewallResponse
|
||||||
if err := json.Unmarshal(resp, &r); err != nil {
|
if err := json.Unmarshal(resp, &r); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
|
@ -2154,6 +2276,11 @@ func (s *FirewallService) AddPaloAltoFirewall(p *AddPaloAltoFirewallParams) (*Ad
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
b, err = convertFirewallServiceResponse(b)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
if err := json.Unmarshal(b, &r); err != nil {
|
if err := json.Unmarshal(b, &r); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
@ -2220,6 +2347,11 @@ func (s *FirewallService) DeletePaloAltoFirewall(p *DeletePaloAltoFirewallParams
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
resp, err = convertFirewallServiceResponse(resp)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
var r DeletePaloAltoFirewallResponse
|
var r DeletePaloAltoFirewallResponse
|
||||||
if err := json.Unmarshal(resp, &r); err != nil {
|
if err := json.Unmarshal(resp, &r); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
|
@ -2235,6 +2367,11 @@ func (s *FirewallService) DeletePaloAltoFirewall(p *DeletePaloAltoFirewallParams
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
b, err = convertFirewallServiceResponse(b)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
if err := json.Unmarshal(b, &r); err != nil {
|
if err := json.Unmarshal(b, &r); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
@ -2299,6 +2436,11 @@ func (s *FirewallService) ConfigurePaloAltoFirewall(p *ConfigurePaloAltoFirewall
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
resp, err = convertFirewallServiceResponse(resp)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
var r ConfigurePaloAltoFirewallResponse
|
var r ConfigurePaloAltoFirewallResponse
|
||||||
if err := json.Unmarshal(resp, &r); err != nil {
|
if err := json.Unmarshal(resp, &r); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
|
@ -2319,6 +2461,11 @@ func (s *FirewallService) ConfigurePaloAltoFirewall(p *ConfigurePaloAltoFirewall
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
b, err = convertFirewallServiceResponse(b)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
if err := json.Unmarshal(b, &r); err != nil {
|
if err := json.Unmarshal(b, &r); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
@ -2430,6 +2577,11 @@ func (s *FirewallService) ListPaloAltoFirewalls(p *ListPaloAltoFirewallsParams)
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
resp, err = convertFirewallServiceResponse(resp)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
var r ListPaloAltoFirewallsResponse
|
var r ListPaloAltoFirewallsResponse
|
||||||
if err := json.Unmarshal(resp, &r); err != nil {
|
if err := json.Unmarshal(resp, &r); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
|
|
|
@ -176,22 +176,23 @@ func (s *HostService) AddHost(p *AddHostParams) (*AddHostResponse, error) {
|
||||||
}
|
}
|
||||||
|
|
||||||
type AddHostResponse struct {
|
type AddHostResponse struct {
|
||||||
Averageload int64 `json:"averageload,omitempty"`
|
Averageload int64 `json:"averageload,omitempty"`
|
||||||
Capabilities string `json:"capabilities,omitempty"`
|
Capabilities string `json:"capabilities,omitempty"`
|
||||||
Clusterid string `json:"clusterid,omitempty"`
|
Clusterid string `json:"clusterid,omitempty"`
|
||||||
Clustername string `json:"clustername,omitempty"`
|
Clustername string `json:"clustername,omitempty"`
|
||||||
Clustertype string `json:"clustertype,omitempty"`
|
Clustertype string `json:"clustertype,omitempty"`
|
||||||
Cpuallocated string `json:"cpuallocated,omitempty"`
|
Cpuallocated string `json:"cpuallocated,omitempty"`
|
||||||
Cpunumber int `json:"cpunumber,omitempty"`
|
Cpunumber int `json:"cpunumber,omitempty"`
|
||||||
Cpusockets int `json:"cpusockets,omitempty"`
|
Cpusockets int `json:"cpusockets,omitempty"`
|
||||||
Cpuspeed int64 `json:"cpuspeed,omitempty"`
|
Cpuspeed int64 `json:"cpuspeed,omitempty"`
|
||||||
Cpuused string `json:"cpuused,omitempty"`
|
Cpuused string `json:"cpuused,omitempty"`
|
||||||
Cpuwithoverprovisioning string `json:"cpuwithoverprovisioning,omitempty"`
|
Cpuwithoverprovisioning string `json:"cpuwithoverprovisioning,omitempty"`
|
||||||
Created string `json:"created,omitempty"`
|
Created string `json:"created,omitempty"`
|
||||||
Disconnected string `json:"disconnected,omitempty"`
|
Details map[string]string `json:"details,omitempty"`
|
||||||
Disksizeallocated int64 `json:"disksizeallocated,omitempty"`
|
Disconnected string `json:"disconnected,omitempty"`
|
||||||
Disksizetotal int64 `json:"disksizetotal,omitempty"`
|
Disksizeallocated int64 `json:"disksizeallocated,omitempty"`
|
||||||
Events string `json:"events,omitempty"`
|
Disksizetotal int64 `json:"disksizetotal,omitempty"`
|
||||||
|
Events string `json:"events,omitempty"`
|
||||||
Gpugroup []struct {
|
Gpugroup []struct {
|
||||||
Gpugroupname string `json:"gpugroupname,omitempty"`
|
Gpugroupname string `json:"gpugroupname,omitempty"`
|
||||||
Vgpu []struct {
|
Vgpu []struct {
|
||||||
|
@ -302,23 +303,24 @@ func (s *HostService) ReconnectHost(p *ReconnectHostParams) (*ReconnectHostRespo
|
||||||
}
|
}
|
||||||
|
|
||||||
type ReconnectHostResponse struct {
|
type ReconnectHostResponse struct {
|
||||||
JobID string `json:"jobid,omitempty"`
|
JobID string `json:"jobid,omitempty"`
|
||||||
Averageload int64 `json:"averageload,omitempty"`
|
Averageload int64 `json:"averageload,omitempty"`
|
||||||
Capabilities string `json:"capabilities,omitempty"`
|
Capabilities string `json:"capabilities,omitempty"`
|
||||||
Clusterid string `json:"clusterid,omitempty"`
|
Clusterid string `json:"clusterid,omitempty"`
|
||||||
Clustername string `json:"clustername,omitempty"`
|
Clustername string `json:"clustername,omitempty"`
|
||||||
Clustertype string `json:"clustertype,omitempty"`
|
Clustertype string `json:"clustertype,omitempty"`
|
||||||
Cpuallocated string `json:"cpuallocated,omitempty"`
|
Cpuallocated string `json:"cpuallocated,omitempty"`
|
||||||
Cpunumber int `json:"cpunumber,omitempty"`
|
Cpunumber int `json:"cpunumber,omitempty"`
|
||||||
Cpusockets int `json:"cpusockets,omitempty"`
|
Cpusockets int `json:"cpusockets,omitempty"`
|
||||||
Cpuspeed int64 `json:"cpuspeed,omitempty"`
|
Cpuspeed int64 `json:"cpuspeed,omitempty"`
|
||||||
Cpuused string `json:"cpuused,omitempty"`
|
Cpuused string `json:"cpuused,omitempty"`
|
||||||
Cpuwithoverprovisioning string `json:"cpuwithoverprovisioning,omitempty"`
|
Cpuwithoverprovisioning string `json:"cpuwithoverprovisioning,omitempty"`
|
||||||
Created string `json:"created,omitempty"`
|
Created string `json:"created,omitempty"`
|
||||||
Disconnected string `json:"disconnected,omitempty"`
|
Details map[string]string `json:"details,omitempty"`
|
||||||
Disksizeallocated int64 `json:"disksizeallocated,omitempty"`
|
Disconnected string `json:"disconnected,omitempty"`
|
||||||
Disksizetotal int64 `json:"disksizetotal,omitempty"`
|
Disksizeallocated int64 `json:"disksizeallocated,omitempty"`
|
||||||
Events string `json:"events,omitempty"`
|
Disksizetotal int64 `json:"disksizetotal,omitempty"`
|
||||||
|
Events string `json:"events,omitempty"`
|
||||||
Gpugroup []struct {
|
Gpugroup []struct {
|
||||||
Gpugroupname string `json:"gpugroupname,omitempty"`
|
Gpugroupname string `json:"gpugroupname,omitempty"`
|
||||||
Vgpu []struct {
|
Vgpu []struct {
|
||||||
|
@ -454,22 +456,23 @@ func (s *HostService) UpdateHost(p *UpdateHostParams) (*UpdateHostResponse, erro
|
||||||
}
|
}
|
||||||
|
|
||||||
type UpdateHostResponse struct {
|
type UpdateHostResponse struct {
|
||||||
Averageload int64 `json:"averageload,omitempty"`
|
Averageload int64 `json:"averageload,omitempty"`
|
||||||
Capabilities string `json:"capabilities,omitempty"`
|
Capabilities string `json:"capabilities,omitempty"`
|
||||||
Clusterid string `json:"clusterid,omitempty"`
|
Clusterid string `json:"clusterid,omitempty"`
|
||||||
Clustername string `json:"clustername,omitempty"`
|
Clustername string `json:"clustername,omitempty"`
|
||||||
Clustertype string `json:"clustertype,omitempty"`
|
Clustertype string `json:"clustertype,omitempty"`
|
||||||
Cpuallocated string `json:"cpuallocated,omitempty"`
|
Cpuallocated string `json:"cpuallocated,omitempty"`
|
||||||
Cpunumber int `json:"cpunumber,omitempty"`
|
Cpunumber int `json:"cpunumber,omitempty"`
|
||||||
Cpusockets int `json:"cpusockets,omitempty"`
|
Cpusockets int `json:"cpusockets,omitempty"`
|
||||||
Cpuspeed int64 `json:"cpuspeed,omitempty"`
|
Cpuspeed int64 `json:"cpuspeed,omitempty"`
|
||||||
Cpuused string `json:"cpuused,omitempty"`
|
Cpuused string `json:"cpuused,omitempty"`
|
||||||
Cpuwithoverprovisioning string `json:"cpuwithoverprovisioning,omitempty"`
|
Cpuwithoverprovisioning string `json:"cpuwithoverprovisioning,omitempty"`
|
||||||
Created string `json:"created,omitempty"`
|
Created string `json:"created,omitempty"`
|
||||||
Disconnected string `json:"disconnected,omitempty"`
|
Details map[string]string `json:"details,omitempty"`
|
||||||
Disksizeallocated int64 `json:"disksizeallocated,omitempty"`
|
Disconnected string `json:"disconnected,omitempty"`
|
||||||
Disksizetotal int64 `json:"disksizetotal,omitempty"`
|
Disksizeallocated int64 `json:"disksizeallocated,omitempty"`
|
||||||
Events string `json:"events,omitempty"`
|
Disksizetotal int64 `json:"disksizetotal,omitempty"`
|
||||||
|
Events string `json:"events,omitempty"`
|
||||||
Gpugroup []struct {
|
Gpugroup []struct {
|
||||||
Gpugroupname string `json:"gpugroupname,omitempty"`
|
Gpugroupname string `json:"gpugroupname,omitempty"`
|
||||||
Vgpu []struct {
|
Vgpu []struct {
|
||||||
|
@ -655,23 +658,24 @@ func (s *HostService) PrepareHostForMaintenance(p *PrepareHostForMaintenancePara
|
||||||
}
|
}
|
||||||
|
|
||||||
type PrepareHostForMaintenanceResponse struct {
|
type PrepareHostForMaintenanceResponse struct {
|
||||||
JobID string `json:"jobid,omitempty"`
|
JobID string `json:"jobid,omitempty"`
|
||||||
Averageload int64 `json:"averageload,omitempty"`
|
Averageload int64 `json:"averageload,omitempty"`
|
||||||
Capabilities string `json:"capabilities,omitempty"`
|
Capabilities string `json:"capabilities,omitempty"`
|
||||||
Clusterid string `json:"clusterid,omitempty"`
|
Clusterid string `json:"clusterid,omitempty"`
|
||||||
Clustername string `json:"clustername,omitempty"`
|
Clustername string `json:"clustername,omitempty"`
|
||||||
Clustertype string `json:"clustertype,omitempty"`
|
Clustertype string `json:"clustertype,omitempty"`
|
||||||
Cpuallocated string `json:"cpuallocated,omitempty"`
|
Cpuallocated string `json:"cpuallocated,omitempty"`
|
||||||
Cpunumber int `json:"cpunumber,omitempty"`
|
Cpunumber int `json:"cpunumber,omitempty"`
|
||||||
Cpusockets int `json:"cpusockets,omitempty"`
|
Cpusockets int `json:"cpusockets,omitempty"`
|
||||||
Cpuspeed int64 `json:"cpuspeed,omitempty"`
|
Cpuspeed int64 `json:"cpuspeed,omitempty"`
|
||||||
Cpuused string `json:"cpuused,omitempty"`
|
Cpuused string `json:"cpuused,omitempty"`
|
||||||
Cpuwithoverprovisioning string `json:"cpuwithoverprovisioning,omitempty"`
|
Cpuwithoverprovisioning string `json:"cpuwithoverprovisioning,omitempty"`
|
||||||
Created string `json:"created,omitempty"`
|
Created string `json:"created,omitempty"`
|
||||||
Disconnected string `json:"disconnected,omitempty"`
|
Details map[string]string `json:"details,omitempty"`
|
||||||
Disksizeallocated int64 `json:"disksizeallocated,omitempty"`
|
Disconnected string `json:"disconnected,omitempty"`
|
||||||
Disksizetotal int64 `json:"disksizetotal,omitempty"`
|
Disksizeallocated int64 `json:"disksizeallocated,omitempty"`
|
||||||
Events string `json:"events,omitempty"`
|
Disksizetotal int64 `json:"disksizetotal,omitempty"`
|
||||||
|
Events string `json:"events,omitempty"`
|
||||||
Gpugroup []struct {
|
Gpugroup []struct {
|
||||||
Gpugroupname string `json:"gpugroupname,omitempty"`
|
Gpugroupname string `json:"gpugroupname,omitempty"`
|
||||||
Vgpu []struct {
|
Vgpu []struct {
|
||||||
|
@ -782,23 +786,24 @@ func (s *HostService) CancelHostMaintenance(p *CancelHostMaintenanceParams) (*Ca
|
||||||
}
|
}
|
||||||
|
|
||||||
type CancelHostMaintenanceResponse struct {
|
type CancelHostMaintenanceResponse struct {
|
||||||
JobID string `json:"jobid,omitempty"`
|
JobID string `json:"jobid,omitempty"`
|
||||||
Averageload int64 `json:"averageload,omitempty"`
|
Averageload int64 `json:"averageload,omitempty"`
|
||||||
Capabilities string `json:"capabilities,omitempty"`
|
Capabilities string `json:"capabilities,omitempty"`
|
||||||
Clusterid string `json:"clusterid,omitempty"`
|
Clusterid string `json:"clusterid,omitempty"`
|
||||||
Clustername string `json:"clustername,omitempty"`
|
Clustername string `json:"clustername,omitempty"`
|
||||||
Clustertype string `json:"clustertype,omitempty"`
|
Clustertype string `json:"clustertype,omitempty"`
|
||||||
Cpuallocated string `json:"cpuallocated,omitempty"`
|
Cpuallocated string `json:"cpuallocated,omitempty"`
|
||||||
Cpunumber int `json:"cpunumber,omitempty"`
|
Cpunumber int `json:"cpunumber,omitempty"`
|
||||||
Cpusockets int `json:"cpusockets,omitempty"`
|
Cpusockets int `json:"cpusockets,omitempty"`
|
||||||
Cpuspeed int64 `json:"cpuspeed,omitempty"`
|
Cpuspeed int64 `json:"cpuspeed,omitempty"`
|
||||||
Cpuused string `json:"cpuused,omitempty"`
|
Cpuused string `json:"cpuused,omitempty"`
|
||||||
Cpuwithoverprovisioning string `json:"cpuwithoverprovisioning,omitempty"`
|
Cpuwithoverprovisioning string `json:"cpuwithoverprovisioning,omitempty"`
|
||||||
Created string `json:"created,omitempty"`
|
Created string `json:"created,omitempty"`
|
||||||
Disconnected string `json:"disconnected,omitempty"`
|
Details map[string]string `json:"details,omitempty"`
|
||||||
Disksizeallocated int64 `json:"disksizeallocated,omitempty"`
|
Disconnected string `json:"disconnected,omitempty"`
|
||||||
Disksizetotal int64 `json:"disksizetotal,omitempty"`
|
Disksizeallocated int64 `json:"disksizeallocated,omitempty"`
|
||||||
Events string `json:"events,omitempty"`
|
Disksizetotal int64 `json:"disksizetotal,omitempty"`
|
||||||
|
Events string `json:"events,omitempty"`
|
||||||
Gpugroup []struct {
|
Gpugroup []struct {
|
||||||
Gpugroupname string `json:"gpugroupname,omitempty"`
|
Gpugroupname string `json:"gpugroupname,omitempty"`
|
||||||
Vgpu []struct {
|
Vgpu []struct {
|
||||||
|
@ -1122,22 +1127,23 @@ type ListHostsResponse struct {
|
||||||
}
|
}
|
||||||
|
|
||||||
type Host struct {
|
type Host struct {
|
||||||
Averageload int64 `json:"averageload,omitempty"`
|
Averageload int64 `json:"averageload,omitempty"`
|
||||||
Capabilities string `json:"capabilities,omitempty"`
|
Capabilities string `json:"capabilities,omitempty"`
|
||||||
Clusterid string `json:"clusterid,omitempty"`
|
Clusterid string `json:"clusterid,omitempty"`
|
||||||
Clustername string `json:"clustername,omitempty"`
|
Clustername string `json:"clustername,omitempty"`
|
||||||
Clustertype string `json:"clustertype,omitempty"`
|
Clustertype string `json:"clustertype,omitempty"`
|
||||||
Cpuallocated string `json:"cpuallocated,omitempty"`
|
Cpuallocated string `json:"cpuallocated,omitempty"`
|
||||||
Cpunumber int `json:"cpunumber,omitempty"`
|
Cpunumber int `json:"cpunumber,omitempty"`
|
||||||
Cpusockets int `json:"cpusockets,omitempty"`
|
Cpusockets int `json:"cpusockets,omitempty"`
|
||||||
Cpuspeed int64 `json:"cpuspeed,omitempty"`
|
Cpuspeed int64 `json:"cpuspeed,omitempty"`
|
||||||
Cpuused string `json:"cpuused,omitempty"`
|
Cpuused string `json:"cpuused,omitempty"`
|
||||||
Cpuwithoverprovisioning string `json:"cpuwithoverprovisioning,omitempty"`
|
Cpuwithoverprovisioning string `json:"cpuwithoverprovisioning,omitempty"`
|
||||||
Created string `json:"created,omitempty"`
|
Created string `json:"created,omitempty"`
|
||||||
Disconnected string `json:"disconnected,omitempty"`
|
Details map[string]string `json:"details,omitempty"`
|
||||||
Disksizeallocated int64 `json:"disksizeallocated,omitempty"`
|
Disconnected string `json:"disconnected,omitempty"`
|
||||||
Disksizetotal int64 `json:"disksizetotal,omitempty"`
|
Disksizeallocated int64 `json:"disksizeallocated,omitempty"`
|
||||||
Events string `json:"events,omitempty"`
|
Disksizetotal int64 `json:"disksizetotal,omitempty"`
|
||||||
|
Events string `json:"events,omitempty"`
|
||||||
Gpugroup []struct {
|
Gpugroup []struct {
|
||||||
Gpugroupname string `json:"gpugroupname,omitempty"`
|
Gpugroupname string `json:"gpugroupname,omitempty"`
|
||||||
Vgpu []struct {
|
Vgpu []struct {
|
||||||
|
@ -1181,6 +1187,116 @@ type Host struct {
|
||||||
Zonename string `json:"zonename,omitempty"`
|
Zonename string `json:"zonename,omitempty"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
type ListHostTagsParams struct {
|
||||||
|
p map[string]interface{}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *ListHostTagsParams) toURLValues() url.Values {
|
||||||
|
u := url.Values{}
|
||||||
|
if p.p == nil {
|
||||||
|
return u
|
||||||
|
}
|
||||||
|
if v, found := p.p["keyword"]; found {
|
||||||
|
u.Set("keyword", v.(string))
|
||||||
|
}
|
||||||
|
if v, found := p.p["page"]; found {
|
||||||
|
vv := strconv.Itoa(v.(int))
|
||||||
|
u.Set("page", vv)
|
||||||
|
}
|
||||||
|
if v, found := p.p["pagesize"]; found {
|
||||||
|
vv := strconv.Itoa(v.(int))
|
||||||
|
u.Set("pagesize", vv)
|
||||||
|
}
|
||||||
|
return u
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *ListHostTagsParams) SetKeyword(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["keyword"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *ListHostTagsParams) SetPage(v int) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["page"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *ListHostTagsParams) SetPagesize(v int) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["pagesize"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// You should always use this function to get a new ListHostTagsParams instance,
|
||||||
|
// as then you are sure you have configured all required params
|
||||||
|
func (s *HostService) NewListHostTagsParams() *ListHostTagsParams {
|
||||||
|
p := &ListHostTagsParams{}
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
return p
|
||||||
|
}
|
||||||
|
|
||||||
|
// This is a courtesy helper function, which in some cases may not work as expected!
|
||||||
|
func (s *HostService) GetHostTagID(keyword string) (string, error) {
|
||||||
|
p := &ListHostTagsParams{}
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
|
||||||
|
p.p["keyword"] = keyword
|
||||||
|
|
||||||
|
l, err := s.ListHostTags(p)
|
||||||
|
if err != nil {
|
||||||
|
return "", err
|
||||||
|
}
|
||||||
|
|
||||||
|
if l.Count == 0 {
|
||||||
|
return "", fmt.Errorf("No match found for %s: %+v", keyword, l)
|
||||||
|
}
|
||||||
|
|
||||||
|
if l.Count == 1 {
|
||||||
|
return l.HostTags[0].Id, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
if l.Count > 1 {
|
||||||
|
for _, v := range l.HostTags {
|
||||||
|
if v.Name == keyword {
|
||||||
|
return v.Id, nil
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return "", fmt.Errorf("Could not find an exact match for %s: %+v", keyword, l)
|
||||||
|
}
|
||||||
|
|
||||||
|
// Lists host tags
|
||||||
|
func (s *HostService) ListHostTags(p *ListHostTagsParams) (*ListHostTagsResponse, error) {
|
||||||
|
resp, err := s.cs.newRequest("listHostTags", p.toURLValues())
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
|
var r ListHostTagsResponse
|
||||||
|
if err := json.Unmarshal(resp, &r); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
return &r, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
type ListHostTagsResponse struct {
|
||||||
|
Count int `json:"count"`
|
||||||
|
HostTags []*HostTag `json:"hosttag"`
|
||||||
|
}
|
||||||
|
|
||||||
|
type HostTag struct {
|
||||||
|
Hostid int64 `json:"hostid,omitempty"`
|
||||||
|
Id string `json:"id,omitempty"`
|
||||||
|
Name string `json:"name,omitempty"`
|
||||||
|
}
|
||||||
|
|
||||||
type FindHostsForMigrationParams struct {
|
type FindHostsForMigrationParams struct {
|
||||||
p map[string]interface{}
|
p map[string]interface{}
|
||||||
}
|
}
|
||||||
|
@ -1396,6 +1512,10 @@ func (p *UpdateHostPasswordParams) toURLValues() url.Values {
|
||||||
if v, found := p.p["password"]; found {
|
if v, found := p.p["password"]; found {
|
||||||
u.Set("password", v.(string))
|
u.Set("password", v.(string))
|
||||||
}
|
}
|
||||||
|
if v, found := p.p["update_passwd_on_host"]; found {
|
||||||
|
vv := strconv.FormatBool(v.(bool))
|
||||||
|
u.Set("update_passwd_on_host", vv)
|
||||||
|
}
|
||||||
if v, found := p.p["username"]; found {
|
if v, found := p.p["username"]; found {
|
||||||
u.Set("username", v.(string))
|
u.Set("username", v.(string))
|
||||||
}
|
}
|
||||||
|
@ -1426,6 +1546,14 @@ func (p *UpdateHostPasswordParams) SetPassword(v string) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *UpdateHostPasswordParams) SetUpdate_passwd_on_host(v bool) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["update_passwd_on_host"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
func (p *UpdateHostPasswordParams) SetUsername(v string) {
|
func (p *UpdateHostPasswordParams) SetUsername(v string) {
|
||||||
if p.p == nil {
|
if p.p == nil {
|
||||||
p.p = make(map[string]interface{})
|
p.p = make(map[string]interface{})
|
||||||
|
@ -1693,22 +1821,23 @@ func (s *HostService) AddBaremetalHost(p *AddBaremetalHostParams) (*AddBaremetal
|
||||||
}
|
}
|
||||||
|
|
||||||
type AddBaremetalHostResponse struct {
|
type AddBaremetalHostResponse struct {
|
||||||
Averageload int64 `json:"averageload,omitempty"`
|
Averageload int64 `json:"averageload,omitempty"`
|
||||||
Capabilities string `json:"capabilities,omitempty"`
|
Capabilities string `json:"capabilities,omitempty"`
|
||||||
Clusterid string `json:"clusterid,omitempty"`
|
Clusterid string `json:"clusterid,omitempty"`
|
||||||
Clustername string `json:"clustername,omitempty"`
|
Clustername string `json:"clustername,omitempty"`
|
||||||
Clustertype string `json:"clustertype,omitempty"`
|
Clustertype string `json:"clustertype,omitempty"`
|
||||||
Cpuallocated string `json:"cpuallocated,omitempty"`
|
Cpuallocated string `json:"cpuallocated,omitempty"`
|
||||||
Cpunumber int `json:"cpunumber,omitempty"`
|
Cpunumber int `json:"cpunumber,omitempty"`
|
||||||
Cpusockets int `json:"cpusockets,omitempty"`
|
Cpusockets int `json:"cpusockets,omitempty"`
|
||||||
Cpuspeed int64 `json:"cpuspeed,omitempty"`
|
Cpuspeed int64 `json:"cpuspeed,omitempty"`
|
||||||
Cpuused string `json:"cpuused,omitempty"`
|
Cpuused string `json:"cpuused,omitempty"`
|
||||||
Cpuwithoverprovisioning string `json:"cpuwithoverprovisioning,omitempty"`
|
Cpuwithoverprovisioning string `json:"cpuwithoverprovisioning,omitempty"`
|
||||||
Created string `json:"created,omitempty"`
|
Created string `json:"created,omitempty"`
|
||||||
Disconnected string `json:"disconnected,omitempty"`
|
Details map[string]string `json:"details,omitempty"`
|
||||||
Disksizeallocated int64 `json:"disksizeallocated,omitempty"`
|
Disconnected string `json:"disconnected,omitempty"`
|
||||||
Disksizetotal int64 `json:"disksizetotal,omitempty"`
|
Disksizeallocated int64 `json:"disksizeallocated,omitempty"`
|
||||||
Events string `json:"events,omitempty"`
|
Disksizetotal int64 `json:"disksizetotal,omitempty"`
|
||||||
|
Events string `json:"events,omitempty"`
|
||||||
Gpugroup []struct {
|
Gpugroup []struct {
|
||||||
Gpugroupname string `json:"gpugroupname,omitempty"`
|
Gpugroupname string `json:"gpugroupname,omitempty"`
|
||||||
Vgpu []struct {
|
Vgpu []struct {
|
||||||
|
@ -2044,3 +2173,106 @@ type DedicatedHost struct {
|
||||||
Hostname string `json:"hostname,omitempty"`
|
Hostname string `json:"hostname,omitempty"`
|
||||||
Id string `json:"id,omitempty"`
|
Id string `json:"id,omitempty"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
type AddGloboDnsHostParams struct {
|
||||||
|
p map[string]interface{}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *AddGloboDnsHostParams) toURLValues() url.Values {
|
||||||
|
u := url.Values{}
|
||||||
|
if p.p == nil {
|
||||||
|
return u
|
||||||
|
}
|
||||||
|
if v, found := p.p["password"]; found {
|
||||||
|
u.Set("password", v.(string))
|
||||||
|
}
|
||||||
|
if v, found := p.p["physicalnetworkid"]; found {
|
||||||
|
u.Set("physicalnetworkid", v.(string))
|
||||||
|
}
|
||||||
|
if v, found := p.p["url"]; found {
|
||||||
|
u.Set("url", v.(string))
|
||||||
|
}
|
||||||
|
if v, found := p.p["username"]; found {
|
||||||
|
u.Set("username", v.(string))
|
||||||
|
}
|
||||||
|
return u
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *AddGloboDnsHostParams) SetPassword(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["password"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *AddGloboDnsHostParams) SetPhysicalnetworkid(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["physicalnetworkid"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *AddGloboDnsHostParams) SetUrl(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["url"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *AddGloboDnsHostParams) SetUsername(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["username"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// You should always use this function to get a new AddGloboDnsHostParams instance,
|
||||||
|
// as then you are sure you have configured all required params
|
||||||
|
func (s *HostService) NewAddGloboDnsHostParams(password string, physicalnetworkid string, url string, username string) *AddGloboDnsHostParams {
|
||||||
|
p := &AddGloboDnsHostParams{}
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
p.p["password"] = password
|
||||||
|
p.p["physicalnetworkid"] = physicalnetworkid
|
||||||
|
p.p["url"] = url
|
||||||
|
p.p["username"] = username
|
||||||
|
return p
|
||||||
|
}
|
||||||
|
|
||||||
|
// Adds the GloboDNS external host
|
||||||
|
func (s *HostService) AddGloboDnsHost(p *AddGloboDnsHostParams) (*AddGloboDnsHostResponse, error) {
|
||||||
|
resp, err := s.cs.newRequest("addGloboDnsHost", p.toURLValues())
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
|
var r AddGloboDnsHostResponse
|
||||||
|
if err := json.Unmarshal(resp, &r); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
|
// If we have a async client, we need to wait for the async result
|
||||||
|
if s.cs.async {
|
||||||
|
b, err := s.cs.GetAsyncJobResult(r.JobID, s.cs.timeout)
|
||||||
|
if err != nil {
|
||||||
|
if err == AsyncTimeoutErr {
|
||||||
|
return &r, err
|
||||||
|
}
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
|
if err := json.Unmarshal(b, &r); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return &r, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
type AddGloboDnsHostResponse struct {
|
||||||
|
JobID string `json:"jobid,omitempty"`
|
||||||
|
Displaytext string `json:"displaytext,omitempty"`
|
||||||
|
Success bool `json:"success,omitempty"`
|
||||||
|
}
|
||||||
|
|
|
@ -112,6 +112,8 @@ type AttachIsoResponse struct {
|
||||||
Domainid string `json:"domainid,omitempty"`
|
Domainid string `json:"domainid,omitempty"`
|
||||||
Id string `json:"id,omitempty"`
|
Id string `json:"id,omitempty"`
|
||||||
Name string `json:"name,omitempty"`
|
Name string `json:"name,omitempty"`
|
||||||
|
Project string `json:"project,omitempty"`
|
||||||
|
Projectid string `json:"projectid,omitempty"`
|
||||||
Type string `json:"type,omitempty"`
|
Type string `json:"type,omitempty"`
|
||||||
VirtualmachineIds []string `json:"virtualmachineIds,omitempty"`
|
VirtualmachineIds []string `json:"virtualmachineIds,omitempty"`
|
||||||
} `json:"affinitygroup,omitempty"`
|
} `json:"affinitygroup,omitempty"`
|
||||||
|
@ -248,6 +250,8 @@ type AttachIsoResponse struct {
|
||||||
Resourcetype string `json:"resourcetype,omitempty"`
|
Resourcetype string `json:"resourcetype,omitempty"`
|
||||||
Value string `json:"value,omitempty"`
|
Value string `json:"value,omitempty"`
|
||||||
} `json:"tags,omitempty"`
|
} `json:"tags,omitempty"`
|
||||||
|
Virtualmachinecount int `json:"virtualmachinecount,omitempty"`
|
||||||
|
Virtualmachineids []string `json:"virtualmachineids,omitempty"`
|
||||||
} `json:"securitygroup,omitempty"`
|
} `json:"securitygroup,omitempty"`
|
||||||
Serviceofferingid string `json:"serviceofferingid,omitempty"`
|
Serviceofferingid string `json:"serviceofferingid,omitempty"`
|
||||||
Serviceofferingname string `json:"serviceofferingname,omitempty"`
|
Serviceofferingname string `json:"serviceofferingname,omitempty"`
|
||||||
|
@ -268,6 +272,8 @@ type AttachIsoResponse struct {
|
||||||
Templatedisplaytext string `json:"templatedisplaytext,omitempty"`
|
Templatedisplaytext string `json:"templatedisplaytext,omitempty"`
|
||||||
Templateid string `json:"templateid,omitempty"`
|
Templateid string `json:"templateid,omitempty"`
|
||||||
Templatename string `json:"templatename,omitempty"`
|
Templatename string `json:"templatename,omitempty"`
|
||||||
|
Userid string `json:"userid,omitempty"`
|
||||||
|
Username string `json:"username,omitempty"`
|
||||||
Vgpu string `json:"vgpu,omitempty"`
|
Vgpu string `json:"vgpu,omitempty"`
|
||||||
Zoneid string `json:"zoneid,omitempty"`
|
Zoneid string `json:"zoneid,omitempty"`
|
||||||
Zonename string `json:"zonename,omitempty"`
|
Zonename string `json:"zonename,omitempty"`
|
||||||
|
@ -349,6 +355,8 @@ type DetachIsoResponse struct {
|
||||||
Domainid string `json:"domainid,omitempty"`
|
Domainid string `json:"domainid,omitempty"`
|
||||||
Id string `json:"id,omitempty"`
|
Id string `json:"id,omitempty"`
|
||||||
Name string `json:"name,omitempty"`
|
Name string `json:"name,omitempty"`
|
||||||
|
Project string `json:"project,omitempty"`
|
||||||
|
Projectid string `json:"projectid,omitempty"`
|
||||||
Type string `json:"type,omitempty"`
|
Type string `json:"type,omitempty"`
|
||||||
VirtualmachineIds []string `json:"virtualmachineIds,omitempty"`
|
VirtualmachineIds []string `json:"virtualmachineIds,omitempty"`
|
||||||
} `json:"affinitygroup,omitempty"`
|
} `json:"affinitygroup,omitempty"`
|
||||||
|
@ -485,6 +493,8 @@ type DetachIsoResponse struct {
|
||||||
Resourcetype string `json:"resourcetype,omitempty"`
|
Resourcetype string `json:"resourcetype,omitempty"`
|
||||||
Value string `json:"value,omitempty"`
|
Value string `json:"value,omitempty"`
|
||||||
} `json:"tags,omitempty"`
|
} `json:"tags,omitempty"`
|
||||||
|
Virtualmachinecount int `json:"virtualmachinecount,omitempty"`
|
||||||
|
Virtualmachineids []string `json:"virtualmachineids,omitempty"`
|
||||||
} `json:"securitygroup,omitempty"`
|
} `json:"securitygroup,omitempty"`
|
||||||
Serviceofferingid string `json:"serviceofferingid,omitempty"`
|
Serviceofferingid string `json:"serviceofferingid,omitempty"`
|
||||||
Serviceofferingname string `json:"serviceofferingname,omitempty"`
|
Serviceofferingname string `json:"serviceofferingname,omitempty"`
|
||||||
|
@ -505,6 +515,8 @@ type DetachIsoResponse struct {
|
||||||
Templatedisplaytext string `json:"templatedisplaytext,omitempty"`
|
Templatedisplaytext string `json:"templatedisplaytext,omitempty"`
|
||||||
Templateid string `json:"templateid,omitempty"`
|
Templateid string `json:"templateid,omitempty"`
|
||||||
Templatename string `json:"templatename,omitempty"`
|
Templatename string `json:"templatename,omitempty"`
|
||||||
|
Userid string `json:"userid,omitempty"`
|
||||||
|
Username string `json:"username,omitempty"`
|
||||||
Vgpu string `json:"vgpu,omitempty"`
|
Vgpu string `json:"vgpu,omitempty"`
|
||||||
Zoneid string `json:"zoneid,omitempty"`
|
Zoneid string `json:"zoneid,omitempty"`
|
||||||
Zonename string `json:"zonename,omitempty"`
|
Zonename string `json:"zonename,omitempty"`
|
||||||
|
@ -1214,6 +1226,10 @@ func (p *UpdateIsoParams) toURLValues() url.Values {
|
||||||
vv := strconv.FormatBool(v.(bool))
|
vv := strconv.FormatBool(v.(bool))
|
||||||
u.Set("passwordenabled", vv)
|
u.Set("passwordenabled", vv)
|
||||||
}
|
}
|
||||||
|
if v, found := p.p["requireshvm"]; found {
|
||||||
|
vv := strconv.FormatBool(v.(bool))
|
||||||
|
u.Set("requireshvm", vv)
|
||||||
|
}
|
||||||
if v, found := p.p["sortkey"]; found {
|
if v, found := p.p["sortkey"]; found {
|
||||||
vv := strconv.Itoa(v.(int))
|
vv := strconv.Itoa(v.(int))
|
||||||
u.Set("sortkey", vv)
|
u.Set("sortkey", vv)
|
||||||
|
@ -1301,6 +1317,14 @@ func (p *UpdateIsoParams) SetPasswordenabled(v bool) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *UpdateIsoParams) SetRequireshvm(v bool) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["requireshvm"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
func (p *UpdateIsoParams) SetSortkey(v int) {
|
func (p *UpdateIsoParams) SetSortkey(v int) {
|
||||||
if p.p == nil {
|
if p.p == nil {
|
||||||
p.p = make(map[string]interface{})
|
p.p = make(map[string]interface{})
|
||||||
|
@ -1515,7 +1539,7 @@ func (s *ISOService) NewCopyIsoParams(destzoneid string, id string) *CopyIsoPara
|
||||||
return p
|
return p
|
||||||
}
|
}
|
||||||
|
|
||||||
// Copies an iso from one zone to another.
|
// Copies an ISO from one zone to another.
|
||||||
func (s *ISOService) CopyIso(p *CopyIsoParams) (*CopyIsoResponse, error) {
|
func (s *ISOService) CopyIso(p *CopyIsoParams) (*CopyIsoResponse, error) {
|
||||||
resp, err := s.cs.newRequest("copyIso", p.toURLValues())
|
resp, err := s.cs.newRequest("copyIso", p.toURLValues())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -1703,7 +1727,7 @@ func (s *ISOService) NewUpdateIsoPermissionsParams(id string) *UpdateIsoPermissi
|
||||||
return p
|
return p
|
||||||
}
|
}
|
||||||
|
|
||||||
// Updates iso permissions
|
// Updates ISO permissions
|
||||||
func (s *ISOService) UpdateIsoPermissions(p *UpdateIsoPermissionsParams) (*UpdateIsoPermissionsResponse, error) {
|
func (s *ISOService) UpdateIsoPermissions(p *UpdateIsoPermissionsParams) (*UpdateIsoPermissionsResponse, error) {
|
||||||
resp, err := s.cs.newRequest("updateIsoPermissions", p.toURLValues())
|
resp, err := s.cs.newRequest("updateIsoPermissions", p.toURLValues())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|
|
@ -131,6 +131,183 @@ type AddImageStoreResponse struct {
|
||||||
Zonename string `json:"zonename,omitempty"`
|
Zonename string `json:"zonename,omitempty"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
type AddImageStoreS3Params struct {
|
||||||
|
p map[string]interface{}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *AddImageStoreS3Params) toURLValues() url.Values {
|
||||||
|
u := url.Values{}
|
||||||
|
if p.p == nil {
|
||||||
|
return u
|
||||||
|
}
|
||||||
|
if v, found := p.p["accesskey"]; found {
|
||||||
|
u.Set("accesskey", v.(string))
|
||||||
|
}
|
||||||
|
if v, found := p.p["bucket"]; found {
|
||||||
|
u.Set("bucket", v.(string))
|
||||||
|
}
|
||||||
|
if v, found := p.p["connectiontimeout"]; found {
|
||||||
|
vv := strconv.Itoa(v.(int))
|
||||||
|
u.Set("connectiontimeout", vv)
|
||||||
|
}
|
||||||
|
if v, found := p.p["connectionttl"]; found {
|
||||||
|
vv := strconv.Itoa(v.(int))
|
||||||
|
u.Set("connectionttl", vv)
|
||||||
|
}
|
||||||
|
if v, found := p.p["endpoint"]; found {
|
||||||
|
u.Set("endpoint", v.(string))
|
||||||
|
}
|
||||||
|
if v, found := p.p["maxerrorretry"]; found {
|
||||||
|
vv := strconv.Itoa(v.(int))
|
||||||
|
u.Set("maxerrorretry", vv)
|
||||||
|
}
|
||||||
|
if v, found := p.p["s3signer"]; found {
|
||||||
|
u.Set("s3signer", v.(string))
|
||||||
|
}
|
||||||
|
if v, found := p.p["secretkey"]; found {
|
||||||
|
u.Set("secretkey", v.(string))
|
||||||
|
}
|
||||||
|
if v, found := p.p["sockettimeout"]; found {
|
||||||
|
vv := strconv.Itoa(v.(int))
|
||||||
|
u.Set("sockettimeout", vv)
|
||||||
|
}
|
||||||
|
if v, found := p.p["usehttps"]; found {
|
||||||
|
vv := strconv.FormatBool(v.(bool))
|
||||||
|
u.Set("usehttps", vv)
|
||||||
|
}
|
||||||
|
if v, found := p.p["usetcpkeepalive"]; found {
|
||||||
|
vv := strconv.FormatBool(v.(bool))
|
||||||
|
u.Set("usetcpkeepalive", vv)
|
||||||
|
}
|
||||||
|
return u
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *AddImageStoreS3Params) SetAccesskey(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["accesskey"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *AddImageStoreS3Params) SetBucket(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["bucket"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *AddImageStoreS3Params) SetConnectiontimeout(v int) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["connectiontimeout"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *AddImageStoreS3Params) SetConnectionttl(v int) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["connectionttl"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *AddImageStoreS3Params) SetEndpoint(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["endpoint"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *AddImageStoreS3Params) SetMaxerrorretry(v int) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["maxerrorretry"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *AddImageStoreS3Params) SetS3signer(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["s3signer"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *AddImageStoreS3Params) SetSecretkey(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["secretkey"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *AddImageStoreS3Params) SetSockettimeout(v int) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["sockettimeout"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *AddImageStoreS3Params) SetUsehttps(v bool) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["usehttps"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *AddImageStoreS3Params) SetUsetcpkeepalive(v bool) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["usetcpkeepalive"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// You should always use this function to get a new AddImageStoreS3Params instance,
|
||||||
|
// as then you are sure you have configured all required params
|
||||||
|
func (s *ImageStoreService) NewAddImageStoreS3Params(accesskey string, bucket string, endpoint string, secretkey string) *AddImageStoreS3Params {
|
||||||
|
p := &AddImageStoreS3Params{}
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
p.p["accesskey"] = accesskey
|
||||||
|
p.p["bucket"] = bucket
|
||||||
|
p.p["endpoint"] = endpoint
|
||||||
|
p.p["secretkey"] = secretkey
|
||||||
|
return p
|
||||||
|
}
|
||||||
|
|
||||||
|
// Adds S3 Image Store
|
||||||
|
func (s *ImageStoreService) AddImageStoreS3(p *AddImageStoreS3Params) (*AddImageStoreS3Response, error) {
|
||||||
|
resp, err := s.cs.newRequest("addImageStoreS3", p.toURLValues())
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
|
var r AddImageStoreS3Response
|
||||||
|
if err := json.Unmarshal(resp, &r); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
return &r, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
type AddImageStoreS3Response struct {
|
||||||
|
Details []string `json:"details,omitempty"`
|
||||||
|
Id string `json:"id,omitempty"`
|
||||||
|
Name string `json:"name,omitempty"`
|
||||||
|
Protocol string `json:"protocol,omitempty"`
|
||||||
|
Providername string `json:"providername,omitempty"`
|
||||||
|
Scope string `json:"scope,omitempty"`
|
||||||
|
Url string `json:"url,omitempty"`
|
||||||
|
Zoneid string `json:"zoneid,omitempty"`
|
||||||
|
Zonename string `json:"zonename,omitempty"`
|
||||||
|
}
|
||||||
|
|
||||||
type ListImageStoresParams struct {
|
type ListImageStoresParams struct {
|
||||||
p map[string]interface{}
|
p map[string]interface{}
|
||||||
}
|
}
|
||||||
|
@ -375,7 +552,7 @@ func (s *ImageStoreService) NewDeleteImageStoreParams(id string) *DeleteImageSto
|
||||||
return p
|
return p
|
||||||
}
|
}
|
||||||
|
|
||||||
// Deletes an image store .
|
// Deletes an image store or Secondary Storage.
|
||||||
func (s *ImageStoreService) DeleteImageStore(p *DeleteImageStoreParams) (*DeleteImageStoreResponse, error) {
|
func (s *ImageStoreService) DeleteImageStore(p *DeleteImageStoreParams) (*DeleteImageStoreResponse, error) {
|
||||||
resp, err := s.cs.newRequest("deleteImageStore", p.toURLValues())
|
resp, err := s.cs.newRequest("deleteImageStore", p.toURLValues())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|
|
@ -415,8 +415,10 @@ type StopInternalLoadBalancerVMResponse struct {
|
||||||
Guestmacaddress string `json:"guestmacaddress,omitempty"`
|
Guestmacaddress string `json:"guestmacaddress,omitempty"`
|
||||||
Guestnetmask string `json:"guestnetmask,omitempty"`
|
Guestnetmask string `json:"guestnetmask,omitempty"`
|
||||||
Guestnetworkid string `json:"guestnetworkid,omitempty"`
|
Guestnetworkid string `json:"guestnetworkid,omitempty"`
|
||||||
|
Guestnetworkname string `json:"guestnetworkname,omitempty"`
|
||||||
Hostid string `json:"hostid,omitempty"`
|
Hostid string `json:"hostid,omitempty"`
|
||||||
Hostname string `json:"hostname,omitempty"`
|
Hostname string `json:"hostname,omitempty"`
|
||||||
|
Hypervisor string `json:"hypervisor,omitempty"`
|
||||||
Id string `json:"id,omitempty"`
|
Id string `json:"id,omitempty"`
|
||||||
Ip6dns1 string `json:"ip6dns1,omitempty"`
|
Ip6dns1 string `json:"ip6dns1,omitempty"`
|
||||||
Ip6dns2 string `json:"ip6dns2,omitempty"`
|
Ip6dns2 string `json:"ip6dns2,omitempty"`
|
||||||
|
@ -467,6 +469,7 @@ type StopInternalLoadBalancerVMResponse struct {
|
||||||
Templateid string `json:"templateid,omitempty"`
|
Templateid string `json:"templateid,omitempty"`
|
||||||
Version string `json:"version,omitempty"`
|
Version string `json:"version,omitempty"`
|
||||||
Vpcid string `json:"vpcid,omitempty"`
|
Vpcid string `json:"vpcid,omitempty"`
|
||||||
|
Vpcname string `json:"vpcname,omitempty"`
|
||||||
Zoneid string `json:"zoneid,omitempty"`
|
Zoneid string `json:"zoneid,omitempty"`
|
||||||
Zonename string `json:"zonename,omitempty"`
|
Zonename string `json:"zonename,omitempty"`
|
||||||
}
|
}
|
||||||
|
@ -550,8 +553,10 @@ type StartInternalLoadBalancerVMResponse struct {
|
||||||
Guestmacaddress string `json:"guestmacaddress,omitempty"`
|
Guestmacaddress string `json:"guestmacaddress,omitempty"`
|
||||||
Guestnetmask string `json:"guestnetmask,omitempty"`
|
Guestnetmask string `json:"guestnetmask,omitempty"`
|
||||||
Guestnetworkid string `json:"guestnetworkid,omitempty"`
|
Guestnetworkid string `json:"guestnetworkid,omitempty"`
|
||||||
|
Guestnetworkname string `json:"guestnetworkname,omitempty"`
|
||||||
Hostid string `json:"hostid,omitempty"`
|
Hostid string `json:"hostid,omitempty"`
|
||||||
Hostname string `json:"hostname,omitempty"`
|
Hostname string `json:"hostname,omitempty"`
|
||||||
|
Hypervisor string `json:"hypervisor,omitempty"`
|
||||||
Id string `json:"id,omitempty"`
|
Id string `json:"id,omitempty"`
|
||||||
Ip6dns1 string `json:"ip6dns1,omitempty"`
|
Ip6dns1 string `json:"ip6dns1,omitempty"`
|
||||||
Ip6dns2 string `json:"ip6dns2,omitempty"`
|
Ip6dns2 string `json:"ip6dns2,omitempty"`
|
||||||
|
@ -602,6 +607,7 @@ type StartInternalLoadBalancerVMResponse struct {
|
||||||
Templateid string `json:"templateid,omitempty"`
|
Templateid string `json:"templateid,omitempty"`
|
||||||
Version string `json:"version,omitempty"`
|
Version string `json:"version,omitempty"`
|
||||||
Vpcid string `json:"vpcid,omitempty"`
|
Vpcid string `json:"vpcid,omitempty"`
|
||||||
|
Vpcname string `json:"vpcname,omitempty"`
|
||||||
Zoneid string `json:"zoneid,omitempty"`
|
Zoneid string `json:"zoneid,omitempty"`
|
||||||
Zonename string `json:"zonename,omitempty"`
|
Zonename string `json:"zonename,omitempty"`
|
||||||
}
|
}
|
||||||
|
@ -945,8 +951,10 @@ type InternalLoadBalancerVM struct {
|
||||||
Guestmacaddress string `json:"guestmacaddress,omitempty"`
|
Guestmacaddress string `json:"guestmacaddress,omitempty"`
|
||||||
Guestnetmask string `json:"guestnetmask,omitempty"`
|
Guestnetmask string `json:"guestnetmask,omitempty"`
|
||||||
Guestnetworkid string `json:"guestnetworkid,omitempty"`
|
Guestnetworkid string `json:"guestnetworkid,omitempty"`
|
||||||
|
Guestnetworkname string `json:"guestnetworkname,omitempty"`
|
||||||
Hostid string `json:"hostid,omitempty"`
|
Hostid string `json:"hostid,omitempty"`
|
||||||
Hostname string `json:"hostname,omitempty"`
|
Hostname string `json:"hostname,omitempty"`
|
||||||
|
Hypervisor string `json:"hypervisor,omitempty"`
|
||||||
Id string `json:"id,omitempty"`
|
Id string `json:"id,omitempty"`
|
||||||
Ip6dns1 string `json:"ip6dns1,omitempty"`
|
Ip6dns1 string `json:"ip6dns1,omitempty"`
|
||||||
Ip6dns2 string `json:"ip6dns2,omitempty"`
|
Ip6dns2 string `json:"ip6dns2,omitempty"`
|
||||||
|
@ -997,6 +1005,7 @@ type InternalLoadBalancerVM struct {
|
||||||
Templateid string `json:"templateid,omitempty"`
|
Templateid string `json:"templateid,omitempty"`
|
||||||
Version string `json:"version,omitempty"`
|
Version string `json:"version,omitempty"`
|
||||||
Vpcid string `json:"vpcid,omitempty"`
|
Vpcid string `json:"vpcid,omitempty"`
|
||||||
|
Vpcname string `json:"vpcname,omitempty"`
|
||||||
Zoneid string `json:"zoneid,omitempty"`
|
Zoneid string `json:"zoneid,omitempty"`
|
||||||
Zonename string `json:"zonename,omitempty"`
|
Zonename string `json:"zonename,omitempty"`
|
||||||
}
|
}
|
||||||
|
|
|
@ -628,7 +628,7 @@ func (s *LoadBalancerService) NewCreateLBStickinessPolicyParams(lbruleid string,
|
||||||
return p
|
return p
|
||||||
}
|
}
|
||||||
|
|
||||||
// Creates a Load Balancer stickiness policy
|
// Creates a load balancer stickiness policy
|
||||||
func (s *LoadBalancerService) CreateLBStickinessPolicy(p *CreateLBStickinessPolicyParams) (*CreateLBStickinessPolicyResponse, error) {
|
func (s *LoadBalancerService) CreateLBStickinessPolicy(p *CreateLBStickinessPolicyParams) (*CreateLBStickinessPolicyResponse, error) {
|
||||||
resp, err := s.cs.newRequest("createLBStickinessPolicy", p.toURLValues())
|
resp, err := s.cs.newRequest("createLBStickinessPolicy", p.toURLValues())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -738,7 +738,7 @@ func (s *LoadBalancerService) NewUpdateLBStickinessPolicyParams(id string) *Upda
|
||||||
return p
|
return p
|
||||||
}
|
}
|
||||||
|
|
||||||
// Updates LB Stickiness policy
|
// Updates load balancer stickiness policy
|
||||||
func (s *LoadBalancerService) UpdateLBStickinessPolicy(p *UpdateLBStickinessPolicyParams) (*UpdateLBStickinessPolicyResponse, error) {
|
func (s *LoadBalancerService) UpdateLBStickinessPolicy(p *UpdateLBStickinessPolicyParams) (*UpdateLBStickinessPolicyResponse, error) {
|
||||||
resp, err := s.cs.newRequest("updateLBStickinessPolicy", p.toURLValues())
|
resp, err := s.cs.newRequest("updateLBStickinessPolicy", p.toURLValues())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -825,7 +825,7 @@ func (s *LoadBalancerService) NewDeleteLBStickinessPolicyParams(id string) *Dele
|
||||||
return p
|
return p
|
||||||
}
|
}
|
||||||
|
|
||||||
// Deletes a LB stickiness policy.
|
// Deletes a load balancer stickiness policy.
|
||||||
func (s *LoadBalancerService) DeleteLBStickinessPolicy(p *DeleteLBStickinessPolicyParams) (*DeleteLBStickinessPolicyResponse, error) {
|
func (s *LoadBalancerService) DeleteLBStickinessPolicy(p *DeleteLBStickinessPolicyParams) (*DeleteLBStickinessPolicyResponse, error) {
|
||||||
resp, err := s.cs.newRequest("deleteLBStickinessPolicy", p.toURLValues())
|
resp, err := s.cs.newRequest("deleteLBStickinessPolicy", p.toURLValues())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -1331,7 +1331,7 @@ func (s *LoadBalancerService) GetLBStickinessPolicyByID(id string) (*LBStickines
|
||||||
return nil, l.Count, fmt.Errorf("There is more then one result for LBStickinessPolicy UUID: %s!", id)
|
return nil, l.Count, fmt.Errorf("There is more then one result for LBStickinessPolicy UUID: %s!", id)
|
||||||
}
|
}
|
||||||
|
|
||||||
// Lists LBStickiness policies.
|
// Lists load balancer stickiness policies.
|
||||||
func (s *LoadBalancerService) ListLBStickinessPolicies(p *ListLBStickinessPoliciesParams) (*ListLBStickinessPoliciesResponse, error) {
|
func (s *LoadBalancerService) ListLBStickinessPolicies(p *ListLBStickinessPoliciesParams) (*ListLBStickinessPoliciesResponse, error) {
|
||||||
resp, err := s.cs.newRequest("listLBStickinessPolicies", p.toURLValues())
|
resp, err := s.cs.newRequest("listLBStickinessPolicies", p.toURLValues())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -1486,7 +1486,7 @@ func (s *LoadBalancerService) GetLBHealthCheckPolicyByID(id string) (*LBHealthCh
|
||||||
return nil, l.Count, fmt.Errorf("There is more then one result for LBHealthCheckPolicy UUID: %s!", id)
|
return nil, l.Count, fmt.Errorf("There is more then one result for LBHealthCheckPolicy UUID: %s!", id)
|
||||||
}
|
}
|
||||||
|
|
||||||
// Lists load balancer HealthCheck policies.
|
// Lists load balancer health check policies.
|
||||||
func (s *LoadBalancerService) ListLBHealthCheckPolicies(p *ListLBHealthCheckPoliciesParams) (*ListLBHealthCheckPoliciesResponse, error) {
|
func (s *LoadBalancerService) ListLBHealthCheckPolicies(p *ListLBHealthCheckPoliciesParams) (*ListLBHealthCheckPoliciesResponse, error) {
|
||||||
resp, err := s.cs.newRequest("listLBHealthCheckPolicies", p.toURLValues())
|
resp, err := s.cs.newRequest("listLBHealthCheckPolicies", p.toURLValues())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -1638,7 +1638,7 @@ func (s *LoadBalancerService) NewCreateLBHealthCheckPolicyParams(lbruleid string
|
||||||
return p
|
return p
|
||||||
}
|
}
|
||||||
|
|
||||||
// Creates a Load Balancer healthcheck policy
|
// Creates a load balancer health check policy
|
||||||
func (s *LoadBalancerService) CreateLBHealthCheckPolicy(p *CreateLBHealthCheckPolicyParams) (*CreateLBHealthCheckPolicyResponse, error) {
|
func (s *LoadBalancerService) CreateLBHealthCheckPolicy(p *CreateLBHealthCheckPolicyParams) (*CreateLBHealthCheckPolicyResponse, error) {
|
||||||
resp, err := s.cs.newRequest("createLBHealthCheckPolicy", p.toURLValues())
|
resp, err := s.cs.newRequest("createLBHealthCheckPolicy", p.toURLValues())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -1747,7 +1747,7 @@ func (s *LoadBalancerService) NewUpdateLBHealthCheckPolicyParams(id string) *Upd
|
||||||
return p
|
return p
|
||||||
}
|
}
|
||||||
|
|
||||||
// Updates LB HealthCheck policy
|
// Updates load balancer health check policy
|
||||||
func (s *LoadBalancerService) UpdateLBHealthCheckPolicy(p *UpdateLBHealthCheckPolicyParams) (*UpdateLBHealthCheckPolicyResponse, error) {
|
func (s *LoadBalancerService) UpdateLBHealthCheckPolicy(p *UpdateLBHealthCheckPolicyParams) (*UpdateLBHealthCheckPolicyResponse, error) {
|
||||||
resp, err := s.cs.newRequest("updateLBHealthCheckPolicy", p.toURLValues())
|
resp, err := s.cs.newRequest("updateLBHealthCheckPolicy", p.toURLValues())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -1833,7 +1833,7 @@ func (s *LoadBalancerService) NewDeleteLBHealthCheckPolicyParams(id string) *Del
|
||||||
return p
|
return p
|
||||||
}
|
}
|
||||||
|
|
||||||
// Deletes a load balancer HealthCheck policy.
|
// Deletes a load balancer health check policy.
|
||||||
func (s *LoadBalancerService) DeleteLBHealthCheckPolicy(p *DeleteLBHealthCheckPolicyParams) (*DeleteLBHealthCheckPolicyResponse, error) {
|
func (s *LoadBalancerService) DeleteLBHealthCheckPolicy(p *DeleteLBHealthCheckPolicyParams) (*DeleteLBHealthCheckPolicyResponse, error) {
|
||||||
resp, err := s.cs.newRequest("deleteLBHealthCheckPolicy", p.toURLValues())
|
resp, err := s.cs.newRequest("deleteLBHealthCheckPolicy", p.toURLValues())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -2267,7 +2267,7 @@ func (s *LoadBalancerService) NewUploadSslCertParams(certificate string, private
|
||||||
return p
|
return p
|
||||||
}
|
}
|
||||||
|
|
||||||
// Upload a certificate to cloudstack
|
// Upload a certificate to CloudStack
|
||||||
func (s *LoadBalancerService) UploadSslCert(p *UploadSslCertParams) (*UploadSslCertResponse, error) {
|
func (s *LoadBalancerService) UploadSslCert(p *UploadSslCertParams) (*UploadSslCertResponse, error) {
|
||||||
resp, err := s.cs.newRequest("uploadSslCert", p.toURLValues())
|
resp, err := s.cs.newRequest("uploadSslCert", p.toURLValues())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -2326,7 +2326,7 @@ func (s *LoadBalancerService) NewDeleteSslCertParams(id string) *DeleteSslCertPa
|
||||||
return p
|
return p
|
||||||
}
|
}
|
||||||
|
|
||||||
// Delete a certificate to cloudstack
|
// Delete a certificate to CloudStack
|
||||||
func (s *LoadBalancerService) DeleteSslCert(p *DeleteSslCertParams) (*DeleteSslCertResponse, error) {
|
func (s *LoadBalancerService) DeleteSslCert(p *DeleteSslCertParams) (*DeleteSslCertResponse, error) {
|
||||||
resp, err := s.cs.newRequest("deleteSslCert", p.toURLValues())
|
resp, err := s.cs.newRequest("deleteSslCert", p.toURLValues())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -2485,7 +2485,7 @@ func (s *LoadBalancerService) NewAssignCertToLoadBalancerParams(certid string, l
|
||||||
return p
|
return p
|
||||||
}
|
}
|
||||||
|
|
||||||
// Assigns a certificate to a Load Balancer Rule
|
// Assigns a certificate to a load balancer rule
|
||||||
func (s *LoadBalancerService) AssignCertToLoadBalancer(p *AssignCertToLoadBalancerParams) (*AssignCertToLoadBalancerResponse, error) {
|
func (s *LoadBalancerService) AssignCertToLoadBalancer(p *AssignCertToLoadBalancerParams) (*AssignCertToLoadBalancerResponse, error) {
|
||||||
resp, err := s.cs.newRequest("assignCertToLoadBalancer", p.toURLValues())
|
resp, err := s.cs.newRequest("assignCertToLoadBalancer", p.toURLValues())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -2552,7 +2552,7 @@ func (s *LoadBalancerService) NewRemoveCertFromLoadBalancerParams(lbruleid strin
|
||||||
return p
|
return p
|
||||||
}
|
}
|
||||||
|
|
||||||
// Removes a certificate from a Load Balancer Rule
|
// Removes a certificate from a load balancer rule
|
||||||
func (s *LoadBalancerService) RemoveCertFromLoadBalancer(p *RemoveCertFromLoadBalancerParams) (*RemoveCertFromLoadBalancerResponse, error) {
|
func (s *LoadBalancerService) RemoveCertFromLoadBalancer(p *RemoveCertFromLoadBalancerParams) (*RemoveCertFromLoadBalancerResponse, error) {
|
||||||
resp, err := s.cs.newRequest("removeCertFromLoadBalancer", p.toURLValues())
|
resp, err := s.cs.newRequest("removeCertFromLoadBalancer", p.toURLValues())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -4135,7 +4135,7 @@ func (s *LoadBalancerService) NewCreateLoadBalancerParams(algorithm string, inst
|
||||||
return p
|
return p
|
||||||
}
|
}
|
||||||
|
|
||||||
// Creates a Load Balancer
|
// Creates a load balancer
|
||||||
func (s *LoadBalancerService) CreateLoadBalancer(p *CreateLoadBalancerParams) (*CreateLoadBalancerResponse, error) {
|
func (s *LoadBalancerService) CreateLoadBalancer(p *CreateLoadBalancerParams) (*CreateLoadBalancerResponse, error) {
|
||||||
resp, err := s.cs.newRequest("createLoadBalancer", p.toURLValues())
|
resp, err := s.cs.newRequest("createLoadBalancer", p.toURLValues())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -4511,7 +4511,7 @@ func (s *LoadBalancerService) GetLoadBalancerByID(id string) (*LoadBalancer, int
|
||||||
return nil, l.Count, fmt.Errorf("There is more then one result for LoadBalancer UUID: %s!", id)
|
return nil, l.Count, fmt.Errorf("There is more then one result for LoadBalancer UUID: %s!", id)
|
||||||
}
|
}
|
||||||
|
|
||||||
// Lists Load Balancers
|
// Lists load balancers
|
||||||
func (s *LoadBalancerService) ListLoadBalancers(p *ListLoadBalancersParams) (*ListLoadBalancersResponse, error) {
|
func (s *LoadBalancerService) ListLoadBalancers(p *ListLoadBalancersParams) (*ListLoadBalancersResponse, error) {
|
||||||
resp, err := s.cs.newRequest("listLoadBalancers", p.toURLValues())
|
resp, err := s.cs.newRequest("listLoadBalancers", p.toURLValues())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -4691,7 +4691,7 @@ func (s *LoadBalancerService) NewUpdateLoadBalancerParams(id string) *UpdateLoad
|
||||||
return p
|
return p
|
||||||
}
|
}
|
||||||
|
|
||||||
// Updates a Load Balancer
|
// Updates a load balancer
|
||||||
func (s *LoadBalancerService) UpdateLoadBalancer(p *UpdateLoadBalancerParams) (*UpdateLoadBalancerResponse, error) {
|
func (s *LoadBalancerService) UpdateLoadBalancer(p *UpdateLoadBalancerParams) (*UpdateLoadBalancerResponse, error) {
|
||||||
resp, err := s.cs.newRequest("updateLoadBalancer", p.toURLValues())
|
resp, err := s.cs.newRequest("updateLoadBalancer", p.toURLValues())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|
|
@ -1,17 +0,0 @@
|
||||||
//
|
|
||||||
// Copyright 2014, Sander van Harmelen
|
|
||||||
//
|
|
||||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
// you may not use this file except in compliance with the License.
|
|
||||||
// You may obtain a copy of the License at
|
|
||||||
//
|
|
||||||
// http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
//
|
|
||||||
// Unless required by applicable law or agreed to in writing, software
|
|
||||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
// See the License for the specific language governing permissions and
|
|
||||||
// limitations under the License.
|
|
||||||
//
|
|
||||||
|
|
||||||
package cloudstack
|
|
|
@ -1,17 +0,0 @@
|
||||||
//
|
|
||||||
// Copyright 2014, Sander van Harmelen
|
|
||||||
//
|
|
||||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
// you may not use this file except in compliance with the License.
|
|
||||||
// You may obtain a copy of the License at
|
|
||||||
//
|
|
||||||
// http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
//
|
|
||||||
// Unless required by applicable law or agreed to in writing, software
|
|
||||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
// See the License for the specific language governing permissions and
|
|
||||||
// limitations under the License.
|
|
||||||
//
|
|
||||||
|
|
||||||
package cloudstack
|
|
|
@ -90,7 +90,7 @@ func (s *NATService) NewEnableStaticNatParams(ipaddressid string, virtualmachine
|
||||||
return p
|
return p
|
||||||
}
|
}
|
||||||
|
|
||||||
// Enables static nat for given ip address
|
// Enables static NAT for given IP address
|
||||||
func (s *NATService) EnableStaticNat(p *EnableStaticNatParams) (*EnableStaticNatResponse, error) {
|
func (s *NATService) EnableStaticNat(p *EnableStaticNatParams) (*EnableStaticNatResponse, error) {
|
||||||
resp, err := s.cs.newRequest("enableStaticNat", p.toURLValues())
|
resp, err := s.cs.newRequest("enableStaticNat", p.toURLValues())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -202,7 +202,7 @@ func (s *NATService) NewCreateIpForwardingRuleParams(ipaddressid string, protoco
|
||||||
return p
|
return p
|
||||||
}
|
}
|
||||||
|
|
||||||
// Creates an ip forwarding rule
|
// Creates an IP forwarding rule
|
||||||
func (s *NATService) CreateIpForwardingRule(p *CreateIpForwardingRuleParams) (*CreateIpForwardingRuleResponse, error) {
|
func (s *NATService) CreateIpForwardingRule(p *CreateIpForwardingRuleParams) (*CreateIpForwardingRuleResponse, error) {
|
||||||
resp, err := s.cs.newRequest("createIpForwardingRule", p.toURLValues())
|
resp, err := s.cs.newRequest("createIpForwardingRule", p.toURLValues())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -300,7 +300,7 @@ func (s *NATService) NewDeleteIpForwardingRuleParams(id string) *DeleteIpForward
|
||||||
return p
|
return p
|
||||||
}
|
}
|
||||||
|
|
||||||
// Deletes an ip forwarding rule
|
// Deletes an IP forwarding rule
|
||||||
func (s *NATService) DeleteIpForwardingRule(p *DeleteIpForwardingRuleParams) (*DeleteIpForwardingRuleResponse, error) {
|
func (s *NATService) DeleteIpForwardingRule(p *DeleteIpForwardingRuleParams) (*DeleteIpForwardingRuleResponse, error) {
|
||||||
resp, err := s.cs.newRequest("deleteIpForwardingRule", p.toURLValues())
|
resp, err := s.cs.newRequest("deleteIpForwardingRule", p.toURLValues())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -522,7 +522,7 @@ func (s *NATService) GetIpForwardingRuleByID(id string) (*IpForwardingRule, int,
|
||||||
return nil, l.Count, fmt.Errorf("There is more then one result for IpForwardingRule UUID: %s!", id)
|
return nil, l.Count, fmt.Errorf("There is more then one result for IpForwardingRule UUID: %s!", id)
|
||||||
}
|
}
|
||||||
|
|
||||||
// List the ip forwarding rules
|
// List the IP forwarding rules
|
||||||
func (s *NATService) ListIpForwardingRules(p *ListIpForwardingRulesParams) (*ListIpForwardingRulesResponse, error) {
|
func (s *NATService) ListIpForwardingRules(p *ListIpForwardingRulesParams) (*ListIpForwardingRulesResponse, error) {
|
||||||
resp, err := s.cs.newRequest("listIpForwardingRules", p.toURLValues())
|
resp, err := s.cs.newRequest("listIpForwardingRules", p.toURLValues())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -604,7 +604,7 @@ func (s *NATService) NewDisableStaticNatParams(ipaddressid string) *DisableStati
|
||||||
return p
|
return p
|
||||||
}
|
}
|
||||||
|
|
||||||
// Disables static rule for given ip address
|
// Disables static rule for given IP address
|
||||||
func (s *NATService) DisableStaticNat(p *DisableStaticNatParams) (*DisableStaticNatResponse, error) {
|
func (s *NATService) DisableStaticNat(p *DisableStaticNatParams) (*DisableStaticNatResponse, error) {
|
||||||
resp, err := s.cs.newRequest("disableStaticNat", p.toURLValues())
|
resp, err := s.cs.newRequest("disableStaticNat", p.toURLValues())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|
|
@ -407,7 +407,7 @@ func (s *NetworkACLService) NewUpdateNetworkACLItemParams(id string) *UpdateNetw
|
||||||
return p
|
return p
|
||||||
}
|
}
|
||||||
|
|
||||||
// Updates ACL Item with specified Id
|
// Updates ACL item with specified ID
|
||||||
func (s *NetworkACLService) UpdateNetworkACLItem(p *UpdateNetworkACLItemParams) (*UpdateNetworkACLItemResponse, error) {
|
func (s *NetworkACLService) UpdateNetworkACLItem(p *UpdateNetworkACLItemParams) (*UpdateNetworkACLItemResponse, error) {
|
||||||
resp, err := s.cs.newRequest("updateNetworkACLItem", p.toURLValues())
|
resp, err := s.cs.newRequest("updateNetworkACLItem", p.toURLValues())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -502,7 +502,7 @@ func (s *NetworkACLService) NewDeleteNetworkACLParams(id string) *DeleteNetworkA
|
||||||
return p
|
return p
|
||||||
}
|
}
|
||||||
|
|
||||||
// Deletes a Network ACL
|
// Deletes a network ACL
|
||||||
func (s *NetworkACLService) DeleteNetworkACL(p *DeleteNetworkACLParams) (*DeleteNetworkACLResponse, error) {
|
func (s *NetworkACLService) DeleteNetworkACL(p *DeleteNetworkACLParams) (*DeleteNetworkACLResponse, error) {
|
||||||
resp, err := s.cs.newRequest("deleteNetworkACL", p.toURLValues())
|
resp, err := s.cs.newRequest("deleteNetworkACL", p.toURLValues())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -899,7 +899,7 @@ func (s *NetworkACLService) NewCreateNetworkACLListParams(name string, vpcid str
|
||||||
return p
|
return p
|
||||||
}
|
}
|
||||||
|
|
||||||
// Creates a Network ACL for the given VPC
|
// Creates a network ACL for the given VPC
|
||||||
func (s *NetworkACLService) CreateNetworkACLList(p *CreateNetworkACLListParams) (*CreateNetworkACLListResponse, error) {
|
func (s *NetworkACLService) CreateNetworkACLList(p *CreateNetworkACLListParams) (*CreateNetworkACLListResponse, error) {
|
||||||
resp, err := s.cs.newRequest("createNetworkACLList", p.toURLValues())
|
resp, err := s.cs.newRequest("createNetworkACLList", p.toURLValues())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -974,7 +974,7 @@ func (s *NetworkACLService) NewDeleteNetworkACLListParams(id string) *DeleteNetw
|
||||||
return p
|
return p
|
||||||
}
|
}
|
||||||
|
|
||||||
// Deletes a Network ACL
|
// Deletes a network ACL
|
||||||
func (s *NetworkACLService) DeleteNetworkACLList(p *DeleteNetworkACLListParams) (*DeleteNetworkACLListResponse, error) {
|
func (s *NetworkACLService) DeleteNetworkACLList(p *DeleteNetworkACLListParams) (*DeleteNetworkACLListResponse, error) {
|
||||||
resp, err := s.cs.newRequest("deleteNetworkACLList", p.toURLValues())
|
resp, err := s.cs.newRequest("deleteNetworkACLList", p.toURLValues())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -1063,7 +1063,7 @@ func (s *NetworkACLService) NewReplaceNetworkACLListParams(aclid string) *Replac
|
||||||
return p
|
return p
|
||||||
}
|
}
|
||||||
|
|
||||||
// Replaces ACL associated with a Network or private gateway
|
// Replaces ACL associated with a network or private gateway
|
||||||
func (s *NetworkACLService) ReplaceNetworkACLList(p *ReplaceNetworkACLListParams) (*ReplaceNetworkACLListResponse, error) {
|
func (s *NetworkACLService) ReplaceNetworkACLList(p *ReplaceNetworkACLListParams) (*ReplaceNetworkACLListResponse, error) {
|
||||||
resp, err := s.cs.newRequest("replaceNetworkACLList", p.toURLValues())
|
resp, err := s.cs.newRequest("replaceNetworkACLList", p.toURLValues())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -1444,7 +1444,7 @@ func (s *NetworkACLService) NewUpdateNetworkACLListParams(id string) *UpdateNetw
|
||||||
return p
|
return p
|
||||||
}
|
}
|
||||||
|
|
||||||
// Updates Network ACL list
|
// Updates network ACL list
|
||||||
func (s *NetworkACLService) UpdateNetworkACLList(p *UpdateNetworkACLListParams) (*UpdateNetworkACLListResponse, error) {
|
func (s *NetworkACLService) UpdateNetworkACLList(p *UpdateNetworkACLListParams) (*UpdateNetworkACLListResponse, error) {
|
||||||
resp, err := s.cs.newRequest("updateNetworkACLList", p.toURLValues())
|
resp, err := s.cs.newRequest("updateNetworkACLList", p.toURLValues())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|
|
@ -82,10 +82,9 @@ func (p *DedicatePublicIpRangeParams) SetProjectid(v string) {
|
||||||
|
|
||||||
// You should always use this function to get a new DedicatePublicIpRangeParams instance,
|
// You should always use this function to get a new DedicatePublicIpRangeParams instance,
|
||||||
// as then you are sure you have configured all required params
|
// as then you are sure you have configured all required params
|
||||||
func (s *NetworkService) NewDedicatePublicIpRangeParams(account string, domainid string, id string) *DedicatePublicIpRangeParams {
|
func (s *NetworkService) NewDedicatePublicIpRangeParams(domainid string, id string) *DedicatePublicIpRangeParams {
|
||||||
p := &DedicatePublicIpRangeParams{}
|
p := &DedicatePublicIpRangeParams{}
|
||||||
p.p = make(map[string]interface{})
|
p.p = make(map[string]interface{})
|
||||||
p.p["account"] = account
|
|
||||||
p.p["domainid"] = domainid
|
p.p["domainid"] = domainid
|
||||||
p.p["id"] = id
|
p.p["id"] = id
|
||||||
return p
|
return p
|
||||||
|
@ -258,9 +257,6 @@ func (p *CreateNetworkParams) toURLValues() url.Values {
|
||||||
if v, found := p.p["vlan"]; found {
|
if v, found := p.p["vlan"]; found {
|
||||||
u.Set("vlan", v.(string))
|
u.Set("vlan", v.(string))
|
||||||
}
|
}
|
||||||
if v, found := p.p["vlan"]; found {
|
|
||||||
u.Set("vlan", v.(string))
|
|
||||||
}
|
|
||||||
if v, found := p.p["vpcid"]; found {
|
if v, found := p.p["vpcid"]; found {
|
||||||
u.Set("vpcid", v.(string))
|
u.Set("vpcid", v.(string))
|
||||||
}
|
}
|
||||||
|
@ -1175,7 +1171,7 @@ func (s *NetworkService) NewRestartNetworkParams(id string) *RestartNetworkParam
|
||||||
return p
|
return p
|
||||||
}
|
}
|
||||||
|
|
||||||
// Restarts the network; includes 1) restarting network elements - virtual routers, dhcp servers 2) reapplying all public ips 3) reapplying loadBalancing/portForwarding rules
|
// Restarts the network; includes 1) restarting network elements - virtual routers, DHCP servers 2) reapplying all public IPs 3) reapplying loadBalancing/portForwarding rules
|
||||||
func (s *NetworkService) RestartNetwork(p *RestartNetworkParams) (*RestartNetworkResponse, error) {
|
func (s *NetworkService) RestartNetwork(p *RestartNetworkParams) (*RestartNetworkResponse, error) {
|
||||||
resp, err := s.cs.newRequest("restartNetwork", p.toURLValues())
|
resp, err := s.cs.newRequest("restartNetwork", p.toURLValues())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -3709,3 +3705,285 @@ type ListNetworkIsolationMethodsResponse struct {
|
||||||
type NetworkIsolationMethod struct {
|
type NetworkIsolationMethod struct {
|
||||||
Name string `json:"name,omitempty"`
|
Name string `json:"name,omitempty"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
type AddOpenDaylightControllerParams struct {
|
||||||
|
p map[string]interface{}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *AddOpenDaylightControllerParams) toURLValues() url.Values {
|
||||||
|
u := url.Values{}
|
||||||
|
if p.p == nil {
|
||||||
|
return u
|
||||||
|
}
|
||||||
|
if v, found := p.p["password"]; found {
|
||||||
|
u.Set("password", v.(string))
|
||||||
|
}
|
||||||
|
if v, found := p.p["physicalnetworkid"]; found {
|
||||||
|
u.Set("physicalnetworkid", v.(string))
|
||||||
|
}
|
||||||
|
if v, found := p.p["url"]; found {
|
||||||
|
u.Set("url", v.(string))
|
||||||
|
}
|
||||||
|
if v, found := p.p["username"]; found {
|
||||||
|
u.Set("username", v.(string))
|
||||||
|
}
|
||||||
|
return u
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *AddOpenDaylightControllerParams) SetPassword(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["password"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *AddOpenDaylightControllerParams) SetPhysicalnetworkid(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["physicalnetworkid"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *AddOpenDaylightControllerParams) SetUrl(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["url"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *AddOpenDaylightControllerParams) SetUsername(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["username"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// You should always use this function to get a new AddOpenDaylightControllerParams instance,
|
||||||
|
// as then you are sure you have configured all required params
|
||||||
|
func (s *NetworkService) NewAddOpenDaylightControllerParams(password string, physicalnetworkid string, url string, username string) *AddOpenDaylightControllerParams {
|
||||||
|
p := &AddOpenDaylightControllerParams{}
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
p.p["password"] = password
|
||||||
|
p.p["physicalnetworkid"] = physicalnetworkid
|
||||||
|
p.p["url"] = url
|
||||||
|
p.p["username"] = username
|
||||||
|
return p
|
||||||
|
}
|
||||||
|
|
||||||
|
// Adds an OpenDyalight controler
|
||||||
|
func (s *NetworkService) AddOpenDaylightController(p *AddOpenDaylightControllerParams) (*AddOpenDaylightControllerResponse, error) {
|
||||||
|
resp, err := s.cs.newRequest("addOpenDaylightController", p.toURLValues())
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
|
var r AddOpenDaylightControllerResponse
|
||||||
|
if err := json.Unmarshal(resp, &r); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
|
// If we have a async client, we need to wait for the async result
|
||||||
|
if s.cs.async {
|
||||||
|
b, err := s.cs.GetAsyncJobResult(r.JobID, s.cs.timeout)
|
||||||
|
if err != nil {
|
||||||
|
if err == AsyncTimeoutErr {
|
||||||
|
return &r, err
|
||||||
|
}
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
|
b, err = getRawValue(b)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
|
if err := json.Unmarshal(b, &r); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return &r, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
type AddOpenDaylightControllerResponse struct {
|
||||||
|
JobID string `json:"jobid,omitempty"`
|
||||||
|
Id string `json:"id,omitempty"`
|
||||||
|
Name string `json:"name,omitempty"`
|
||||||
|
Physicalnetworkid string `json:"physicalnetworkid,omitempty"`
|
||||||
|
Url string `json:"url,omitempty"`
|
||||||
|
Username string `json:"username,omitempty"`
|
||||||
|
}
|
||||||
|
|
||||||
|
type DeleteOpenDaylightControllerParams struct {
|
||||||
|
p map[string]interface{}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *DeleteOpenDaylightControllerParams) toURLValues() url.Values {
|
||||||
|
u := url.Values{}
|
||||||
|
if p.p == nil {
|
||||||
|
return u
|
||||||
|
}
|
||||||
|
if v, found := p.p["id"]; found {
|
||||||
|
u.Set("id", v.(string))
|
||||||
|
}
|
||||||
|
return u
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *DeleteOpenDaylightControllerParams) SetId(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["id"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// You should always use this function to get a new DeleteOpenDaylightControllerParams instance,
|
||||||
|
// as then you are sure you have configured all required params
|
||||||
|
func (s *NetworkService) NewDeleteOpenDaylightControllerParams(id string) *DeleteOpenDaylightControllerParams {
|
||||||
|
p := &DeleteOpenDaylightControllerParams{}
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
p.p["id"] = id
|
||||||
|
return p
|
||||||
|
}
|
||||||
|
|
||||||
|
// Removes an OpenDyalight controler
|
||||||
|
func (s *NetworkService) DeleteOpenDaylightController(p *DeleteOpenDaylightControllerParams) (*DeleteOpenDaylightControllerResponse, error) {
|
||||||
|
resp, err := s.cs.newRequest("deleteOpenDaylightController", p.toURLValues())
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
|
var r DeleteOpenDaylightControllerResponse
|
||||||
|
if err := json.Unmarshal(resp, &r); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
|
// If we have a async client, we need to wait for the async result
|
||||||
|
if s.cs.async {
|
||||||
|
b, err := s.cs.GetAsyncJobResult(r.JobID, s.cs.timeout)
|
||||||
|
if err != nil {
|
||||||
|
if err == AsyncTimeoutErr {
|
||||||
|
return &r, err
|
||||||
|
}
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
|
b, err = getRawValue(b)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
|
if err := json.Unmarshal(b, &r); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return &r, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
type DeleteOpenDaylightControllerResponse struct {
|
||||||
|
JobID string `json:"jobid,omitempty"`
|
||||||
|
Id string `json:"id,omitempty"`
|
||||||
|
Name string `json:"name,omitempty"`
|
||||||
|
Physicalnetworkid string `json:"physicalnetworkid,omitempty"`
|
||||||
|
Url string `json:"url,omitempty"`
|
||||||
|
Username string `json:"username,omitempty"`
|
||||||
|
}
|
||||||
|
|
||||||
|
type ListOpenDaylightControllersParams struct {
|
||||||
|
p map[string]interface{}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *ListOpenDaylightControllersParams) toURLValues() url.Values {
|
||||||
|
u := url.Values{}
|
||||||
|
if p.p == nil {
|
||||||
|
return u
|
||||||
|
}
|
||||||
|
if v, found := p.p["id"]; found {
|
||||||
|
u.Set("id", v.(string))
|
||||||
|
}
|
||||||
|
if v, found := p.p["physicalnetworkid"]; found {
|
||||||
|
u.Set("physicalnetworkid", v.(string))
|
||||||
|
}
|
||||||
|
return u
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *ListOpenDaylightControllersParams) SetId(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["id"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *ListOpenDaylightControllersParams) SetPhysicalnetworkid(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["physicalnetworkid"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// You should always use this function to get a new ListOpenDaylightControllersParams instance,
|
||||||
|
// as then you are sure you have configured all required params
|
||||||
|
func (s *NetworkService) NewListOpenDaylightControllersParams() *ListOpenDaylightControllersParams {
|
||||||
|
p := &ListOpenDaylightControllersParams{}
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
return p
|
||||||
|
}
|
||||||
|
|
||||||
|
// This is a courtesy helper function, which in some cases may not work as expected!
|
||||||
|
func (s *NetworkService) GetOpenDaylightControllerByID(id string) (*OpenDaylightController, int, error) {
|
||||||
|
p := &ListOpenDaylightControllersParams{}
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
|
||||||
|
p.p["id"] = id
|
||||||
|
|
||||||
|
l, err := s.ListOpenDaylightControllers(p)
|
||||||
|
if err != nil {
|
||||||
|
if strings.Contains(err.Error(), fmt.Sprintf(
|
||||||
|
"Invalid parameter id value=%s due to incorrect long value format, "+
|
||||||
|
"or entity does not exist", id)) {
|
||||||
|
return nil, 0, fmt.Errorf("No match found for %s: %+v", id, l)
|
||||||
|
}
|
||||||
|
return nil, -1, err
|
||||||
|
}
|
||||||
|
|
||||||
|
if l.Count == 0 {
|
||||||
|
return nil, l.Count, fmt.Errorf("No match found for %s: %+v", id, l)
|
||||||
|
}
|
||||||
|
|
||||||
|
if l.Count == 1 {
|
||||||
|
return l.OpenDaylightControllers[0], l.Count, nil
|
||||||
|
}
|
||||||
|
return nil, l.Count, fmt.Errorf("There is more then one result for OpenDaylightController UUID: %s!", id)
|
||||||
|
}
|
||||||
|
|
||||||
|
// Lists OpenDyalight controllers
|
||||||
|
func (s *NetworkService) ListOpenDaylightControllers(p *ListOpenDaylightControllersParams) (*ListOpenDaylightControllersResponse, error) {
|
||||||
|
resp, err := s.cs.newRequest("listOpenDaylightControllers", p.toURLValues())
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
|
var r ListOpenDaylightControllersResponse
|
||||||
|
if err := json.Unmarshal(resp, &r); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
return &r, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
type ListOpenDaylightControllersResponse struct {
|
||||||
|
Count int `json:"count"`
|
||||||
|
OpenDaylightControllers []*OpenDaylightController `json:"opendaylightcontroller"`
|
||||||
|
}
|
||||||
|
|
||||||
|
type OpenDaylightController struct {
|
||||||
|
Id string `json:"id,omitempty"`
|
||||||
|
Name string `json:"name,omitempty"`
|
||||||
|
Physicalnetworkid string `json:"physicalnetworkid,omitempty"`
|
||||||
|
Url string `json:"url,omitempty"`
|
||||||
|
Username string `json:"username,omitempty"`
|
||||||
|
}
|
||||||
|
|
|
@ -175,6 +175,260 @@ type RemoveIpFromNicResponse struct {
|
||||||
Success bool `json:"success,omitempty"`
|
Success bool `json:"success,omitempty"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
type UpdateVmNicIpParams struct {
|
||||||
|
p map[string]interface{}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *UpdateVmNicIpParams) toURLValues() url.Values {
|
||||||
|
u := url.Values{}
|
||||||
|
if p.p == nil {
|
||||||
|
return u
|
||||||
|
}
|
||||||
|
if v, found := p.p["ipaddress"]; found {
|
||||||
|
u.Set("ipaddress", v.(string))
|
||||||
|
}
|
||||||
|
if v, found := p.p["nicid"]; found {
|
||||||
|
u.Set("nicid", v.(string))
|
||||||
|
}
|
||||||
|
return u
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *UpdateVmNicIpParams) SetIpaddress(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["ipaddress"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *UpdateVmNicIpParams) SetNicid(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["nicid"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// You should always use this function to get a new UpdateVmNicIpParams instance,
|
||||||
|
// as then you are sure you have configured all required params
|
||||||
|
func (s *NicService) NewUpdateVmNicIpParams(nicid string) *UpdateVmNicIpParams {
|
||||||
|
p := &UpdateVmNicIpParams{}
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
p.p["nicid"] = nicid
|
||||||
|
return p
|
||||||
|
}
|
||||||
|
|
||||||
|
// Update the default Ip of a VM Nic
|
||||||
|
func (s *NicService) UpdateVmNicIp(p *UpdateVmNicIpParams) (*UpdateVmNicIpResponse, error) {
|
||||||
|
resp, err := s.cs.newRequest("updateVmNicIp", p.toURLValues())
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
|
var r UpdateVmNicIpResponse
|
||||||
|
if err := json.Unmarshal(resp, &r); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
|
// If we have a async client, we need to wait for the async result
|
||||||
|
if s.cs.async {
|
||||||
|
b, err := s.cs.GetAsyncJobResult(r.JobID, s.cs.timeout)
|
||||||
|
if err != nil {
|
||||||
|
if err == AsyncTimeoutErr {
|
||||||
|
return &r, err
|
||||||
|
}
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
|
b, err = getRawValue(b)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
|
if err := json.Unmarshal(b, &r); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return &r, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
type UpdateVmNicIpResponse struct {
|
||||||
|
JobID string `json:"jobid,omitempty"`
|
||||||
|
Account string `json:"account,omitempty"`
|
||||||
|
Affinitygroup []struct {
|
||||||
|
Account string `json:"account,omitempty"`
|
||||||
|
Description string `json:"description,omitempty"`
|
||||||
|
Domain string `json:"domain,omitempty"`
|
||||||
|
Domainid string `json:"domainid,omitempty"`
|
||||||
|
Id string `json:"id,omitempty"`
|
||||||
|
Name string `json:"name,omitempty"`
|
||||||
|
Project string `json:"project,omitempty"`
|
||||||
|
Projectid string `json:"projectid,omitempty"`
|
||||||
|
Type string `json:"type,omitempty"`
|
||||||
|
VirtualmachineIds []string `json:"virtualmachineIds,omitempty"`
|
||||||
|
} `json:"affinitygroup,omitempty"`
|
||||||
|
Cpunumber int `json:"cpunumber,omitempty"`
|
||||||
|
Cpuspeed int `json:"cpuspeed,omitempty"`
|
||||||
|
Cpuused string `json:"cpuused,omitempty"`
|
||||||
|
Created string `json:"created,omitempty"`
|
||||||
|
Details map[string]string `json:"details,omitempty"`
|
||||||
|
Diskioread int64 `json:"diskioread,omitempty"`
|
||||||
|
Diskiowrite int64 `json:"diskiowrite,omitempty"`
|
||||||
|
Diskkbsread int64 `json:"diskkbsread,omitempty"`
|
||||||
|
Diskkbswrite int64 `json:"diskkbswrite,omitempty"`
|
||||||
|
Diskofferingid string `json:"diskofferingid,omitempty"`
|
||||||
|
Diskofferingname string `json:"diskofferingname,omitempty"`
|
||||||
|
Displayname string `json:"displayname,omitempty"`
|
||||||
|
Displayvm bool `json:"displayvm,omitempty"`
|
||||||
|
Domain string `json:"domain,omitempty"`
|
||||||
|
Domainid string `json:"domainid,omitempty"`
|
||||||
|
Forvirtualnetwork bool `json:"forvirtualnetwork,omitempty"`
|
||||||
|
Group string `json:"group,omitempty"`
|
||||||
|
Groupid string `json:"groupid,omitempty"`
|
||||||
|
Guestosid string `json:"guestosid,omitempty"`
|
||||||
|
Haenable bool `json:"haenable,omitempty"`
|
||||||
|
Hostid string `json:"hostid,omitempty"`
|
||||||
|
Hostname string `json:"hostname,omitempty"`
|
||||||
|
Hypervisor string `json:"hypervisor,omitempty"`
|
||||||
|
Id string `json:"id,omitempty"`
|
||||||
|
Instancename string `json:"instancename,omitempty"`
|
||||||
|
Isdynamicallyscalable bool `json:"isdynamicallyscalable,omitempty"`
|
||||||
|
Isodisplaytext string `json:"isodisplaytext,omitempty"`
|
||||||
|
Isoid string `json:"isoid,omitempty"`
|
||||||
|
Isoname string `json:"isoname,omitempty"`
|
||||||
|
Keypair string `json:"keypair,omitempty"`
|
||||||
|
Memory int `json:"memory,omitempty"`
|
||||||
|
Name string `json:"name,omitempty"`
|
||||||
|
Networkkbsread int64 `json:"networkkbsread,omitempty"`
|
||||||
|
Networkkbswrite int64 `json:"networkkbswrite,omitempty"`
|
||||||
|
Nic []struct {
|
||||||
|
Broadcasturi string `json:"broadcasturi,omitempty"`
|
||||||
|
Deviceid string `json:"deviceid,omitempty"`
|
||||||
|
Gateway string `json:"gateway,omitempty"`
|
||||||
|
Id string `json:"id,omitempty"`
|
||||||
|
Ip6address string `json:"ip6address,omitempty"`
|
||||||
|
Ip6cidr string `json:"ip6cidr,omitempty"`
|
||||||
|
Ip6gateway string `json:"ip6gateway,omitempty"`
|
||||||
|
Ipaddress string `json:"ipaddress,omitempty"`
|
||||||
|
Isdefault bool `json:"isdefault,omitempty"`
|
||||||
|
Isolationuri string `json:"isolationuri,omitempty"`
|
||||||
|
Macaddress string `json:"macaddress,omitempty"`
|
||||||
|
Netmask string `json:"netmask,omitempty"`
|
||||||
|
Networkid string `json:"networkid,omitempty"`
|
||||||
|
Networkname string `json:"networkname,omitempty"`
|
||||||
|
Secondaryip []struct {
|
||||||
|
Id string `json:"id,omitempty"`
|
||||||
|
Ipaddress string `json:"ipaddress,omitempty"`
|
||||||
|
} `json:"secondaryip,omitempty"`
|
||||||
|
Traffictype string `json:"traffictype,omitempty"`
|
||||||
|
Type string `json:"type,omitempty"`
|
||||||
|
Virtualmachineid string `json:"virtualmachineid,omitempty"`
|
||||||
|
} `json:"nic,omitempty"`
|
||||||
|
Ostypeid int64 `json:"ostypeid,omitempty"`
|
||||||
|
Password string `json:"password,omitempty"`
|
||||||
|
Passwordenabled bool `json:"passwordenabled,omitempty"`
|
||||||
|
Project string `json:"project,omitempty"`
|
||||||
|
Projectid string `json:"projectid,omitempty"`
|
||||||
|
Publicip string `json:"publicip,omitempty"`
|
||||||
|
Publicipid string `json:"publicipid,omitempty"`
|
||||||
|
Rootdeviceid int64 `json:"rootdeviceid,omitempty"`
|
||||||
|
Rootdevicetype string `json:"rootdevicetype,omitempty"`
|
||||||
|
Securitygroup []struct {
|
||||||
|
Account string `json:"account,omitempty"`
|
||||||
|
Description string `json:"description,omitempty"`
|
||||||
|
Domain string `json:"domain,omitempty"`
|
||||||
|
Domainid string `json:"domainid,omitempty"`
|
||||||
|
Egressrule []struct {
|
||||||
|
Account string `json:"account,omitempty"`
|
||||||
|
Cidr string `json:"cidr,omitempty"`
|
||||||
|
Endport int `json:"endport,omitempty"`
|
||||||
|
Icmpcode int `json:"icmpcode,omitempty"`
|
||||||
|
Icmptype int `json:"icmptype,omitempty"`
|
||||||
|
Protocol string `json:"protocol,omitempty"`
|
||||||
|
Ruleid string `json:"ruleid,omitempty"`
|
||||||
|
Securitygroupname string `json:"securitygroupname,omitempty"`
|
||||||
|
Startport int `json:"startport,omitempty"`
|
||||||
|
Tags []struct {
|
||||||
|
Account string `json:"account,omitempty"`
|
||||||
|
Customer string `json:"customer,omitempty"`
|
||||||
|
Domain string `json:"domain,omitempty"`
|
||||||
|
Domainid string `json:"domainid,omitempty"`
|
||||||
|
Key string `json:"key,omitempty"`
|
||||||
|
Project string `json:"project,omitempty"`
|
||||||
|
Projectid string `json:"projectid,omitempty"`
|
||||||
|
Resourceid string `json:"resourceid,omitempty"`
|
||||||
|
Resourcetype string `json:"resourcetype,omitempty"`
|
||||||
|
Value string `json:"value,omitempty"`
|
||||||
|
} `json:"tags,omitempty"`
|
||||||
|
} `json:"egressrule,omitempty"`
|
||||||
|
Id string `json:"id,omitempty"`
|
||||||
|
Ingressrule []struct {
|
||||||
|
Account string `json:"account,omitempty"`
|
||||||
|
Cidr string `json:"cidr,omitempty"`
|
||||||
|
Endport int `json:"endport,omitempty"`
|
||||||
|
Icmpcode int `json:"icmpcode,omitempty"`
|
||||||
|
Icmptype int `json:"icmptype,omitempty"`
|
||||||
|
Protocol string `json:"protocol,omitempty"`
|
||||||
|
Ruleid string `json:"ruleid,omitempty"`
|
||||||
|
Securitygroupname string `json:"securitygroupname,omitempty"`
|
||||||
|
Startport int `json:"startport,omitempty"`
|
||||||
|
Tags []struct {
|
||||||
|
Account string `json:"account,omitempty"`
|
||||||
|
Customer string `json:"customer,omitempty"`
|
||||||
|
Domain string `json:"domain,omitempty"`
|
||||||
|
Domainid string `json:"domainid,omitempty"`
|
||||||
|
Key string `json:"key,omitempty"`
|
||||||
|
Project string `json:"project,omitempty"`
|
||||||
|
Projectid string `json:"projectid,omitempty"`
|
||||||
|
Resourceid string `json:"resourceid,omitempty"`
|
||||||
|
Resourcetype string `json:"resourcetype,omitempty"`
|
||||||
|
Value string `json:"value,omitempty"`
|
||||||
|
} `json:"tags,omitempty"`
|
||||||
|
} `json:"ingressrule,omitempty"`
|
||||||
|
Name string `json:"name,omitempty"`
|
||||||
|
Project string `json:"project,omitempty"`
|
||||||
|
Projectid string `json:"projectid,omitempty"`
|
||||||
|
Tags []struct {
|
||||||
|
Account string `json:"account,omitempty"`
|
||||||
|
Customer string `json:"customer,omitempty"`
|
||||||
|
Domain string `json:"domain,omitempty"`
|
||||||
|
Domainid string `json:"domainid,omitempty"`
|
||||||
|
Key string `json:"key,omitempty"`
|
||||||
|
Project string `json:"project,omitempty"`
|
||||||
|
Projectid string `json:"projectid,omitempty"`
|
||||||
|
Resourceid string `json:"resourceid,omitempty"`
|
||||||
|
Resourcetype string `json:"resourcetype,omitempty"`
|
||||||
|
Value string `json:"value,omitempty"`
|
||||||
|
} `json:"tags,omitempty"`
|
||||||
|
Virtualmachinecount int `json:"virtualmachinecount,omitempty"`
|
||||||
|
Virtualmachineids []string `json:"virtualmachineids,omitempty"`
|
||||||
|
} `json:"securitygroup,omitempty"`
|
||||||
|
Serviceofferingid string `json:"serviceofferingid,omitempty"`
|
||||||
|
Serviceofferingname string `json:"serviceofferingname,omitempty"`
|
||||||
|
Servicestate string `json:"servicestate,omitempty"`
|
||||||
|
State string `json:"state,omitempty"`
|
||||||
|
Tags []struct {
|
||||||
|
Account string `json:"account,omitempty"`
|
||||||
|
Customer string `json:"customer,omitempty"`
|
||||||
|
Domain string `json:"domain,omitempty"`
|
||||||
|
Domainid string `json:"domainid,omitempty"`
|
||||||
|
Key string `json:"key,omitempty"`
|
||||||
|
Project string `json:"project,omitempty"`
|
||||||
|
Projectid string `json:"projectid,omitempty"`
|
||||||
|
Resourceid string `json:"resourceid,omitempty"`
|
||||||
|
Resourcetype string `json:"resourcetype,omitempty"`
|
||||||
|
Value string `json:"value,omitempty"`
|
||||||
|
} `json:"tags,omitempty"`
|
||||||
|
Templatedisplaytext string `json:"templatedisplaytext,omitempty"`
|
||||||
|
Templateid string `json:"templateid,omitempty"`
|
||||||
|
Templatename string `json:"templatename,omitempty"`
|
||||||
|
Userid string `json:"userid,omitempty"`
|
||||||
|
Username string `json:"username,omitempty"`
|
||||||
|
Vgpu string `json:"vgpu,omitempty"`
|
||||||
|
Zoneid string `json:"zoneid,omitempty"`
|
||||||
|
Zonename string `json:"zonename,omitempty"`
|
||||||
|
}
|
||||||
|
|
||||||
type ListNicsParams struct {
|
type ListNicsParams struct {
|
||||||
p map[string]interface{}
|
p map[string]interface{}
|
||||||
}
|
}
|
||||||
|
|
|
@ -514,6 +514,10 @@ func (p *UpdateStoragePoolParams) toURLValues() url.Values {
|
||||||
vv := strconv.FormatInt(v.(int64), 10)
|
vv := strconv.FormatInt(v.(int64), 10)
|
||||||
u.Set("capacityiops", vv)
|
u.Set("capacityiops", vv)
|
||||||
}
|
}
|
||||||
|
if v, found := p.p["enabled"]; found {
|
||||||
|
vv := strconv.FormatBool(v.(bool))
|
||||||
|
u.Set("enabled", vv)
|
||||||
|
}
|
||||||
if v, found := p.p["id"]; found {
|
if v, found := p.p["id"]; found {
|
||||||
u.Set("id", v.(string))
|
u.Set("id", v.(string))
|
||||||
}
|
}
|
||||||
|
@ -540,6 +544,14 @@ func (p *UpdateStoragePoolParams) SetCapacityiops(v int64) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *UpdateStoragePoolParams) SetEnabled(v bool) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["enabled"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
func (p *UpdateStoragePoolParams) SetId(v string) {
|
func (p *UpdateStoragePoolParams) SetId(v string) {
|
||||||
if p.p == nil {
|
if p.p == nil {
|
||||||
p.p = make(map[string]interface{})
|
p.p = make(map[string]interface{})
|
||||||
|
|
|
@ -1139,7 +1139,7 @@ func (s *ProjectService) GetProjectInvitationByID(id string) (*ProjectInvitation
|
||||||
return nil, l.Count, fmt.Errorf("There is more then one result for ProjectInvitation UUID: %s!", id)
|
return nil, l.Count, fmt.Errorf("There is more then one result for ProjectInvitation UUID: %s!", id)
|
||||||
}
|
}
|
||||||
|
|
||||||
// Lists projects and provides detailed information for listed projects
|
// Lists project invitations and provides detailed information for listed invitations
|
||||||
func (s *ProjectService) ListProjectInvitations(p *ListProjectInvitationsParams) (*ListProjectInvitationsResponse, error) {
|
func (s *ProjectService) ListProjectInvitations(p *ListProjectInvitationsParams) (*ListProjectInvitationsResponse, error) {
|
||||||
resp, err := s.cs.newRequest("listProjectInvitations", p.toURLValues())
|
resp, err := s.cs.newRequest("listProjectInvitations", p.toURLValues())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -1302,7 +1302,7 @@ func (s *ProjectService) NewDeleteProjectInvitationParams(id string) *DeleteProj
|
||||||
return p
|
return p
|
||||||
}
|
}
|
||||||
|
|
||||||
// Accepts or declines project invitation
|
// Deletes project invitation
|
||||||
func (s *ProjectService) DeleteProjectInvitation(p *DeleteProjectInvitationParams) (*DeleteProjectInvitationResponse, error) {
|
func (s *ProjectService) DeleteProjectInvitation(p *DeleteProjectInvitationParams) (*DeleteProjectInvitationResponse, error) {
|
||||||
resp, err := s.cs.newRequest("deleteProjectInvitation", p.toURLValues())
|
resp, err := s.cs.newRequest("deleteProjectInvitation", p.toURLValues())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|
|
@ -0,0 +1,60 @@
|
||||||
|
//
|
||||||
|
// Copyright 2014, Sander van Harmelen
|
||||||
|
//
|
||||||
|
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
// you may not use this file except in compliance with the License.
|
||||||
|
// You may obtain a copy of the License at
|
||||||
|
//
|
||||||
|
// http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
//
|
||||||
|
// Unless required by applicable law or agreed to in writing, software
|
||||||
|
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
// See the License for the specific language governing permissions and
|
||||||
|
// limitations under the License.
|
||||||
|
//
|
||||||
|
|
||||||
|
package cloudstack
|
||||||
|
|
||||||
|
import (
|
||||||
|
"encoding/json"
|
||||||
|
"net/url"
|
||||||
|
)
|
||||||
|
|
||||||
|
type QuotaIsEnabledParams struct {
|
||||||
|
p map[string]interface{}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *QuotaIsEnabledParams) toURLValues() url.Values {
|
||||||
|
u := url.Values{}
|
||||||
|
if p.p == nil {
|
||||||
|
return u
|
||||||
|
}
|
||||||
|
return u
|
||||||
|
}
|
||||||
|
|
||||||
|
// You should always use this function to get a new QuotaIsEnabledParams instance,
|
||||||
|
// as then you are sure you have configured all required params
|
||||||
|
func (s *QuotaService) NewQuotaIsEnabledParams() *QuotaIsEnabledParams {
|
||||||
|
p := &QuotaIsEnabledParams{}
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
return p
|
||||||
|
}
|
||||||
|
|
||||||
|
// Return true if the plugin is enabled
|
||||||
|
func (s *QuotaService) QuotaIsEnabled(p *QuotaIsEnabledParams) (*QuotaIsEnabledResponse, error) {
|
||||||
|
resp, err := s.cs.newRequest("quotaIsEnabled", p.toURLValues())
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
|
var r QuotaIsEnabledResponse
|
||||||
|
if err := json.Unmarshal(resp, &r); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
return &r, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
type QuotaIsEnabledResponse struct {
|
||||||
|
Isenabled bool `json:"isenabled,omitempty"`
|
||||||
|
}
|
|
@ -24,6 +24,116 @@ import (
|
||||||
"strings"
|
"strings"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
type ListStorageTagsParams struct {
|
||||||
|
p map[string]interface{}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *ListStorageTagsParams) toURLValues() url.Values {
|
||||||
|
u := url.Values{}
|
||||||
|
if p.p == nil {
|
||||||
|
return u
|
||||||
|
}
|
||||||
|
if v, found := p.p["keyword"]; found {
|
||||||
|
u.Set("keyword", v.(string))
|
||||||
|
}
|
||||||
|
if v, found := p.p["page"]; found {
|
||||||
|
vv := strconv.Itoa(v.(int))
|
||||||
|
u.Set("page", vv)
|
||||||
|
}
|
||||||
|
if v, found := p.p["pagesize"]; found {
|
||||||
|
vv := strconv.Itoa(v.(int))
|
||||||
|
u.Set("pagesize", vv)
|
||||||
|
}
|
||||||
|
return u
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *ListStorageTagsParams) SetKeyword(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["keyword"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *ListStorageTagsParams) SetPage(v int) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["page"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *ListStorageTagsParams) SetPagesize(v int) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["pagesize"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// You should always use this function to get a new ListStorageTagsParams instance,
|
||||||
|
// as then you are sure you have configured all required params
|
||||||
|
func (s *ResourcetagsService) NewListStorageTagsParams() *ListStorageTagsParams {
|
||||||
|
p := &ListStorageTagsParams{}
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
return p
|
||||||
|
}
|
||||||
|
|
||||||
|
// This is a courtesy helper function, which in some cases may not work as expected!
|
||||||
|
func (s *ResourcetagsService) GetStorageTagID(keyword string) (string, error) {
|
||||||
|
p := &ListStorageTagsParams{}
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
|
||||||
|
p.p["keyword"] = keyword
|
||||||
|
|
||||||
|
l, err := s.ListStorageTags(p)
|
||||||
|
if err != nil {
|
||||||
|
return "", err
|
||||||
|
}
|
||||||
|
|
||||||
|
if l.Count == 0 {
|
||||||
|
return "", fmt.Errorf("No match found for %s: %+v", keyword, l)
|
||||||
|
}
|
||||||
|
|
||||||
|
if l.Count == 1 {
|
||||||
|
return l.StorageTags[0].Id, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
if l.Count > 1 {
|
||||||
|
for _, v := range l.StorageTags {
|
||||||
|
if v.Name == keyword {
|
||||||
|
return v.Id, nil
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return "", fmt.Errorf("Could not find an exact match for %s: %+v", keyword, l)
|
||||||
|
}
|
||||||
|
|
||||||
|
// Lists storage tags
|
||||||
|
func (s *ResourcetagsService) ListStorageTags(p *ListStorageTagsParams) (*ListStorageTagsResponse, error) {
|
||||||
|
resp, err := s.cs.newRequest("listStorageTags", p.toURLValues())
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
|
var r ListStorageTagsResponse
|
||||||
|
if err := json.Unmarshal(resp, &r); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
return &r, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
type ListStorageTagsResponse struct {
|
||||||
|
Count int `json:"count"`
|
||||||
|
StorageTags []*StorageTag `json:"storagetag"`
|
||||||
|
}
|
||||||
|
|
||||||
|
type StorageTag struct {
|
||||||
|
Id string `json:"id,omitempty"`
|
||||||
|
Name string `json:"name,omitempty"`
|
||||||
|
Poolid int64 `json:"poolid,omitempty"`
|
||||||
|
}
|
||||||
|
|
||||||
type CreateTagsParams struct {
|
type CreateTagsParams struct {
|
||||||
p map[string]interface{}
|
p map[string]interface{}
|
||||||
}
|
}
|
||||||
|
|
|
@ -103,8 +103,10 @@ type StartRouterResponse struct {
|
||||||
Guestmacaddress string `json:"guestmacaddress,omitempty"`
|
Guestmacaddress string `json:"guestmacaddress,omitempty"`
|
||||||
Guestnetmask string `json:"guestnetmask,omitempty"`
|
Guestnetmask string `json:"guestnetmask,omitempty"`
|
||||||
Guestnetworkid string `json:"guestnetworkid,omitempty"`
|
Guestnetworkid string `json:"guestnetworkid,omitempty"`
|
||||||
|
Guestnetworkname string `json:"guestnetworkname,omitempty"`
|
||||||
Hostid string `json:"hostid,omitempty"`
|
Hostid string `json:"hostid,omitempty"`
|
||||||
Hostname string `json:"hostname,omitempty"`
|
Hostname string `json:"hostname,omitempty"`
|
||||||
|
Hypervisor string `json:"hypervisor,omitempty"`
|
||||||
Id string `json:"id,omitempty"`
|
Id string `json:"id,omitempty"`
|
||||||
Ip6dns1 string `json:"ip6dns1,omitempty"`
|
Ip6dns1 string `json:"ip6dns1,omitempty"`
|
||||||
Ip6dns2 string `json:"ip6dns2,omitempty"`
|
Ip6dns2 string `json:"ip6dns2,omitempty"`
|
||||||
|
@ -155,6 +157,7 @@ type StartRouterResponse struct {
|
||||||
Templateid string `json:"templateid,omitempty"`
|
Templateid string `json:"templateid,omitempty"`
|
||||||
Version string `json:"version,omitempty"`
|
Version string `json:"version,omitempty"`
|
||||||
Vpcid string `json:"vpcid,omitempty"`
|
Vpcid string `json:"vpcid,omitempty"`
|
||||||
|
Vpcname string `json:"vpcname,omitempty"`
|
||||||
Zoneid string `json:"zoneid,omitempty"`
|
Zoneid string `json:"zoneid,omitempty"`
|
||||||
Zonename string `json:"zonename,omitempty"`
|
Zonename string `json:"zonename,omitempty"`
|
||||||
}
|
}
|
||||||
|
@ -238,8 +241,10 @@ type RebootRouterResponse struct {
|
||||||
Guestmacaddress string `json:"guestmacaddress,omitempty"`
|
Guestmacaddress string `json:"guestmacaddress,omitempty"`
|
||||||
Guestnetmask string `json:"guestnetmask,omitempty"`
|
Guestnetmask string `json:"guestnetmask,omitempty"`
|
||||||
Guestnetworkid string `json:"guestnetworkid,omitempty"`
|
Guestnetworkid string `json:"guestnetworkid,omitempty"`
|
||||||
|
Guestnetworkname string `json:"guestnetworkname,omitempty"`
|
||||||
Hostid string `json:"hostid,omitempty"`
|
Hostid string `json:"hostid,omitempty"`
|
||||||
Hostname string `json:"hostname,omitempty"`
|
Hostname string `json:"hostname,omitempty"`
|
||||||
|
Hypervisor string `json:"hypervisor,omitempty"`
|
||||||
Id string `json:"id,omitempty"`
|
Id string `json:"id,omitempty"`
|
||||||
Ip6dns1 string `json:"ip6dns1,omitempty"`
|
Ip6dns1 string `json:"ip6dns1,omitempty"`
|
||||||
Ip6dns2 string `json:"ip6dns2,omitempty"`
|
Ip6dns2 string `json:"ip6dns2,omitempty"`
|
||||||
|
@ -290,6 +295,7 @@ type RebootRouterResponse struct {
|
||||||
Templateid string `json:"templateid,omitempty"`
|
Templateid string `json:"templateid,omitempty"`
|
||||||
Version string `json:"version,omitempty"`
|
Version string `json:"version,omitempty"`
|
||||||
Vpcid string `json:"vpcid,omitempty"`
|
Vpcid string `json:"vpcid,omitempty"`
|
||||||
|
Vpcname string `json:"vpcname,omitempty"`
|
||||||
Zoneid string `json:"zoneid,omitempty"`
|
Zoneid string `json:"zoneid,omitempty"`
|
||||||
Zonename string `json:"zonename,omitempty"`
|
Zonename string `json:"zonename,omitempty"`
|
||||||
}
|
}
|
||||||
|
@ -385,8 +391,10 @@ type StopRouterResponse struct {
|
||||||
Guestmacaddress string `json:"guestmacaddress,omitempty"`
|
Guestmacaddress string `json:"guestmacaddress,omitempty"`
|
||||||
Guestnetmask string `json:"guestnetmask,omitempty"`
|
Guestnetmask string `json:"guestnetmask,omitempty"`
|
||||||
Guestnetworkid string `json:"guestnetworkid,omitempty"`
|
Guestnetworkid string `json:"guestnetworkid,omitempty"`
|
||||||
|
Guestnetworkname string `json:"guestnetworkname,omitempty"`
|
||||||
Hostid string `json:"hostid,omitempty"`
|
Hostid string `json:"hostid,omitempty"`
|
||||||
Hostname string `json:"hostname,omitempty"`
|
Hostname string `json:"hostname,omitempty"`
|
||||||
|
Hypervisor string `json:"hypervisor,omitempty"`
|
||||||
Id string `json:"id,omitempty"`
|
Id string `json:"id,omitempty"`
|
||||||
Ip6dns1 string `json:"ip6dns1,omitempty"`
|
Ip6dns1 string `json:"ip6dns1,omitempty"`
|
||||||
Ip6dns2 string `json:"ip6dns2,omitempty"`
|
Ip6dns2 string `json:"ip6dns2,omitempty"`
|
||||||
|
@ -437,6 +445,7 @@ type StopRouterResponse struct {
|
||||||
Templateid string `json:"templateid,omitempty"`
|
Templateid string `json:"templateid,omitempty"`
|
||||||
Version string `json:"version,omitempty"`
|
Version string `json:"version,omitempty"`
|
||||||
Vpcid string `json:"vpcid,omitempty"`
|
Vpcid string `json:"vpcid,omitempty"`
|
||||||
|
Vpcname string `json:"vpcname,omitempty"`
|
||||||
Zoneid string `json:"zoneid,omitempty"`
|
Zoneid string `json:"zoneid,omitempty"`
|
||||||
Zonename string `json:"zonename,omitempty"`
|
Zonename string `json:"zonename,omitempty"`
|
||||||
}
|
}
|
||||||
|
@ -520,8 +529,10 @@ type DestroyRouterResponse struct {
|
||||||
Guestmacaddress string `json:"guestmacaddress,omitempty"`
|
Guestmacaddress string `json:"guestmacaddress,omitempty"`
|
||||||
Guestnetmask string `json:"guestnetmask,omitempty"`
|
Guestnetmask string `json:"guestnetmask,omitempty"`
|
||||||
Guestnetworkid string `json:"guestnetworkid,omitempty"`
|
Guestnetworkid string `json:"guestnetworkid,omitempty"`
|
||||||
|
Guestnetworkname string `json:"guestnetworkname,omitempty"`
|
||||||
Hostid string `json:"hostid,omitempty"`
|
Hostid string `json:"hostid,omitempty"`
|
||||||
Hostname string `json:"hostname,omitempty"`
|
Hostname string `json:"hostname,omitempty"`
|
||||||
|
Hypervisor string `json:"hypervisor,omitempty"`
|
||||||
Id string `json:"id,omitempty"`
|
Id string `json:"id,omitempty"`
|
||||||
Ip6dns1 string `json:"ip6dns1,omitempty"`
|
Ip6dns1 string `json:"ip6dns1,omitempty"`
|
||||||
Ip6dns2 string `json:"ip6dns2,omitempty"`
|
Ip6dns2 string `json:"ip6dns2,omitempty"`
|
||||||
|
@ -572,6 +583,7 @@ type DestroyRouterResponse struct {
|
||||||
Templateid string `json:"templateid,omitempty"`
|
Templateid string `json:"templateid,omitempty"`
|
||||||
Version string `json:"version,omitempty"`
|
Version string `json:"version,omitempty"`
|
||||||
Vpcid string `json:"vpcid,omitempty"`
|
Vpcid string `json:"vpcid,omitempty"`
|
||||||
|
Vpcname string `json:"vpcname,omitempty"`
|
||||||
Zoneid string `json:"zoneid,omitempty"`
|
Zoneid string `json:"zoneid,omitempty"`
|
||||||
Zonename string `json:"zonename,omitempty"`
|
Zonename string `json:"zonename,omitempty"`
|
||||||
}
|
}
|
||||||
|
@ -646,8 +658,10 @@ type ChangeServiceForRouterResponse struct {
|
||||||
Guestmacaddress string `json:"guestmacaddress,omitempty"`
|
Guestmacaddress string `json:"guestmacaddress,omitempty"`
|
||||||
Guestnetmask string `json:"guestnetmask,omitempty"`
|
Guestnetmask string `json:"guestnetmask,omitempty"`
|
||||||
Guestnetworkid string `json:"guestnetworkid,omitempty"`
|
Guestnetworkid string `json:"guestnetworkid,omitempty"`
|
||||||
|
Guestnetworkname string `json:"guestnetworkname,omitempty"`
|
||||||
Hostid string `json:"hostid,omitempty"`
|
Hostid string `json:"hostid,omitempty"`
|
||||||
Hostname string `json:"hostname,omitempty"`
|
Hostname string `json:"hostname,omitempty"`
|
||||||
|
Hypervisor string `json:"hypervisor,omitempty"`
|
||||||
Id string `json:"id,omitempty"`
|
Id string `json:"id,omitempty"`
|
||||||
Ip6dns1 string `json:"ip6dns1,omitempty"`
|
Ip6dns1 string `json:"ip6dns1,omitempty"`
|
||||||
Ip6dns2 string `json:"ip6dns2,omitempty"`
|
Ip6dns2 string `json:"ip6dns2,omitempty"`
|
||||||
|
@ -698,6 +712,7 @@ type ChangeServiceForRouterResponse struct {
|
||||||
Templateid string `json:"templateid,omitempty"`
|
Templateid string `json:"templateid,omitempty"`
|
||||||
Version string `json:"version,omitempty"`
|
Version string `json:"version,omitempty"`
|
||||||
Vpcid string `json:"vpcid,omitempty"`
|
Vpcid string `json:"vpcid,omitempty"`
|
||||||
|
Vpcname string `json:"vpcname,omitempty"`
|
||||||
Zoneid string `json:"zoneid,omitempty"`
|
Zoneid string `json:"zoneid,omitempty"`
|
||||||
Zonename string `json:"zonename,omitempty"`
|
Zonename string `json:"zonename,omitempty"`
|
||||||
}
|
}
|
||||||
|
@ -1063,8 +1078,10 @@ type Router struct {
|
||||||
Guestmacaddress string `json:"guestmacaddress,omitempty"`
|
Guestmacaddress string `json:"guestmacaddress,omitempty"`
|
||||||
Guestnetmask string `json:"guestnetmask,omitempty"`
|
Guestnetmask string `json:"guestnetmask,omitempty"`
|
||||||
Guestnetworkid string `json:"guestnetworkid,omitempty"`
|
Guestnetworkid string `json:"guestnetworkid,omitempty"`
|
||||||
|
Guestnetworkname string `json:"guestnetworkname,omitempty"`
|
||||||
Hostid string `json:"hostid,omitempty"`
|
Hostid string `json:"hostid,omitempty"`
|
||||||
Hostname string `json:"hostname,omitempty"`
|
Hostname string `json:"hostname,omitempty"`
|
||||||
|
Hypervisor string `json:"hypervisor,omitempty"`
|
||||||
Id string `json:"id,omitempty"`
|
Id string `json:"id,omitempty"`
|
||||||
Ip6dns1 string `json:"ip6dns1,omitempty"`
|
Ip6dns1 string `json:"ip6dns1,omitempty"`
|
||||||
Ip6dns2 string `json:"ip6dns2,omitempty"`
|
Ip6dns2 string `json:"ip6dns2,omitempty"`
|
||||||
|
@ -1115,6 +1132,7 @@ type Router struct {
|
||||||
Templateid string `json:"templateid,omitempty"`
|
Templateid string `json:"templateid,omitempty"`
|
||||||
Version string `json:"version,omitempty"`
|
Version string `json:"version,omitempty"`
|
||||||
Vpcid string `json:"vpcid,omitempty"`
|
Vpcid string `json:"vpcid,omitempty"`
|
||||||
|
Vpcname string `json:"vpcname,omitempty"`
|
||||||
Zoneid string `json:"zoneid,omitempty"`
|
Zoneid string `json:"zoneid,omitempty"`
|
||||||
Zonename string `json:"zonename,omitempty"`
|
Zonename string `json:"zonename,omitempty"`
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,281 +0,0 @@
|
||||||
//
|
|
||||||
// Copyright 2014, Sander van Harmelen
|
|
||||||
//
|
|
||||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
// you may not use this file except in compliance with the License.
|
|
||||||
// You may obtain a copy of the License at
|
|
||||||
//
|
|
||||||
// http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
//
|
|
||||||
// Unless required by applicable law or agreed to in writing, software
|
|
||||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
// See the License for the specific language governing permissions and
|
|
||||||
// limitations under the License.
|
|
||||||
//
|
|
||||||
|
|
||||||
package cloudstack
|
|
||||||
|
|
||||||
import (
|
|
||||||
"encoding/json"
|
|
||||||
"fmt"
|
|
||||||
"net/url"
|
|
||||||
"strconv"
|
|
||||||
)
|
|
||||||
|
|
||||||
type AddS3Params struct {
|
|
||||||
p map[string]interface{}
|
|
||||||
}
|
|
||||||
|
|
||||||
func (p *AddS3Params) toURLValues() url.Values {
|
|
||||||
u := url.Values{}
|
|
||||||
if p.p == nil {
|
|
||||||
return u
|
|
||||||
}
|
|
||||||
if v, found := p.p["accesskey"]; found {
|
|
||||||
u.Set("accesskey", v.(string))
|
|
||||||
}
|
|
||||||
if v, found := p.p["bucket"]; found {
|
|
||||||
u.Set("bucket", v.(string))
|
|
||||||
}
|
|
||||||
if v, found := p.p["connectiontimeout"]; found {
|
|
||||||
vv := strconv.Itoa(v.(int))
|
|
||||||
u.Set("connectiontimeout", vv)
|
|
||||||
}
|
|
||||||
if v, found := p.p["endpoint"]; found {
|
|
||||||
u.Set("endpoint", v.(string))
|
|
||||||
}
|
|
||||||
if v, found := p.p["maxerrorretry"]; found {
|
|
||||||
vv := strconv.Itoa(v.(int))
|
|
||||||
u.Set("maxerrorretry", vv)
|
|
||||||
}
|
|
||||||
if v, found := p.p["secretkey"]; found {
|
|
||||||
u.Set("secretkey", v.(string))
|
|
||||||
}
|
|
||||||
if v, found := p.p["sockettimeout"]; found {
|
|
||||||
vv := strconv.Itoa(v.(int))
|
|
||||||
u.Set("sockettimeout", vv)
|
|
||||||
}
|
|
||||||
if v, found := p.p["usehttps"]; found {
|
|
||||||
vv := strconv.FormatBool(v.(bool))
|
|
||||||
u.Set("usehttps", vv)
|
|
||||||
}
|
|
||||||
return u
|
|
||||||
}
|
|
||||||
|
|
||||||
func (p *AddS3Params) SetAccesskey(v string) {
|
|
||||||
if p.p == nil {
|
|
||||||
p.p = make(map[string]interface{})
|
|
||||||
}
|
|
||||||
p.p["accesskey"] = v
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
func (p *AddS3Params) SetBucket(v string) {
|
|
||||||
if p.p == nil {
|
|
||||||
p.p = make(map[string]interface{})
|
|
||||||
}
|
|
||||||
p.p["bucket"] = v
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
func (p *AddS3Params) SetConnectiontimeout(v int) {
|
|
||||||
if p.p == nil {
|
|
||||||
p.p = make(map[string]interface{})
|
|
||||||
}
|
|
||||||
p.p["connectiontimeout"] = v
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
func (p *AddS3Params) SetEndpoint(v string) {
|
|
||||||
if p.p == nil {
|
|
||||||
p.p = make(map[string]interface{})
|
|
||||||
}
|
|
||||||
p.p["endpoint"] = v
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
func (p *AddS3Params) SetMaxerrorretry(v int) {
|
|
||||||
if p.p == nil {
|
|
||||||
p.p = make(map[string]interface{})
|
|
||||||
}
|
|
||||||
p.p["maxerrorretry"] = v
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
func (p *AddS3Params) SetSecretkey(v string) {
|
|
||||||
if p.p == nil {
|
|
||||||
p.p = make(map[string]interface{})
|
|
||||||
}
|
|
||||||
p.p["secretkey"] = v
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
func (p *AddS3Params) SetSockettimeout(v int) {
|
|
||||||
if p.p == nil {
|
|
||||||
p.p = make(map[string]interface{})
|
|
||||||
}
|
|
||||||
p.p["sockettimeout"] = v
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
func (p *AddS3Params) SetUsehttps(v bool) {
|
|
||||||
if p.p == nil {
|
|
||||||
p.p = make(map[string]interface{})
|
|
||||||
}
|
|
||||||
p.p["usehttps"] = v
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// You should always use this function to get a new AddS3Params instance,
|
|
||||||
// as then you are sure you have configured all required params
|
|
||||||
func (s *S3Service) NewAddS3Params(accesskey string, bucket string, secretkey string) *AddS3Params {
|
|
||||||
p := &AddS3Params{}
|
|
||||||
p.p = make(map[string]interface{})
|
|
||||||
p.p["accesskey"] = accesskey
|
|
||||||
p.p["bucket"] = bucket
|
|
||||||
p.p["secretkey"] = secretkey
|
|
||||||
return p
|
|
||||||
}
|
|
||||||
|
|
||||||
// Adds S3
|
|
||||||
func (s *S3Service) AddS3(p *AddS3Params) (*AddS3Response, error) {
|
|
||||||
resp, err := s.cs.newRequest("addS3", p.toURLValues())
|
|
||||||
if err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
|
|
||||||
var r AddS3Response
|
|
||||||
if err := json.Unmarshal(resp, &r); err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
return &r, nil
|
|
||||||
}
|
|
||||||
|
|
||||||
type AddS3Response struct {
|
|
||||||
Details []string `json:"details,omitempty"`
|
|
||||||
Id string `json:"id,omitempty"`
|
|
||||||
Name string `json:"name,omitempty"`
|
|
||||||
Protocol string `json:"protocol,omitempty"`
|
|
||||||
Providername string `json:"providername,omitempty"`
|
|
||||||
Scope string `json:"scope,omitempty"`
|
|
||||||
Url string `json:"url,omitempty"`
|
|
||||||
Zoneid string `json:"zoneid,omitempty"`
|
|
||||||
Zonename string `json:"zonename,omitempty"`
|
|
||||||
}
|
|
||||||
|
|
||||||
type ListS3sParams struct {
|
|
||||||
p map[string]interface{}
|
|
||||||
}
|
|
||||||
|
|
||||||
func (p *ListS3sParams) toURLValues() url.Values {
|
|
||||||
u := url.Values{}
|
|
||||||
if p.p == nil {
|
|
||||||
return u
|
|
||||||
}
|
|
||||||
if v, found := p.p["keyword"]; found {
|
|
||||||
u.Set("keyword", v.(string))
|
|
||||||
}
|
|
||||||
if v, found := p.p["page"]; found {
|
|
||||||
vv := strconv.Itoa(v.(int))
|
|
||||||
u.Set("page", vv)
|
|
||||||
}
|
|
||||||
if v, found := p.p["pagesize"]; found {
|
|
||||||
vv := strconv.Itoa(v.(int))
|
|
||||||
u.Set("pagesize", vv)
|
|
||||||
}
|
|
||||||
return u
|
|
||||||
}
|
|
||||||
|
|
||||||
func (p *ListS3sParams) SetKeyword(v string) {
|
|
||||||
if p.p == nil {
|
|
||||||
p.p = make(map[string]interface{})
|
|
||||||
}
|
|
||||||
p.p["keyword"] = v
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
func (p *ListS3sParams) SetPage(v int) {
|
|
||||||
if p.p == nil {
|
|
||||||
p.p = make(map[string]interface{})
|
|
||||||
}
|
|
||||||
p.p["page"] = v
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
func (p *ListS3sParams) SetPagesize(v int) {
|
|
||||||
if p.p == nil {
|
|
||||||
p.p = make(map[string]interface{})
|
|
||||||
}
|
|
||||||
p.p["pagesize"] = v
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// You should always use this function to get a new ListS3sParams instance,
|
|
||||||
// as then you are sure you have configured all required params
|
|
||||||
func (s *S3Service) NewListS3sParams() *ListS3sParams {
|
|
||||||
p := &ListS3sParams{}
|
|
||||||
p.p = make(map[string]interface{})
|
|
||||||
return p
|
|
||||||
}
|
|
||||||
|
|
||||||
// This is a courtesy helper function, which in some cases may not work as expected!
|
|
||||||
func (s *S3Service) GetS3ID(keyword string) (string, error) {
|
|
||||||
p := &ListS3sParams{}
|
|
||||||
p.p = make(map[string]interface{})
|
|
||||||
|
|
||||||
p.p["keyword"] = keyword
|
|
||||||
|
|
||||||
l, err := s.ListS3s(p)
|
|
||||||
if err != nil {
|
|
||||||
return "", err
|
|
||||||
}
|
|
||||||
|
|
||||||
if l.Count == 0 {
|
|
||||||
return "", fmt.Errorf("No match found for %s: %+v", keyword, l)
|
|
||||||
}
|
|
||||||
|
|
||||||
if l.Count == 1 {
|
|
||||||
return l.S3s[0].Id, nil
|
|
||||||
}
|
|
||||||
|
|
||||||
if l.Count > 1 {
|
|
||||||
for _, v := range l.S3s {
|
|
||||||
if v.Name == keyword {
|
|
||||||
return v.Id, nil
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return "", fmt.Errorf("Could not find an exact match for %s: %+v", keyword, l)
|
|
||||||
}
|
|
||||||
|
|
||||||
// Lists S3s
|
|
||||||
func (s *S3Service) ListS3s(p *ListS3sParams) (*ListS3sResponse, error) {
|
|
||||||
resp, err := s.cs.newRequest("listS3s", p.toURLValues())
|
|
||||||
if err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
|
|
||||||
var r ListS3sResponse
|
|
||||||
if err := json.Unmarshal(resp, &r); err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
return &r, nil
|
|
||||||
}
|
|
||||||
|
|
||||||
type ListS3sResponse struct {
|
|
||||||
Count int `json:"count"`
|
|
||||||
S3s []*S3 `json:"s3"`
|
|
||||||
}
|
|
||||||
|
|
||||||
type S3 struct {
|
|
||||||
Details []string `json:"details,omitempty"`
|
|
||||||
Id string `json:"id,omitempty"`
|
|
||||||
Name string `json:"name,omitempty"`
|
|
||||||
Protocol string `json:"protocol,omitempty"`
|
|
||||||
Providername string `json:"providername,omitempty"`
|
|
||||||
Scope string `json:"scope,omitempty"`
|
|
||||||
Url string `json:"url,omitempty"`
|
|
||||||
Zoneid string `json:"zoneid,omitempty"`
|
|
||||||
Zonename string `json:"zonename,omitempty"`
|
|
||||||
}
|
|
|
@ -143,6 +143,8 @@ type ResetSSHKeyForVirtualMachineResponse struct {
|
||||||
Domainid string `json:"domainid,omitempty"`
|
Domainid string `json:"domainid,omitempty"`
|
||||||
Id string `json:"id,omitempty"`
|
Id string `json:"id,omitempty"`
|
||||||
Name string `json:"name,omitempty"`
|
Name string `json:"name,omitempty"`
|
||||||
|
Project string `json:"project,omitempty"`
|
||||||
|
Projectid string `json:"projectid,omitempty"`
|
||||||
Type string `json:"type,omitempty"`
|
Type string `json:"type,omitempty"`
|
||||||
VirtualmachineIds []string `json:"virtualmachineIds,omitempty"`
|
VirtualmachineIds []string `json:"virtualmachineIds,omitempty"`
|
||||||
} `json:"affinitygroup,omitempty"`
|
} `json:"affinitygroup,omitempty"`
|
||||||
|
@ -279,6 +281,8 @@ type ResetSSHKeyForVirtualMachineResponse struct {
|
||||||
Resourcetype string `json:"resourcetype,omitempty"`
|
Resourcetype string `json:"resourcetype,omitempty"`
|
||||||
Value string `json:"value,omitempty"`
|
Value string `json:"value,omitempty"`
|
||||||
} `json:"tags,omitempty"`
|
} `json:"tags,omitempty"`
|
||||||
|
Virtualmachinecount int `json:"virtualmachinecount,omitempty"`
|
||||||
|
Virtualmachineids []string `json:"virtualmachineids,omitempty"`
|
||||||
} `json:"securitygroup,omitempty"`
|
} `json:"securitygroup,omitempty"`
|
||||||
Serviceofferingid string `json:"serviceofferingid,omitempty"`
|
Serviceofferingid string `json:"serviceofferingid,omitempty"`
|
||||||
Serviceofferingname string `json:"serviceofferingname,omitempty"`
|
Serviceofferingname string `json:"serviceofferingname,omitempty"`
|
||||||
|
@ -299,6 +303,8 @@ type ResetSSHKeyForVirtualMachineResponse struct {
|
||||||
Templatedisplaytext string `json:"templatedisplaytext,omitempty"`
|
Templatedisplaytext string `json:"templatedisplaytext,omitempty"`
|
||||||
Templateid string `json:"templateid,omitempty"`
|
Templateid string `json:"templateid,omitempty"`
|
||||||
Templatename string `json:"templatename,omitempty"`
|
Templatename string `json:"templatename,omitempty"`
|
||||||
|
Userid string `json:"userid,omitempty"`
|
||||||
|
Username string `json:"username,omitempty"`
|
||||||
Vgpu string `json:"vgpu,omitempty"`
|
Vgpu string `json:"vgpu,omitempty"`
|
||||||
Zoneid string `json:"zoneid,omitempty"`
|
Zoneid string `json:"zoneid,omitempty"`
|
||||||
Zonename string `json:"zonename,omitempty"`
|
Zonename string `json:"zonename,omitempty"`
|
||||||
|
@ -400,6 +406,9 @@ func (s *SSHService) RegisterSSHKeyPair(p *RegisterSSHKeyPairParams) (*RegisterS
|
||||||
}
|
}
|
||||||
|
|
||||||
type RegisterSSHKeyPairResponse struct {
|
type RegisterSSHKeyPairResponse struct {
|
||||||
|
Account string `json:"account,omitempty"`
|
||||||
|
Domain string `json:"domain,omitempty"`
|
||||||
|
Domainid string `json:"domainid,omitempty"`
|
||||||
Fingerprint string `json:"fingerprint,omitempty"`
|
Fingerprint string `json:"fingerprint,omitempty"`
|
||||||
Name string `json:"name,omitempty"`
|
Name string `json:"name,omitempty"`
|
||||||
}
|
}
|
||||||
|
@ -729,6 +738,9 @@ type ListSSHKeyPairsResponse struct {
|
||||||
}
|
}
|
||||||
|
|
||||||
type SSHKeyPair struct {
|
type SSHKeyPair struct {
|
||||||
|
Account string `json:"account,omitempty"`
|
||||||
|
Domain string `json:"domain,omitempty"`
|
||||||
|
Domainid string `json:"domainid,omitempty"`
|
||||||
Fingerprint string `json:"fingerprint,omitempty"`
|
Fingerprint string `json:"fingerprint,omitempty"`
|
||||||
Name string `json:"name,omitempty"`
|
Name string `json:"name,omitempty"`
|
||||||
}
|
}
|
||||||
|
|
|
@ -181,6 +181,8 @@ type CreateSecurityGroupResponse struct {
|
||||||
Resourcetype string `json:"resourcetype,omitempty"`
|
Resourcetype string `json:"resourcetype,omitempty"`
|
||||||
Value string `json:"value,omitempty"`
|
Value string `json:"value,omitempty"`
|
||||||
} `json:"tags,omitempty"`
|
} `json:"tags,omitempty"`
|
||||||
|
Virtualmachinecount int `json:"virtualmachinecount,omitempty"`
|
||||||
|
Virtualmachineids []string `json:"virtualmachineids,omitempty"`
|
||||||
}
|
}
|
||||||
|
|
||||||
type DeleteSecurityGroupParams struct {
|
type DeleteSecurityGroupParams struct {
|
||||||
|
@ -1196,4 +1198,6 @@ type SecurityGroup struct {
|
||||||
Resourcetype string `json:"resourcetype,omitempty"`
|
Resourcetype string `json:"resourcetype,omitempty"`
|
||||||
Value string `json:"value,omitempty"`
|
Value string `json:"value,omitempty"`
|
||||||
} `json:"tags,omitempty"`
|
} `json:"tags,omitempty"`
|
||||||
|
Virtualmachinecount int `json:"virtualmachinecount,omitempty"`
|
||||||
|
Virtualmachineids []string `json:"virtualmachineids,omitempty"`
|
||||||
}
|
}
|
||||||
|
|
|
@ -112,6 +112,9 @@ func (p *CreateServiceOfferingParams) toURLValues() url.Values {
|
||||||
vv := strconv.FormatBool(v.(bool))
|
vv := strconv.FormatBool(v.(bool))
|
||||||
u.Set("offerha", vv)
|
u.Set("offerha", vv)
|
||||||
}
|
}
|
||||||
|
if v, found := p.p["provisioningtype"]; found {
|
||||||
|
u.Set("provisioningtype", v.(string))
|
||||||
|
}
|
||||||
if v, found := p.p["serviceofferingdetails"]; found {
|
if v, found := p.p["serviceofferingdetails"]; found {
|
||||||
i := 0
|
i := 0
|
||||||
for k, vv := range v.(map[string]string) {
|
for k, vv := range v.(map[string]string) {
|
||||||
|
@ -300,6 +303,14 @@ func (p *CreateServiceOfferingParams) SetOfferha(v bool) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *CreateServiceOfferingParams) SetProvisioningtype(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["provisioningtype"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
func (p *CreateServiceOfferingParams) SetServiceofferingdetails(v map[string]string) {
|
func (p *CreateServiceOfferingParams) SetServiceofferingdetails(v map[string]string) {
|
||||||
if p.p == nil {
|
if p.p == nil {
|
||||||
p.p = make(map[string]interface{})
|
p.p = make(map[string]interface{})
|
||||||
|
@ -387,6 +398,7 @@ type CreateServiceOfferingResponse struct {
|
||||||
Name string `json:"name,omitempty"`
|
Name string `json:"name,omitempty"`
|
||||||
Networkrate int `json:"networkrate,omitempty"`
|
Networkrate int `json:"networkrate,omitempty"`
|
||||||
Offerha bool `json:"offerha,omitempty"`
|
Offerha bool `json:"offerha,omitempty"`
|
||||||
|
Provisioningtype string `json:"provisioningtype,omitempty"`
|
||||||
Serviceofferingdetails map[string]string `json:"serviceofferingdetails,omitempty"`
|
Serviceofferingdetails map[string]string `json:"serviceofferingdetails,omitempty"`
|
||||||
Storagetype string `json:"storagetype,omitempty"`
|
Storagetype string `json:"storagetype,omitempty"`
|
||||||
Systemvmtype string `json:"systemvmtype,omitempty"`
|
Systemvmtype string `json:"systemvmtype,omitempty"`
|
||||||
|
@ -551,6 +563,7 @@ type UpdateServiceOfferingResponse struct {
|
||||||
Name string `json:"name,omitempty"`
|
Name string `json:"name,omitempty"`
|
||||||
Networkrate int `json:"networkrate,omitempty"`
|
Networkrate int `json:"networkrate,omitempty"`
|
||||||
Offerha bool `json:"offerha,omitempty"`
|
Offerha bool `json:"offerha,omitempty"`
|
||||||
|
Provisioningtype string `json:"provisioningtype,omitempty"`
|
||||||
Serviceofferingdetails map[string]string `json:"serviceofferingdetails,omitempty"`
|
Serviceofferingdetails map[string]string `json:"serviceofferingdetails,omitempty"`
|
||||||
Storagetype string `json:"storagetype,omitempty"`
|
Storagetype string `json:"storagetype,omitempty"`
|
||||||
Systemvmtype string `json:"systemvmtype,omitempty"`
|
Systemvmtype string `json:"systemvmtype,omitempty"`
|
||||||
|
@ -572,6 +585,10 @@ func (p *ListServiceOfferingsParams) toURLValues() url.Values {
|
||||||
if v, found := p.p["id"]; found {
|
if v, found := p.p["id"]; found {
|
||||||
u.Set("id", v.(string))
|
u.Set("id", v.(string))
|
||||||
}
|
}
|
||||||
|
if v, found := p.p["isrecursive"]; found {
|
||||||
|
vv := strconv.FormatBool(v.(bool))
|
||||||
|
u.Set("isrecursive", vv)
|
||||||
|
}
|
||||||
if v, found := p.p["issystem"]; found {
|
if v, found := p.p["issystem"]; found {
|
||||||
vv := strconv.FormatBool(v.(bool))
|
vv := strconv.FormatBool(v.(bool))
|
||||||
u.Set("issystem", vv)
|
u.Set("issystem", vv)
|
||||||
|
@ -579,6 +596,10 @@ func (p *ListServiceOfferingsParams) toURLValues() url.Values {
|
||||||
if v, found := p.p["keyword"]; found {
|
if v, found := p.p["keyword"]; found {
|
||||||
u.Set("keyword", v.(string))
|
u.Set("keyword", v.(string))
|
||||||
}
|
}
|
||||||
|
if v, found := p.p["listall"]; found {
|
||||||
|
vv := strconv.FormatBool(v.(bool))
|
||||||
|
u.Set("listall", vv)
|
||||||
|
}
|
||||||
if v, found := p.p["name"]; found {
|
if v, found := p.p["name"]; found {
|
||||||
u.Set("name", v.(string))
|
u.Set("name", v.(string))
|
||||||
}
|
}
|
||||||
|
@ -615,6 +636,14 @@ func (p *ListServiceOfferingsParams) SetId(v string) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *ListServiceOfferingsParams) SetIsrecursive(v bool) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["isrecursive"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
func (p *ListServiceOfferingsParams) SetIssystem(v bool) {
|
func (p *ListServiceOfferingsParams) SetIssystem(v bool) {
|
||||||
if p.p == nil {
|
if p.p == nil {
|
||||||
p.p = make(map[string]interface{})
|
p.p = make(map[string]interface{})
|
||||||
|
@ -631,6 +660,14 @@ func (p *ListServiceOfferingsParams) SetKeyword(v string) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *ListServiceOfferingsParams) SetListall(v bool) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["listall"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
func (p *ListServiceOfferingsParams) SetName(v string) {
|
func (p *ListServiceOfferingsParams) SetName(v string) {
|
||||||
if p.p == nil {
|
if p.p == nil {
|
||||||
p.p = make(map[string]interface{})
|
p.p = make(map[string]interface{})
|
||||||
|
@ -796,6 +833,7 @@ type ServiceOffering struct {
|
||||||
Name string `json:"name,omitempty"`
|
Name string `json:"name,omitempty"`
|
||||||
Networkrate int `json:"networkrate,omitempty"`
|
Networkrate int `json:"networkrate,omitempty"`
|
||||||
Offerha bool `json:"offerha,omitempty"`
|
Offerha bool `json:"offerha,omitempty"`
|
||||||
|
Provisioningtype string `json:"provisioningtype,omitempty"`
|
||||||
Serviceofferingdetails map[string]string `json:"serviceofferingdetails,omitempty"`
|
Serviceofferingdetails map[string]string `json:"serviceofferingdetails,omitempty"`
|
||||||
Storagetype string `json:"storagetype,omitempty"`
|
Storagetype string `json:"storagetype,omitempty"`
|
||||||
Systemvmtype string `json:"systemvmtype,omitempty"`
|
Systemvmtype string `json:"systemvmtype,omitempty"`
|
||||||
|
|
|
@ -39,6 +39,9 @@ func (p *CreateSnapshotParams) toURLValues() url.Values {
|
||||||
if v, found := p.p["domainid"]; found {
|
if v, found := p.p["domainid"]; found {
|
||||||
u.Set("domainid", v.(string))
|
u.Set("domainid", v.(string))
|
||||||
}
|
}
|
||||||
|
if v, found := p.p["name"]; found {
|
||||||
|
u.Set("name", v.(string))
|
||||||
|
}
|
||||||
if v, found := p.p["policyid"]; found {
|
if v, found := p.p["policyid"]; found {
|
||||||
u.Set("policyid", v.(string))
|
u.Set("policyid", v.(string))
|
||||||
}
|
}
|
||||||
|
@ -68,6 +71,14 @@ func (p *CreateSnapshotParams) SetDomainid(v string) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *CreateSnapshotParams) SetName(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["name"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
func (p *CreateSnapshotParams) SetPolicyid(v string) {
|
func (p *CreateSnapshotParams) SetPolicyid(v string) {
|
||||||
if p.p == nil {
|
if p.p == nil {
|
||||||
p.p = make(map[string]interface{})
|
p.p = make(map[string]interface{})
|
||||||
|
@ -144,6 +155,7 @@ type CreateSnapshotResponse struct {
|
||||||
Id string `json:"id,omitempty"`
|
Id string `json:"id,omitempty"`
|
||||||
Intervaltype string `json:"intervaltype,omitempty"`
|
Intervaltype string `json:"intervaltype,omitempty"`
|
||||||
Name string `json:"name,omitempty"`
|
Name string `json:"name,omitempty"`
|
||||||
|
Physicalsize int64 `json:"physicalsize,omitempty"`
|
||||||
Project string `json:"project,omitempty"`
|
Project string `json:"project,omitempty"`
|
||||||
Projectid string `json:"projectid,omitempty"`
|
Projectid string `json:"projectid,omitempty"`
|
||||||
Revertable bool `json:"revertable,omitempty"`
|
Revertable bool `json:"revertable,omitempty"`
|
||||||
|
@ -484,6 +496,7 @@ type Snapshot struct {
|
||||||
Id string `json:"id,omitempty"`
|
Id string `json:"id,omitempty"`
|
||||||
Intervaltype string `json:"intervaltype,omitempty"`
|
Intervaltype string `json:"intervaltype,omitempty"`
|
||||||
Name string `json:"name,omitempty"`
|
Name string `json:"name,omitempty"`
|
||||||
|
Physicalsize int64 `json:"physicalsize,omitempty"`
|
||||||
Project string `json:"project,omitempty"`
|
Project string `json:"project,omitempty"`
|
||||||
Projectid string `json:"projectid,omitempty"`
|
Projectid string `json:"projectid,omitempty"`
|
||||||
Revertable bool `json:"revertable,omitempty"`
|
Revertable bool `json:"revertable,omitempty"`
|
||||||
|
@ -1072,6 +1085,7 @@ type RevertSnapshotResponse struct {
|
||||||
Id string `json:"id,omitempty"`
|
Id string `json:"id,omitempty"`
|
||||||
Intervaltype string `json:"intervaltype,omitempty"`
|
Intervaltype string `json:"intervaltype,omitempty"`
|
||||||
Name string `json:"name,omitempty"`
|
Name string `json:"name,omitempty"`
|
||||||
|
Physicalsize int64 `json:"physicalsize,omitempty"`
|
||||||
Project string `json:"project,omitempty"`
|
Project string `json:"project,omitempty"`
|
||||||
Projectid string `json:"projectid,omitempty"`
|
Projectid string `json:"projectid,omitempty"`
|
||||||
Revertable bool `json:"revertable,omitempty"`
|
Revertable bool `json:"revertable,omitempty"`
|
||||||
|
@ -1622,6 +1636,8 @@ type RevertToVMSnapshotResponse struct {
|
||||||
Domainid string `json:"domainid,omitempty"`
|
Domainid string `json:"domainid,omitempty"`
|
||||||
Id string `json:"id,omitempty"`
|
Id string `json:"id,omitempty"`
|
||||||
Name string `json:"name,omitempty"`
|
Name string `json:"name,omitempty"`
|
||||||
|
Project string `json:"project,omitempty"`
|
||||||
|
Projectid string `json:"projectid,omitempty"`
|
||||||
Type string `json:"type,omitempty"`
|
Type string `json:"type,omitempty"`
|
||||||
VirtualmachineIds []string `json:"virtualmachineIds,omitempty"`
|
VirtualmachineIds []string `json:"virtualmachineIds,omitempty"`
|
||||||
} `json:"affinitygroup,omitempty"`
|
} `json:"affinitygroup,omitempty"`
|
||||||
|
@ -1758,6 +1774,8 @@ type RevertToVMSnapshotResponse struct {
|
||||||
Resourcetype string `json:"resourcetype,omitempty"`
|
Resourcetype string `json:"resourcetype,omitempty"`
|
||||||
Value string `json:"value,omitempty"`
|
Value string `json:"value,omitempty"`
|
||||||
} `json:"tags,omitempty"`
|
} `json:"tags,omitempty"`
|
||||||
|
Virtualmachinecount int `json:"virtualmachinecount,omitempty"`
|
||||||
|
Virtualmachineids []string `json:"virtualmachineids,omitempty"`
|
||||||
} `json:"securitygroup,omitempty"`
|
} `json:"securitygroup,omitempty"`
|
||||||
Serviceofferingid string `json:"serviceofferingid,omitempty"`
|
Serviceofferingid string `json:"serviceofferingid,omitempty"`
|
||||||
Serviceofferingname string `json:"serviceofferingname,omitempty"`
|
Serviceofferingname string `json:"serviceofferingname,omitempty"`
|
||||||
|
@ -1778,6 +1796,8 @@ type RevertToVMSnapshotResponse struct {
|
||||||
Templatedisplaytext string `json:"templatedisplaytext,omitempty"`
|
Templatedisplaytext string `json:"templatedisplaytext,omitempty"`
|
||||||
Templateid string `json:"templateid,omitempty"`
|
Templateid string `json:"templateid,omitempty"`
|
||||||
Templatename string `json:"templatename,omitempty"`
|
Templatename string `json:"templatename,omitempty"`
|
||||||
|
Userid string `json:"userid,omitempty"`
|
||||||
|
Username string `json:"username,omitempty"`
|
||||||
Vgpu string `json:"vgpu,omitempty"`
|
Vgpu string `json:"vgpu,omitempty"`
|
||||||
Zoneid string `json:"zoneid,omitempty"`
|
Zoneid string `json:"zoneid,omitempty"`
|
||||||
Zonename string `json:"zonename,omitempty"`
|
Zonename string `json:"zonename,omitempty"`
|
||||||
|
|
|
@ -99,6 +99,7 @@ type StartSystemVmResponse struct {
|
||||||
Gateway string `json:"gateway,omitempty"`
|
Gateway string `json:"gateway,omitempty"`
|
||||||
Hostid string `json:"hostid,omitempty"`
|
Hostid string `json:"hostid,omitempty"`
|
||||||
Hostname string `json:"hostname,omitempty"`
|
Hostname string `json:"hostname,omitempty"`
|
||||||
|
Hypervisor string `json:"hypervisor,omitempty"`
|
||||||
Id string `json:"id,omitempty"`
|
Id string `json:"id,omitempty"`
|
||||||
Jobid string `json:"jobid,omitempty"`
|
Jobid string `json:"jobid,omitempty"`
|
||||||
Jobstatus int `json:"jobstatus,omitempty"`
|
Jobstatus int `json:"jobstatus,omitempty"`
|
||||||
|
@ -196,6 +197,7 @@ type RebootSystemVmResponse struct {
|
||||||
Gateway string `json:"gateway,omitempty"`
|
Gateway string `json:"gateway,omitempty"`
|
||||||
Hostid string `json:"hostid,omitempty"`
|
Hostid string `json:"hostid,omitempty"`
|
||||||
Hostname string `json:"hostname,omitempty"`
|
Hostname string `json:"hostname,omitempty"`
|
||||||
|
Hypervisor string `json:"hypervisor,omitempty"`
|
||||||
Id string `json:"id,omitempty"`
|
Id string `json:"id,omitempty"`
|
||||||
Jobid string `json:"jobid,omitempty"`
|
Jobid string `json:"jobid,omitempty"`
|
||||||
Jobstatus int `json:"jobstatus,omitempty"`
|
Jobstatus int `json:"jobstatus,omitempty"`
|
||||||
|
@ -305,6 +307,7 @@ type StopSystemVmResponse struct {
|
||||||
Gateway string `json:"gateway,omitempty"`
|
Gateway string `json:"gateway,omitempty"`
|
||||||
Hostid string `json:"hostid,omitempty"`
|
Hostid string `json:"hostid,omitempty"`
|
||||||
Hostname string `json:"hostname,omitempty"`
|
Hostname string `json:"hostname,omitempty"`
|
||||||
|
Hypervisor string `json:"hypervisor,omitempty"`
|
||||||
Id string `json:"id,omitempty"`
|
Id string `json:"id,omitempty"`
|
||||||
Jobid string `json:"jobid,omitempty"`
|
Jobid string `json:"jobid,omitempty"`
|
||||||
Jobstatus int `json:"jobstatus,omitempty"`
|
Jobstatus int `json:"jobstatus,omitempty"`
|
||||||
|
@ -402,6 +405,7 @@ type DestroySystemVmResponse struct {
|
||||||
Gateway string `json:"gateway,omitempty"`
|
Gateway string `json:"gateway,omitempty"`
|
||||||
Hostid string `json:"hostid,omitempty"`
|
Hostid string `json:"hostid,omitempty"`
|
||||||
Hostname string `json:"hostname,omitempty"`
|
Hostname string `json:"hostname,omitempty"`
|
||||||
|
Hypervisor string `json:"hypervisor,omitempty"`
|
||||||
Id string `json:"id,omitempty"`
|
Id string `json:"id,omitempty"`
|
||||||
Jobid string `json:"jobid,omitempty"`
|
Jobid string `json:"jobid,omitempty"`
|
||||||
Jobstatus int `json:"jobstatus,omitempty"`
|
Jobstatus int `json:"jobstatus,omitempty"`
|
||||||
|
@ -665,6 +669,7 @@ type SystemVm struct {
|
||||||
Gateway string `json:"gateway,omitempty"`
|
Gateway string `json:"gateway,omitempty"`
|
||||||
Hostid string `json:"hostid,omitempty"`
|
Hostid string `json:"hostid,omitempty"`
|
||||||
Hostname string `json:"hostname,omitempty"`
|
Hostname string `json:"hostname,omitempty"`
|
||||||
|
Hypervisor string `json:"hypervisor,omitempty"`
|
||||||
Id string `json:"id,omitempty"`
|
Id string `json:"id,omitempty"`
|
||||||
Jobid string `json:"jobid,omitempty"`
|
Jobid string `json:"jobid,omitempty"`
|
||||||
Jobstatus int `json:"jobstatus,omitempty"`
|
Jobstatus int `json:"jobstatus,omitempty"`
|
||||||
|
@ -774,6 +779,7 @@ type MigrateSystemVmResponse struct {
|
||||||
Gateway string `json:"gateway,omitempty"`
|
Gateway string `json:"gateway,omitempty"`
|
||||||
Hostid string `json:"hostid,omitempty"`
|
Hostid string `json:"hostid,omitempty"`
|
||||||
Hostname string `json:"hostname,omitempty"`
|
Hostname string `json:"hostname,omitempty"`
|
||||||
|
Hypervisor string `json:"hypervisor,omitempty"`
|
||||||
Id string `json:"id,omitempty"`
|
Id string `json:"id,omitempty"`
|
||||||
Jobid string `json:"jobid,omitempty"`
|
Jobid string `json:"jobid,omitempty"`
|
||||||
Jobstatus int `json:"jobstatus,omitempty"`
|
Jobstatus int `json:"jobstatus,omitempty"`
|
||||||
|
@ -878,6 +884,7 @@ type ChangeServiceForSystemVmResponse struct {
|
||||||
Gateway string `json:"gateway,omitempty"`
|
Gateway string `json:"gateway,omitempty"`
|
||||||
Hostid string `json:"hostid,omitempty"`
|
Hostid string `json:"hostid,omitempty"`
|
||||||
Hostname string `json:"hostname,omitempty"`
|
Hostname string `json:"hostname,omitempty"`
|
||||||
|
Hypervisor string `json:"hypervisor,omitempty"`
|
||||||
Id string `json:"id,omitempty"`
|
Id string `json:"id,omitempty"`
|
||||||
Jobid string `json:"jobid,omitempty"`
|
Jobid string `json:"jobid,omitempty"`
|
||||||
Jobstatus int `json:"jobstatus,omitempty"`
|
Jobstatus int `json:"jobstatus,omitempty"`
|
||||||
|
@ -1003,6 +1010,7 @@ type ScaleSystemVmResponse struct {
|
||||||
Gateway string `json:"gateway,omitempty"`
|
Gateway string `json:"gateway,omitempty"`
|
||||||
Hostid string `json:"hostid,omitempty"`
|
Hostid string `json:"hostid,omitempty"`
|
||||||
Hostname string `json:"hostname,omitempty"`
|
Hostname string `json:"hostname,omitempty"`
|
||||||
|
Hypervisor string `json:"hypervisor,omitempty"`
|
||||||
Id string `json:"id,omitempty"`
|
Id string `json:"id,omitempty"`
|
||||||
Jobid string `json:"jobid,omitempty"`
|
Jobid string `json:"jobid,omitempty"`
|
||||||
Jobstatus int `json:"jobstatus,omitempty"`
|
Jobstatus int `json:"jobstatus,omitempty"`
|
||||||
|
|
|
@ -70,6 +70,9 @@ func (p *CreateTemplateParams) toURLValues() url.Values {
|
||||||
vv := strconv.FormatBool(v.(bool))
|
vv := strconv.FormatBool(v.(bool))
|
||||||
u.Set("passwordenabled", vv)
|
u.Set("passwordenabled", vv)
|
||||||
}
|
}
|
||||||
|
if v, found := p.p["projectid"]; found {
|
||||||
|
u.Set("projectid", v.(string))
|
||||||
|
}
|
||||||
if v, found := p.p["requireshvm"]; found {
|
if v, found := p.p["requireshvm"]; found {
|
||||||
vv := strconv.FormatBool(v.(bool))
|
vv := strconv.FormatBool(v.(bool))
|
||||||
u.Set("requireshvm", vv)
|
u.Set("requireshvm", vv)
|
||||||
|
@ -164,6 +167,14 @@ func (p *CreateTemplateParams) SetPasswordenabled(v bool) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *CreateTemplateParams) SetProjectid(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["projectid"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
func (p *CreateTemplateParams) SetRequireshvm(v bool) {
|
func (p *CreateTemplateParams) SetRequireshvm(v bool) {
|
||||||
if p.p == nil {
|
if p.p == nil {
|
||||||
p.p = make(map[string]interface{})
|
p.p = make(map[string]interface{})
|
||||||
|
@ -708,6 +719,10 @@ func (p *UpdateTemplateParams) toURLValues() url.Values {
|
||||||
vv := strconv.FormatBool(v.(bool))
|
vv := strconv.FormatBool(v.(bool))
|
||||||
u.Set("passwordenabled", vv)
|
u.Set("passwordenabled", vv)
|
||||||
}
|
}
|
||||||
|
if v, found := p.p["requireshvm"]; found {
|
||||||
|
vv := strconv.FormatBool(v.(bool))
|
||||||
|
u.Set("requireshvm", vv)
|
||||||
|
}
|
||||||
if v, found := p.p["sortkey"]; found {
|
if v, found := p.p["sortkey"]; found {
|
||||||
vv := strconv.Itoa(v.(int))
|
vv := strconv.Itoa(v.(int))
|
||||||
u.Set("sortkey", vv)
|
u.Set("sortkey", vv)
|
||||||
|
@ -795,6 +810,14 @@ func (p *UpdateTemplateParams) SetPasswordenabled(v bool) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *UpdateTemplateParams) SetRequireshvm(v bool) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["requireshvm"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
func (p *UpdateTemplateParams) SetSortkey(v int) {
|
func (p *UpdateTemplateParams) SetSortkey(v int) {
|
||||||
if p.p == nil {
|
if p.p == nil {
|
||||||
p.p = make(map[string]interface{})
|
p.p = make(map[string]interface{})
|
||||||
|
@ -1794,6 +1817,9 @@ func (p *PrepareTemplateParams) toURLValues() url.Values {
|
||||||
if p.p == nil {
|
if p.p == nil {
|
||||||
return u
|
return u
|
||||||
}
|
}
|
||||||
|
if v, found := p.p["storageid"]; found {
|
||||||
|
u.Set("storageid", v.(string))
|
||||||
|
}
|
||||||
if v, found := p.p["templateid"]; found {
|
if v, found := p.p["templateid"]; found {
|
||||||
u.Set("templateid", v.(string))
|
u.Set("templateid", v.(string))
|
||||||
}
|
}
|
||||||
|
@ -1803,6 +1829,14 @@ func (p *PrepareTemplateParams) toURLValues() url.Values {
|
||||||
return u
|
return u
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *PrepareTemplateParams) SetStorageid(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["storageid"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
func (p *PrepareTemplateParams) SetTemplateid(v string) {
|
func (p *PrepareTemplateParams) SetTemplateid(v string) {
|
||||||
if p.p == nil {
|
if p.p == nil {
|
||||||
p.p = make(map[string]interface{})
|
p.p = make(map[string]interface{})
|
||||||
|
@ -1997,3 +2031,296 @@ type UpgradeRouterTemplateResponse struct {
|
||||||
Jobid string `json:"jobid,omitempty"`
|
Jobid string `json:"jobid,omitempty"`
|
||||||
Jobstatus int `json:"jobstatus,omitempty"`
|
Jobstatus int `json:"jobstatus,omitempty"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
type GetUploadParamsForTemplateParams struct {
|
||||||
|
p map[string]interface{}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *GetUploadParamsForTemplateParams) toURLValues() url.Values {
|
||||||
|
u := url.Values{}
|
||||||
|
if p.p == nil {
|
||||||
|
return u
|
||||||
|
}
|
||||||
|
if v, found := p.p["account"]; found {
|
||||||
|
u.Set("account", v.(string))
|
||||||
|
}
|
||||||
|
if v, found := p.p["bits"]; found {
|
||||||
|
vv := strconv.Itoa(v.(int))
|
||||||
|
u.Set("bits", vv)
|
||||||
|
}
|
||||||
|
if v, found := p.p["checksum"]; found {
|
||||||
|
u.Set("checksum", v.(string))
|
||||||
|
}
|
||||||
|
if v, found := p.p["details"]; found {
|
||||||
|
i := 0
|
||||||
|
for k, vv := range v.(map[string]string) {
|
||||||
|
u.Set(fmt.Sprintf("details[%d].key", i), k)
|
||||||
|
u.Set(fmt.Sprintf("details[%d].value", i), vv)
|
||||||
|
i++
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if v, found := p.p["displaytext"]; found {
|
||||||
|
u.Set("displaytext", v.(string))
|
||||||
|
}
|
||||||
|
if v, found := p.p["domainid"]; found {
|
||||||
|
u.Set("domainid", v.(string))
|
||||||
|
}
|
||||||
|
if v, found := p.p["format"]; found {
|
||||||
|
u.Set("format", v.(string))
|
||||||
|
}
|
||||||
|
if v, found := p.p["hypervisor"]; found {
|
||||||
|
u.Set("hypervisor", v.(string))
|
||||||
|
}
|
||||||
|
if v, found := p.p["isdynamicallyscalable"]; found {
|
||||||
|
vv := strconv.FormatBool(v.(bool))
|
||||||
|
u.Set("isdynamicallyscalable", vv)
|
||||||
|
}
|
||||||
|
if v, found := p.p["isextractable"]; found {
|
||||||
|
vv := strconv.FormatBool(v.(bool))
|
||||||
|
u.Set("isextractable", vv)
|
||||||
|
}
|
||||||
|
if v, found := p.p["isfeatured"]; found {
|
||||||
|
vv := strconv.FormatBool(v.(bool))
|
||||||
|
u.Set("isfeatured", vv)
|
||||||
|
}
|
||||||
|
if v, found := p.p["ispublic"]; found {
|
||||||
|
vv := strconv.FormatBool(v.(bool))
|
||||||
|
u.Set("ispublic", vv)
|
||||||
|
}
|
||||||
|
if v, found := p.p["isrouting"]; found {
|
||||||
|
vv := strconv.FormatBool(v.(bool))
|
||||||
|
u.Set("isrouting", vv)
|
||||||
|
}
|
||||||
|
if v, found := p.p["name"]; found {
|
||||||
|
u.Set("name", v.(string))
|
||||||
|
}
|
||||||
|
if v, found := p.p["ostypeid"]; found {
|
||||||
|
u.Set("ostypeid", v.(string))
|
||||||
|
}
|
||||||
|
if v, found := p.p["passwordenabled"]; found {
|
||||||
|
vv := strconv.FormatBool(v.(bool))
|
||||||
|
u.Set("passwordenabled", vv)
|
||||||
|
}
|
||||||
|
if v, found := p.p["projectid"]; found {
|
||||||
|
u.Set("projectid", v.(string))
|
||||||
|
}
|
||||||
|
if v, found := p.p["requireshvm"]; found {
|
||||||
|
vv := strconv.FormatBool(v.(bool))
|
||||||
|
u.Set("requireshvm", vv)
|
||||||
|
}
|
||||||
|
if v, found := p.p["sshkeyenabled"]; found {
|
||||||
|
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["zoneid"]; found {
|
||||||
|
u.Set("zoneid", v.(string))
|
||||||
|
}
|
||||||
|
return u
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *GetUploadParamsForTemplateParams) SetAccount(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["account"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *GetUploadParamsForTemplateParams) SetBits(v int) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["bits"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *GetUploadParamsForTemplateParams) SetChecksum(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["checksum"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *GetUploadParamsForTemplateParams) SetDetails(v map[string]string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["details"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *GetUploadParamsForTemplateParams) SetDisplaytext(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["displaytext"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *GetUploadParamsForTemplateParams) SetDomainid(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["domainid"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *GetUploadParamsForTemplateParams) SetFormat(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["format"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *GetUploadParamsForTemplateParams) SetHypervisor(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["hypervisor"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *GetUploadParamsForTemplateParams) SetIsdynamicallyscalable(v bool) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["isdynamicallyscalable"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *GetUploadParamsForTemplateParams) SetIsextractable(v bool) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["isextractable"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *GetUploadParamsForTemplateParams) SetIsfeatured(v bool) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["isfeatured"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *GetUploadParamsForTemplateParams) SetIspublic(v bool) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["ispublic"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *GetUploadParamsForTemplateParams) SetIsrouting(v bool) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["isrouting"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *GetUploadParamsForTemplateParams) SetName(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["name"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *GetUploadParamsForTemplateParams) SetOstypeid(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["ostypeid"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *GetUploadParamsForTemplateParams) SetPasswordenabled(v bool) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["passwordenabled"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *GetUploadParamsForTemplateParams) SetProjectid(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["projectid"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *GetUploadParamsForTemplateParams) SetRequireshvm(v bool) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["requireshvm"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *GetUploadParamsForTemplateParams) SetSshkeyenabled(v bool) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["sshkeyenabled"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *GetUploadParamsForTemplateParams) SetTemplatetag(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["templatetag"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *GetUploadParamsForTemplateParams) SetZoneid(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["zoneid"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// You should always use this function to get a new GetUploadParamsForTemplateParams instance,
|
||||||
|
// as then you are sure you have configured all required params
|
||||||
|
func (s *TemplateService) NewGetUploadParamsForTemplateParams(displaytext string, format string, hypervisor string, name string, ostypeid string, zoneid string) *GetUploadParamsForTemplateParams {
|
||||||
|
p := &GetUploadParamsForTemplateParams{}
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
p.p["displaytext"] = displaytext
|
||||||
|
p.p["format"] = format
|
||||||
|
p.p["hypervisor"] = hypervisor
|
||||||
|
p.p["name"] = name
|
||||||
|
p.p["ostypeid"] = ostypeid
|
||||||
|
p.p["zoneid"] = zoneid
|
||||||
|
return p
|
||||||
|
}
|
||||||
|
|
||||||
|
// upload an existing template into the CloudStack cloud.
|
||||||
|
func (s *TemplateService) GetUploadParamsForTemplate(p *GetUploadParamsForTemplateParams) (*GetUploadParamsForTemplateResponse, error) {
|
||||||
|
resp, err := s.cs.newRequest("getUploadParamsForTemplate", p.toURLValues())
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
|
var r GetUploadParamsForTemplateResponse
|
||||||
|
if err := json.Unmarshal(resp, &r); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
return &r, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
type GetUploadParamsForTemplateResponse struct {
|
||||||
|
Expires string `json:"expires,omitempty"`
|
||||||
|
Id string `json:"id,omitempty"`
|
||||||
|
Metadata string `json:"metadata,omitempty"`
|
||||||
|
PostURL string `json:"postURL,omitempty"`
|
||||||
|
Signature string `json:"signature,omitempty"`
|
||||||
|
}
|
||||||
|
|
|
@ -41,6 +41,9 @@ func (p *AddTrafficTypeParams) toURLValues() url.Values {
|
||||||
if v, found := p.p["kvmnetworklabel"]; found {
|
if v, found := p.p["kvmnetworklabel"]; found {
|
||||||
u.Set("kvmnetworklabel", v.(string))
|
u.Set("kvmnetworklabel", v.(string))
|
||||||
}
|
}
|
||||||
|
if v, found := p.p["ovm3networklabel"]; found {
|
||||||
|
u.Set("ovm3networklabel", v.(string))
|
||||||
|
}
|
||||||
if v, found := p.p["physicalnetworkid"]; found {
|
if v, found := p.p["physicalnetworkid"]; found {
|
||||||
u.Set("physicalnetworkid", v.(string))
|
u.Set("physicalnetworkid", v.(string))
|
||||||
}
|
}
|
||||||
|
@ -83,6 +86,14 @@ func (p *AddTrafficTypeParams) SetKvmnetworklabel(v string) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *AddTrafficTypeParams) SetOvm3networklabel(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["ovm3networklabel"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
func (p *AddTrafficTypeParams) SetPhysicalnetworkid(v string) {
|
func (p *AddTrafficTypeParams) SetPhysicalnetworkid(v string) {
|
||||||
if p.p == nil {
|
if p.p == nil {
|
||||||
p.p = make(map[string]interface{})
|
p.p = make(map[string]interface{})
|
||||||
|
@ -172,6 +183,7 @@ type AddTrafficTypeResponse struct {
|
||||||
Hypervnetworklabel string `json:"hypervnetworklabel,omitempty"`
|
Hypervnetworklabel string `json:"hypervnetworklabel,omitempty"`
|
||||||
Id string `json:"id,omitempty"`
|
Id string `json:"id,omitempty"`
|
||||||
Kvmnetworklabel string `json:"kvmnetworklabel,omitempty"`
|
Kvmnetworklabel string `json:"kvmnetworklabel,omitempty"`
|
||||||
|
Ovm3networklabel string `json:"ovm3networklabel,omitempty"`
|
||||||
Physicalnetworkid string `json:"physicalnetworkid,omitempty"`
|
Physicalnetworkid string `json:"physicalnetworkid,omitempty"`
|
||||||
Traffictype string `json:"traffictype,omitempty"`
|
Traffictype string `json:"traffictype,omitempty"`
|
||||||
Vmwarenetworklabel string `json:"vmwarenetworklabel,omitempty"`
|
Vmwarenetworklabel string `json:"vmwarenetworklabel,omitempty"`
|
||||||
|
@ -390,6 +402,9 @@ func (p *UpdateTrafficTypeParams) toURLValues() url.Values {
|
||||||
if v, found := p.p["kvmnetworklabel"]; found {
|
if v, found := p.p["kvmnetworklabel"]; found {
|
||||||
u.Set("kvmnetworklabel", v.(string))
|
u.Set("kvmnetworklabel", v.(string))
|
||||||
}
|
}
|
||||||
|
if v, found := p.p["ovm3networklabel"]; found {
|
||||||
|
u.Set("ovm3networklabel", v.(string))
|
||||||
|
}
|
||||||
if v, found := p.p["vmwarenetworklabel"]; found {
|
if v, found := p.p["vmwarenetworklabel"]; found {
|
||||||
u.Set("vmwarenetworklabel", v.(string))
|
u.Set("vmwarenetworklabel", v.(string))
|
||||||
}
|
}
|
||||||
|
@ -423,6 +438,14 @@ func (p *UpdateTrafficTypeParams) SetKvmnetworklabel(v string) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *UpdateTrafficTypeParams) SetOvm3networklabel(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["ovm3networklabel"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
func (p *UpdateTrafficTypeParams) SetVmwarenetworklabel(v string) {
|
func (p *UpdateTrafficTypeParams) SetVmwarenetworklabel(v string) {
|
||||||
if p.p == nil {
|
if p.p == nil {
|
||||||
p.p = make(map[string]interface{})
|
p.p = make(map[string]interface{})
|
||||||
|
@ -487,6 +510,7 @@ type UpdateTrafficTypeResponse struct {
|
||||||
Hypervnetworklabel string `json:"hypervnetworklabel,omitempty"`
|
Hypervnetworklabel string `json:"hypervnetworklabel,omitempty"`
|
||||||
Id string `json:"id,omitempty"`
|
Id string `json:"id,omitempty"`
|
||||||
Kvmnetworklabel string `json:"kvmnetworklabel,omitempty"`
|
Kvmnetworklabel string `json:"kvmnetworklabel,omitempty"`
|
||||||
|
Ovm3networklabel string `json:"ovm3networklabel,omitempty"`
|
||||||
Physicalnetworkid string `json:"physicalnetworkid,omitempty"`
|
Physicalnetworkid string `json:"physicalnetworkid,omitempty"`
|
||||||
Traffictype string `json:"traffictype,omitempty"`
|
Traffictype string `json:"traffictype,omitempty"`
|
||||||
Vmwarenetworklabel string `json:"vmwarenetworklabel,omitempty"`
|
Vmwarenetworklabel string `json:"vmwarenetworklabel,omitempty"`
|
||||||
|
@ -699,6 +723,9 @@ func (p *ListUsageRecordsParams) toURLValues() url.Values {
|
||||||
vv := strconv.FormatInt(v.(int64), 10)
|
vv := strconv.FormatInt(v.(int64), 10)
|
||||||
u.Set("type", vv)
|
u.Set("type", vv)
|
||||||
}
|
}
|
||||||
|
if v, found := p.p["usageid"]; found {
|
||||||
|
u.Set("usageid", v.(string))
|
||||||
|
}
|
||||||
return u
|
return u
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -782,6 +809,14 @@ func (p *ListUsageRecordsParams) SetType(v int64) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *ListUsageRecordsParams) SetUsageid(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["usageid"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
// You should always use this function to get a new ListUsageRecordsParams instance,
|
// You should always use this function to get a new ListUsageRecordsParams instance,
|
||||||
// as then you are sure you have configured all required params
|
// as then you are sure you have configured all required params
|
||||||
func (s *UsageService) NewListUsageRecordsParams(enddate string, startdate string) *ListUsageRecordsParams {
|
func (s *UsageService) NewListUsageRecordsParams(enddate string, startdate string) *ListUsageRecordsParams {
|
||||||
|
@ -886,6 +921,58 @@ type UsageType struct {
|
||||||
Usagetypeid int `json:"usagetypeid,omitempty"`
|
Usagetypeid int `json:"usagetypeid,omitempty"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
type RemoveRawUsageRecordsParams struct {
|
||||||
|
p map[string]interface{}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *RemoveRawUsageRecordsParams) toURLValues() url.Values {
|
||||||
|
u := url.Values{}
|
||||||
|
if p.p == nil {
|
||||||
|
return u
|
||||||
|
}
|
||||||
|
if v, found := p.p["interval"]; found {
|
||||||
|
vv := strconv.Itoa(v.(int))
|
||||||
|
u.Set("interval", vv)
|
||||||
|
}
|
||||||
|
return u
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *RemoveRawUsageRecordsParams) SetInterval(v int) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["interval"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// You should always use this function to get a new RemoveRawUsageRecordsParams instance,
|
||||||
|
// as then you are sure you have configured all required params
|
||||||
|
func (s *UsageService) NewRemoveRawUsageRecordsParams(interval int) *RemoveRawUsageRecordsParams {
|
||||||
|
p := &RemoveRawUsageRecordsParams{}
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
p.p["interval"] = interval
|
||||||
|
return p
|
||||||
|
}
|
||||||
|
|
||||||
|
// Safely removes raw records from cloud_usage table
|
||||||
|
func (s *UsageService) RemoveRawUsageRecords(p *RemoveRawUsageRecordsParams) (*RemoveRawUsageRecordsResponse, error) {
|
||||||
|
resp, err := s.cs.newRequest("removeRawUsageRecords", p.toURLValues())
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
|
var r RemoveRawUsageRecordsResponse
|
||||||
|
if err := json.Unmarshal(resp, &r); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
return &r, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
type RemoveRawUsageRecordsResponse struct {
|
||||||
|
Displaytext string `json:"displaytext,omitempty"`
|
||||||
|
Success string `json:"success,omitempty"`
|
||||||
|
}
|
||||||
|
|
||||||
type AddTrafficMonitorParams struct {
|
type AddTrafficMonitorParams struct {
|
||||||
p map[string]interface{}
|
p map[string]interface{}
|
||||||
}
|
}
|
||||||
|
|
|
@ -295,12 +295,13 @@ type CreateVPCResponse struct {
|
||||||
Zonename string `json:"zonename,omitempty"`
|
Zonename string `json:"zonename,omitempty"`
|
||||||
Zonesnetworkspans []string `json:"zonesnetworkspans,omitempty"`
|
Zonesnetworkspans []string `json:"zonesnetworkspans,omitempty"`
|
||||||
} `json:"network,omitempty"`
|
} `json:"network,omitempty"`
|
||||||
Networkdomain string `json:"networkdomain,omitempty"`
|
Networkdomain string `json:"networkdomain,omitempty"`
|
||||||
Project string `json:"project,omitempty"`
|
Project string `json:"project,omitempty"`
|
||||||
Projectid string `json:"projectid,omitempty"`
|
Projectid string `json:"projectid,omitempty"`
|
||||||
Regionlevelvpc bool `json:"regionlevelvpc,omitempty"`
|
Redundantvpcrouter bool `json:"redundantvpcrouter,omitempty"`
|
||||||
Restartrequired bool `json:"restartrequired,omitempty"`
|
Regionlevelvpc bool `json:"regionlevelvpc,omitempty"`
|
||||||
Service []struct {
|
Restartrequired bool `json:"restartrequired,omitempty"`
|
||||||
|
Service []struct {
|
||||||
Capability []struct {
|
Capability []struct {
|
||||||
Canchooseservicecapability bool `json:"canchooseservicecapability,omitempty"`
|
Canchooseservicecapability bool `json:"canchooseservicecapability,omitempty"`
|
||||||
Name string `json:"name,omitempty"`
|
Name string `json:"name,omitempty"`
|
||||||
|
@ -779,12 +780,13 @@ type VPC struct {
|
||||||
Zonename string `json:"zonename,omitempty"`
|
Zonename string `json:"zonename,omitempty"`
|
||||||
Zonesnetworkspans []string `json:"zonesnetworkspans,omitempty"`
|
Zonesnetworkspans []string `json:"zonesnetworkspans,omitempty"`
|
||||||
} `json:"network,omitempty"`
|
} `json:"network,omitempty"`
|
||||||
Networkdomain string `json:"networkdomain,omitempty"`
|
Networkdomain string `json:"networkdomain,omitempty"`
|
||||||
Project string `json:"project,omitempty"`
|
Project string `json:"project,omitempty"`
|
||||||
Projectid string `json:"projectid,omitempty"`
|
Projectid string `json:"projectid,omitempty"`
|
||||||
Regionlevelvpc bool `json:"regionlevelvpc,omitempty"`
|
Redundantvpcrouter bool `json:"redundantvpcrouter,omitempty"`
|
||||||
Restartrequired bool `json:"restartrequired,omitempty"`
|
Regionlevelvpc bool `json:"regionlevelvpc,omitempty"`
|
||||||
Service []struct {
|
Restartrequired bool `json:"restartrequired,omitempty"`
|
||||||
|
Service []struct {
|
||||||
Capability []struct {
|
Capability []struct {
|
||||||
Canchooseservicecapability bool `json:"canchooseservicecapability,omitempty"`
|
Canchooseservicecapability bool `json:"canchooseservicecapability,omitempty"`
|
||||||
Name string `json:"name,omitempty"`
|
Name string `json:"name,omitempty"`
|
||||||
|
@ -1086,12 +1088,13 @@ type UpdateVPCResponse struct {
|
||||||
Zonename string `json:"zonename,omitempty"`
|
Zonename string `json:"zonename,omitempty"`
|
||||||
Zonesnetworkspans []string `json:"zonesnetworkspans,omitempty"`
|
Zonesnetworkspans []string `json:"zonesnetworkspans,omitempty"`
|
||||||
} `json:"network,omitempty"`
|
} `json:"network,omitempty"`
|
||||||
Networkdomain string `json:"networkdomain,omitempty"`
|
Networkdomain string `json:"networkdomain,omitempty"`
|
||||||
Project string `json:"project,omitempty"`
|
Project string `json:"project,omitempty"`
|
||||||
Projectid string `json:"projectid,omitempty"`
|
Projectid string `json:"projectid,omitempty"`
|
||||||
Regionlevelvpc bool `json:"regionlevelvpc,omitempty"`
|
Redundantvpcrouter bool `json:"redundantvpcrouter,omitempty"`
|
||||||
Restartrequired bool `json:"restartrequired,omitempty"`
|
Regionlevelvpc bool `json:"regionlevelvpc,omitempty"`
|
||||||
Service []struct {
|
Restartrequired bool `json:"restartrequired,omitempty"`
|
||||||
|
Service []struct {
|
||||||
Capability []struct {
|
Capability []struct {
|
||||||
Canchooseservicecapability bool `json:"canchooseservicecapability,omitempty"`
|
Canchooseservicecapability bool `json:"canchooseservicecapability,omitempty"`
|
||||||
Name string `json:"name,omitempty"`
|
Name string `json:"name,omitempty"`
|
||||||
|
@ -1135,12 +1138,28 @@ func (p *RestartVPCParams) toURLValues() url.Values {
|
||||||
if p.p == nil {
|
if p.p == nil {
|
||||||
return u
|
return u
|
||||||
}
|
}
|
||||||
|
if v, found := p.p["cleanup"]; found {
|
||||||
|
vv := strconv.FormatBool(v.(bool))
|
||||||
|
u.Set("cleanup", vv)
|
||||||
|
}
|
||||||
if v, found := p.p["id"]; found {
|
if v, found := p.p["id"]; found {
|
||||||
u.Set("id", v.(string))
|
u.Set("id", v.(string))
|
||||||
}
|
}
|
||||||
|
if v, found := p.p["makeredundant"]; found {
|
||||||
|
vv := strconv.FormatBool(v.(bool))
|
||||||
|
u.Set("makeredundant", vv)
|
||||||
|
}
|
||||||
return u
|
return u
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *RestartVPCParams) SetCleanup(v bool) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["cleanup"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
func (p *RestartVPCParams) SetId(v string) {
|
func (p *RestartVPCParams) SetId(v string) {
|
||||||
if p.p == nil {
|
if p.p == nil {
|
||||||
p.p = make(map[string]interface{})
|
p.p = make(map[string]interface{})
|
||||||
|
@ -1149,6 +1168,14 @@ func (p *RestartVPCParams) SetId(v string) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *RestartVPCParams) SetMakeredundant(v bool) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["makeredundant"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
// You should always use this function to get a new RestartVPCParams instance,
|
// You should always use this function to get a new RestartVPCParams instance,
|
||||||
// as then you are sure you have configured all required params
|
// as then you are sure you have configured all required params
|
||||||
func (s *VPCService) NewRestartVPCParams(id string) *RestartVPCParams {
|
func (s *VPCService) NewRestartVPCParams(id string) *RestartVPCParams {
|
||||||
|
@ -1281,12 +1308,13 @@ type RestartVPCResponse struct {
|
||||||
Zonename string `json:"zonename,omitempty"`
|
Zonename string `json:"zonename,omitempty"`
|
||||||
Zonesnetworkspans []string `json:"zonesnetworkspans,omitempty"`
|
Zonesnetworkspans []string `json:"zonesnetworkspans,omitempty"`
|
||||||
} `json:"network,omitempty"`
|
} `json:"network,omitempty"`
|
||||||
Networkdomain string `json:"networkdomain,omitempty"`
|
Networkdomain string `json:"networkdomain,omitempty"`
|
||||||
Project string `json:"project,omitempty"`
|
Project string `json:"project,omitempty"`
|
||||||
Projectid string `json:"projectid,omitempty"`
|
Projectid string `json:"projectid,omitempty"`
|
||||||
Regionlevelvpc bool `json:"regionlevelvpc,omitempty"`
|
Redundantvpcrouter bool `json:"redundantvpcrouter,omitempty"`
|
||||||
Restartrequired bool `json:"restartrequired,omitempty"`
|
Regionlevelvpc bool `json:"regionlevelvpc,omitempty"`
|
||||||
Service []struct {
|
Restartrequired bool `json:"restartrequired,omitempty"`
|
||||||
|
Service []struct {
|
||||||
Capability []struct {
|
Capability []struct {
|
||||||
Canchooseservicecapability bool `json:"canchooseservicecapability,omitempty"`
|
Canchooseservicecapability bool `json:"canchooseservicecapability,omitempty"`
|
||||||
Name string `json:"name,omitempty"`
|
Name string `json:"name,omitempty"`
|
||||||
|
|
|
@ -1026,6 +1026,10 @@ func (p *CreateVpnCustomerGatewayParams) toURLValues() url.Values {
|
||||||
if v, found := p.p["esppolicy"]; found {
|
if v, found := p.p["esppolicy"]; found {
|
||||||
u.Set("esppolicy", v.(string))
|
u.Set("esppolicy", v.(string))
|
||||||
}
|
}
|
||||||
|
if v, found := p.p["forceencap"]; found {
|
||||||
|
vv := strconv.FormatBool(v.(bool))
|
||||||
|
u.Set("forceencap", vv)
|
||||||
|
}
|
||||||
if v, found := p.p["gateway"]; found {
|
if v, found := p.p["gateway"]; found {
|
||||||
u.Set("gateway", v.(string))
|
u.Set("gateway", v.(string))
|
||||||
}
|
}
|
||||||
|
@ -1042,6 +1046,9 @@ func (p *CreateVpnCustomerGatewayParams) toURLValues() url.Values {
|
||||||
if v, found := p.p["name"]; found {
|
if v, found := p.p["name"]; found {
|
||||||
u.Set("name", v.(string))
|
u.Set("name", v.(string))
|
||||||
}
|
}
|
||||||
|
if v, found := p.p["projectid"]; found {
|
||||||
|
u.Set("projectid", v.(string))
|
||||||
|
}
|
||||||
return u
|
return u
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1093,6 +1100,14 @@ func (p *CreateVpnCustomerGatewayParams) SetEsppolicy(v string) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *CreateVpnCustomerGatewayParams) SetForceencap(v bool) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["forceencap"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
func (p *CreateVpnCustomerGatewayParams) SetGateway(v string) {
|
func (p *CreateVpnCustomerGatewayParams) SetGateway(v string) {
|
||||||
if p.p == nil {
|
if p.p == nil {
|
||||||
p.p = make(map[string]interface{})
|
p.p = make(map[string]interface{})
|
||||||
|
@ -1133,6 +1148,14 @@ func (p *CreateVpnCustomerGatewayParams) SetName(v string) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *CreateVpnCustomerGatewayParams) SetProjectid(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["projectid"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
// You should always use this function to get a new CreateVpnCustomerGatewayParams instance,
|
// You should always use this function to get a new CreateVpnCustomerGatewayParams instance,
|
||||||
// as then you are sure you have configured all required params
|
// as then you are sure you have configured all required params
|
||||||
func (s *VPNService) NewCreateVpnCustomerGatewayParams(cidrlist string, esppolicy string, gateway string, ikepolicy string, ipsecpsk string) *CreateVpnCustomerGatewayParams {
|
func (s *VPNService) NewCreateVpnCustomerGatewayParams(cidrlist string, esppolicy string, gateway string, ikepolicy string, ipsecpsk string) *CreateVpnCustomerGatewayParams {
|
||||||
|
@ -1189,6 +1212,7 @@ type CreateVpnCustomerGatewayResponse struct {
|
||||||
Dpd bool `json:"dpd,omitempty"`
|
Dpd bool `json:"dpd,omitempty"`
|
||||||
Esplifetime int64 `json:"esplifetime,omitempty"`
|
Esplifetime int64 `json:"esplifetime,omitempty"`
|
||||||
Esppolicy string `json:"esppolicy,omitempty"`
|
Esppolicy string `json:"esppolicy,omitempty"`
|
||||||
|
Forceencap bool `json:"forceencap,omitempty"`
|
||||||
Gateway string `json:"gateway,omitempty"`
|
Gateway string `json:"gateway,omitempty"`
|
||||||
Id string `json:"id,omitempty"`
|
Id string `json:"id,omitempty"`
|
||||||
Ikelifetime int64 `json:"ikelifetime,omitempty"`
|
Ikelifetime int64 `json:"ikelifetime,omitempty"`
|
||||||
|
@ -1405,6 +1429,7 @@ type CreateVpnConnectionResponse struct {
|
||||||
Dpd bool `json:"dpd,omitempty"`
|
Dpd bool `json:"dpd,omitempty"`
|
||||||
Esplifetime int64 `json:"esplifetime,omitempty"`
|
Esplifetime int64 `json:"esplifetime,omitempty"`
|
||||||
Esppolicy string `json:"esppolicy,omitempty"`
|
Esppolicy string `json:"esppolicy,omitempty"`
|
||||||
|
Forceencap bool `json:"forceencap,omitempty"`
|
||||||
Fordisplay bool `json:"fordisplay,omitempty"`
|
Fordisplay bool `json:"fordisplay,omitempty"`
|
||||||
Gateway string `json:"gateway,omitempty"`
|
Gateway string `json:"gateway,omitempty"`
|
||||||
Id string `json:"id,omitempty"`
|
Id string `json:"id,omitempty"`
|
||||||
|
@ -1651,6 +1676,10 @@ func (p *UpdateVpnCustomerGatewayParams) toURLValues() url.Values {
|
||||||
if v, found := p.p["esppolicy"]; found {
|
if v, found := p.p["esppolicy"]; found {
|
||||||
u.Set("esppolicy", v.(string))
|
u.Set("esppolicy", v.(string))
|
||||||
}
|
}
|
||||||
|
if v, found := p.p["forceencap"]; found {
|
||||||
|
vv := strconv.FormatBool(v.(bool))
|
||||||
|
u.Set("forceencap", vv)
|
||||||
|
}
|
||||||
if v, found := p.p["gateway"]; found {
|
if v, found := p.p["gateway"]; found {
|
||||||
u.Set("gateway", v.(string))
|
u.Set("gateway", v.(string))
|
||||||
}
|
}
|
||||||
|
@ -1721,6 +1750,14 @@ func (p *UpdateVpnCustomerGatewayParams) SetEsppolicy(v string) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *UpdateVpnCustomerGatewayParams) SetForceencap(v bool) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["forceencap"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
func (p *UpdateVpnCustomerGatewayParams) SetGateway(v string) {
|
func (p *UpdateVpnCustomerGatewayParams) SetGateway(v string) {
|
||||||
if p.p == nil {
|
if p.p == nil {
|
||||||
p.p = make(map[string]interface{})
|
p.p = make(map[string]interface{})
|
||||||
|
@ -1826,6 +1863,7 @@ type UpdateVpnCustomerGatewayResponse struct {
|
||||||
Dpd bool `json:"dpd,omitempty"`
|
Dpd bool `json:"dpd,omitempty"`
|
||||||
Esplifetime int64 `json:"esplifetime,omitempty"`
|
Esplifetime int64 `json:"esplifetime,omitempty"`
|
||||||
Esppolicy string `json:"esppolicy,omitempty"`
|
Esppolicy string `json:"esppolicy,omitempty"`
|
||||||
|
Forceencap bool `json:"forceencap,omitempty"`
|
||||||
Gateway string `json:"gateway,omitempty"`
|
Gateway string `json:"gateway,omitempty"`
|
||||||
Id string `json:"id,omitempty"`
|
Id string `json:"id,omitempty"`
|
||||||
Ikelifetime int64 `json:"ikelifetime,omitempty"`
|
Ikelifetime int64 `json:"ikelifetime,omitempty"`
|
||||||
|
@ -1936,6 +1974,7 @@ type ResetVpnConnectionResponse struct {
|
||||||
Dpd bool `json:"dpd,omitempty"`
|
Dpd bool `json:"dpd,omitempty"`
|
||||||
Esplifetime int64 `json:"esplifetime,omitempty"`
|
Esplifetime int64 `json:"esplifetime,omitempty"`
|
||||||
Esppolicy string `json:"esppolicy,omitempty"`
|
Esppolicy string `json:"esppolicy,omitempty"`
|
||||||
|
Forceencap bool `json:"forceencap,omitempty"`
|
||||||
Fordisplay bool `json:"fordisplay,omitempty"`
|
Fordisplay bool `json:"fordisplay,omitempty"`
|
||||||
Gateway string `json:"gateway,omitempty"`
|
Gateway string `json:"gateway,omitempty"`
|
||||||
Id string `json:"id,omitempty"`
|
Id string `json:"id,omitempty"`
|
||||||
|
@ -2198,6 +2237,7 @@ type VpnCustomerGateway struct {
|
||||||
Dpd bool `json:"dpd,omitempty"`
|
Dpd bool `json:"dpd,omitempty"`
|
||||||
Esplifetime int64 `json:"esplifetime,omitempty"`
|
Esplifetime int64 `json:"esplifetime,omitempty"`
|
||||||
Esppolicy string `json:"esppolicy,omitempty"`
|
Esppolicy string `json:"esppolicy,omitempty"`
|
||||||
|
Forceencap bool `json:"forceencap,omitempty"`
|
||||||
Gateway string `json:"gateway,omitempty"`
|
Gateway string `json:"gateway,omitempty"`
|
||||||
Id string `json:"id,omitempty"`
|
Id string `json:"id,omitempty"`
|
||||||
Ikelifetime int64 `json:"ikelifetime,omitempty"`
|
Ikelifetime int64 `json:"ikelifetime,omitempty"`
|
||||||
|
@ -2646,6 +2686,7 @@ type VpnConnection struct {
|
||||||
Dpd bool `json:"dpd,omitempty"`
|
Dpd bool `json:"dpd,omitempty"`
|
||||||
Esplifetime int64 `json:"esplifetime,omitempty"`
|
Esplifetime int64 `json:"esplifetime,omitempty"`
|
||||||
Esppolicy string `json:"esppolicy,omitempty"`
|
Esppolicy string `json:"esppolicy,omitempty"`
|
||||||
|
Forceencap bool `json:"forceencap,omitempty"`
|
||||||
Fordisplay bool `json:"fordisplay,omitempty"`
|
Fordisplay bool `json:"fordisplay,omitempty"`
|
||||||
Gateway string `json:"gateway,omitempty"`
|
Gateway string `json:"gateway,omitempty"`
|
||||||
Id string `json:"id,omitempty"`
|
Id string `json:"id,omitempty"`
|
||||||
|
@ -2761,6 +2802,7 @@ type UpdateVpnConnectionResponse struct {
|
||||||
Dpd bool `json:"dpd,omitempty"`
|
Dpd bool `json:"dpd,omitempty"`
|
||||||
Esplifetime int64 `json:"esplifetime,omitempty"`
|
Esplifetime int64 `json:"esplifetime,omitempty"`
|
||||||
Esppolicy string `json:"esppolicy,omitempty"`
|
Esppolicy string `json:"esppolicy,omitempty"`
|
||||||
|
Forceencap bool `json:"forceencap,omitempty"`
|
||||||
Fordisplay bool `json:"fordisplay,omitempty"`
|
Fordisplay bool `json:"fordisplay,omitempty"`
|
||||||
Gateway string `json:"gateway,omitempty"`
|
Gateway string `json:"gateway,omitempty"`
|
||||||
Id string `json:"id,omitempty"`
|
Id string `json:"id,omitempty"`
|
||||||
|
|
|
@ -440,6 +440,8 @@ type DeployVirtualMachineResponse struct {
|
||||||
Domainid string `json:"domainid,omitempty"`
|
Domainid string `json:"domainid,omitempty"`
|
||||||
Id string `json:"id,omitempty"`
|
Id string `json:"id,omitempty"`
|
||||||
Name string `json:"name,omitempty"`
|
Name string `json:"name,omitempty"`
|
||||||
|
Project string `json:"project,omitempty"`
|
||||||
|
Projectid string `json:"projectid,omitempty"`
|
||||||
Type string `json:"type,omitempty"`
|
Type string `json:"type,omitempty"`
|
||||||
VirtualmachineIds []string `json:"virtualmachineIds,omitempty"`
|
VirtualmachineIds []string `json:"virtualmachineIds,omitempty"`
|
||||||
} `json:"affinitygroup,omitempty"`
|
} `json:"affinitygroup,omitempty"`
|
||||||
|
@ -576,6 +578,8 @@ type DeployVirtualMachineResponse struct {
|
||||||
Resourcetype string `json:"resourcetype,omitempty"`
|
Resourcetype string `json:"resourcetype,omitempty"`
|
||||||
Value string `json:"value,omitempty"`
|
Value string `json:"value,omitempty"`
|
||||||
} `json:"tags,omitempty"`
|
} `json:"tags,omitempty"`
|
||||||
|
Virtualmachinecount int `json:"virtualmachinecount,omitempty"`
|
||||||
|
Virtualmachineids []string `json:"virtualmachineids,omitempty"`
|
||||||
} `json:"securitygroup,omitempty"`
|
} `json:"securitygroup,omitempty"`
|
||||||
Serviceofferingid string `json:"serviceofferingid,omitempty"`
|
Serviceofferingid string `json:"serviceofferingid,omitempty"`
|
||||||
Serviceofferingname string `json:"serviceofferingname,omitempty"`
|
Serviceofferingname string `json:"serviceofferingname,omitempty"`
|
||||||
|
@ -596,6 +600,8 @@ type DeployVirtualMachineResponse struct {
|
||||||
Templatedisplaytext string `json:"templatedisplaytext,omitempty"`
|
Templatedisplaytext string `json:"templatedisplaytext,omitempty"`
|
||||||
Templateid string `json:"templateid,omitempty"`
|
Templateid string `json:"templateid,omitempty"`
|
||||||
Templatename string `json:"templatename,omitempty"`
|
Templatename string `json:"templatename,omitempty"`
|
||||||
|
Userid string `json:"userid,omitempty"`
|
||||||
|
Username string `json:"username,omitempty"`
|
||||||
Vgpu string `json:"vgpu,omitempty"`
|
Vgpu string `json:"vgpu,omitempty"`
|
||||||
Zoneid string `json:"zoneid,omitempty"`
|
Zoneid string `json:"zoneid,omitempty"`
|
||||||
Zonename string `json:"zonename,omitempty"`
|
Zonename string `json:"zonename,omitempty"`
|
||||||
|
@ -645,7 +651,7 @@ func (s *VirtualMachineService) NewDestroyVirtualMachineParams(id string) *Destr
|
||||||
return p
|
return p
|
||||||
}
|
}
|
||||||
|
|
||||||
// Destroys a virtual machine. Once destroyed, only the administrator can recover it.
|
// Destroys a virtual machine.
|
||||||
func (s *VirtualMachineService) DestroyVirtualMachine(p *DestroyVirtualMachineParams) (*DestroyVirtualMachineResponse, error) {
|
func (s *VirtualMachineService) DestroyVirtualMachine(p *DestroyVirtualMachineParams) (*DestroyVirtualMachineResponse, error) {
|
||||||
resp, err := s.cs.newRequest("destroyVirtualMachine", p.toURLValues())
|
resp, err := s.cs.newRequest("destroyVirtualMachine", p.toURLValues())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -689,6 +695,8 @@ type DestroyVirtualMachineResponse struct {
|
||||||
Domainid string `json:"domainid,omitempty"`
|
Domainid string `json:"domainid,omitempty"`
|
||||||
Id string `json:"id,omitempty"`
|
Id string `json:"id,omitempty"`
|
||||||
Name string `json:"name,omitempty"`
|
Name string `json:"name,omitempty"`
|
||||||
|
Project string `json:"project,omitempty"`
|
||||||
|
Projectid string `json:"projectid,omitempty"`
|
||||||
Type string `json:"type,omitempty"`
|
Type string `json:"type,omitempty"`
|
||||||
VirtualmachineIds []string `json:"virtualmachineIds,omitempty"`
|
VirtualmachineIds []string `json:"virtualmachineIds,omitempty"`
|
||||||
} `json:"affinitygroup,omitempty"`
|
} `json:"affinitygroup,omitempty"`
|
||||||
|
@ -825,6 +833,8 @@ type DestroyVirtualMachineResponse struct {
|
||||||
Resourcetype string `json:"resourcetype,omitempty"`
|
Resourcetype string `json:"resourcetype,omitempty"`
|
||||||
Value string `json:"value,omitempty"`
|
Value string `json:"value,omitempty"`
|
||||||
} `json:"tags,omitempty"`
|
} `json:"tags,omitempty"`
|
||||||
|
Virtualmachinecount int `json:"virtualmachinecount,omitempty"`
|
||||||
|
Virtualmachineids []string `json:"virtualmachineids,omitempty"`
|
||||||
} `json:"securitygroup,omitempty"`
|
} `json:"securitygroup,omitempty"`
|
||||||
Serviceofferingid string `json:"serviceofferingid,omitempty"`
|
Serviceofferingid string `json:"serviceofferingid,omitempty"`
|
||||||
Serviceofferingname string `json:"serviceofferingname,omitempty"`
|
Serviceofferingname string `json:"serviceofferingname,omitempty"`
|
||||||
|
@ -845,6 +855,8 @@ type DestroyVirtualMachineResponse struct {
|
||||||
Templatedisplaytext string `json:"templatedisplaytext,omitempty"`
|
Templatedisplaytext string `json:"templatedisplaytext,omitempty"`
|
||||||
Templateid string `json:"templateid,omitempty"`
|
Templateid string `json:"templateid,omitempty"`
|
||||||
Templatename string `json:"templatename,omitempty"`
|
Templatename string `json:"templatename,omitempty"`
|
||||||
|
Userid string `json:"userid,omitempty"`
|
||||||
|
Username string `json:"username,omitempty"`
|
||||||
Vgpu string `json:"vgpu,omitempty"`
|
Vgpu string `json:"vgpu,omitempty"`
|
||||||
Zoneid string `json:"zoneid,omitempty"`
|
Zoneid string `json:"zoneid,omitempty"`
|
||||||
Zonename string `json:"zonename,omitempty"`
|
Zonename string `json:"zonename,omitempty"`
|
||||||
|
@ -926,6 +938,8 @@ type RebootVirtualMachineResponse struct {
|
||||||
Domainid string `json:"domainid,omitempty"`
|
Domainid string `json:"domainid,omitempty"`
|
||||||
Id string `json:"id,omitempty"`
|
Id string `json:"id,omitempty"`
|
||||||
Name string `json:"name,omitempty"`
|
Name string `json:"name,omitempty"`
|
||||||
|
Project string `json:"project,omitempty"`
|
||||||
|
Projectid string `json:"projectid,omitempty"`
|
||||||
Type string `json:"type,omitempty"`
|
Type string `json:"type,omitempty"`
|
||||||
VirtualmachineIds []string `json:"virtualmachineIds,omitempty"`
|
VirtualmachineIds []string `json:"virtualmachineIds,omitempty"`
|
||||||
} `json:"affinitygroup,omitempty"`
|
} `json:"affinitygroup,omitempty"`
|
||||||
|
@ -1062,6 +1076,8 @@ type RebootVirtualMachineResponse struct {
|
||||||
Resourcetype string `json:"resourcetype,omitempty"`
|
Resourcetype string `json:"resourcetype,omitempty"`
|
||||||
Value string `json:"value,omitempty"`
|
Value string `json:"value,omitempty"`
|
||||||
} `json:"tags,omitempty"`
|
} `json:"tags,omitempty"`
|
||||||
|
Virtualmachinecount int `json:"virtualmachinecount,omitempty"`
|
||||||
|
Virtualmachineids []string `json:"virtualmachineids,omitempty"`
|
||||||
} `json:"securitygroup,omitempty"`
|
} `json:"securitygroup,omitempty"`
|
||||||
Serviceofferingid string `json:"serviceofferingid,omitempty"`
|
Serviceofferingid string `json:"serviceofferingid,omitempty"`
|
||||||
Serviceofferingname string `json:"serviceofferingname,omitempty"`
|
Serviceofferingname string `json:"serviceofferingname,omitempty"`
|
||||||
|
@ -1082,6 +1098,8 @@ type RebootVirtualMachineResponse struct {
|
||||||
Templatedisplaytext string `json:"templatedisplaytext,omitempty"`
|
Templatedisplaytext string `json:"templatedisplaytext,omitempty"`
|
||||||
Templateid string `json:"templateid,omitempty"`
|
Templateid string `json:"templateid,omitempty"`
|
||||||
Templatename string `json:"templatename,omitempty"`
|
Templatename string `json:"templatename,omitempty"`
|
||||||
|
Userid string `json:"userid,omitempty"`
|
||||||
|
Username string `json:"username,omitempty"`
|
||||||
Vgpu string `json:"vgpu,omitempty"`
|
Vgpu string `json:"vgpu,omitempty"`
|
||||||
Zoneid string `json:"zoneid,omitempty"`
|
Zoneid string `json:"zoneid,omitempty"`
|
||||||
Zonename string `json:"zonename,omitempty"`
|
Zonename string `json:"zonename,omitempty"`
|
||||||
|
@ -1185,6 +1203,8 @@ type StartVirtualMachineResponse struct {
|
||||||
Domainid string `json:"domainid,omitempty"`
|
Domainid string `json:"domainid,omitempty"`
|
||||||
Id string `json:"id,omitempty"`
|
Id string `json:"id,omitempty"`
|
||||||
Name string `json:"name,omitempty"`
|
Name string `json:"name,omitempty"`
|
||||||
|
Project string `json:"project,omitempty"`
|
||||||
|
Projectid string `json:"projectid,omitempty"`
|
||||||
Type string `json:"type,omitempty"`
|
Type string `json:"type,omitempty"`
|
||||||
VirtualmachineIds []string `json:"virtualmachineIds,omitempty"`
|
VirtualmachineIds []string `json:"virtualmachineIds,omitempty"`
|
||||||
} `json:"affinitygroup,omitempty"`
|
} `json:"affinitygroup,omitempty"`
|
||||||
|
@ -1321,6 +1341,8 @@ type StartVirtualMachineResponse struct {
|
||||||
Resourcetype string `json:"resourcetype,omitempty"`
|
Resourcetype string `json:"resourcetype,omitempty"`
|
||||||
Value string `json:"value,omitempty"`
|
Value string `json:"value,omitempty"`
|
||||||
} `json:"tags,omitempty"`
|
} `json:"tags,omitempty"`
|
||||||
|
Virtualmachinecount int `json:"virtualmachinecount,omitempty"`
|
||||||
|
Virtualmachineids []string `json:"virtualmachineids,omitempty"`
|
||||||
} `json:"securitygroup,omitempty"`
|
} `json:"securitygroup,omitempty"`
|
||||||
Serviceofferingid string `json:"serviceofferingid,omitempty"`
|
Serviceofferingid string `json:"serviceofferingid,omitempty"`
|
||||||
Serviceofferingname string `json:"serviceofferingname,omitempty"`
|
Serviceofferingname string `json:"serviceofferingname,omitempty"`
|
||||||
|
@ -1341,6 +1363,8 @@ type StartVirtualMachineResponse struct {
|
||||||
Templatedisplaytext string `json:"templatedisplaytext,omitempty"`
|
Templatedisplaytext string `json:"templatedisplaytext,omitempty"`
|
||||||
Templateid string `json:"templateid,omitempty"`
|
Templateid string `json:"templateid,omitempty"`
|
||||||
Templatename string `json:"templatename,omitempty"`
|
Templatename string `json:"templatename,omitempty"`
|
||||||
|
Userid string `json:"userid,omitempty"`
|
||||||
|
Username string `json:"username,omitempty"`
|
||||||
Vgpu string `json:"vgpu,omitempty"`
|
Vgpu string `json:"vgpu,omitempty"`
|
||||||
Zoneid string `json:"zoneid,omitempty"`
|
Zoneid string `json:"zoneid,omitempty"`
|
||||||
Zonename string `json:"zonename,omitempty"`
|
Zonename string `json:"zonename,omitempty"`
|
||||||
|
@ -1434,6 +1458,8 @@ type StopVirtualMachineResponse struct {
|
||||||
Domainid string `json:"domainid,omitempty"`
|
Domainid string `json:"domainid,omitempty"`
|
||||||
Id string `json:"id,omitempty"`
|
Id string `json:"id,omitempty"`
|
||||||
Name string `json:"name,omitempty"`
|
Name string `json:"name,omitempty"`
|
||||||
|
Project string `json:"project,omitempty"`
|
||||||
|
Projectid string `json:"projectid,omitempty"`
|
||||||
Type string `json:"type,omitempty"`
|
Type string `json:"type,omitempty"`
|
||||||
VirtualmachineIds []string `json:"virtualmachineIds,omitempty"`
|
VirtualmachineIds []string `json:"virtualmachineIds,omitempty"`
|
||||||
} `json:"affinitygroup,omitempty"`
|
} `json:"affinitygroup,omitempty"`
|
||||||
|
@ -1570,6 +1596,8 @@ type StopVirtualMachineResponse struct {
|
||||||
Resourcetype string `json:"resourcetype,omitempty"`
|
Resourcetype string `json:"resourcetype,omitempty"`
|
||||||
Value string `json:"value,omitempty"`
|
Value string `json:"value,omitempty"`
|
||||||
} `json:"tags,omitempty"`
|
} `json:"tags,omitempty"`
|
||||||
|
Virtualmachinecount int `json:"virtualmachinecount,omitempty"`
|
||||||
|
Virtualmachineids []string `json:"virtualmachineids,omitempty"`
|
||||||
} `json:"securitygroup,omitempty"`
|
} `json:"securitygroup,omitempty"`
|
||||||
Serviceofferingid string `json:"serviceofferingid,omitempty"`
|
Serviceofferingid string `json:"serviceofferingid,omitempty"`
|
||||||
Serviceofferingname string `json:"serviceofferingname,omitempty"`
|
Serviceofferingname string `json:"serviceofferingname,omitempty"`
|
||||||
|
@ -1590,6 +1618,8 @@ type StopVirtualMachineResponse struct {
|
||||||
Templatedisplaytext string `json:"templatedisplaytext,omitempty"`
|
Templatedisplaytext string `json:"templatedisplaytext,omitempty"`
|
||||||
Templateid string `json:"templateid,omitempty"`
|
Templateid string `json:"templateid,omitempty"`
|
||||||
Templatename string `json:"templatename,omitempty"`
|
Templatename string `json:"templatename,omitempty"`
|
||||||
|
Userid string `json:"userid,omitempty"`
|
||||||
|
Username string `json:"username,omitempty"`
|
||||||
Vgpu string `json:"vgpu,omitempty"`
|
Vgpu string `json:"vgpu,omitempty"`
|
||||||
Zoneid string `json:"zoneid,omitempty"`
|
Zoneid string `json:"zoneid,omitempty"`
|
||||||
Zonename string `json:"zonename,omitempty"`
|
Zonename string `json:"zonename,omitempty"`
|
||||||
|
@ -1671,6 +1701,8 @@ type ResetPasswordForVirtualMachineResponse struct {
|
||||||
Domainid string `json:"domainid,omitempty"`
|
Domainid string `json:"domainid,omitempty"`
|
||||||
Id string `json:"id,omitempty"`
|
Id string `json:"id,omitempty"`
|
||||||
Name string `json:"name,omitempty"`
|
Name string `json:"name,omitempty"`
|
||||||
|
Project string `json:"project,omitempty"`
|
||||||
|
Projectid string `json:"projectid,omitempty"`
|
||||||
Type string `json:"type,omitempty"`
|
Type string `json:"type,omitempty"`
|
||||||
VirtualmachineIds []string `json:"virtualmachineIds,omitempty"`
|
VirtualmachineIds []string `json:"virtualmachineIds,omitempty"`
|
||||||
} `json:"affinitygroup,omitempty"`
|
} `json:"affinitygroup,omitempty"`
|
||||||
|
@ -1807,6 +1839,8 @@ type ResetPasswordForVirtualMachineResponse struct {
|
||||||
Resourcetype string `json:"resourcetype,omitempty"`
|
Resourcetype string `json:"resourcetype,omitempty"`
|
||||||
Value string `json:"value,omitempty"`
|
Value string `json:"value,omitempty"`
|
||||||
} `json:"tags,omitempty"`
|
} `json:"tags,omitempty"`
|
||||||
|
Virtualmachinecount int `json:"virtualmachinecount,omitempty"`
|
||||||
|
Virtualmachineids []string `json:"virtualmachineids,omitempty"`
|
||||||
} `json:"securitygroup,omitempty"`
|
} `json:"securitygroup,omitempty"`
|
||||||
Serviceofferingid string `json:"serviceofferingid,omitempty"`
|
Serviceofferingid string `json:"serviceofferingid,omitempty"`
|
||||||
Serviceofferingname string `json:"serviceofferingname,omitempty"`
|
Serviceofferingname string `json:"serviceofferingname,omitempty"`
|
||||||
|
@ -1827,6 +1861,8 @@ type ResetPasswordForVirtualMachineResponse struct {
|
||||||
Templatedisplaytext string `json:"templatedisplaytext,omitempty"`
|
Templatedisplaytext string `json:"templatedisplaytext,omitempty"`
|
||||||
Templateid string `json:"templateid,omitempty"`
|
Templateid string `json:"templateid,omitempty"`
|
||||||
Templatename string `json:"templatename,omitempty"`
|
Templatename string `json:"templatename,omitempty"`
|
||||||
|
Userid string `json:"userid,omitempty"`
|
||||||
|
Username string `json:"username,omitempty"`
|
||||||
Vgpu string `json:"vgpu,omitempty"`
|
Vgpu string `json:"vgpu,omitempty"`
|
||||||
Zoneid string `json:"zoneid,omitempty"`
|
Zoneid string `json:"zoneid,omitempty"`
|
||||||
Zonename string `json:"zonename,omitempty"`
|
Zonename string `json:"zonename,omitempty"`
|
||||||
|
@ -1869,6 +1905,9 @@ func (p *UpdateVirtualMachineParams) toURLValues() url.Values {
|
||||||
if v, found := p.p["id"]; found {
|
if v, found := p.p["id"]; found {
|
||||||
u.Set("id", v.(string))
|
u.Set("id", v.(string))
|
||||||
}
|
}
|
||||||
|
if v, found := p.p["instancename"]; found {
|
||||||
|
u.Set("instancename", v.(string))
|
||||||
|
}
|
||||||
if v, found := p.p["isdynamicallyscalable"]; found {
|
if v, found := p.p["isdynamicallyscalable"]; found {
|
||||||
vv := strconv.FormatBool(v.(bool))
|
vv := strconv.FormatBool(v.(bool))
|
||||||
u.Set("isdynamicallyscalable", vv)
|
u.Set("isdynamicallyscalable", vv)
|
||||||
|
@ -1941,6 +1980,14 @@ func (p *UpdateVirtualMachineParams) SetId(v string) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *UpdateVirtualMachineParams) SetInstancename(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["instancename"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
func (p *UpdateVirtualMachineParams) SetIsdynamicallyscalable(v bool) {
|
func (p *UpdateVirtualMachineParams) SetIsdynamicallyscalable(v bool) {
|
||||||
if p.p == nil {
|
if p.p == nil {
|
||||||
p.p = make(map[string]interface{})
|
p.p = make(map[string]interface{})
|
||||||
|
@ -2005,6 +2052,8 @@ type UpdateVirtualMachineResponse struct {
|
||||||
Domainid string `json:"domainid,omitempty"`
|
Domainid string `json:"domainid,omitempty"`
|
||||||
Id string `json:"id,omitempty"`
|
Id string `json:"id,omitempty"`
|
||||||
Name string `json:"name,omitempty"`
|
Name string `json:"name,omitempty"`
|
||||||
|
Project string `json:"project,omitempty"`
|
||||||
|
Projectid string `json:"projectid,omitempty"`
|
||||||
Type string `json:"type,omitempty"`
|
Type string `json:"type,omitempty"`
|
||||||
VirtualmachineIds []string `json:"virtualmachineIds,omitempty"`
|
VirtualmachineIds []string `json:"virtualmachineIds,omitempty"`
|
||||||
} `json:"affinitygroup,omitempty"`
|
} `json:"affinitygroup,omitempty"`
|
||||||
|
@ -2141,6 +2190,8 @@ type UpdateVirtualMachineResponse struct {
|
||||||
Resourcetype string `json:"resourcetype,omitempty"`
|
Resourcetype string `json:"resourcetype,omitempty"`
|
||||||
Value string `json:"value,omitempty"`
|
Value string `json:"value,omitempty"`
|
||||||
} `json:"tags,omitempty"`
|
} `json:"tags,omitempty"`
|
||||||
|
Virtualmachinecount int `json:"virtualmachinecount,omitempty"`
|
||||||
|
Virtualmachineids []string `json:"virtualmachineids,omitempty"`
|
||||||
} `json:"securitygroup,omitempty"`
|
} `json:"securitygroup,omitempty"`
|
||||||
Serviceofferingid string `json:"serviceofferingid,omitempty"`
|
Serviceofferingid string `json:"serviceofferingid,omitempty"`
|
||||||
Serviceofferingname string `json:"serviceofferingname,omitempty"`
|
Serviceofferingname string `json:"serviceofferingname,omitempty"`
|
||||||
|
@ -2161,6 +2212,8 @@ type UpdateVirtualMachineResponse struct {
|
||||||
Templatedisplaytext string `json:"templatedisplaytext,omitempty"`
|
Templatedisplaytext string `json:"templatedisplaytext,omitempty"`
|
||||||
Templateid string `json:"templateid,omitempty"`
|
Templateid string `json:"templateid,omitempty"`
|
||||||
Templatename string `json:"templatename,omitempty"`
|
Templatename string `json:"templatename,omitempty"`
|
||||||
|
Userid string `json:"userid,omitempty"`
|
||||||
|
Username string `json:"username,omitempty"`
|
||||||
Vgpu string `json:"vgpu,omitempty"`
|
Vgpu string `json:"vgpu,omitempty"`
|
||||||
Zoneid string `json:"zoneid,omitempty"`
|
Zoneid string `json:"zoneid,omitempty"`
|
||||||
Zonename string `json:"zonename,omitempty"`
|
Zonename string `json:"zonename,omitempty"`
|
||||||
|
@ -2222,6 +2275,9 @@ func (p *ListVirtualMachinesParams) toURLValues() url.Values {
|
||||||
vv := strconv.FormatBool(v.(bool))
|
vv := strconv.FormatBool(v.(bool))
|
||||||
u.Set("isrecursive", vv)
|
u.Set("isrecursive", vv)
|
||||||
}
|
}
|
||||||
|
if v, found := p.p["keypair"]; found {
|
||||||
|
u.Set("keypair", v.(string))
|
||||||
|
}
|
||||||
if v, found := p.p["keyword"]; found {
|
if v, found := p.p["keyword"]; found {
|
||||||
u.Set("keyword", v.(string))
|
u.Set("keyword", v.(string))
|
||||||
}
|
}
|
||||||
|
@ -2275,6 +2331,9 @@ func (p *ListVirtualMachinesParams) toURLValues() url.Values {
|
||||||
if v, found := p.p["templateid"]; found {
|
if v, found := p.p["templateid"]; found {
|
||||||
u.Set("templateid", v.(string))
|
u.Set("templateid", v.(string))
|
||||||
}
|
}
|
||||||
|
if v, found := p.p["userid"]; found {
|
||||||
|
u.Set("userid", v.(string))
|
||||||
|
}
|
||||||
if v, found := p.p["vpcid"]; found {
|
if v, found := p.p["vpcid"]; found {
|
||||||
u.Set("vpcid", v.(string))
|
u.Set("vpcid", v.(string))
|
||||||
}
|
}
|
||||||
|
@ -2388,6 +2447,14 @@ func (p *ListVirtualMachinesParams) SetIsrecursive(v bool) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *ListVirtualMachinesParams) SetKeypair(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["keypair"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
func (p *ListVirtualMachinesParams) SetKeyword(v string) {
|
func (p *ListVirtualMachinesParams) SetKeyword(v string) {
|
||||||
if p.p == nil {
|
if p.p == nil {
|
||||||
p.p = make(map[string]interface{})
|
p.p = make(map[string]interface{})
|
||||||
|
@ -2492,6 +2559,14 @@ func (p *ListVirtualMachinesParams) SetTemplateid(v string) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *ListVirtualMachinesParams) SetUserid(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["userid"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
func (p *ListVirtualMachinesParams) SetVpcid(v string) {
|
func (p *ListVirtualMachinesParams) SetVpcid(v string) {
|
||||||
if p.p == nil {
|
if p.p == nil {
|
||||||
p.p = make(map[string]interface{})
|
p.p = make(map[string]interface{})
|
||||||
|
@ -2640,6 +2715,8 @@ type VirtualMachine struct {
|
||||||
Domainid string `json:"domainid,omitempty"`
|
Domainid string `json:"domainid,omitempty"`
|
||||||
Id string `json:"id,omitempty"`
|
Id string `json:"id,omitempty"`
|
||||||
Name string `json:"name,omitempty"`
|
Name string `json:"name,omitempty"`
|
||||||
|
Project string `json:"project,omitempty"`
|
||||||
|
Projectid string `json:"projectid,omitempty"`
|
||||||
Type string `json:"type,omitempty"`
|
Type string `json:"type,omitempty"`
|
||||||
VirtualmachineIds []string `json:"virtualmachineIds,omitempty"`
|
VirtualmachineIds []string `json:"virtualmachineIds,omitempty"`
|
||||||
} `json:"affinitygroup,omitempty"`
|
} `json:"affinitygroup,omitempty"`
|
||||||
|
@ -2776,6 +2853,8 @@ type VirtualMachine struct {
|
||||||
Resourcetype string `json:"resourcetype,omitempty"`
|
Resourcetype string `json:"resourcetype,omitempty"`
|
||||||
Value string `json:"value,omitempty"`
|
Value string `json:"value,omitempty"`
|
||||||
} `json:"tags,omitempty"`
|
} `json:"tags,omitempty"`
|
||||||
|
Virtualmachinecount int `json:"virtualmachinecount,omitempty"`
|
||||||
|
Virtualmachineids []string `json:"virtualmachineids,omitempty"`
|
||||||
} `json:"securitygroup,omitempty"`
|
} `json:"securitygroup,omitempty"`
|
||||||
Serviceofferingid string `json:"serviceofferingid,omitempty"`
|
Serviceofferingid string `json:"serviceofferingid,omitempty"`
|
||||||
Serviceofferingname string `json:"serviceofferingname,omitempty"`
|
Serviceofferingname string `json:"serviceofferingname,omitempty"`
|
||||||
|
@ -2796,6 +2875,8 @@ type VirtualMachine struct {
|
||||||
Templatedisplaytext string `json:"templatedisplaytext,omitempty"`
|
Templatedisplaytext string `json:"templatedisplaytext,omitempty"`
|
||||||
Templateid string `json:"templateid,omitempty"`
|
Templateid string `json:"templateid,omitempty"`
|
||||||
Templatename string `json:"templatename,omitempty"`
|
Templatename string `json:"templatename,omitempty"`
|
||||||
|
Userid string `json:"userid,omitempty"`
|
||||||
|
Username string `json:"username,omitempty"`
|
||||||
Vgpu string `json:"vgpu,omitempty"`
|
Vgpu string `json:"vgpu,omitempty"`
|
||||||
Zoneid string `json:"zoneid,omitempty"`
|
Zoneid string `json:"zoneid,omitempty"`
|
||||||
Zonename string `json:"zonename,omitempty"`
|
Zonename string `json:"zonename,omitempty"`
|
||||||
|
@ -2938,6 +3019,8 @@ type RestoreVirtualMachineResponse struct {
|
||||||
Domainid string `json:"domainid,omitempty"`
|
Domainid string `json:"domainid,omitempty"`
|
||||||
Id string `json:"id,omitempty"`
|
Id string `json:"id,omitempty"`
|
||||||
Name string `json:"name,omitempty"`
|
Name string `json:"name,omitempty"`
|
||||||
|
Project string `json:"project,omitempty"`
|
||||||
|
Projectid string `json:"projectid,omitempty"`
|
||||||
Type string `json:"type,omitempty"`
|
Type string `json:"type,omitempty"`
|
||||||
VirtualmachineIds []string `json:"virtualmachineIds,omitempty"`
|
VirtualmachineIds []string `json:"virtualmachineIds,omitempty"`
|
||||||
} `json:"affinitygroup,omitempty"`
|
} `json:"affinitygroup,omitempty"`
|
||||||
|
@ -3074,6 +3157,8 @@ type RestoreVirtualMachineResponse struct {
|
||||||
Resourcetype string `json:"resourcetype,omitempty"`
|
Resourcetype string `json:"resourcetype,omitempty"`
|
||||||
Value string `json:"value,omitempty"`
|
Value string `json:"value,omitempty"`
|
||||||
} `json:"tags,omitempty"`
|
} `json:"tags,omitempty"`
|
||||||
|
Virtualmachinecount int `json:"virtualmachinecount,omitempty"`
|
||||||
|
Virtualmachineids []string `json:"virtualmachineids,omitempty"`
|
||||||
} `json:"securitygroup,omitempty"`
|
} `json:"securitygroup,omitempty"`
|
||||||
Serviceofferingid string `json:"serviceofferingid,omitempty"`
|
Serviceofferingid string `json:"serviceofferingid,omitempty"`
|
||||||
Serviceofferingname string `json:"serviceofferingname,omitempty"`
|
Serviceofferingname string `json:"serviceofferingname,omitempty"`
|
||||||
|
@ -3094,6 +3179,8 @@ type RestoreVirtualMachineResponse struct {
|
||||||
Templatedisplaytext string `json:"templatedisplaytext,omitempty"`
|
Templatedisplaytext string `json:"templatedisplaytext,omitempty"`
|
||||||
Templateid string `json:"templateid,omitempty"`
|
Templateid string `json:"templateid,omitempty"`
|
||||||
Templatename string `json:"templatename,omitempty"`
|
Templatename string `json:"templatename,omitempty"`
|
||||||
|
Userid string `json:"userid,omitempty"`
|
||||||
|
Username string `json:"username,omitempty"`
|
||||||
Vgpu string `json:"vgpu,omitempty"`
|
Vgpu string `json:"vgpu,omitempty"`
|
||||||
Zoneid string `json:"zoneid,omitempty"`
|
Zoneid string `json:"zoneid,omitempty"`
|
||||||
Zonename string `json:"zonename,omitempty"`
|
Zonename string `json:"zonename,omitempty"`
|
||||||
|
@ -3182,6 +3269,8 @@ type ChangeServiceForVirtualMachineResponse struct {
|
||||||
Domainid string `json:"domainid,omitempty"`
|
Domainid string `json:"domainid,omitempty"`
|
||||||
Id string `json:"id,omitempty"`
|
Id string `json:"id,omitempty"`
|
||||||
Name string `json:"name,omitempty"`
|
Name string `json:"name,omitempty"`
|
||||||
|
Project string `json:"project,omitempty"`
|
||||||
|
Projectid string `json:"projectid,omitempty"`
|
||||||
Type string `json:"type,omitempty"`
|
Type string `json:"type,omitempty"`
|
||||||
VirtualmachineIds []string `json:"virtualmachineIds,omitempty"`
|
VirtualmachineIds []string `json:"virtualmachineIds,omitempty"`
|
||||||
} `json:"affinitygroup,omitempty"`
|
} `json:"affinitygroup,omitempty"`
|
||||||
|
@ -3318,6 +3407,8 @@ type ChangeServiceForVirtualMachineResponse struct {
|
||||||
Resourcetype string `json:"resourcetype,omitempty"`
|
Resourcetype string `json:"resourcetype,omitempty"`
|
||||||
Value string `json:"value,omitempty"`
|
Value string `json:"value,omitempty"`
|
||||||
} `json:"tags,omitempty"`
|
} `json:"tags,omitempty"`
|
||||||
|
Virtualmachinecount int `json:"virtualmachinecount,omitempty"`
|
||||||
|
Virtualmachineids []string `json:"virtualmachineids,omitempty"`
|
||||||
} `json:"securitygroup,omitempty"`
|
} `json:"securitygroup,omitempty"`
|
||||||
Serviceofferingid string `json:"serviceofferingid,omitempty"`
|
Serviceofferingid string `json:"serviceofferingid,omitempty"`
|
||||||
Serviceofferingname string `json:"serviceofferingname,omitempty"`
|
Serviceofferingname string `json:"serviceofferingname,omitempty"`
|
||||||
|
@ -3338,6 +3429,8 @@ type ChangeServiceForVirtualMachineResponse struct {
|
||||||
Templatedisplaytext string `json:"templatedisplaytext,omitempty"`
|
Templatedisplaytext string `json:"templatedisplaytext,omitempty"`
|
||||||
Templateid string `json:"templateid,omitempty"`
|
Templateid string `json:"templateid,omitempty"`
|
||||||
Templatename string `json:"templatename,omitempty"`
|
Templatename string `json:"templatename,omitempty"`
|
||||||
|
Userid string `json:"userid,omitempty"`
|
||||||
|
Username string `json:"username,omitempty"`
|
||||||
Vgpu string `json:"vgpu,omitempty"`
|
Vgpu string `json:"vgpu,omitempty"`
|
||||||
Zoneid string `json:"zoneid,omitempty"`
|
Zoneid string `json:"zoneid,omitempty"`
|
||||||
Zonename string `json:"zonename,omitempty"`
|
Zonename string `json:"zonename,omitempty"`
|
||||||
|
@ -3541,6 +3634,8 @@ type AssignVirtualMachineResponse struct {
|
||||||
Domainid string `json:"domainid,omitempty"`
|
Domainid string `json:"domainid,omitempty"`
|
||||||
Id string `json:"id,omitempty"`
|
Id string `json:"id,omitempty"`
|
||||||
Name string `json:"name,omitempty"`
|
Name string `json:"name,omitempty"`
|
||||||
|
Project string `json:"project,omitempty"`
|
||||||
|
Projectid string `json:"projectid,omitempty"`
|
||||||
Type string `json:"type,omitempty"`
|
Type string `json:"type,omitempty"`
|
||||||
VirtualmachineIds []string `json:"virtualmachineIds,omitempty"`
|
VirtualmachineIds []string `json:"virtualmachineIds,omitempty"`
|
||||||
} `json:"affinitygroup,omitempty"`
|
} `json:"affinitygroup,omitempty"`
|
||||||
|
@ -3677,6 +3772,8 @@ type AssignVirtualMachineResponse struct {
|
||||||
Resourcetype string `json:"resourcetype,omitempty"`
|
Resourcetype string `json:"resourcetype,omitempty"`
|
||||||
Value string `json:"value,omitempty"`
|
Value string `json:"value,omitempty"`
|
||||||
} `json:"tags,omitempty"`
|
} `json:"tags,omitempty"`
|
||||||
|
Virtualmachinecount int `json:"virtualmachinecount,omitempty"`
|
||||||
|
Virtualmachineids []string `json:"virtualmachineids,omitempty"`
|
||||||
} `json:"securitygroup,omitempty"`
|
} `json:"securitygroup,omitempty"`
|
||||||
Serviceofferingid string `json:"serviceofferingid,omitempty"`
|
Serviceofferingid string `json:"serviceofferingid,omitempty"`
|
||||||
Serviceofferingname string `json:"serviceofferingname,omitempty"`
|
Serviceofferingname string `json:"serviceofferingname,omitempty"`
|
||||||
|
@ -3697,6 +3794,8 @@ type AssignVirtualMachineResponse struct {
|
||||||
Templatedisplaytext string `json:"templatedisplaytext,omitempty"`
|
Templatedisplaytext string `json:"templatedisplaytext,omitempty"`
|
||||||
Templateid string `json:"templateid,omitempty"`
|
Templateid string `json:"templateid,omitempty"`
|
||||||
Templatename string `json:"templatename,omitempty"`
|
Templatename string `json:"templatename,omitempty"`
|
||||||
|
Userid string `json:"userid,omitempty"`
|
||||||
|
Username string `json:"username,omitempty"`
|
||||||
Vgpu string `json:"vgpu,omitempty"`
|
Vgpu string `json:"vgpu,omitempty"`
|
||||||
Zoneid string `json:"zoneid,omitempty"`
|
Zoneid string `json:"zoneid,omitempty"`
|
||||||
Zonename string `json:"zonename,omitempty"`
|
Zonename string `json:"zonename,omitempty"`
|
||||||
|
@ -3800,6 +3899,8 @@ type MigrateVirtualMachineResponse struct {
|
||||||
Domainid string `json:"domainid,omitempty"`
|
Domainid string `json:"domainid,omitempty"`
|
||||||
Id string `json:"id,omitempty"`
|
Id string `json:"id,omitempty"`
|
||||||
Name string `json:"name,omitempty"`
|
Name string `json:"name,omitempty"`
|
||||||
|
Project string `json:"project,omitempty"`
|
||||||
|
Projectid string `json:"projectid,omitempty"`
|
||||||
Type string `json:"type,omitempty"`
|
Type string `json:"type,omitempty"`
|
||||||
VirtualmachineIds []string `json:"virtualmachineIds,omitempty"`
|
VirtualmachineIds []string `json:"virtualmachineIds,omitempty"`
|
||||||
} `json:"affinitygroup,omitempty"`
|
} `json:"affinitygroup,omitempty"`
|
||||||
|
@ -3936,6 +4037,8 @@ type MigrateVirtualMachineResponse struct {
|
||||||
Resourcetype string `json:"resourcetype,omitempty"`
|
Resourcetype string `json:"resourcetype,omitempty"`
|
||||||
Value string `json:"value,omitempty"`
|
Value string `json:"value,omitempty"`
|
||||||
} `json:"tags,omitempty"`
|
} `json:"tags,omitempty"`
|
||||||
|
Virtualmachinecount int `json:"virtualmachinecount,omitempty"`
|
||||||
|
Virtualmachineids []string `json:"virtualmachineids,omitempty"`
|
||||||
} `json:"securitygroup,omitempty"`
|
} `json:"securitygroup,omitempty"`
|
||||||
Serviceofferingid string `json:"serviceofferingid,omitempty"`
|
Serviceofferingid string `json:"serviceofferingid,omitempty"`
|
||||||
Serviceofferingname string `json:"serviceofferingname,omitempty"`
|
Serviceofferingname string `json:"serviceofferingname,omitempty"`
|
||||||
|
@ -3956,6 +4059,8 @@ type MigrateVirtualMachineResponse struct {
|
||||||
Templatedisplaytext string `json:"templatedisplaytext,omitempty"`
|
Templatedisplaytext string `json:"templatedisplaytext,omitempty"`
|
||||||
Templateid string `json:"templateid,omitempty"`
|
Templateid string `json:"templateid,omitempty"`
|
||||||
Templatename string `json:"templatename,omitempty"`
|
Templatename string `json:"templatename,omitempty"`
|
||||||
|
Userid string `json:"userid,omitempty"`
|
||||||
|
Username string `json:"username,omitempty"`
|
||||||
Vgpu string `json:"vgpu,omitempty"`
|
Vgpu string `json:"vgpu,omitempty"`
|
||||||
Zoneid string `json:"zoneid,omitempty"`
|
Zoneid string `json:"zoneid,omitempty"`
|
||||||
Zonename string `json:"zonename,omitempty"`
|
Zonename string `json:"zonename,omitempty"`
|
||||||
|
@ -4065,6 +4170,8 @@ type MigrateVirtualMachineWithVolumeResponse struct {
|
||||||
Domainid string `json:"domainid,omitempty"`
|
Domainid string `json:"domainid,omitempty"`
|
||||||
Id string `json:"id,omitempty"`
|
Id string `json:"id,omitempty"`
|
||||||
Name string `json:"name,omitempty"`
|
Name string `json:"name,omitempty"`
|
||||||
|
Project string `json:"project,omitempty"`
|
||||||
|
Projectid string `json:"projectid,omitempty"`
|
||||||
Type string `json:"type,omitempty"`
|
Type string `json:"type,omitempty"`
|
||||||
VirtualmachineIds []string `json:"virtualmachineIds,omitempty"`
|
VirtualmachineIds []string `json:"virtualmachineIds,omitempty"`
|
||||||
} `json:"affinitygroup,omitempty"`
|
} `json:"affinitygroup,omitempty"`
|
||||||
|
@ -4201,6 +4308,8 @@ type MigrateVirtualMachineWithVolumeResponse struct {
|
||||||
Resourcetype string `json:"resourcetype,omitempty"`
|
Resourcetype string `json:"resourcetype,omitempty"`
|
||||||
Value string `json:"value,omitempty"`
|
Value string `json:"value,omitempty"`
|
||||||
} `json:"tags,omitempty"`
|
} `json:"tags,omitempty"`
|
||||||
|
Virtualmachinecount int `json:"virtualmachinecount,omitempty"`
|
||||||
|
Virtualmachineids []string `json:"virtualmachineids,omitempty"`
|
||||||
} `json:"securitygroup,omitempty"`
|
} `json:"securitygroup,omitempty"`
|
||||||
Serviceofferingid string `json:"serviceofferingid,omitempty"`
|
Serviceofferingid string `json:"serviceofferingid,omitempty"`
|
||||||
Serviceofferingname string `json:"serviceofferingname,omitempty"`
|
Serviceofferingname string `json:"serviceofferingname,omitempty"`
|
||||||
|
@ -4221,6 +4330,8 @@ type MigrateVirtualMachineWithVolumeResponse struct {
|
||||||
Templatedisplaytext string `json:"templatedisplaytext,omitempty"`
|
Templatedisplaytext string `json:"templatedisplaytext,omitempty"`
|
||||||
Templateid string `json:"templateid,omitempty"`
|
Templateid string `json:"templateid,omitempty"`
|
||||||
Templatename string `json:"templatename,omitempty"`
|
Templatename string `json:"templatename,omitempty"`
|
||||||
|
Userid string `json:"userid,omitempty"`
|
||||||
|
Username string `json:"username,omitempty"`
|
||||||
Vgpu string `json:"vgpu,omitempty"`
|
Vgpu string `json:"vgpu,omitempty"`
|
||||||
Zoneid string `json:"zoneid,omitempty"`
|
Zoneid string `json:"zoneid,omitempty"`
|
||||||
Zonename string `json:"zonename,omitempty"`
|
Zonename string `json:"zonename,omitempty"`
|
||||||
|
@ -4281,6 +4392,8 @@ type RecoverVirtualMachineResponse struct {
|
||||||
Domainid string `json:"domainid,omitempty"`
|
Domainid string `json:"domainid,omitempty"`
|
||||||
Id string `json:"id,omitempty"`
|
Id string `json:"id,omitempty"`
|
||||||
Name string `json:"name,omitempty"`
|
Name string `json:"name,omitempty"`
|
||||||
|
Project string `json:"project,omitempty"`
|
||||||
|
Projectid string `json:"projectid,omitempty"`
|
||||||
Type string `json:"type,omitempty"`
|
Type string `json:"type,omitempty"`
|
||||||
VirtualmachineIds []string `json:"virtualmachineIds,omitempty"`
|
VirtualmachineIds []string `json:"virtualmachineIds,omitempty"`
|
||||||
} `json:"affinitygroup,omitempty"`
|
} `json:"affinitygroup,omitempty"`
|
||||||
|
@ -4417,6 +4530,8 @@ type RecoverVirtualMachineResponse struct {
|
||||||
Resourcetype string `json:"resourcetype,omitempty"`
|
Resourcetype string `json:"resourcetype,omitempty"`
|
||||||
Value string `json:"value,omitempty"`
|
Value string `json:"value,omitempty"`
|
||||||
} `json:"tags,omitempty"`
|
} `json:"tags,omitempty"`
|
||||||
|
Virtualmachinecount int `json:"virtualmachinecount,omitempty"`
|
||||||
|
Virtualmachineids []string `json:"virtualmachineids,omitempty"`
|
||||||
} `json:"securitygroup,omitempty"`
|
} `json:"securitygroup,omitempty"`
|
||||||
Serviceofferingid string `json:"serviceofferingid,omitempty"`
|
Serviceofferingid string `json:"serviceofferingid,omitempty"`
|
||||||
Serviceofferingname string `json:"serviceofferingname,omitempty"`
|
Serviceofferingname string `json:"serviceofferingname,omitempty"`
|
||||||
|
@ -4437,6 +4552,8 @@ type RecoverVirtualMachineResponse struct {
|
||||||
Templatedisplaytext string `json:"templatedisplaytext,omitempty"`
|
Templatedisplaytext string `json:"templatedisplaytext,omitempty"`
|
||||||
Templateid string `json:"templateid,omitempty"`
|
Templateid string `json:"templateid,omitempty"`
|
||||||
Templatename string `json:"templatename,omitempty"`
|
Templatename string `json:"templatename,omitempty"`
|
||||||
|
Userid string `json:"userid,omitempty"`
|
||||||
|
Username string `json:"username,omitempty"`
|
||||||
Vgpu string `json:"vgpu,omitempty"`
|
Vgpu string `json:"vgpu,omitempty"`
|
||||||
Zoneid string `json:"zoneid,omitempty"`
|
Zoneid string `json:"zoneid,omitempty"`
|
||||||
Zonename string `json:"zonename,omitempty"`
|
Zonename string `json:"zonename,omitempty"`
|
||||||
|
@ -4663,6 +4780,8 @@ type AddNicToVirtualMachineResponse struct {
|
||||||
Domainid string `json:"domainid,omitempty"`
|
Domainid string `json:"domainid,omitempty"`
|
||||||
Id string `json:"id,omitempty"`
|
Id string `json:"id,omitempty"`
|
||||||
Name string `json:"name,omitempty"`
|
Name string `json:"name,omitempty"`
|
||||||
|
Project string `json:"project,omitempty"`
|
||||||
|
Projectid string `json:"projectid,omitempty"`
|
||||||
Type string `json:"type,omitempty"`
|
Type string `json:"type,omitempty"`
|
||||||
VirtualmachineIds []string `json:"virtualmachineIds,omitempty"`
|
VirtualmachineIds []string `json:"virtualmachineIds,omitempty"`
|
||||||
} `json:"affinitygroup,omitempty"`
|
} `json:"affinitygroup,omitempty"`
|
||||||
|
@ -4799,6 +4918,8 @@ type AddNicToVirtualMachineResponse struct {
|
||||||
Resourcetype string `json:"resourcetype,omitempty"`
|
Resourcetype string `json:"resourcetype,omitempty"`
|
||||||
Value string `json:"value,omitempty"`
|
Value string `json:"value,omitempty"`
|
||||||
} `json:"tags,omitempty"`
|
} `json:"tags,omitempty"`
|
||||||
|
Virtualmachinecount int `json:"virtualmachinecount,omitempty"`
|
||||||
|
Virtualmachineids []string `json:"virtualmachineids,omitempty"`
|
||||||
} `json:"securitygroup,omitempty"`
|
} `json:"securitygroup,omitempty"`
|
||||||
Serviceofferingid string `json:"serviceofferingid,omitempty"`
|
Serviceofferingid string `json:"serviceofferingid,omitempty"`
|
||||||
Serviceofferingname string `json:"serviceofferingname,omitempty"`
|
Serviceofferingname string `json:"serviceofferingname,omitempty"`
|
||||||
|
@ -4819,6 +4940,8 @@ type AddNicToVirtualMachineResponse struct {
|
||||||
Templatedisplaytext string `json:"templatedisplaytext,omitempty"`
|
Templatedisplaytext string `json:"templatedisplaytext,omitempty"`
|
||||||
Templateid string `json:"templateid,omitempty"`
|
Templateid string `json:"templateid,omitempty"`
|
||||||
Templatename string `json:"templatename,omitempty"`
|
Templatename string `json:"templatename,omitempty"`
|
||||||
|
Userid string `json:"userid,omitempty"`
|
||||||
|
Username string `json:"username,omitempty"`
|
||||||
Vgpu string `json:"vgpu,omitempty"`
|
Vgpu string `json:"vgpu,omitempty"`
|
||||||
Zoneid string `json:"zoneid,omitempty"`
|
Zoneid string `json:"zoneid,omitempty"`
|
||||||
Zonename string `json:"zonename,omitempty"`
|
Zonename string `json:"zonename,omitempty"`
|
||||||
|
@ -4912,6 +5035,8 @@ type RemoveNicFromVirtualMachineResponse struct {
|
||||||
Domainid string `json:"domainid,omitempty"`
|
Domainid string `json:"domainid,omitempty"`
|
||||||
Id string `json:"id,omitempty"`
|
Id string `json:"id,omitempty"`
|
||||||
Name string `json:"name,omitempty"`
|
Name string `json:"name,omitempty"`
|
||||||
|
Project string `json:"project,omitempty"`
|
||||||
|
Projectid string `json:"projectid,omitempty"`
|
||||||
Type string `json:"type,omitempty"`
|
Type string `json:"type,omitempty"`
|
||||||
VirtualmachineIds []string `json:"virtualmachineIds,omitempty"`
|
VirtualmachineIds []string `json:"virtualmachineIds,omitempty"`
|
||||||
} `json:"affinitygroup,omitempty"`
|
} `json:"affinitygroup,omitempty"`
|
||||||
|
@ -5048,6 +5173,8 @@ type RemoveNicFromVirtualMachineResponse struct {
|
||||||
Resourcetype string `json:"resourcetype,omitempty"`
|
Resourcetype string `json:"resourcetype,omitempty"`
|
||||||
Value string `json:"value,omitempty"`
|
Value string `json:"value,omitempty"`
|
||||||
} `json:"tags,omitempty"`
|
} `json:"tags,omitempty"`
|
||||||
|
Virtualmachinecount int `json:"virtualmachinecount,omitempty"`
|
||||||
|
Virtualmachineids []string `json:"virtualmachineids,omitempty"`
|
||||||
} `json:"securitygroup,omitempty"`
|
} `json:"securitygroup,omitempty"`
|
||||||
Serviceofferingid string `json:"serviceofferingid,omitempty"`
|
Serviceofferingid string `json:"serviceofferingid,omitempty"`
|
||||||
Serviceofferingname string `json:"serviceofferingname,omitempty"`
|
Serviceofferingname string `json:"serviceofferingname,omitempty"`
|
||||||
|
@ -5068,6 +5195,8 @@ type RemoveNicFromVirtualMachineResponse struct {
|
||||||
Templatedisplaytext string `json:"templatedisplaytext,omitempty"`
|
Templatedisplaytext string `json:"templatedisplaytext,omitempty"`
|
||||||
Templateid string `json:"templateid,omitempty"`
|
Templateid string `json:"templateid,omitempty"`
|
||||||
Templatename string `json:"templatename,omitempty"`
|
Templatename string `json:"templatename,omitempty"`
|
||||||
|
Userid string `json:"userid,omitempty"`
|
||||||
|
Username string `json:"username,omitempty"`
|
||||||
Vgpu string `json:"vgpu,omitempty"`
|
Vgpu string `json:"vgpu,omitempty"`
|
||||||
Zoneid string `json:"zoneid,omitempty"`
|
Zoneid string `json:"zoneid,omitempty"`
|
||||||
Zonename string `json:"zonename,omitempty"`
|
Zonename string `json:"zonename,omitempty"`
|
||||||
|
@ -5161,6 +5290,8 @@ type UpdateDefaultNicForVirtualMachineResponse struct {
|
||||||
Domainid string `json:"domainid,omitempty"`
|
Domainid string `json:"domainid,omitempty"`
|
||||||
Id string `json:"id,omitempty"`
|
Id string `json:"id,omitempty"`
|
||||||
Name string `json:"name,omitempty"`
|
Name string `json:"name,omitempty"`
|
||||||
|
Project string `json:"project,omitempty"`
|
||||||
|
Projectid string `json:"projectid,omitempty"`
|
||||||
Type string `json:"type,omitempty"`
|
Type string `json:"type,omitempty"`
|
||||||
VirtualmachineIds []string `json:"virtualmachineIds,omitempty"`
|
VirtualmachineIds []string `json:"virtualmachineIds,omitempty"`
|
||||||
} `json:"affinitygroup,omitempty"`
|
} `json:"affinitygroup,omitempty"`
|
||||||
|
@ -5297,6 +5428,8 @@ type UpdateDefaultNicForVirtualMachineResponse struct {
|
||||||
Resourcetype string `json:"resourcetype,omitempty"`
|
Resourcetype string `json:"resourcetype,omitempty"`
|
||||||
Value string `json:"value,omitempty"`
|
Value string `json:"value,omitempty"`
|
||||||
} `json:"tags,omitempty"`
|
} `json:"tags,omitempty"`
|
||||||
|
Virtualmachinecount int `json:"virtualmachinecount,omitempty"`
|
||||||
|
Virtualmachineids []string `json:"virtualmachineids,omitempty"`
|
||||||
} `json:"securitygroup,omitempty"`
|
} `json:"securitygroup,omitempty"`
|
||||||
Serviceofferingid string `json:"serviceofferingid,omitempty"`
|
Serviceofferingid string `json:"serviceofferingid,omitempty"`
|
||||||
Serviceofferingname string `json:"serviceofferingname,omitempty"`
|
Serviceofferingname string `json:"serviceofferingname,omitempty"`
|
||||||
|
@ -5317,6 +5450,8 @@ type UpdateDefaultNicForVirtualMachineResponse struct {
|
||||||
Templatedisplaytext string `json:"templatedisplaytext,omitempty"`
|
Templatedisplaytext string `json:"templatedisplaytext,omitempty"`
|
||||||
Templateid string `json:"templateid,omitempty"`
|
Templateid string `json:"templateid,omitempty"`
|
||||||
Templatename string `json:"templatename,omitempty"`
|
Templatename string `json:"templatename,omitempty"`
|
||||||
|
Userid string `json:"userid,omitempty"`
|
||||||
|
Username string `json:"username,omitempty"`
|
||||||
Vgpu string `json:"vgpu,omitempty"`
|
Vgpu string `json:"vgpu,omitempty"`
|
||||||
Zoneid string `json:"zoneid,omitempty"`
|
Zoneid string `json:"zoneid,omitempty"`
|
||||||
Zonename string `json:"zonename,omitempty"`
|
Zonename string `json:"zonename,omitempty"`
|
||||||
|
|
|
@ -144,6 +144,7 @@ type AttachVolumeResponse struct {
|
||||||
Path string `json:"path,omitempty"`
|
Path string `json:"path,omitempty"`
|
||||||
Project string `json:"project,omitempty"`
|
Project string `json:"project,omitempty"`
|
||||||
Projectid string `json:"projectid,omitempty"`
|
Projectid string `json:"projectid,omitempty"`
|
||||||
|
Provisioningtype string `json:"provisioningtype,omitempty"`
|
||||||
Quiescevm bool `json:"quiescevm,omitempty"`
|
Quiescevm bool `json:"quiescevm,omitempty"`
|
||||||
Serviceofferingdisplaytext string `json:"serviceofferingdisplaytext,omitempty"`
|
Serviceofferingdisplaytext string `json:"serviceofferingdisplaytext,omitempty"`
|
||||||
Serviceofferingid string `json:"serviceofferingid,omitempty"`
|
Serviceofferingid string `json:"serviceofferingid,omitempty"`
|
||||||
|
@ -377,6 +378,7 @@ type UploadVolumeResponse struct {
|
||||||
Path string `json:"path,omitempty"`
|
Path string `json:"path,omitempty"`
|
||||||
Project string `json:"project,omitempty"`
|
Project string `json:"project,omitempty"`
|
||||||
Projectid string `json:"projectid,omitempty"`
|
Projectid string `json:"projectid,omitempty"`
|
||||||
|
Provisioningtype string `json:"provisioningtype,omitempty"`
|
||||||
Quiescevm bool `json:"quiescevm,omitempty"`
|
Quiescevm bool `json:"quiescevm,omitempty"`
|
||||||
Serviceofferingdisplaytext string `json:"serviceofferingdisplaytext,omitempty"`
|
Serviceofferingdisplaytext string `json:"serviceofferingdisplaytext,omitempty"`
|
||||||
Serviceofferingid string `json:"serviceofferingid,omitempty"`
|
Serviceofferingid string `json:"serviceofferingid,omitempty"`
|
||||||
|
@ -530,6 +532,7 @@ type DetachVolumeResponse struct {
|
||||||
Path string `json:"path,omitempty"`
|
Path string `json:"path,omitempty"`
|
||||||
Project string `json:"project,omitempty"`
|
Project string `json:"project,omitempty"`
|
||||||
Projectid string `json:"projectid,omitempty"`
|
Projectid string `json:"projectid,omitempty"`
|
||||||
|
Provisioningtype string `json:"provisioningtype,omitempty"`
|
||||||
Quiescevm bool `json:"quiescevm,omitempty"`
|
Quiescevm bool `json:"quiescevm,omitempty"`
|
||||||
Serviceofferingdisplaytext string `json:"serviceofferingdisplaytext,omitempty"`
|
Serviceofferingdisplaytext string `json:"serviceofferingdisplaytext,omitempty"`
|
||||||
Serviceofferingid string `json:"serviceofferingid,omitempty"`
|
Serviceofferingid string `json:"serviceofferingid,omitempty"`
|
||||||
|
@ -726,10 +729,9 @@ func (p *CreateVolumeParams) SetZoneid(v string) {
|
||||||
|
|
||||||
// You should always use this function to get a new CreateVolumeParams instance,
|
// You should always use this function to get a new CreateVolumeParams instance,
|
||||||
// as then you are sure you have configured all required params
|
// as then you are sure you have configured all required params
|
||||||
func (s *VolumeService) NewCreateVolumeParams(name string) *CreateVolumeParams {
|
func (s *VolumeService) NewCreateVolumeParams() *CreateVolumeParams {
|
||||||
p := &CreateVolumeParams{}
|
p := &CreateVolumeParams{}
|
||||||
p.p = make(map[string]interface{})
|
p.p = make(map[string]interface{})
|
||||||
p.p["name"] = name
|
|
||||||
return p
|
return p
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -797,6 +799,7 @@ type CreateVolumeResponse struct {
|
||||||
Path string `json:"path,omitempty"`
|
Path string `json:"path,omitempty"`
|
||||||
Project string `json:"project,omitempty"`
|
Project string `json:"project,omitempty"`
|
||||||
Projectid string `json:"projectid,omitempty"`
|
Projectid string `json:"projectid,omitempty"`
|
||||||
|
Provisioningtype string `json:"provisioningtype,omitempty"`
|
||||||
Quiescevm bool `json:"quiescevm,omitempty"`
|
Quiescevm bool `json:"quiescevm,omitempty"`
|
||||||
Serviceofferingdisplaytext string `json:"serviceofferingdisplaytext,omitempty"`
|
Serviceofferingdisplaytext string `json:"serviceofferingdisplaytext,omitempty"`
|
||||||
Serviceofferingid string `json:"serviceofferingid,omitempty"`
|
Serviceofferingid string `json:"serviceofferingid,omitempty"`
|
||||||
|
@ -1266,6 +1269,7 @@ type Volume struct {
|
||||||
Path string `json:"path,omitempty"`
|
Path string `json:"path,omitempty"`
|
||||||
Project string `json:"project,omitempty"`
|
Project string `json:"project,omitempty"`
|
||||||
Projectid string `json:"projectid,omitempty"`
|
Projectid string `json:"projectid,omitempty"`
|
||||||
|
Provisioningtype string `json:"provisioningtype,omitempty"`
|
||||||
Quiescevm bool `json:"quiescevm,omitempty"`
|
Quiescevm bool `json:"quiescevm,omitempty"`
|
||||||
Serviceofferingdisplaytext string `json:"serviceofferingdisplaytext,omitempty"`
|
Serviceofferingdisplaytext string `json:"serviceofferingdisplaytext,omitempty"`
|
||||||
Serviceofferingid string `json:"serviceofferingid,omitempty"`
|
Serviceofferingid string `json:"serviceofferingid,omitempty"`
|
||||||
|
@ -1540,6 +1544,7 @@ type MigrateVolumeResponse struct {
|
||||||
Path string `json:"path,omitempty"`
|
Path string `json:"path,omitempty"`
|
||||||
Project string `json:"project,omitempty"`
|
Project string `json:"project,omitempty"`
|
||||||
Projectid string `json:"projectid,omitempty"`
|
Projectid string `json:"projectid,omitempty"`
|
||||||
|
Provisioningtype string `json:"provisioningtype,omitempty"`
|
||||||
Quiescevm bool `json:"quiescevm,omitempty"`
|
Quiescevm bool `json:"quiescevm,omitempty"`
|
||||||
Serviceofferingdisplaytext string `json:"serviceofferingdisplaytext,omitempty"`
|
Serviceofferingdisplaytext string `json:"serviceofferingdisplaytext,omitempty"`
|
||||||
Serviceofferingid string `json:"serviceofferingid,omitempty"`
|
Serviceofferingid string `json:"serviceofferingid,omitempty"`
|
||||||
|
@ -1590,6 +1595,14 @@ func (p *ResizeVolumeParams) toURLValues() url.Values {
|
||||||
if v, found := p.p["id"]; found {
|
if v, found := p.p["id"]; found {
|
||||||
u.Set("id", v.(string))
|
u.Set("id", v.(string))
|
||||||
}
|
}
|
||||||
|
if v, found := p.p["maxiops"]; found {
|
||||||
|
vv := strconv.FormatInt(v.(int64), 10)
|
||||||
|
u.Set("maxiops", vv)
|
||||||
|
}
|
||||||
|
if v, found := p.p["miniops"]; found {
|
||||||
|
vv := strconv.FormatInt(v.(int64), 10)
|
||||||
|
u.Set("miniops", vv)
|
||||||
|
}
|
||||||
if v, found := p.p["shrinkok"]; found {
|
if v, found := p.p["shrinkok"]; found {
|
||||||
vv := strconv.FormatBool(v.(bool))
|
vv := strconv.FormatBool(v.(bool))
|
||||||
u.Set("shrinkok", vv)
|
u.Set("shrinkok", vv)
|
||||||
|
@ -1617,6 +1630,22 @@ func (p *ResizeVolumeParams) SetId(v string) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *ResizeVolumeParams) SetMaxiops(v int64) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["maxiops"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *ResizeVolumeParams) SetMiniops(v int64) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["miniops"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
func (p *ResizeVolumeParams) SetShrinkok(v bool) {
|
func (p *ResizeVolumeParams) SetShrinkok(v bool) {
|
||||||
if p.p == nil {
|
if p.p == nil {
|
||||||
p.p = make(map[string]interface{})
|
p.p = make(map[string]interface{})
|
||||||
|
@ -1706,6 +1735,7 @@ type ResizeVolumeResponse struct {
|
||||||
Path string `json:"path,omitempty"`
|
Path string `json:"path,omitempty"`
|
||||||
Project string `json:"project,omitempty"`
|
Project string `json:"project,omitempty"`
|
||||||
Projectid string `json:"projectid,omitempty"`
|
Projectid string `json:"projectid,omitempty"`
|
||||||
|
Provisioningtype string `json:"provisioningtype,omitempty"`
|
||||||
Quiescevm bool `json:"quiescevm,omitempty"`
|
Quiescevm bool `json:"quiescevm,omitempty"`
|
||||||
Serviceofferingdisplaytext string `json:"serviceofferingdisplaytext,omitempty"`
|
Serviceofferingdisplaytext string `json:"serviceofferingdisplaytext,omitempty"`
|
||||||
Serviceofferingid string `json:"serviceofferingid,omitempty"`
|
Serviceofferingid string `json:"serviceofferingid,omitempty"`
|
||||||
|
@ -1903,6 +1933,7 @@ type UpdateVolumeResponse struct {
|
||||||
Path string `json:"path,omitempty"`
|
Path string `json:"path,omitempty"`
|
||||||
Project string `json:"project,omitempty"`
|
Project string `json:"project,omitempty"`
|
||||||
Projectid string `json:"projectid,omitempty"`
|
Projectid string `json:"projectid,omitempty"`
|
||||||
|
Provisioningtype string `json:"provisioningtype,omitempty"`
|
||||||
Quiescevm bool `json:"quiescevm,omitempty"`
|
Quiescevm bool `json:"quiescevm,omitempty"`
|
||||||
Serviceofferingdisplaytext string `json:"serviceofferingdisplaytext,omitempty"`
|
Serviceofferingdisplaytext string `json:"serviceofferingdisplaytext,omitempty"`
|
||||||
Serviceofferingid string `json:"serviceofferingid,omitempty"`
|
Serviceofferingid string `json:"serviceofferingid,omitempty"`
|
||||||
|
@ -1937,3 +1968,321 @@ type UpdateVolumeResponse struct {
|
||||||
Zoneid string `json:"zoneid,omitempty"`
|
Zoneid string `json:"zoneid,omitempty"`
|
||||||
Zonename string `json:"zonename,omitempty"`
|
Zonename string `json:"zonename,omitempty"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
type GetSolidFireVolumeSizeParams struct {
|
||||||
|
p map[string]interface{}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *GetSolidFireVolumeSizeParams) toURLValues() url.Values {
|
||||||
|
u := url.Values{}
|
||||||
|
if p.p == nil {
|
||||||
|
return u
|
||||||
|
}
|
||||||
|
if v, found := p.p["storageid"]; found {
|
||||||
|
u.Set("storageid", v.(string))
|
||||||
|
}
|
||||||
|
if v, found := p.p["volumeid"]; found {
|
||||||
|
u.Set("volumeid", v.(string))
|
||||||
|
}
|
||||||
|
return u
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *GetSolidFireVolumeSizeParams) SetStorageid(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["storageid"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *GetSolidFireVolumeSizeParams) SetVolumeid(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["volumeid"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// You should always use this function to get a new GetSolidFireVolumeSizeParams instance,
|
||||||
|
// as then you are sure you have configured all required params
|
||||||
|
func (s *VolumeService) NewGetSolidFireVolumeSizeParams(storageid string, volumeid string) *GetSolidFireVolumeSizeParams {
|
||||||
|
p := &GetSolidFireVolumeSizeParams{}
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
p.p["storageid"] = storageid
|
||||||
|
p.p["volumeid"] = volumeid
|
||||||
|
return p
|
||||||
|
}
|
||||||
|
|
||||||
|
// Get the SF volume size including Hypervisor Snapshot Reserve
|
||||||
|
func (s *VolumeService) GetSolidFireVolumeSize(p *GetSolidFireVolumeSizeParams) (*GetSolidFireVolumeSizeResponse, error) {
|
||||||
|
resp, err := s.cs.newRequest("getSolidFireVolumeSize", p.toURLValues())
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
|
var r GetSolidFireVolumeSizeResponse
|
||||||
|
if err := json.Unmarshal(resp, &r); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
return &r, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
type GetSolidFireVolumeSizeResponse struct {
|
||||||
|
SolidFireVolumeSize int64 `json:"solidFireVolumeSize,omitempty"`
|
||||||
|
}
|
||||||
|
|
||||||
|
type GetSolidFireVolumeAccessGroupIdParams struct {
|
||||||
|
p map[string]interface{}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *GetSolidFireVolumeAccessGroupIdParams) toURLValues() url.Values {
|
||||||
|
u := url.Values{}
|
||||||
|
if p.p == nil {
|
||||||
|
return u
|
||||||
|
}
|
||||||
|
if v, found := p.p["clusterid"]; found {
|
||||||
|
u.Set("clusterid", v.(string))
|
||||||
|
}
|
||||||
|
if v, found := p.p["storageid"]; found {
|
||||||
|
u.Set("storageid", v.(string))
|
||||||
|
}
|
||||||
|
return u
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *GetSolidFireVolumeAccessGroupIdParams) SetClusterid(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["clusterid"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *GetSolidFireVolumeAccessGroupIdParams) SetStorageid(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["storageid"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// You should always use this function to get a new GetSolidFireVolumeAccessGroupIdParams instance,
|
||||||
|
// as then you are sure you have configured all required params
|
||||||
|
func (s *VolumeService) NewGetSolidFireVolumeAccessGroupIdParams(clusterid string, storageid string) *GetSolidFireVolumeAccessGroupIdParams {
|
||||||
|
p := &GetSolidFireVolumeAccessGroupIdParams{}
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
p.p["clusterid"] = clusterid
|
||||||
|
p.p["storageid"] = storageid
|
||||||
|
return p
|
||||||
|
}
|
||||||
|
|
||||||
|
// Get the SF Volume Access Group ID
|
||||||
|
func (s *VolumeService) GetSolidFireVolumeAccessGroupId(p *GetSolidFireVolumeAccessGroupIdParams) (*GetSolidFireVolumeAccessGroupIdResponse, error) {
|
||||||
|
resp, err := s.cs.newRequest("getSolidFireVolumeAccessGroupId", p.toURLValues())
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
|
var r GetSolidFireVolumeAccessGroupIdResponse
|
||||||
|
if err := json.Unmarshal(resp, &r); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
return &r, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
type GetSolidFireVolumeAccessGroupIdResponse struct {
|
||||||
|
SolidFireVolumeAccessGroupId int64 `json:"solidFireVolumeAccessGroupId,omitempty"`
|
||||||
|
}
|
||||||
|
|
||||||
|
type GetSolidFireVolumeIscsiNameParams struct {
|
||||||
|
p map[string]interface{}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *GetSolidFireVolumeIscsiNameParams) toURLValues() url.Values {
|
||||||
|
u := url.Values{}
|
||||||
|
if p.p == nil {
|
||||||
|
return u
|
||||||
|
}
|
||||||
|
if v, found := p.p["volumeid"]; found {
|
||||||
|
u.Set("volumeid", v.(string))
|
||||||
|
}
|
||||||
|
return u
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *GetSolidFireVolumeIscsiNameParams) SetVolumeid(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["volumeid"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// You should always use this function to get a new GetSolidFireVolumeIscsiNameParams instance,
|
||||||
|
// as then you are sure you have configured all required params
|
||||||
|
func (s *VolumeService) NewGetSolidFireVolumeIscsiNameParams(volumeid string) *GetSolidFireVolumeIscsiNameParams {
|
||||||
|
p := &GetSolidFireVolumeIscsiNameParams{}
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
p.p["volumeid"] = volumeid
|
||||||
|
return p
|
||||||
|
}
|
||||||
|
|
||||||
|
// Get SolidFire Volume's Iscsi Name
|
||||||
|
func (s *VolumeService) GetSolidFireVolumeIscsiName(p *GetSolidFireVolumeIscsiNameParams) (*GetSolidFireVolumeIscsiNameResponse, error) {
|
||||||
|
resp, err := s.cs.newRequest("getSolidFireVolumeIscsiName", p.toURLValues())
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
|
var r GetSolidFireVolumeIscsiNameResponse
|
||||||
|
if err := json.Unmarshal(resp, &r); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
return &r, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
type GetSolidFireVolumeIscsiNameResponse struct {
|
||||||
|
SolidFireVolumeIscsiName string `json:"solidFireVolumeIscsiName,omitempty"`
|
||||||
|
}
|
||||||
|
|
||||||
|
type GetUploadParamsForVolumeParams struct {
|
||||||
|
p map[string]interface{}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *GetUploadParamsForVolumeParams) toURLValues() url.Values {
|
||||||
|
u := url.Values{}
|
||||||
|
if p.p == nil {
|
||||||
|
return u
|
||||||
|
}
|
||||||
|
if v, found := p.p["account"]; found {
|
||||||
|
u.Set("account", v.(string))
|
||||||
|
}
|
||||||
|
if v, found := p.p["checksum"]; found {
|
||||||
|
u.Set("checksum", v.(string))
|
||||||
|
}
|
||||||
|
if v, found := p.p["diskofferingid"]; found {
|
||||||
|
u.Set("diskofferingid", v.(string))
|
||||||
|
}
|
||||||
|
if v, found := p.p["domainid"]; found {
|
||||||
|
u.Set("domainid", v.(string))
|
||||||
|
}
|
||||||
|
if v, found := p.p["format"]; found {
|
||||||
|
u.Set("format", v.(string))
|
||||||
|
}
|
||||||
|
if v, found := p.p["imagestoreuuid"]; found {
|
||||||
|
u.Set("imagestoreuuid", v.(string))
|
||||||
|
}
|
||||||
|
if v, found := p.p["name"]; found {
|
||||||
|
u.Set("name", v.(string))
|
||||||
|
}
|
||||||
|
if v, found := p.p["projectid"]; found {
|
||||||
|
u.Set("projectid", v.(string))
|
||||||
|
}
|
||||||
|
if v, found := p.p["zoneid"]; found {
|
||||||
|
u.Set("zoneid", v.(string))
|
||||||
|
}
|
||||||
|
return u
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *GetUploadParamsForVolumeParams) SetAccount(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["account"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *GetUploadParamsForVolumeParams) SetChecksum(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["checksum"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *GetUploadParamsForVolumeParams) SetDiskofferingid(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["diskofferingid"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *GetUploadParamsForVolumeParams) SetDomainid(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["domainid"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *GetUploadParamsForVolumeParams) SetFormat(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["format"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *GetUploadParamsForVolumeParams) SetImagestoreuuid(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["imagestoreuuid"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *GetUploadParamsForVolumeParams) SetName(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["name"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *GetUploadParamsForVolumeParams) SetProjectid(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["projectid"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (p *GetUploadParamsForVolumeParams) SetZoneid(v string) {
|
||||||
|
if p.p == nil {
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
}
|
||||||
|
p.p["zoneid"] = v
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// You should always use this function to get a new GetUploadParamsForVolumeParams instance,
|
||||||
|
// as then you are sure you have configured all required params
|
||||||
|
func (s *VolumeService) NewGetUploadParamsForVolumeParams(format string, name string, zoneid string) *GetUploadParamsForVolumeParams {
|
||||||
|
p := &GetUploadParamsForVolumeParams{}
|
||||||
|
p.p = make(map[string]interface{})
|
||||||
|
p.p["format"] = format
|
||||||
|
p.p["name"] = name
|
||||||
|
p.p["zoneid"] = zoneid
|
||||||
|
return p
|
||||||
|
}
|
||||||
|
|
||||||
|
// Upload a data disk to the cloudstack cloud.
|
||||||
|
func (s *VolumeService) GetUploadParamsForVolume(p *GetUploadParamsForVolumeParams) (*GetUploadParamsForVolumeResponse, error) {
|
||||||
|
resp, err := s.cs.newRequest("getUploadParamsForVolume", p.toURLValues())
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
|
var r GetUploadParamsForVolumeResponse
|
||||||
|
if err := json.Unmarshal(resp, &r); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
return &r, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
type GetUploadParamsForVolumeResponse struct {
|
||||||
|
Expires string `json:"expires,omitempty"`
|
||||||
|
Id string `json:"id,omitempty"`
|
||||||
|
Metadata string `json:"metadata,omitempty"`
|
||||||
|
PostURL string `json:"postURL,omitempty"`
|
||||||
|
Signature string `json:"signature,omitempty"`
|
||||||
|
}
|
||||||
|
|
|
@ -263,7 +263,6 @@ type CreateZoneResponse struct {
|
||||||
Resourcetype string `json:"resourcetype,omitempty"`
|
Resourcetype string `json:"resourcetype,omitempty"`
|
||||||
Value string `json:"value,omitempty"`
|
Value string `json:"value,omitempty"`
|
||||||
} `json:"tags,omitempty"`
|
} `json:"tags,omitempty"`
|
||||||
Vlan string `json:"vlan,omitempty"`
|
|
||||||
Zonetoken string `json:"zonetoken,omitempty"`
|
Zonetoken string `json:"zonetoken,omitempty"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -531,7 +530,6 @@ type UpdateZoneResponse struct {
|
||||||
Resourcetype string `json:"resourcetype,omitempty"`
|
Resourcetype string `json:"resourcetype,omitempty"`
|
||||||
Value string `json:"value,omitempty"`
|
Value string `json:"value,omitempty"`
|
||||||
} `json:"tags,omitempty"`
|
} `json:"tags,omitempty"`
|
||||||
Vlan string `json:"vlan,omitempty"`
|
|
||||||
Zonetoken string `json:"zonetoken,omitempty"`
|
Zonetoken string `json:"zonetoken,omitempty"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -860,7 +858,6 @@ type Zone struct {
|
||||||
Resourcetype string `json:"resourcetype,omitempty"`
|
Resourcetype string `json:"resourcetype,omitempty"`
|
||||||
Value string `json:"value,omitempty"`
|
Value string `json:"value,omitempty"`
|
||||||
} `json:"tags,omitempty"`
|
} `json:"tags,omitempty"`
|
||||||
Vlan string `json:"vlan,omitempty"`
|
|
||||||
Zonetoken string `json:"zonetoken,omitempty"`
|
Zonetoken string `json:"zonetoken,omitempty"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -59,9 +59,9 @@ type CloudStackClient struct {
|
||||||
AffinityGroup *AffinityGroupService
|
AffinityGroup *AffinityGroupService
|
||||||
Alert *AlertService
|
Alert *AlertService
|
||||||
Asyncjob *AsyncjobService
|
Asyncjob *AsyncjobService
|
||||||
|
Authentication *AuthenticationService
|
||||||
AutoScale *AutoScaleService
|
AutoScale *AutoScaleService
|
||||||
Baremetal *BaremetalService
|
Baremetal *BaremetalService
|
||||||
BigSwitchVNS *BigSwitchVNSService
|
|
||||||
Certificate *CertificateService
|
Certificate *CertificateService
|
||||||
CloudIdentifier *CloudIdentifierService
|
CloudIdentifier *CloudIdentifierService
|
||||||
Cluster *ClusterService
|
Cluster *ClusterService
|
||||||
|
@ -91,11 +91,11 @@ type CloudStackClient struct {
|
||||||
Pool *PoolService
|
Pool *PoolService
|
||||||
PortableIP *PortableIPService
|
PortableIP *PortableIPService
|
||||||
Project *ProjectService
|
Project *ProjectService
|
||||||
|
Quota *QuotaService
|
||||||
Region *RegionService
|
Region *RegionService
|
||||||
Resourcemetadata *ResourcemetadataService
|
Resourcemetadata *ResourcemetadataService
|
||||||
Resourcetags *ResourcetagsService
|
Resourcetags *ResourcetagsService
|
||||||
Router *RouterService
|
Router *RouterService
|
||||||
S3 *S3Service
|
|
||||||
SSH *SSHService
|
SSH *SSHService
|
||||||
SecurityGroup *SecurityGroupService
|
SecurityGroup *SecurityGroupService
|
||||||
ServiceOffering *ServiceOfferingService
|
ServiceOffering *ServiceOfferingService
|
||||||
|
@ -140,9 +140,9 @@ func newClient(apiurl string, apikey string, secret string, async bool, verifyss
|
||||||
cs.AffinityGroup = NewAffinityGroupService(cs)
|
cs.AffinityGroup = NewAffinityGroupService(cs)
|
||||||
cs.Alert = NewAlertService(cs)
|
cs.Alert = NewAlertService(cs)
|
||||||
cs.Asyncjob = NewAsyncjobService(cs)
|
cs.Asyncjob = NewAsyncjobService(cs)
|
||||||
|
cs.Authentication = NewAuthenticationService(cs)
|
||||||
cs.AutoScale = NewAutoScaleService(cs)
|
cs.AutoScale = NewAutoScaleService(cs)
|
||||||
cs.Baremetal = NewBaremetalService(cs)
|
cs.Baremetal = NewBaremetalService(cs)
|
||||||
cs.BigSwitchVNS = NewBigSwitchVNSService(cs)
|
|
||||||
cs.Certificate = NewCertificateService(cs)
|
cs.Certificate = NewCertificateService(cs)
|
||||||
cs.CloudIdentifier = NewCloudIdentifierService(cs)
|
cs.CloudIdentifier = NewCloudIdentifierService(cs)
|
||||||
cs.Cluster = NewClusterService(cs)
|
cs.Cluster = NewClusterService(cs)
|
||||||
|
@ -172,11 +172,11 @@ func newClient(apiurl string, apikey string, secret string, async bool, verifyss
|
||||||
cs.Pool = NewPoolService(cs)
|
cs.Pool = NewPoolService(cs)
|
||||||
cs.PortableIP = NewPortableIPService(cs)
|
cs.PortableIP = NewPortableIPService(cs)
|
||||||
cs.Project = NewProjectService(cs)
|
cs.Project = NewProjectService(cs)
|
||||||
|
cs.Quota = NewQuotaService(cs)
|
||||||
cs.Region = NewRegionService(cs)
|
cs.Region = NewRegionService(cs)
|
||||||
cs.Resourcemetadata = NewResourcemetadataService(cs)
|
cs.Resourcemetadata = NewResourcemetadataService(cs)
|
||||||
cs.Resourcetags = NewResourcetagsService(cs)
|
cs.Resourcetags = NewResourcetagsService(cs)
|
||||||
cs.Router = NewRouterService(cs)
|
cs.Router = NewRouterService(cs)
|
||||||
cs.S3 = NewS3Service(cs)
|
|
||||||
cs.SSH = NewSSHService(cs)
|
cs.SSH = NewSSHService(cs)
|
||||||
cs.SecurityGroup = NewSecurityGroupService(cs)
|
cs.SecurityGroup = NewSecurityGroupService(cs)
|
||||||
cs.ServiceOffering = NewServiceOfferingService(cs)
|
cs.ServiceOffering = NewServiceOfferingService(cs)
|
||||||
|
@ -417,6 +417,14 @@ func NewAsyncjobService(cs *CloudStackClient) *AsyncjobService {
|
||||||
return &AsyncjobService{cs: cs}
|
return &AsyncjobService{cs: cs}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
type AuthenticationService struct {
|
||||||
|
cs *CloudStackClient
|
||||||
|
}
|
||||||
|
|
||||||
|
func NewAuthenticationService(cs *CloudStackClient) *AuthenticationService {
|
||||||
|
return &AuthenticationService{cs: cs}
|
||||||
|
}
|
||||||
|
|
||||||
type AutoScaleService struct {
|
type AutoScaleService struct {
|
||||||
cs *CloudStackClient
|
cs *CloudStackClient
|
||||||
}
|
}
|
||||||
|
@ -433,14 +441,6 @@ func NewBaremetalService(cs *CloudStackClient) *BaremetalService {
|
||||||
return &BaremetalService{cs: cs}
|
return &BaremetalService{cs: cs}
|
||||||
}
|
}
|
||||||
|
|
||||||
type BigSwitchVNSService struct {
|
|
||||||
cs *CloudStackClient
|
|
||||||
}
|
|
||||||
|
|
||||||
func NewBigSwitchVNSService(cs *CloudStackClient) *BigSwitchVNSService {
|
|
||||||
return &BigSwitchVNSService{cs: cs}
|
|
||||||
}
|
|
||||||
|
|
||||||
type CertificateService struct {
|
type CertificateService struct {
|
||||||
cs *CloudStackClient
|
cs *CloudStackClient
|
||||||
}
|
}
|
||||||
|
@ -673,6 +673,14 @@ func NewProjectService(cs *CloudStackClient) *ProjectService {
|
||||||
return &ProjectService{cs: cs}
|
return &ProjectService{cs: cs}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
type QuotaService struct {
|
||||||
|
cs *CloudStackClient
|
||||||
|
}
|
||||||
|
|
||||||
|
func NewQuotaService(cs *CloudStackClient) *QuotaService {
|
||||||
|
return &QuotaService{cs: cs}
|
||||||
|
}
|
||||||
|
|
||||||
type RegionService struct {
|
type RegionService struct {
|
||||||
cs *CloudStackClient
|
cs *CloudStackClient
|
||||||
}
|
}
|
||||||
|
@ -705,14 +713,6 @@ func NewRouterService(cs *CloudStackClient) *RouterService {
|
||||||
return &RouterService{cs: cs}
|
return &RouterService{cs: cs}
|
||||||
}
|
}
|
||||||
|
|
||||||
type S3Service struct {
|
|
||||||
cs *CloudStackClient
|
|
||||||
}
|
|
||||||
|
|
||||||
func NewS3Service(cs *CloudStackClient) *S3Service {
|
|
||||||
return &S3Service{cs: cs}
|
|
||||||
}
|
|
||||||
|
|
||||||
type SSHService struct {
|
type SSHService struct {
|
||||||
cs *CloudStackClient
|
cs *CloudStackClient
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue