Compare commits
3 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| bf5c01b40b | |||
|
|
095a18f27a | ||
|
|
84a090f9e8 |
62
CHANGELOG.md
62
CHANGELOG.md
@@ -1,58 +1,12 @@
|
||||
## Version 1.12.4
|
||||
## Version 1.12.7
|
||||
|
||||
Методы `Audits` в cloudapi/compute, cloudbroker/compute, cloudapi/account, cloudbroker/account, cloudapi/vins, cloudbroker/vins, cloudapi/rg и cloudbroker/rg стали deprecated и в следующих версиях будут удалены, вместо них необходимо использовать метод `List` в cloudapi/audit и cloudbroker/audit с соответствующими фильтрами
|
||||
Методы `Audits` в cloudapi/compute, cloudbroker/compute, cloudapi/account, cloudbroker/account, cloudapi/vins, cloudbroker/vins, cloudapi/rg и cloudbroker/rg стали deprecated и в следующих версиях будут удалены, вместо них необходимо использовать метод `List` в cloudapi/audit и cloudbroker/audit с соответствующими фильтрами
|
||||
Метод `ListStacks` в cloudbroker/image стал deprecated и в следующих версиях будет удалён
|
||||
Методы `AccessGrant`, `AccessGrantToPool`, `AccessRevoke`, `AccessRevokeToPool` в cloudbroker/sep стали deprecated и в следующих версиях будут удалены
|
||||
|
||||
### Добавлено
|
||||
|
||||
#### audit
|
||||
| Идентификатор<br>задачи | Описание |
|
||||
| --- | --- |
|
||||
| BGOS-621 | Метод `List` в структура запроса `ListRequest` в cloudapi/audit |
|
||||
| BGOS-621 | Опциональные поля `RGID`, `ComputeID`, `AccountID`, `VINSID`, `ServiceID`, `K8SID`, `FLIPGroupID`, `LBID`, `SEPID`, `NodeID`, `ExcludeAuditLines` в структуру запроса `ListRequest` в cloudbroker/audit |
|
||||
|
||||
#### compute
|
||||
| Идентификатор<br>задачи | Описание |
|
||||
| --- | --- |
|
||||
| BGOS-613 | Поля `UpdatedTime`, `DeletedBy`, `DeviceName`, `CreatedBy` в структуру ответа `ItemComputeDisk` в cloudapi/compute и в структуру ответа `ItemDisk` в cloudbroker/compute |
|
||||
| BGOS-613 | Поле `LoaderMetaIso` в структуру ответа `RecordCompute` и структура `LoaderMetaIso` в cloudapi/compute и в cloudbroker/compute |
|
||||
| BGOS-616 | Опциональные поля `PCISlot` и `BusNumber` в структуры запросов `DiskAdd` и `DiskAttach` в cloudapi/compute и cloudbroker/compute |
|
||||
| BGOS-619 | Методы `StartMigrationOut` и `StopMigrationOut` и структуры запросов `StartMigrationOutRequest` и `StopMigrationOutRequest` в cloudbroker/compute |
|
||||
| BGOS-619 | Структура `OSUser` в структуру запроса `StopMigrationINRequest` в cloudbroker/compute |
|
||||
|
||||
#### image
|
||||
| Идентификатор<br>задачи | Описание |
|
||||
| --- | --- |
|
||||
| BGOS-614 | Поле `StoragePolicyID` в структуру ответа `ItemImage` в cloudapi/image |
|
||||
| BGOS-617 | Опциональное поле `StoragePolicyID` в структуры запроса `ListRequest` в cloudapi/image и cloudbroker/image |
|
||||
|
||||
#### vins
|
||||
| Идентификатор<br>задачи | Описание |
|
||||
| --- | --- |
|
||||
| BGOS-615 | Поле `ZoneID` в структуры ответа `RecordDHCP`, `RecordGW`, `RecordNAT`, `RecordVNFDev` в cloudapi/vins и `InfoVNF` и `VNFDev` в cloudbroker/vins |
|
||||
| BGOS-615 | Поля `SecGroups`, `EnableSecGroups` в структуру ответа `ItemVNFInterface` в cloudapi/vins и `ItemInterface` в cloudbroker/vins |
|
||||
|
||||
### Исправлено
|
||||
|
||||
#### compute
|
||||
| Идентификатор<br>задачи | Описание |
|
||||
| --- | --- |
|
||||
| BGOS-619 | Ошибка работы фильтра `SortBy` в методе `MigrateStorageList` в cloudbroker/compute |
|
||||
|
||||
#### storage policy
|
||||
| Идентификатор<br>задачи | Описание |
|
||||
| --- | --- |
|
||||
| BGOS-620 | Поле `AccountID` в структуре запроса `ListRequest` стало опциональным в cloudapi/stpolicy |
|
||||
|
||||
### Удалено
|
||||
|
||||
#### audit
|
||||
| Идентификатор<br>задачи | Описание |
|
||||
| --- | --- |
|
||||
| BGOS-621 | Поле `Tags` в структуре ответа `ItemAudit` в cloudbroker/audit |
|
||||
|
||||
#### disks
|
||||
| Идентификатор<br>задачи | Описание |
|
||||
| --- | --- |
|
||||
| BGOS-618 | Поле `IOPS` из структуры запроса `CreateRequest` в cloudapi/disks и в cloudbroker/disks |
|
||||
|
||||
|
||||
#### rg
|
||||
| Идентификатор<br>задачи | Описание |
|
||||
|-------------------------|--------------------------------------------------------|
|
||||
| BGOS-641 | Методы `AddStoragePolicy` и `DelStoragePolicy` и структуры запроса `AddStoragePolicyRequest` и `DelStoragePolicyRequest` в cloudapi/rg |
|
||||
|
||||
24
check.go
24
check.go
@@ -28,7 +28,13 @@ func (de DecortClient) Check() (*CheckInfo, error) {
|
||||
|
||||
err = json.Unmarshal([]byte(strings.Replace(strings.Trim(string(res), `"`), "\\", "", -1)), &info)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
var v string
|
||||
json.Unmarshal([]byte(res), &v)
|
||||
if _, exists := constants.VersionMap[v]; exists {
|
||||
info.Version = v
|
||||
} else {
|
||||
return nil, fmt.Errorf("platform version isn't supported")
|
||||
}
|
||||
}
|
||||
|
||||
if v, ok := constants.VersionMap[info.Version]; ok {
|
||||
@@ -51,7 +57,13 @@ func (bvs BVSDecortClient) Check() (*CheckInfo, error) {
|
||||
|
||||
err = json.Unmarshal([]byte(strings.Replace(strings.Trim(string(res), `"`), "\\", "", -1)), &info)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
var v string
|
||||
json.Unmarshal([]byte(res), &v)
|
||||
if _, exists := constants.VersionMap[v]; exists {
|
||||
info.Version = v
|
||||
} else {
|
||||
return nil, fmt.Errorf("platform version isn't supported")
|
||||
}
|
||||
}
|
||||
|
||||
if v, ok := constants.VersionMap[info.Version]; ok {
|
||||
@@ -74,7 +86,13 @@ func (ldc LegacyDecortClient) Check() (*CheckInfo, error) {
|
||||
|
||||
err = json.Unmarshal([]byte(strings.Replace(strings.Trim(string(res), `"`), "\\", "", -1)), &info)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
var v string
|
||||
json.Unmarshal([]byte(res), &v)
|
||||
if _, exists := constants.VersionMap[v]; exists {
|
||||
info.Version = v
|
||||
} else {
|
||||
return nil, fmt.Errorf("platform version isn't supported")
|
||||
}
|
||||
}
|
||||
|
||||
if v, ok := constants.VersionMap[info.Version]; ok {
|
||||
|
||||
@@ -28,5 +28,9 @@ var FileName = map[string]string{
|
||||
var K8sValues = []string{"labels", "taints", "annotations, additionalSANs"}
|
||||
|
||||
var VersionMap = map[string]string{
|
||||
"4.4.0": "-",
|
||||
"4.3.0": "-",
|
||||
"4.2.0": "-",
|
||||
"4.1.1": "-",
|
||||
"4.1.0": "-",
|
||||
}
|
||||
|
||||
@@ -24,7 +24,7 @@ type ChangeSecGroupsRequest struct {
|
||||
|
||||
// Flag indicating whether security groups are enabled for this interface
|
||||
// Required: false
|
||||
EnableSecGroups bool `url:"enable_secgroups,omitempty" json:"enable_secgroups,omitempty"`
|
||||
EnableSecGroups interface{} `url:"enable_secgroups,omitempty" json:"enable_secgroups,omitempty" validate:"omitempty,isBool"`
|
||||
}
|
||||
|
||||
// ChangeSecGroups changes security groups for compute
|
||||
|
||||
@@ -3,8 +3,8 @@ package compute
|
||||
import (
|
||||
"context"
|
||||
"net/http"
|
||||
"strconv"
|
||||
|
||||
"repository.basistech.ru/BASIS/decort-golang-sdk/internal/constants"
|
||||
"repository.basistech.ru/BASIS/decort-golang-sdk/internal/validators"
|
||||
)
|
||||
|
||||
@@ -18,6 +18,10 @@ type CloneRequest struct {
|
||||
// Required: true
|
||||
Name string `url:"name" json:"name" validate:"required"`
|
||||
|
||||
// ID of the Storage Policy
|
||||
// Required: true
|
||||
StoragePolicyID uint64 `url:"storage_policy_id" json:"storage_policy_id" validate:"required"`
|
||||
|
||||
// Timestamp of the parent's snapshot to create clone from
|
||||
// Required: false
|
||||
SnapshotTimestamp uint64 `url:"snapshotTimestamp,omitempty" json:"snapshotTimestamp,omitempty"`
|
||||
@@ -30,26 +34,29 @@ type CloneRequest struct {
|
||||
// Default: false
|
||||
// Required: false
|
||||
Force bool `url:"force" json:"force"`
|
||||
|
||||
// The name of the pool to migrate disks to
|
||||
// Required: false
|
||||
PoolName string `url:"pool_name" json:"pool_name"`
|
||||
|
||||
// The ID of the SEP to migrate disks to
|
||||
// Required: false
|
||||
SEPID uint64 `url:"sep_id" json:"sep_id"`
|
||||
}
|
||||
|
||||
// Clone clones compute instance
|
||||
func (c Compute) Clone(ctx context.Context, req CloneRequest) (uint64, error) {
|
||||
func (c Compute) Clone(ctx context.Context, req CloneRequest) (string, error) {
|
||||
err := validators.ValidateRequest(req)
|
||||
if err != nil {
|
||||
return 0, validators.ValidationErrors(validators.GetErrors(err))
|
||||
return "", validators.ValidationErrors(validators.GetErrors(err))
|
||||
}
|
||||
|
||||
url := "/cloudapi/compute/clone"
|
||||
|
||||
res, err := c.client.DecortApiCall(ctx, http.MethodPost, url, req)
|
||||
res, err := c.client.DecortApiCallCtype(ctx, http.MethodPost, url, constants.MIMEJSON, req)
|
||||
if err != nil {
|
||||
return 0, err
|
||||
return "", err
|
||||
}
|
||||
|
||||
result, err := strconv.ParseUint(string(res), 10, 64)
|
||||
if err != nil {
|
||||
return 0, err
|
||||
}
|
||||
|
||||
return result, nil
|
||||
return string(res), nil
|
||||
}
|
||||
|
||||
39
pkg/cloudapi/compute/clone_abort.go
Normal file
39
pkg/cloudapi/compute/clone_abort.go
Normal file
@@ -0,0 +1,39 @@
|
||||
package compute
|
||||
|
||||
import (
|
||||
"context"
|
||||
"net/http"
|
||||
"strconv"
|
||||
|
||||
"repository.basistech.ru/BASIS/decort-golang-sdk/internal/constants"
|
||||
"repository.basistech.ru/BASIS/decort-golang-sdk/internal/validators"
|
||||
)
|
||||
|
||||
// CloneAbortRequest struct to abort a compute clone
|
||||
type CloneAbortRequest struct {
|
||||
// ID of compute instance
|
||||
// Required: true
|
||||
ComputeID uint64 `url:"compute_id" json:"compute_id" validate:"required"`
|
||||
}
|
||||
|
||||
// CloneAbort aborts a compute clone
|
||||
func (c Compute) CloneAbort(ctx context.Context, req CloneAbortRequest) (bool, error) {
|
||||
err := validators.ValidateRequest(req)
|
||||
if err != nil {
|
||||
return false, validators.ValidationErrors(validators.GetErrors(err))
|
||||
}
|
||||
|
||||
url := "/cloudapi/compute/clone_abort"
|
||||
|
||||
res, err := c.client.DecortApiCallCtype(ctx, http.MethodPost, url, constants.MIMEJSON, req)
|
||||
if err != nil {
|
||||
return false, err
|
||||
}
|
||||
|
||||
result, err := strconv.ParseBool(string(res))
|
||||
if err != nil {
|
||||
return false, err
|
||||
}
|
||||
|
||||
return result, nil
|
||||
}
|
||||
40
pkg/cloudapi/compute/clone_status.go
Normal file
40
pkg/cloudapi/compute/clone_status.go
Normal file
@@ -0,0 +1,40 @@
|
||||
package compute
|
||||
|
||||
import (
|
||||
"context"
|
||||
"encoding/json"
|
||||
"net/http"
|
||||
|
||||
"repository.basistech.ru/BASIS/decort-golang-sdk/internal/validators"
|
||||
)
|
||||
|
||||
// GetCloneStatusRequest struct to get information about compute clone status
|
||||
type GetCloneStatusRequest struct {
|
||||
// ID of compute instance
|
||||
// Required: true
|
||||
ComputeID uint64 `url:"compute_id" json:"compute_id" validate:"required"`
|
||||
}
|
||||
|
||||
// GetCloneStatus gets information about compute clone status as a RecordCloneStatus struct
|
||||
func (c Compute) GetCloneStatus(ctx context.Context, req GetCloneStatusRequest) ([]RecordCloneStatus, error) {
|
||||
err := validators.ValidateRequest(req)
|
||||
if err != nil {
|
||||
return nil, validators.ValidationErrors(validators.GetErrors(err))
|
||||
}
|
||||
|
||||
url := "/cloudapi/compute/clone_status"
|
||||
|
||||
res, err := c.client.DecortApiCall(ctx, http.MethodGet, url, req)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
cloneStatus := make([]RecordCloneStatus, 0)
|
||||
|
||||
err = json.Unmarshal(res, &cloneStatus)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return cloneStatus, nil
|
||||
}
|
||||
@@ -3,7 +3,6 @@ package compute
|
||||
import (
|
||||
"context"
|
||||
"net/http"
|
||||
"strconv"
|
||||
"strings"
|
||||
|
||||
"repository.basistech.ru/BASIS/decort-golang-sdk/internal/validators"
|
||||
@@ -27,47 +26,15 @@ type wrapperCreateTemplateRequest struct {
|
||||
}
|
||||
|
||||
// CreateTemplate create template from compute instance
|
||||
func (c Compute) CreateTemplate(ctx context.Context, req CreateTemplateRequest) (uint64, error) {
|
||||
err := validators.ValidateRequest(req)
|
||||
if err != nil {
|
||||
return 0, validators.ValidationErrors(validators.GetErrors(err))
|
||||
}
|
||||
|
||||
reqWrapped := wrapperCreateTemplateRequest{
|
||||
CreateTemplateRequest: req,
|
||||
AsyncMode: false,
|
||||
}
|
||||
|
||||
url := "/cloudapi/compute/createTemplate"
|
||||
|
||||
res, err := c.client.DecortApiCall(ctx, http.MethodPost, url, reqWrapped)
|
||||
if err != nil {
|
||||
return 0, err
|
||||
}
|
||||
|
||||
result, err := strconv.ParseUint(string(res), 10, 64)
|
||||
if err != nil {
|
||||
return 0, err
|
||||
}
|
||||
|
||||
return result, nil
|
||||
}
|
||||
|
||||
// CreateTemplateAsync create template from compute instance
|
||||
func (c Compute) CreateTemplateAsync(ctx context.Context, req CreateTemplateRequest) (string, error) {
|
||||
func (c Compute) CreateTemplate(ctx context.Context, req CreateTemplateRequest) (string, error) {
|
||||
err := validators.ValidateRequest(req)
|
||||
if err != nil {
|
||||
return "", validators.ValidationErrors(validators.GetErrors(err))
|
||||
}
|
||||
|
||||
reqWrapped := wrapperCreateTemplateRequest{
|
||||
CreateTemplateRequest: req,
|
||||
AsyncMode: true,
|
||||
}
|
||||
|
||||
url := "/cloudapi/compute/createTemplate"
|
||||
|
||||
res, err := c.client.DecortApiCall(ctx, http.MethodPost, url, reqWrapped)
|
||||
res, err := c.client.DecortApiCall(ctx, http.MethodPost, url, req)
|
||||
if err != nil {
|
||||
return "", err
|
||||
}
|
||||
|
||||
@@ -311,6 +311,9 @@ type RecordCompute struct {
|
||||
// Architecture
|
||||
Architecture string `json:"arch"`
|
||||
|
||||
// Boot image ID
|
||||
BootImageID uint64 `json:"boot_image_id"`
|
||||
|
||||
// Boot order
|
||||
BootOrder []string `json:"bootOrder"`
|
||||
|
||||
@@ -1013,6 +1016,9 @@ type ItemCompute struct {
|
||||
// Architecture
|
||||
Architecture string `json:"arch"`
|
||||
|
||||
// Boot image ID
|
||||
BootImageID uint64 `json:"boot_image_id"`
|
||||
|
||||
// Boot order
|
||||
BootOrder []string `json:"bootOrder"`
|
||||
|
||||
@@ -1322,3 +1328,31 @@ type ListPCIDevices struct {
|
||||
// Entry count
|
||||
EntryCount uint64 `json:"entryCount"`
|
||||
}
|
||||
|
||||
type RecordCloneStatus struct {
|
||||
// Disk ID
|
||||
DiskID int `json:"disk_id"`
|
||||
|
||||
// Clone Status
|
||||
Status CloneStatus `json:"status"`
|
||||
}
|
||||
|
||||
type CloneStatus struct {
|
||||
// Type
|
||||
Type int `json:"type"`
|
||||
|
||||
// Copy speed
|
||||
Bandwidth int `json:"bandwidth"`
|
||||
|
||||
// Current progress
|
||||
Cur int `json:"cur"`
|
||||
|
||||
// Total size
|
||||
End int `json:"end"`
|
||||
|
||||
// Operation status
|
||||
Ready bool `json:"ready"`
|
||||
|
||||
// Progress percent
|
||||
ProgressPercent int `json:"progress_percent"`
|
||||
}
|
||||
|
||||
46
pkg/cloudapi/rg/add_storage_policy.go
Normal file
46
pkg/cloudapi/rg/add_storage_policy.go
Normal file
@@ -0,0 +1,46 @@
|
||||
package rg
|
||||
|
||||
import (
|
||||
"context"
|
||||
"net/http"
|
||||
"strconv"
|
||||
|
||||
"repository.basistech.ru/BASIS/decort-golang-sdk/internal/validators"
|
||||
)
|
||||
|
||||
// AddStoragePolicyRequest struct for adding storage policy to the resource group
|
||||
type AddStoragePolicyRequest struct {
|
||||
// ID of resource group to add to
|
||||
// Required: true
|
||||
RGID uint64 `url:"resgroup_id" json:"resgroup_id" validate:"required"`
|
||||
|
||||
// ID of the storage policy to which to connect resource group
|
||||
// Required: true
|
||||
StoragePolicyID uint64 `url:"storage_policy_id" json:"storage_policy_id" validate:"required"`
|
||||
|
||||
// Limit storage resources GB. Or -1 unlimit
|
||||
// Required: false
|
||||
Limit int `url:"limit,omitempty" json:"limit,omitempty"`
|
||||
}
|
||||
|
||||
// AddStoragePolicy add storage policy to the account.
|
||||
func (r RG) AddStoragePolicy(ctx context.Context, req AddStoragePolicyRequest) (bool, error) {
|
||||
err := validators.ValidateRequest(req)
|
||||
if err != nil {
|
||||
return false, validators.ValidationErrors(validators.GetErrors(err))
|
||||
}
|
||||
|
||||
url := "/cloudapi/rg/add_storage_policy"
|
||||
|
||||
res, err := r.client.DecortApiCall(ctx, http.MethodPost, url, req)
|
||||
if err != nil {
|
||||
return false, err
|
||||
}
|
||||
|
||||
result, err := strconv.ParseBool(string(res))
|
||||
if err != nil {
|
||||
return false, err
|
||||
}
|
||||
|
||||
return result, nil
|
||||
}
|
||||
42
pkg/cloudapi/rg/del_storage_policy.go
Normal file
42
pkg/cloudapi/rg/del_storage_policy.go
Normal file
@@ -0,0 +1,42 @@
|
||||
package rg
|
||||
|
||||
import (
|
||||
"context"
|
||||
"net/http"
|
||||
"strconv"
|
||||
|
||||
"repository.basistech.ru/BASIS/decort-golang-sdk/internal/validators"
|
||||
)
|
||||
|
||||
// DelStoragePolicyRequest struct for deleting storage policy to the resource group
|
||||
type DelStoragePolicyRequest struct {
|
||||
// ID of resource group
|
||||
// Required: true
|
||||
RGID uint64 `url:"resgroup_id" json:"resgroup_id" validate:"required"`
|
||||
|
||||
// ID of the storage policy to which to disconnect account
|
||||
// Required: true
|
||||
StoragePolicyID uint64 `url:"storage_policy_id" json:"storage_policy_id" validate:"required"`
|
||||
}
|
||||
|
||||
// DelStoragePolicy delete storage policy to the account.
|
||||
func (r RG) DelStoragePolicy(ctx context.Context, req DelStoragePolicyRequest) (bool, error) {
|
||||
err := validators.ValidateRequest(req)
|
||||
if err != nil {
|
||||
return false, validators.ValidationErrors(validators.GetErrors(err))
|
||||
}
|
||||
|
||||
url := "/cloudapi/rg/del_storage_policy"
|
||||
|
||||
res, err := r.client.DecortApiCall(ctx, http.MethodPost, url, req)
|
||||
if err != nil {
|
||||
return false, err
|
||||
}
|
||||
|
||||
result, err := strconv.ParseBool(string(res))
|
||||
if err != nil {
|
||||
return false, err
|
||||
}
|
||||
|
||||
return result, nil
|
||||
}
|
||||
@@ -30,6 +30,9 @@ type ItemStoragePolicy struct {
|
||||
// Max IOPS for the sotrage policy
|
||||
LimitIOPS uint64 `json:"limit_iops"`
|
||||
|
||||
// Storage policy ID
|
||||
StoragePolicyID uint64 `json:"storage_policy_id"`
|
||||
|
||||
// Which accounts and resource groups use the storage policy
|
||||
Usage Usage `json:"usage"`
|
||||
}
|
||||
@@ -56,6 +59,9 @@ type InfoStoragePolicy struct {
|
||||
// Max IOPS for the sotrage policy
|
||||
LimitIOPS uint64 `json:"limit_iops"`
|
||||
|
||||
// ID of the storage policy
|
||||
StoragePolicyID uint64 `json:"storage_policy_id"`
|
||||
|
||||
// Which accounts and resource groups use the storage policy
|
||||
Usage Usage `json:"usage"`
|
||||
}
|
||||
|
||||
@@ -214,6 +214,9 @@ type RecordVNFDev struct {
|
||||
|
||||
// Zone ID
|
||||
ZoneID uint64 `json:"zoneId"`
|
||||
|
||||
// Live migration job ID
|
||||
LiveMigrationJobID uint64 `json:"live_migration_job_id"`
|
||||
}
|
||||
|
||||
// VNF config
|
||||
|
||||
@@ -24,7 +24,7 @@ type ChangeSecGroupsRequest struct {
|
||||
|
||||
// Flag indicating whether security groups are enabled for this interface
|
||||
// Required: false
|
||||
EnableSecGroups bool `url:"enable_secgroups,omitempty" json:"enable_secgroups,omitempty"`
|
||||
EnableSecGroups interface{} `url:"enable_secgroups,omitempty" json:"enable_secgroups,omitempty" validate:"omitempty,isBool"`
|
||||
}
|
||||
|
||||
// ChangeSecGroups changes security groups for compute
|
||||
|
||||
@@ -3,8 +3,8 @@ package compute
|
||||
import (
|
||||
"context"
|
||||
"net/http"
|
||||
"strconv"
|
||||
|
||||
"repository.basistech.ru/BASIS/decort-golang-sdk/internal/constants"
|
||||
"repository.basistech.ru/BASIS/decort-golang-sdk/internal/validators"
|
||||
)
|
||||
|
||||
@@ -18,6 +18,10 @@ type CloneRequest struct {
|
||||
// Required: true
|
||||
Name string `url:"name" json:"name" validate:"required"`
|
||||
|
||||
// ID of the Storage Policy
|
||||
// Required: true
|
||||
StoragePolicyID uint64 `url:"storage_policy_id" json:"storage_policy_id" validate:"required"`
|
||||
|
||||
// Timestamp of the parent's snapshot to create clone from
|
||||
// Required: false
|
||||
SnapshotTimestamp uint64 `url:"snapshotTimestamp" json:"snapshotTimestamp"`
|
||||
@@ -30,26 +34,29 @@ type CloneRequest struct {
|
||||
// Default: false
|
||||
// Required: false
|
||||
Force bool `url:"force" json:"force"`
|
||||
|
||||
// The name of the pool to migrate disks to
|
||||
// Required: false
|
||||
PoolName string `url:"pool_name" json:"pool_name"`
|
||||
|
||||
// The ID of the SEP to migrate disks to
|
||||
// Required: false
|
||||
SEPID uint64 `url:"sep_id" json:"sep_id"`
|
||||
}
|
||||
|
||||
// Clone clones compute instance
|
||||
func (c Compute) Clone(ctx context.Context, req CloneRequest) (uint64, error) {
|
||||
func (c Compute) Clone(ctx context.Context, req CloneRequest) (string, error) {
|
||||
err := validators.ValidateRequest(req)
|
||||
if err != nil {
|
||||
return 0, validators.ValidationErrors(validators.GetErrors(err))
|
||||
return "", validators.ValidationErrors(validators.GetErrors(err))
|
||||
}
|
||||
|
||||
url := "/cloudbroker/compute/clone"
|
||||
|
||||
res, err := c.client.DecortApiCall(ctx, http.MethodPost, url, req)
|
||||
res, err := c.client.DecortApiCallCtype(ctx, http.MethodPost, url, constants.MIMEJSON, req)
|
||||
if err != nil {
|
||||
return 0, err
|
||||
return "", err
|
||||
}
|
||||
|
||||
result, err := strconv.ParseUint(string(res), 10, 64)
|
||||
if err != nil {
|
||||
return 0, err
|
||||
}
|
||||
|
||||
return result, nil
|
||||
return string(res), nil
|
||||
}
|
||||
|
||||
39
pkg/cloudbroker/compute/clone_abort.go
Normal file
39
pkg/cloudbroker/compute/clone_abort.go
Normal file
@@ -0,0 +1,39 @@
|
||||
package compute
|
||||
|
||||
import (
|
||||
"context"
|
||||
"net/http"
|
||||
"strconv"
|
||||
|
||||
"repository.basistech.ru/BASIS/decort-golang-sdk/internal/constants"
|
||||
"repository.basistech.ru/BASIS/decort-golang-sdk/internal/validators"
|
||||
)
|
||||
|
||||
// CloneAbortRequest struct to abort a compute clone
|
||||
type CloneAbortRequest struct {
|
||||
// ID of compute instance
|
||||
// Required: true
|
||||
ComputeID uint64 `url:"compute_id" json:"compute_id" validate:"required"`
|
||||
}
|
||||
|
||||
// CloneAbort aborts a compute clone
|
||||
func (c Compute) CloneAbort(ctx context.Context, req CloneAbortRequest) (bool, error) {
|
||||
err := validators.ValidateRequest(req)
|
||||
if err != nil {
|
||||
return false, validators.ValidationErrors(validators.GetErrors(err))
|
||||
}
|
||||
|
||||
url := "/cloudbroker/compute/clone_abort"
|
||||
|
||||
res, err := c.client.DecortApiCallCtype(ctx, http.MethodPost, url, constants.MIMEJSON, req)
|
||||
if err != nil {
|
||||
return false, err
|
||||
}
|
||||
|
||||
result, err := strconv.ParseBool(string(res))
|
||||
if err != nil {
|
||||
return false, err
|
||||
}
|
||||
|
||||
return result, nil
|
||||
}
|
||||
40
pkg/cloudbroker/compute/clone_status.go
Normal file
40
pkg/cloudbroker/compute/clone_status.go
Normal file
@@ -0,0 +1,40 @@
|
||||
package compute
|
||||
|
||||
import (
|
||||
"context"
|
||||
"encoding/json"
|
||||
"net/http"
|
||||
|
||||
"repository.basistech.ru/BASIS/decort-golang-sdk/internal/validators"
|
||||
)
|
||||
|
||||
// GetCloneStatusRequest struct to get information about compute clone status
|
||||
type GetCloneStatusRequest struct {
|
||||
// ID of compute instance
|
||||
// Required: true
|
||||
ComputeID uint64 `url:"compute_id" json:"compute_id" validate:"required"`
|
||||
}
|
||||
|
||||
// GetCloneStatus gets information about compute clone status as a RecordCloneStatus struct
|
||||
func (c Compute) GetCloneStatus(ctx context.Context, req GetCloneStatusRequest) ([]RecordCloneStatus, error) {
|
||||
err := validators.ValidateRequest(req)
|
||||
if err != nil {
|
||||
return nil, validators.ValidationErrors(validators.GetErrors(err))
|
||||
}
|
||||
|
||||
url := "/cloudbroker/compute/clone_status"
|
||||
|
||||
res, err := c.client.DecortApiCall(ctx, http.MethodGet, url, req)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
cloneStatus := make([]RecordCloneStatus, 0)
|
||||
|
||||
err = json.Unmarshal(res, &cloneStatus)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return cloneStatus, nil
|
||||
}
|
||||
@@ -3,7 +3,6 @@ package compute
|
||||
import (
|
||||
"context"
|
||||
"net/http"
|
||||
"strconv"
|
||||
"strings"
|
||||
|
||||
"repository.basistech.ru/BASIS/decort-golang-sdk/internal/validators"
|
||||
@@ -20,27 +19,16 @@ type CreateTemplateRequest struct {
|
||||
Name string `url:"name" json:"name" validate:"required"`
|
||||
}
|
||||
|
||||
type wrapperCreateTemplateRequest struct {
|
||||
CreateTemplateRequest
|
||||
|
||||
AsyncMode bool `url:"asyncMode"`
|
||||
}
|
||||
|
||||
// CreateTemplateAsync create template from compute instance
|
||||
func (c Compute) CreateTemplateAsync(ctx context.Context, req CreateTemplateRequest) (string, error) {
|
||||
// CreateTemplate create template from compute instance
|
||||
func (c Compute) CreateTemplate(ctx context.Context, req CreateTemplateRequest) (string, error) {
|
||||
err := validators.ValidateRequest(req)
|
||||
if err != nil {
|
||||
return "", validators.ValidationErrors(validators.GetErrors(err))
|
||||
}
|
||||
|
||||
reqWrapped := wrapperCreateTemplateRequest{
|
||||
CreateTemplateRequest: req,
|
||||
AsyncMode: true,
|
||||
}
|
||||
|
||||
url := "/cloudbroker/compute/createTemplate"
|
||||
|
||||
res, err := c.client.DecortApiCall(ctx, http.MethodPost, url, reqWrapped)
|
||||
res, err := c.client.DecortApiCall(ctx, http.MethodPost, url, req)
|
||||
if err != nil {
|
||||
return "", err
|
||||
}
|
||||
@@ -49,30 +37,3 @@ func (c Compute) CreateTemplateAsync(ctx context.Context, req CreateTemplateRequ
|
||||
|
||||
return result, nil
|
||||
}
|
||||
|
||||
// CreateTemplate create template from compute instance
|
||||
func (c Compute) CreateTemplate(ctx context.Context, req CreateTemplateRequest) (uint64, error) {
|
||||
err := validators.ValidateRequest(req)
|
||||
if err != nil {
|
||||
return 0, validators.ValidationErrors(validators.GetErrors(err))
|
||||
}
|
||||
|
||||
reqWrapped := wrapperCreateTemplateRequest{
|
||||
CreateTemplateRequest: req,
|
||||
AsyncMode: false,
|
||||
}
|
||||
|
||||
url := "/cloudbroker/compute/createTemplate"
|
||||
|
||||
res, err := c.client.DecortApiCall(ctx, http.MethodPost, url, reqWrapped)
|
||||
if err != nil {
|
||||
return 0, err
|
||||
}
|
||||
|
||||
result, err := strconv.ParseUint(string(res), 10, 64)
|
||||
if err != nil {
|
||||
return 0, err
|
||||
}
|
||||
|
||||
return result, nil
|
||||
}
|
||||
|
||||
@@ -663,6 +663,9 @@ type InfoCompute struct {
|
||||
// Architecture
|
||||
Arch string `json:"arch"`
|
||||
|
||||
// Boot image ID
|
||||
BootImageID uint64 `json:"boot_image_id"`
|
||||
|
||||
// Boot order
|
||||
BootOrder []string `json:"bootOrder"`
|
||||
|
||||
@@ -917,6 +920,9 @@ type RecordCompute struct {
|
||||
// Architecture
|
||||
Arch string `json:"arch"`
|
||||
|
||||
// Boot image ID
|
||||
BootImageID uint64 `json:"boot_image_id"`
|
||||
|
||||
// Boot order
|
||||
BootOrder []string `json:"bootOrder"`
|
||||
|
||||
@@ -1420,3 +1426,31 @@ type MigrateStorageItem struct {
|
||||
// Target stack ID
|
||||
TargetStackID uint64 `json:"targetStackId"`
|
||||
}
|
||||
|
||||
type RecordCloneStatus struct {
|
||||
// Disk ID
|
||||
DiskID int `json:"disk_id"`
|
||||
|
||||
// Clone Status
|
||||
Status CloneStatus `json:"status"`
|
||||
}
|
||||
|
||||
type CloneStatus struct {
|
||||
// Type
|
||||
Type int `json:"type"`
|
||||
|
||||
// Copy speed
|
||||
Bandwidth int `json:"bandwidth"`
|
||||
|
||||
// Current progress
|
||||
Cur int `json:"cur"`
|
||||
|
||||
// Total size
|
||||
End int `json:"end"`
|
||||
|
||||
// Operation status
|
||||
Ready bool `json:"ready"`
|
||||
|
||||
// Progress percent
|
||||
ProgressPercent int `json:"progress_percent"`
|
||||
}
|
||||
|
||||
46
pkg/cloudbroker/disks/migrate.go
Normal file
46
pkg/cloudbroker/disks/migrate.go
Normal file
@@ -0,0 +1,46 @@
|
||||
package disks
|
||||
|
||||
import (
|
||||
"context"
|
||||
"net/http"
|
||||
|
||||
"repository.basistech.ru/BASIS/decort-golang-sdk/internal/validators"
|
||||
)
|
||||
|
||||
// Migrate struct to move disk to another sep, pool and storage policy
|
||||
type MigrateRequest struct {
|
||||
// ID of the disk
|
||||
// Required: true
|
||||
DiskID uint64 `url:"disk_id" json:"disk_id" validate:"required"`
|
||||
|
||||
// ID of the new SEP
|
||||
// Required: true
|
||||
SEPID uint64 `url:"sep_id" json:"sep_id" validate:"required"`
|
||||
|
||||
// New pool name
|
||||
// Required: true
|
||||
PoolName string `url:"pool_name" json:"pool_name" validate:"required"`
|
||||
|
||||
// ID if the storage policy
|
||||
// Required: false
|
||||
StoragePolicyID uint64 `url:"storage_policy_id,omitempty" json:"storage_policy_id,omitempty"`
|
||||
}
|
||||
|
||||
// Move moves disk to another sep, pool and storage policy
|
||||
func (c Disks) Migrate(ctx context.Context, req MigrateRequest) (string, error) {
|
||||
err := validators.ValidateRequest(req)
|
||||
if err != nil {
|
||||
return "", validators.ValidationErrors(validators.GetErrors(err))
|
||||
}
|
||||
|
||||
url := "/cloudbroker/disks/migrate"
|
||||
|
||||
res, err := c.client.DecortApiCall(ctx, http.MethodPost, url, req)
|
||||
if err != nil {
|
||||
return "", err
|
||||
}
|
||||
|
||||
result := string(res)
|
||||
|
||||
return result, nil
|
||||
}
|
||||
38
pkg/cloudbroker/disks/migrate_abort.go
Normal file
38
pkg/cloudbroker/disks/migrate_abort.go
Normal file
@@ -0,0 +1,38 @@
|
||||
package disks
|
||||
|
||||
import (
|
||||
"context"
|
||||
"net/http"
|
||||
"strconv"
|
||||
|
||||
"repository.basistech.ru/BASIS/decort-golang-sdk/internal/validators"
|
||||
)
|
||||
|
||||
// MigrateAbortRequest struct to abort migration
|
||||
type MigrateAbortRequest struct {
|
||||
// ID of the disk
|
||||
// Required: true
|
||||
DiskID uint64 `url:"disk_id" json:"disk_id" validate:"required"`
|
||||
}
|
||||
|
||||
// MigrateAbort aborts disk migration
|
||||
func (c Disks) MigrateAbort(ctx context.Context, req MigrateAbortRequest) (bool, error) {
|
||||
err := validators.ValidateRequest(req)
|
||||
if err != nil {
|
||||
return false, validators.ValidationErrors(validators.GetErrors(err))
|
||||
}
|
||||
|
||||
url := "/cloudbroker/disks/migrate_abort"
|
||||
|
||||
res, err := c.client.DecortApiCall(ctx, http.MethodPost, url, req)
|
||||
if err != nil {
|
||||
return false, err
|
||||
}
|
||||
|
||||
result, err := strconv.ParseBool(string(res))
|
||||
if err != nil {
|
||||
return false, err
|
||||
}
|
||||
|
||||
return result, nil
|
||||
}
|
||||
40
pkg/cloudbroker/disks/migrate_status.go
Normal file
40
pkg/cloudbroker/disks/migrate_status.go
Normal file
@@ -0,0 +1,40 @@
|
||||
package disks
|
||||
|
||||
import (
|
||||
"context"
|
||||
"encoding/json"
|
||||
"net/http"
|
||||
|
||||
"repository.basistech.ru/BASIS/decort-golang-sdk/internal/validators"
|
||||
)
|
||||
|
||||
// GetMigrateStatusRequest struct to get information about disk migrate status
|
||||
type GetMigrateStatusRequest struct {
|
||||
// ID of disk
|
||||
// Required: true
|
||||
DiskID uint64 `url:"disk_id" json:"disk_id" validate:"required"`
|
||||
}
|
||||
|
||||
// GetMigrateStatus gets information about disk migrate status
|
||||
func (c Disks) GetMigrateStatus(ctx context.Context, req GetMigrateStatusRequest) (*MigrateStatus, error) {
|
||||
err := validators.ValidateRequest(req)
|
||||
if err != nil {
|
||||
return nil, validators.ValidationErrors(validators.GetErrors(err))
|
||||
}
|
||||
|
||||
url := "/cloudbroker/disks/migrate_status"
|
||||
|
||||
res, err := c.client.DecortApiCall(ctx, http.MethodGet, url, req)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
status := MigrateStatus{}
|
||||
|
||||
err = json.Unmarshal(res, &status)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return &status, nil
|
||||
}
|
||||
@@ -320,3 +320,20 @@ type ListTypes struct {
|
||||
// Entry count
|
||||
EntryCount uint64 `json:"entryCount"`
|
||||
}
|
||||
|
||||
type MigrateStatus struct {
|
||||
// Type
|
||||
Type int `json:"type"`
|
||||
|
||||
// Copy speed
|
||||
Bandwidth int `json:"bandwidth"`
|
||||
|
||||
// Current progress
|
||||
Cur interface{} `json:"cur"`
|
||||
|
||||
// Total size
|
||||
End interface{} `json:"end"`
|
||||
|
||||
// Progress percent
|
||||
ProgressPercent int `json:"progress_percent"`
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@ package image
|
||||
|
||||
import (
|
||||
"context"
|
||||
"encoding/json"
|
||||
"net/http"
|
||||
"strconv"
|
||||
|
||||
@@ -43,6 +44,11 @@ type CreateCDROMImageRequest struct {
|
||||
PasswordDl string `url:"passwordDL,omitempty" json:"passwordDL,omitempty"`
|
||||
}
|
||||
|
||||
type asyncWrapperCreateCDROMImageRequest struct {
|
||||
CreateCDROMImageRequest
|
||||
AsyncMode bool `url:"asyncMode"`
|
||||
}
|
||||
|
||||
// CreateCDROMImage creates CD-ROM image from an ISO identified by URL
|
||||
func (i Image) CreateCDROMImage(ctx context.Context, req CreateCDROMImageRequest) (uint64, error) {
|
||||
err := validators.ValidateRequest(req)
|
||||
@@ -52,7 +58,9 @@ func (i Image) CreateCDROMImage(ctx context.Context, req CreateCDROMImageRequest
|
||||
|
||||
url := "/cloudbroker/image/createCDROMImage"
|
||||
|
||||
res, err := i.client.DecortApiCall(ctx, http.MethodPost, url, req)
|
||||
syncReq := asyncWrapperCreateCDROMImageRequest{CreateCDROMImageRequest: req, AsyncMode: false}
|
||||
|
||||
res, err := i.client.DecortApiCall(ctx, http.MethodPost, url, syncReq)
|
||||
if err != nil {
|
||||
return 0, err
|
||||
}
|
||||
@@ -64,3 +72,29 @@ func (i Image) CreateCDROMImage(ctx context.Context, req CreateCDROMImageRequest
|
||||
|
||||
return result, nil
|
||||
}
|
||||
|
||||
// AsyncCreateCDROMImage creates CD-ROM image from an ISO identified by URL in async mode
|
||||
func (i Image) AsyncCreateCDROMImage(ctx context.Context, req CreateCDROMImageRequest) (string, error) {
|
||||
err := validators.ValidateRequest(req)
|
||||
if err != nil {
|
||||
return "", validators.ValidationErrors(validators.GetErrors(err))
|
||||
}
|
||||
|
||||
url := "/cloudbroker/image/createCDROMImage"
|
||||
|
||||
asyncReq := asyncWrapperCreateCDROMImageRequest{CreateCDROMImageRequest: req, AsyncMode: true}
|
||||
|
||||
res, err := i.client.DecortApiCall(ctx, http.MethodPost, url, asyncReq)
|
||||
if err != nil {
|
||||
return " ", err
|
||||
}
|
||||
|
||||
var taskID string
|
||||
|
||||
err = json.Unmarshal(res, &taskID)
|
||||
if err != nil {
|
||||
return "", err
|
||||
}
|
||||
|
||||
return taskID, nil
|
||||
}
|
||||
|
||||
@@ -11,7 +11,7 @@ import (
|
||||
|
||||
// CreateRequest struct to create image
|
||||
type CreateRequest struct {
|
||||
// Name of the rescue disk
|
||||
// Name of the image
|
||||
// Required: true
|
||||
Name string `url:"name" json:"name" validate:"required"`
|
||||
|
||||
|
||||
42
pkg/cloudbroker/node/update_description.go
Normal file
42
pkg/cloudbroker/node/update_description.go
Normal file
@@ -0,0 +1,42 @@
|
||||
package node
|
||||
|
||||
import (
|
||||
"context"
|
||||
"net/http"
|
||||
"strconv"
|
||||
|
||||
"repository.basistech.ru/BASIS/decort-golang-sdk/internal/validators"
|
||||
)
|
||||
|
||||
// UpdateDescriptionRequest struct to update description of the node
|
||||
type UpdateDescriptionRequest struct {
|
||||
// Node ID
|
||||
// Required: true
|
||||
NID uint64 `url:"nid" json:"nid" validate:"required"`
|
||||
|
||||
// New description for the node
|
||||
// Required: true
|
||||
Description string `url:"description" json:"description" validate:"required"`
|
||||
}
|
||||
|
||||
// UpdateDescription updates description of the node
|
||||
func (n Node) UpdateDescription(ctx context.Context, req UpdateDescriptionRequest) (bool, error) {
|
||||
err := validators.ValidateRequest(req)
|
||||
if err != nil {
|
||||
return false, validators.ValidationErrors(validators.GetErrors(err))
|
||||
}
|
||||
|
||||
url := "/cloudbroker/node/update_description"
|
||||
|
||||
res, err := n.client.DecortApiCall(ctx, http.MethodPost, url, req)
|
||||
if err != nil {
|
||||
return false, err
|
||||
}
|
||||
|
||||
result, err := strconv.ParseBool(string(res))
|
||||
if err != nil {
|
||||
return false, err
|
||||
}
|
||||
|
||||
return result, nil
|
||||
}
|
||||
@@ -56,6 +56,9 @@ type ItemStoragePolicy struct {
|
||||
// Max IOPS for the sotrage policy
|
||||
LimitIOPS uint64 `json:"limit_iops"`
|
||||
|
||||
// Storage policy ID
|
||||
StoragePolicyID uint64 `json:"storage_policy_id"`
|
||||
|
||||
// Which accounts and resource groups use the storage policy
|
||||
Usage Usage `json:"usage"`
|
||||
}
|
||||
@@ -82,6 +85,9 @@ type InfoStoragePolicy struct {
|
||||
// Max IOPS for the storage policy
|
||||
LimitIOPS uint64 `json:"limit_iops"`
|
||||
|
||||
// Storage policy ID
|
||||
StoragePolicyID uint64 `json:"storage_policy_id"`
|
||||
|
||||
// Which accounts and resource groups use the storage policy
|
||||
Usage Usage `json:"usage"`
|
||||
}
|
||||
|
||||
@@ -250,6 +250,9 @@ type VNFDev struct {
|
||||
|
||||
// Zone ID
|
||||
ZoneID uint64 `json:"zoneId"`
|
||||
|
||||
// Live migration job ID
|
||||
LiveMigrationJobID uint64 `json:"live_migration_job_id"`
|
||||
}
|
||||
|
||||
// Main information about reservation
|
||||
|
||||
@@ -149,6 +149,8 @@ func getRequestsMapCloudAPI() map[string]interface{} {
|
||||
"/restmachine/cloudapi/compute/changeLinkState": compute.ChangeLinkStateRequest{},
|
||||
"/restmachine/cloudapi/compute/change_security_groups": compute.ChangeSecGroupsRequest{},
|
||||
"/restmachine/cloudapi/compute/clone": compute.CloneRequest{},
|
||||
"/restmachine/cloudapi/compute/clone_abort": compute.CloneAbortRequest{},
|
||||
"/restmachine/cloudapi/compute/clone_status": compute.GetCloneStatusRequest{},
|
||||
"/restmachine/cloudapi/compute/createTemplate": compute.CreateTemplateRequest{},
|
||||
"/restmachine/cloudapi/compute/createTemplateFromBlank": compute.CreateTemplateFromBlankRequest{},
|
||||
"/restmachine/cloudapi/compute/delete": compute.DeleteRequest{},
|
||||
@@ -383,6 +385,8 @@ func getRequestsMapCloudAPI() map[string]interface{} {
|
||||
"/restmachine/cloudapi/rg/update": rg.UpdateRequest{},
|
||||
"/restmachine/cloudapi/rg/usage": rg.UsageRequest{},
|
||||
"/restmachine/cloudapi/rg/removeDefNet": rg.RemoveDefNetRequest{},
|
||||
"/restmachine/cloudapi/rg/add_storage_policy": rg.AddStoragePolicyRequest{},
|
||||
"/restmachine/cloudapi/rg/del_storage_policy": rg.DelStoragePolicyRequest{},
|
||||
|
||||
// security_group
|
||||
"/restmachine/cloudapi/security_group/create": secgroup.CreateRequest{},
|
||||
@@ -529,111 +533,113 @@ func getRequestsMapCloudbroker() map[string]interface{} {
|
||||
"/restmachine/cloudbroker/backup/restoreDisksFromBackup": backup_cb.RestoreDisksFromBackupRequest{},
|
||||
|
||||
// compute_cb
|
||||
"/restmachine/cloudapi/compute/abort_shared_snapshot_merge": compute.AbortSharedSnapshotMergeRequest{},
|
||||
"/restmachine/cloudapi/compute/shared_snapshot_merge_status": compute.SharedSnapshotMergeStatusRequest{},
|
||||
"/restmachine/cloudbroker/compute/affinityGroupCheckStart": compute_cb.AffinityGroupCheckStartRequest{},
|
||||
"/restmachine/cloudbroker/compute/affinityLabelRemove": compute_cb.AffinityLabelRemoveRequest{},
|
||||
"/restmachine/cloudbroker/compute/affinityLabelSet": compute_cb.AffinityLabelSetRequest{},
|
||||
"/restmachine/cloudbroker/compute/affinityRelations": compute_cb.AffinityRelationsRequest{},
|
||||
"/restmachine/cloudbroker/compute/affinityRuleAdd": compute_cb.AffinityRuleAddRequest{},
|
||||
"/restmachine/cloudbroker/compute/affinityRuleRemove": compute_cb.AffinityRuleRemoveRequest{},
|
||||
"/restmachine/cloudbroker/compute/affinityRulesClear": compute_cb.AffinityRulesClearRequest{},
|
||||
"/restmachine/cloudbroker/compute/antiAffinityRuleAdd": compute_cb.AntiAffinityRuleAddRequest{},
|
||||
"/restmachine/cloudbroker/compute/antiAffinityRuleRemove": compute_cb.AntiAffinityRuleRemoveRequest{},
|
||||
"/restmachine/cloudbroker/compute/antiAffinityRulesClear": compute_cb.AffinityRulesClearRequest{},
|
||||
"/restmachine/cloudbroker/compute/attachGpu": compute_cb.AttachGPURequest{},
|
||||
"/restmachine/cloudbroker/compute/attachPciDevice": compute_cb.AttachPCIDeviceRequest{},
|
||||
"/restmachine/cloudbroker/compute/audits": compute_cb.AuditsRequest{},
|
||||
"/restmachine/cloudbroker/compute/bootDiskSet": compute_cb.BootDiskSetRequest{},
|
||||
"/restmachine/cloudbroker/compute/bootOrderGet": compute_cb.BootOrderGetRequest{},
|
||||
"/restmachine/cloudbroker/compute/bootOrderSet": compute_cb.BootOrderSetRequest{},
|
||||
"/restmachine/cloudbroker/compute/cdEject": compute_cb.CDEjectRequest{},
|
||||
"/restmachine/cloudbroker/compute/cdInsert": compute_cb.CDInsertRequest{},
|
||||
"/restmachine/cloudbroker/compute/changeLinkState": compute_cb.ChangeLinkStateRequest{},
|
||||
"/restmachine/cloudbroker/compute/change_mtu": compute_cb.ChangeMTURequest{},
|
||||
"/restmachine/cloudbroker/compute/change_security_groups": compute_cb.ChangeSecGroupsRequest{},
|
||||
"/restmachine/cloudbroker/compute/clone": compute_cb.CloneRequest{},
|
||||
"/restmachine/cloudbroker/compute/computeciSet": compute_cb.ComputeCISetRequest{},
|
||||
"/restmachine/cloudbroker/compute/computeciUnset": compute_cb.ComputeCIUnsetRequest{},
|
||||
"/restmachine/cloudbroker/compute/createTemplate": compute_cb.CreateTemplateRequest{},
|
||||
"/restmachine/cloudbroker/compute/createTemplateFromBlank": compute_cb.CreateTemplateFromBlankRequest{},
|
||||
"/restmachine/cloudbroker/compute/delete": compute_cb.DeleteRequest{},
|
||||
"/restmachine/cloudbroker/compute/deleteCustomFields": compute_cb.DeleteCustomFieldsRequest{},
|
||||
"/restmachine/cloudbroker/compute/detachGpu": compute_cb.DetachGPURequest{},
|
||||
"/restmachine/cloudbroker/compute/detachPciDevice": compute_cb.DetachPCIDeviceRequest{},
|
||||
"/restmachine/cloudbroker/compute/disable": compute_cb.DisableRequest{},
|
||||
"/restmachine/cloudbroker/compute/diskAdd": compute_cb.DiskAddRequest{},
|
||||
"/restmachine/cloudbroker/compute/diskAttach": compute_cb.DiskAttachRequest{},
|
||||
"/restmachine/cloudbroker/compute/diskDel": compute_cb.DiskDelRequest{},
|
||||
"/restmachine/cloudbroker/compute/diskDetach": compute_cb.DiskDetachRequest{},
|
||||
"/restmachine/cloudbroker/compute/diskMigrate": compute_cb.DiskMigrateRequest{},
|
||||
"/restmachine/cloudbroker/compute/diskResize": compute_cb.DiskResizeRequest{},
|
||||
"/restmachine/cloudbroker/compute/diskSwitchToReplication": compute_cb.DiskSwitchToReplicationRequest{},
|
||||
"/restmachine/cloudbroker/compute/diskQos": compute_cb.DiskQOSRequest{},
|
||||
"/restmachine/cloudbroker/compute/enable": compute_cb.EnableRequest{},
|
||||
"/restmachine/cloudbroker/compute/get": compute_cb.GetRequest{},
|
||||
"/restmachine/cloudbroker/compute/getAudits": compute_cb.GetAuditsRequest{},
|
||||
"/restmachine/cloudbroker/compute/getConsoleUrl": compute_cb.GetConsoleURLRequest{},
|
||||
"/restmachine/cloudbroker/compute/getCustomFields": compute_cb.GetCustomFieldsRequest{},
|
||||
"/restmachine/cloudbroker/compute/getLog": compute_cb.GetLogRequest{},
|
||||
"/restmachine/cloudbroker/compute/list": compute_cb.ListRequest{},
|
||||
"/restmachine/cloudbroker/compute/listDeleted": compute_cb.ListDeletedRequest{},
|
||||
"/restmachine/cloudbroker/compute/listPciDevice": compute_cb.ListPCIDeviceRequest{},
|
||||
"/restmachine/cloudbroker/compute/listVGpu": compute_cb.ListVGPURequest{},
|
||||
"/restmachine/cloudbroker/compute/massDelete": compute_cb.MassDeleteRequest{},
|
||||
"/restmachine/cloudbroker/compute/massStart": compute_cb.MassStartRequest{},
|
||||
"/restmachine/cloudbroker/compute/massStop": compute_cb.MassStopRequest{},
|
||||
"/restmachine/cloudbroker/compute/massReboot": compute_cb.MassRebootRequest{},
|
||||
"/restmachine/cloudbroker/compute/migrate": compute_cb.MigrateRequest{},
|
||||
"/restmachine/cloudbroker/compute/migrateStorage": compute_cb.MigrateStorageRequest{},
|
||||
"/restmachine/cloudbroker/compute/migrateStorageAbort": compute_cb.MigrateStorageAbortRequest{},
|
||||
"/restmachine/cloudbroker/compute/migrateStorageCleanup": compute_cb.MigrateStorageCleanUpRequest{},
|
||||
"/restmachine/cloudbroker/compute/migrateStorageInfo": compute_cb.MigrateStorageInfoRequest{},
|
||||
"/restmachine/cloudbroker/compute/migrate_storage_list": compute_cb.MigrateStorageListRequest{},
|
||||
"/restmachine/cloudbroker/compute/moveToRg": compute_cb.MoveToRGRequest{},
|
||||
"/restmachine/cloudbroker/compute/netAttach": compute_cb.NetAttachRequest{},
|
||||
"/restmachine/cloudbroker/compute/netDetach": compute_cb.NetDetachRequest{},
|
||||
"/restmachine/cloudbroker/compute/netQos": compute_cb.NetQOSRequest{},
|
||||
"/restmachine/cloudbroker/compute/pfwAdd": compute_cb.PFWAddRequest{},
|
||||
"/restmachine/cloudbroker/compute/pfwDel": compute_cb.PFWDelRequest{},
|
||||
"/restmachine/cloudbroker/compute/pfwList": compute_cb.PFWListRequest{},
|
||||
"/restmachine/cloudbroker/compute/pause": compute_cb.PauseRequest{},
|
||||
"/restmachine/cloudbroker/compute/pinToStack": compute_cb.PinToStackRequest{},
|
||||
"/restmachine/cloudbroker/compute/powerCycle": compute_cb.PowerCycleRequest{},
|
||||
"/restmachine/cloudbroker/compute/raiseDown": EmptyStruct{},
|
||||
"/restmachine/cloudbroker/compute/reboot": compute_cb.RebootRequest{},
|
||||
"/restmachine/cloudbroker/compute/redeploy": compute_cb.RedeployRequest{},
|
||||
"/restmachine/cloudbroker/compute/reset": compute_cb.ResetRequest{},
|
||||
"/restmachine/cloudbroker/compute/resize": compute_cb.ResizeRequest{},
|
||||
"/restmachine/cloudbroker/compute/restore": compute_cb.RestoreRequest{},
|
||||
"/restmachine/cloudbroker/compute/resume": compute_cb.ResumeRequest{},
|
||||
"/restmachine/cloudbroker/compute/setCustomFields": compute_cb.SetCustomFieldsRequest{},
|
||||
"/restmachine/cloudbroker/compute/snapshotCreate": compute_cb.SnapshotCreateRequest{},
|
||||
"/restmachine/cloudbroker/compute/snapshotDelete": compute_cb.SnapshotDeleteRequest{},
|
||||
"/restmachine/cloudbroker/compute/snapshotEvictDisk": compute_cb.SnapshotEvictDiskRequest{},
|
||||
"/restmachine/cloudbroker/compute/snapshotList": compute_cb.SnapshotListRequest{},
|
||||
"/restmachine/cloudbroker/compute/snapshotRollback": compute_cb.SnapshotRollbackRequest{},
|
||||
"/restmachine/cloudbroker/compute/snapshotUsage": compute_cb.SnapshotUsageRequest{},
|
||||
"/restmachine/cloudbroker/compute/start": compute_cb.StartRequest{},
|
||||
"/restmachine/cloudbroker/compute/start_migration_in": compute_cb.StartMigrationINRequest{},
|
||||
"/restmachine/cloudbroker/compute/stop": compute_cb.StopRequest{},
|
||||
"/restmachine/cloudbroker/compute/stop_migration_in": compute_cb.StopMigrationINRequest{},
|
||||
"/restmachine/cloudbroker/compute/tagAdd": compute_cb.TagAddRequest{},
|
||||
"/restmachine/cloudbroker/compute/tagRemove": compute_cb.TagRemoveRequest{},
|
||||
"/restmachine/cloudbroker/compute/unpinFromStack": compute_cb.UnpinFromStackRequest{},
|
||||
"/restmachine/cloudbroker/compute/update": compute_cb.UpdateRequest{},
|
||||
"/restmachine/cloudbroker/compute/userGrant": compute_cb.UserGrantRequest{},
|
||||
"/restmachine/cloudbroker/compute/userList": compute_cb.UserListRequest{},
|
||||
"/restmachine/cloudbroker/compute/userRevoke": compute_cb.UserRevokeRequest{},
|
||||
"/restmachine/cloudbroker/compute/userUpdate": compute_cb.UserUpdateRequest{},
|
||||
"/restmachine/cloudbroker/compute/changeIp": compute_cb.ChangeIPRequest{},
|
||||
"/restmachine/cloudbroker/compute/changeMac": compute_cb.ChangeMACRequest{},
|
||||
"/restmachine/cloudbroker/compute/setNetConfig": compute_cb.SetNetConfigRequest{},
|
||||
"/restmachine/cloudbroker/compute/guest_agent_disable": compute_cb.GuestAgentDisableRequest{},
|
||||
"/restmachine/cloudbroker/compute/guest_agent_enable": compute_cb.GuestAgentEnableRequest{},
|
||||
"/restmachine/cloudbroker/compute/guest_agent_execute": compute_cb.GuestAgentExecuteRequest{},
|
||||
"/restmachine/cloudbroker/compute/guest_agent_feature_get": compute_cb.GuestAgentFeatureGetRequest{},
|
||||
"/restmachine/cloudbroker/compute/guest_agent_feature_update": compute_cb.GuestAgentFeatureUpdateRequest{},
|
||||
"/restmachine/cloudbroker/compute/abort_shared_snapshot_merge": compute_cb.AbortSharedSnapshotMergeRequest{},
|
||||
"/restmachine/cloudbroker/compute/shared_snapshot_merge_status": compute_cb.SharedSnapshotMergeStatusRequest{},
|
||||
"/restmachine/cloudbroker/compute/affinityGroupCheckStart": compute_cb.AffinityGroupCheckStartRequest{},
|
||||
"/restmachine/cloudbroker/compute/affinityLabelRemove": compute_cb.AffinityLabelRemoveRequest{},
|
||||
"/restmachine/cloudbroker/compute/affinityLabelSet": compute_cb.AffinityLabelSetRequest{},
|
||||
"/restmachine/cloudbroker/compute/affinityRelations": compute_cb.AffinityRelationsRequest{},
|
||||
"/restmachine/cloudbroker/compute/affinityRuleAdd": compute_cb.AffinityRuleAddRequest{},
|
||||
"/restmachine/cloudbroker/compute/affinityRuleRemove": compute_cb.AffinityRuleRemoveRequest{},
|
||||
"/restmachine/cloudbroker/compute/affinityRulesClear": compute_cb.AffinityRulesClearRequest{},
|
||||
"/restmachine/cloudbroker/compute/antiAffinityRuleAdd": compute_cb.AntiAffinityRuleAddRequest{},
|
||||
"/restmachine/cloudbroker/compute/antiAffinityRuleRemove": compute_cb.AntiAffinityRuleRemoveRequest{},
|
||||
"/restmachine/cloudbroker/compute/antiAffinityRulesClear": compute_cb.AffinityRulesClearRequest{},
|
||||
"/restmachine/cloudbroker/compute/attachGpu": compute_cb.AttachGPURequest{},
|
||||
"/restmachine/cloudbroker/compute/attachPciDevice": compute_cb.AttachPCIDeviceRequest{},
|
||||
"/restmachine/cloudbroker/compute/audits": compute_cb.AuditsRequest{},
|
||||
"/restmachine/cloudbroker/compute/bootDiskSet": compute_cb.BootDiskSetRequest{},
|
||||
"/restmachine/cloudbroker/compute/bootOrderGet": compute_cb.BootOrderGetRequest{},
|
||||
"/restmachine/cloudbroker/compute/bootOrderSet": compute_cb.BootOrderSetRequest{},
|
||||
"/restmachine/cloudbroker/compute/cdEject": compute_cb.CDEjectRequest{},
|
||||
"/restmachine/cloudbroker/compute/cdInsert": compute_cb.CDInsertRequest{},
|
||||
"/restmachine/cloudbroker/compute/changeLinkState": compute_cb.ChangeLinkStateRequest{},
|
||||
"/restmachine/cloudbroker/compute/change_mtu": compute_cb.ChangeMTURequest{},
|
||||
"/restmachine/cloudbroker/compute/change_security_groups": compute_cb.ChangeSecGroupsRequest{},
|
||||
"/restmachine/cloudbroker/compute/clone": compute_cb.CloneRequest{},
|
||||
"/restmachine/cloudbroker/compute/clone_abort": compute_cb.CloneAbortRequest{},
|
||||
"/restmachine/cloudbroker/compute/clone_status": compute_cb.GetCloneStatusRequest{},
|
||||
"/restmachine/cloudbroker/compute/computeciSet": compute_cb.ComputeCISetRequest{},
|
||||
"/restmachine/cloudbroker/compute/computeciUnset": compute_cb.ComputeCIUnsetRequest{},
|
||||
"/restmachine/cloudbroker/compute/createTemplate": compute_cb.CreateTemplateRequest{},
|
||||
"/restmachine/cloudbroker/compute/createTemplateFromBlank": compute_cb.CreateTemplateFromBlankRequest{},
|
||||
"/restmachine/cloudbroker/compute/delete": compute_cb.DeleteRequest{},
|
||||
"/restmachine/cloudbroker/compute/deleteCustomFields": compute_cb.DeleteCustomFieldsRequest{},
|
||||
"/restmachine/cloudbroker/compute/detachGpu": compute_cb.DetachGPURequest{},
|
||||
"/restmachine/cloudbroker/compute/detachPciDevice": compute_cb.DetachPCIDeviceRequest{},
|
||||
"/restmachine/cloudbroker/compute/disable": compute_cb.DisableRequest{},
|
||||
"/restmachine/cloudbroker/compute/diskAdd": compute_cb.DiskAddRequest{},
|
||||
"/restmachine/cloudbroker/compute/diskAttach": compute_cb.DiskAttachRequest{},
|
||||
"/restmachine/cloudbroker/compute/diskDel": compute_cb.DiskDelRequest{},
|
||||
"/restmachine/cloudbroker/compute/diskDetach": compute_cb.DiskDetachRequest{},
|
||||
"/restmachine/cloudbroker/compute/diskMigrate": compute_cb.DiskMigrateRequest{},
|
||||
"/restmachine/cloudbroker/compute/diskResize": compute_cb.DiskResizeRequest{},
|
||||
"/restmachine/cloudbroker/compute/diskSwitchToReplication": compute_cb.DiskSwitchToReplicationRequest{},
|
||||
"/restmachine/cloudbroker/compute/diskQos": compute_cb.DiskQOSRequest{},
|
||||
"/restmachine/cloudbroker/compute/enable": compute_cb.EnableRequest{},
|
||||
"/restmachine/cloudbroker/compute/get": compute_cb.GetRequest{},
|
||||
"/restmachine/cloudbroker/compute/getAudits": compute_cb.GetAuditsRequest{},
|
||||
"/restmachine/cloudbroker/compute/getConsoleUrl": compute_cb.GetConsoleURLRequest{},
|
||||
"/restmachine/cloudbroker/compute/getCustomFields": compute_cb.GetCustomFieldsRequest{},
|
||||
"/restmachine/cloudbroker/compute/getLog": compute_cb.GetLogRequest{},
|
||||
"/restmachine/cloudbroker/compute/list": compute_cb.ListRequest{},
|
||||
"/restmachine/cloudbroker/compute/listDeleted": compute_cb.ListDeletedRequest{},
|
||||
"/restmachine/cloudbroker/compute/listPciDevice": compute_cb.ListPCIDeviceRequest{},
|
||||
"/restmachine/cloudbroker/compute/listVGpu": compute_cb.ListVGPURequest{},
|
||||
"/restmachine/cloudbroker/compute/massDelete": compute_cb.MassDeleteRequest{},
|
||||
"/restmachine/cloudbroker/compute/massStart": compute_cb.MassStartRequest{},
|
||||
"/restmachine/cloudbroker/compute/massStop": compute_cb.MassStopRequest{},
|
||||
"/restmachine/cloudbroker/compute/massReboot": compute_cb.MassRebootRequest{},
|
||||
"/restmachine/cloudbroker/compute/migrate": compute_cb.MigrateRequest{},
|
||||
"/restmachine/cloudbroker/compute/migrateStorage": compute_cb.MigrateStorageRequest{},
|
||||
"/restmachine/cloudbroker/compute/migrateStorageAbort": compute_cb.MigrateStorageAbortRequest{},
|
||||
"/restmachine/cloudbroker/compute/migrateStorageCleanup": compute_cb.MigrateStorageCleanUpRequest{},
|
||||
"/restmachine/cloudbroker/compute/migrateStorageInfo": compute_cb.MigrateStorageInfoRequest{},
|
||||
"/restmachine/cloudbroker/compute/migrate_storage_list": compute_cb.MigrateStorageListRequest{},
|
||||
"/restmachine/cloudbroker/compute/moveToRg": compute_cb.MoveToRGRequest{},
|
||||
"/restmachine/cloudbroker/compute/netAttach": compute_cb.NetAttachRequest{},
|
||||
"/restmachine/cloudbroker/compute/netDetach": compute_cb.NetDetachRequest{},
|
||||
"/restmachine/cloudbroker/compute/netQos": compute_cb.NetQOSRequest{},
|
||||
"/restmachine/cloudbroker/compute/pfwAdd": compute_cb.PFWAddRequest{},
|
||||
"/restmachine/cloudbroker/compute/pfwDel": compute_cb.PFWDelRequest{},
|
||||
"/restmachine/cloudbroker/compute/pfwList": compute_cb.PFWListRequest{},
|
||||
"/restmachine/cloudbroker/compute/pause": compute_cb.PauseRequest{},
|
||||
"/restmachine/cloudbroker/compute/pinToStack": compute_cb.PinToStackRequest{},
|
||||
"/restmachine/cloudbroker/compute/powerCycle": compute_cb.PowerCycleRequest{},
|
||||
"/restmachine/cloudbroker/compute/raiseDown": EmptyStruct{},
|
||||
"/restmachine/cloudbroker/compute/reboot": compute_cb.RebootRequest{},
|
||||
"/restmachine/cloudbroker/compute/redeploy": compute_cb.RedeployRequest{},
|
||||
"/restmachine/cloudbroker/compute/reset": compute_cb.ResetRequest{},
|
||||
"/restmachine/cloudbroker/compute/resize": compute_cb.ResizeRequest{},
|
||||
"/restmachine/cloudbroker/compute/restore": compute_cb.RestoreRequest{},
|
||||
"/restmachine/cloudbroker/compute/resume": compute_cb.ResumeRequest{},
|
||||
"/restmachine/cloudbroker/compute/setCustomFields": compute_cb.SetCustomFieldsRequest{},
|
||||
"/restmachine/cloudbroker/compute/snapshotCreate": compute_cb.SnapshotCreateRequest{},
|
||||
"/restmachine/cloudbroker/compute/snapshotDelete": compute_cb.SnapshotDeleteRequest{},
|
||||
"/restmachine/cloudbroker/compute/snapshotEvictDisk": compute_cb.SnapshotEvictDiskRequest{},
|
||||
"/restmachine/cloudbroker/compute/snapshotList": compute_cb.SnapshotListRequest{},
|
||||
"/restmachine/cloudbroker/compute/snapshotRollback": compute_cb.SnapshotRollbackRequest{},
|
||||
"/restmachine/cloudbroker/compute/snapshotUsage": compute_cb.SnapshotUsageRequest{},
|
||||
"/restmachine/cloudbroker/compute/start": compute_cb.StartRequest{},
|
||||
"/restmachine/cloudbroker/compute/start_migration_in": compute_cb.StartMigrationINRequest{},
|
||||
"/restmachine/cloudbroker/compute/stop": compute_cb.StopRequest{},
|
||||
"/restmachine/cloudbroker/compute/stop_migration_in": compute_cb.StopMigrationINRequest{},
|
||||
"/restmachine/cloudbroker/compute/tagAdd": compute_cb.TagAddRequest{},
|
||||
"/restmachine/cloudbroker/compute/tagRemove": compute_cb.TagRemoveRequest{},
|
||||
"/restmachine/cloudbroker/compute/unpinFromStack": compute_cb.UnpinFromStackRequest{},
|
||||
"/restmachine/cloudbroker/compute/update": compute_cb.UpdateRequest{},
|
||||
"/restmachine/cloudbroker/compute/userGrant": compute_cb.UserGrantRequest{},
|
||||
"/restmachine/cloudbroker/compute/userList": compute_cb.UserListRequest{},
|
||||
"/restmachine/cloudbroker/compute/userRevoke": compute_cb.UserRevokeRequest{},
|
||||
"/restmachine/cloudbroker/compute/userUpdate": compute_cb.UserUpdateRequest{},
|
||||
"/restmachine/cloudbroker/compute/changeIp": compute_cb.ChangeIPRequest{},
|
||||
"/restmachine/cloudbroker/compute/changeMac": compute_cb.ChangeMACRequest{},
|
||||
"/restmachine/cloudbroker/compute/setNetConfig": compute_cb.SetNetConfigRequest{},
|
||||
"/restmachine/cloudbroker/compute/guest_agent_disable": compute_cb.GuestAgentDisableRequest{},
|
||||
"/restmachine/cloudbroker/compute/guest_agent_enable": compute_cb.GuestAgentEnableRequest{},
|
||||
"/restmachine/cloudbroker/compute/guest_agent_execute": compute_cb.GuestAgentExecuteRequest{},
|
||||
"/restmachine/cloudbroker/compute/guest_agent_feature_get": compute_cb.GuestAgentFeatureGetRequest{},
|
||||
"/restmachine/cloudbroker/compute/guest_agent_feature_update": compute_cb.GuestAgentFeatureUpdateRequest{},
|
||||
|
||||
// disks
|
||||
"/restmachine/cloudbroker/disks/change_disk_storage_policy": disks_cb.ChangeDiskStoragePolicyRequest{},
|
||||
@@ -664,6 +670,9 @@ func getRequestsMapCloudbroker() map[string]interface{} {
|
||||
"/restmachine/cloudbroker/disks/snapshotDelete": disks_cb.SnapshotDeleteRequest{},
|
||||
"/restmachine/cloudbroker/disks/snapshotRollback": disks_cb.SnapshotRollbackRequest{},
|
||||
"/restmachine/cloudbroker/disks/unshare": disks_cb.UnshareRequest{},
|
||||
"/restmachine/cloudbroker/disks/migrate": disks_cb.MigrateRequest{},
|
||||
"/restmachine/cloudbroker/disks/migrate_abort": disks_cb.MigrateAbortRequest{},
|
||||
"/restmachine/cloudbroker/disks/migrate_status": disks_cb.GetMigrateStatusRequest{},
|
||||
|
||||
// dpdknet
|
||||
"/restmachine/cloudbroker/dpdknet/get": dpdknet_cb.GetRequest{},
|
||||
@@ -841,23 +850,24 @@ func getRequestsMapCloudbroker() map[string]interface{} {
|
||||
"/restmachine/cloudbroker/lb/updateSysctlParams": lb_cb.UpdateSysctParamsRequest{},
|
||||
|
||||
// node
|
||||
"/restmachine/cloudbroker/node/add_ssh_identity": node_cb.AddSSHIdentityRequest{},
|
||||
"/restmachine/cloudbroker/node/applyIpmiAction": node_cb.ApplyIpmiActionRequest{},
|
||||
"/restmachine/cloudbroker/node/consumption": node_cb.ConsumptionRequest{},
|
||||
"/restmachine/cloudbroker/node/decommission": node_cb.DecommissionRequest{},
|
||||
"/restmachine/cloudbroker/node/enable": node_cb.EnableRequest{},
|
||||
"/restmachine/cloudbroker/node/enableNodes": node_cb.EnableNodesRequest{},
|
||||
"/restmachine/cloudbroker/node/get": node_cb.GetRequest{},
|
||||
"/restmachine/cloudbroker/node/get_ssh_identity": node_cb.GetSSHIdentityRequest{},
|
||||
"/restmachine/cloudbroker/node/list": node_cb.ListRequest{},
|
||||
"/restmachine/cloudbroker/node/maintenance": node_cb.MaintenanceRequest{},
|
||||
"/restmachine/cloudbroker/node/restrict": node_cb.RestrictRequest{},
|
||||
"/restmachine/cloudbroker/node/setCoreIsolation": node_cb.SetCoreIsolationRequest{},
|
||||
"/restmachine/cloudbroker/node/setHugePages": node_cb.SetHugePagesRequest{},
|
||||
"/restmachine/cloudbroker/node/setsriovstatus": node_cb.SetSRIOVStatusRequest{},
|
||||
"/restmachine/cloudbroker/node/setVFsNumber": node_cb.SetVFsNumberRequest{},
|
||||
"/restmachine/cloudbroker/node/update": node_cb.UpdateRequest{},
|
||||
"/restmachine/cloudbroker/node/setVFsParams": node_cb.VFParam{},
|
||||
"/restmachine/cloudbroker/node/add_ssh_identity": node_cb.AddSSHIdentityRequest{},
|
||||
"/restmachine/cloudbroker/node/applyIpmiAction": node_cb.ApplyIpmiActionRequest{},
|
||||
"/restmachine/cloudbroker/node/consumption": node_cb.ConsumptionRequest{},
|
||||
"/restmachine/cloudbroker/node/decommission": node_cb.DecommissionRequest{},
|
||||
"/restmachine/cloudbroker/node/enable": node_cb.EnableRequest{},
|
||||
"/restmachine/cloudbroker/node/enableNodes": node_cb.EnableNodesRequest{},
|
||||
"/restmachine/cloudbroker/node/get": node_cb.GetRequest{},
|
||||
"/restmachine/cloudbroker/node/get_ssh_identity": node_cb.GetSSHIdentityRequest{},
|
||||
"/restmachine/cloudbroker/node/list": node_cb.ListRequest{},
|
||||
"/restmachine/cloudbroker/node/maintenance": node_cb.MaintenanceRequest{},
|
||||
"/restmachine/cloudbroker/node/restrict": node_cb.RestrictRequest{},
|
||||
"/restmachine/cloudbroker/node/setCoreIsolation": node_cb.SetCoreIsolationRequest{},
|
||||
"/restmachine/cloudbroker/node/setHugePages": node_cb.SetHugePagesRequest{},
|
||||
"/restmachine/cloudbroker/node/setsriovstatus": node_cb.SetSRIOVStatusRequest{},
|
||||
"/restmachine/cloudbroker/node/setVFsNumber": node_cb.SetVFsNumberRequest{},
|
||||
"/restmachine/cloudbroker/node/update": node_cb.UpdateRequest{},
|
||||
"/restmachine/cloudbroker/node/update_description": node_cb.UpdateDescriptionRequest{},
|
||||
"/restmachine/cloudbroker/node/setVFsParams": node_cb.VFParam{},
|
||||
|
||||
// pcidevice
|
||||
"/restmachine/cloudbroker/pcidevice/create": pcidevice_cb.CreateRequest{},
|
||||
|
||||
Reference in New Issue
Block a user