4.5.0-alpha

This commit is contained in:
Nikita Sorokin
2023-11-07 18:26:09 +03:00
parent 2453a32d01
commit 2bc0fbae9a
198 changed files with 18877 additions and 4003 deletions

View File

@@ -0,0 +1,162 @@
// Input checks
package ic
import (
"context"
"fmt"
cb_extnet "repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudbroker/extnet"
cb_gid "repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudbroker/grid"
cb_image "repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudbroker/image"
cb_rg "repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudbroker/rg"
cb_stack "repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudbroker/stack"
cb_vins "repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudbroker/vins"
"repository.basistech.ru/BASIS/terraform-provider-decort/internal/controller"
)
func ExistRG(ctx context.Context, rgId uint64, c *controller.ControllerCfg) error {
req := cb_rg.ListRequest{
ByID: rgId,
IncludeDeleted: false,
}
rgList, err := c.CloudBroker().RG().List(ctx, req)
if err != nil {
return err
}
if len(rgList.Data) == 0 {
return fmt.Errorf("RG with id %v not found", rgId)
}
return nil
}
func ExistImage(ctx context.Context, imageId uint64, c *controller.ControllerCfg) error {
req := cb_image.ListRequest{
ByID: imageId,
}
listImages, err := c.CloudBroker().Image().List(ctx, req)
if err != nil {
return err
}
if len(listImages.Data) == 0 {
return fmt.Errorf("image with id %v not found", imageId)
}
return nil
}
func ExistVinses(ctx context.Context, vinsIds []uint64, c *controller.ControllerCfg) []error {
var errs []error
req := cb_vins.ListRequest{
IncludeDeleted: false,
}
vinsList, err := c.CloudBroker().VINS().List(ctx, req)
if err != nil {
errs = append(errs, err)
return errs
}
for _, vinsId := range vinsIds {
found := false
for _, vins := range vinsList.Data {
if vinsId == vins.ID {
found = true
break
}
}
if !found {
errs = append(errs, fmt.Errorf("VINS with ID %v not found", vinsId))
}
}
return errs
}
func ExistExtNets(ctx context.Context, extNetIds []uint64, c *controller.ControllerCfg) []error {
var errs []error
req := cb_extnet.ListRequest{}
extNetList, err := c.CloudBroker().ExtNet().List(ctx, req)
if err != nil {
errs = append(errs, err)
return errs
}
for _, extNetId := range extNetIds {
found := false
for _, extNet := range extNetList.Data {
if extNetId == extNet.ID {
found = true
break
}
}
if !found {
errs = append(errs, fmt.Errorf("EXTNET with ID %v not found", extNetId))
}
}
return errs
}
func ExistExtNet(ctx context.Context, extNetId uint64, c *controller.ControllerCfg) error {
req := cb_extnet.ListRequest{
ByID: extNetId,
}
extNetList, err := c.CloudBroker().ExtNet().List(ctx, req)
if err != nil {
return err
}
if len(extNetList.Data) == 0 {
return fmt.Errorf("EXTNET with ID %v not found", extNetId)
}
return nil
}
func ExistGID(ctx context.Context, gid uint64, c *controller.ControllerCfg) error {
req := cb_gid.ListRequest{}
gridList, err := c.CloudBroker().Grid().List(ctx, req)
if err != nil {
return err
}
for _, grid := range gridList.Data {
if grid.GID == gid {
return nil
}
}
return fmt.Errorf("GID with id %v not found", gid)
}
func ExistStack(ctx context.Context, stackId uint64, c *controller.ControllerCfg) error {
req := cb_stack.ListRequest{
ByID: stackId,
}
stackList, err := c.CloudBroker().Stack().List(ctx, req)
if err != nil {
return err
}
if len(stackList.Data) == 0 {
return fmt.Errorf("stack with id %v not found", stackList)
}
return nil
}