This commit is contained in:
Пётр Крутов
2022-08-11 08:09:54 +00:00
parent c95208ee97
commit 68d24d41c4
308 changed files with 15470 additions and 85 deletions

31
sizes/list.go Normal file
View File

@@ -0,0 +1,31 @@
package sizes
import (
"context"
"encoding/json"
"github.com/rudecs/decort-sdk/opts"
"github.com/rudecs/decort-sdk/typed"
)
type ListRequest struct {
CloudspaceID uint64 `url:"cloudspaceId,omitempty"`
Location string `url:"location,omitempty"`
Page uint64 `url:"page,omitempty"`
Size uint64 `url:"size,omitempty"`
}
func (s Sizes) List(ctx context.Context, req ListRequest, options ...opts.DecortOpts) (SizesList, error) {
url := "/cloudapi/sizes/list"
sizesListRaw, err := s.client.DecortApiCall(ctx, typed.POST, url, req)
if err != nil {
return nil, err
}
sizesList := SizesList{}
if err := json.Unmarshal(sizesListRaw, &sizesList); err != nil {
return nil, err
}
return sizesList, nil
}

12
sizes/models.go Normal file
View File

@@ -0,0 +1,12 @@
package sizes
type Size struct {
Description string `json:"desc"`
Disks []uint64 `json:"disks"`
ID uint64 `json:"id"`
Memory uint64 `json:"memory"`
Name string `json:"name"`
VCPUs uint64 `json:"vcpus"`
}
type SizesList []Size

15
sizes/sizes.go Normal file
View File

@@ -0,0 +1,15 @@
package sizes
import (
"github.com/rudecs/decort-sdk/interfaces"
)
type Sizes struct {
client interfaces.Caller
}
func New(client interfaces.Caller) *Sizes {
return &Sizes{
client,
}
}