4.5.1
This commit is contained in:
@@ -5,9 +5,14 @@ import (
|
||||
"context"
|
||||
"fmt"
|
||||
|
||||
cb_account "repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudbroker/account"
|
||||
cb_compute "repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudbroker/compute"
|
||||
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_k8ci "repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudbroker/k8ci"
|
||||
cb_k8s "repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudbroker/k8s"
|
||||
cb_lb "repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudbroker/lb"
|
||||
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"
|
||||
@@ -49,6 +54,24 @@ func ExistImage(ctx context.Context, imageId uint64, c *controller.ControllerCfg
|
||||
return nil
|
||||
}
|
||||
|
||||
func ExistVins(ctx context.Context, vinsId uint64, c *controller.ControllerCfg) error {
|
||||
req := cb_vins.ListRequest{
|
||||
ByID: vinsId,
|
||||
IncludeDeleted: false,
|
||||
}
|
||||
|
||||
vinsList, err := c.CloudBroker().VINS().List(ctx, req)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
if len(vinsList.Data) == 0 {
|
||||
return fmt.Errorf("vins with ID %v not found", vinsId)
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
func ExistVinses(ctx context.Context, vinsIds []uint64, c *controller.ControllerCfg) []error {
|
||||
var errs []error
|
||||
|
||||
@@ -109,8 +132,10 @@ func ExistExtNets(ctx context.Context, extNetIds []uint64, c *controller.Control
|
||||
return errs
|
||||
}
|
||||
|
||||
func ExistExtNet(ctx context.Context, extNetId uint64, c *controller.ControllerCfg) error {
|
||||
|
||||
func ExistExtNetInLb(ctx context.Context, extNetId uint64, c *controller.ControllerCfg) error {
|
||||
if extNetId == 0 {
|
||||
return nil
|
||||
}
|
||||
req := cb_extnet.ListRequest{
|
||||
ByID: extNetId,
|
||||
}
|
||||
@@ -127,6 +152,84 @@ func ExistExtNet(ctx context.Context, extNetId uint64, c *controller.ControllerC
|
||||
return nil
|
||||
}
|
||||
|
||||
func ExistExtNetInRG(ctx context.Context, extNetId, accountId uint64, c *controller.ControllerCfg) error {
|
||||
req := cb_extnet.ListRequest{
|
||||
AccountID: accountId,
|
||||
ByID: extNetId,
|
||||
}
|
||||
|
||||
listExtNet, err := c.CloudBroker().ExtNet().List(ctx, req)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
if len(listExtNet.Data) == 0 {
|
||||
return fmt.Errorf("EXTNET with ID %v not found for account with id %d", extNetId, accountId)
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
func ExistExtNetInVins(ctx context.Context, extNetId int, c *controller.ControllerCfg) error {
|
||||
if extNetId == 0 || extNetId == -1 {
|
||||
return nil
|
||||
}
|
||||
req := cb_extnet.ListRequest{
|
||||
ByID: uint64(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 ExistExtNet(ctx context.Context, extNetId uint64, c *controller.ControllerCfg) error {
|
||||
|
||||
req := cb_extnet.ListRequest{
|
||||
ByID: extNetId,
|
||||
Status: "Enabled",
|
||||
}
|
||||
|
||||
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 ExistVinsInLb(ctx context.Context, vinsId uint64, c *controller.ControllerCfg) error {
|
||||
if vinsId == 0 {
|
||||
return nil
|
||||
}
|
||||
|
||||
req := cb_vins.ListRequest{
|
||||
ByID: vinsId,
|
||||
}
|
||||
|
||||
vinsList, err := c.CloudBroker().VINS().List(ctx, req)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
if len(vinsList.Data) == 0 {
|
||||
return fmt.Errorf("VINS with ID %v not found", vinsId)
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
func ExistGID(ctx context.Context, gid uint64, c *controller.ControllerCfg) error {
|
||||
req := cb_gid.ListRequest{}
|
||||
|
||||
@@ -160,3 +263,144 @@ func ExistStack(ctx context.Context, stackId uint64, c *controller.ControllerCfg
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
// ExistStackInPcidevice checks if compute exists with specified stackId and specified non-deleted rgId.
|
||||
func ExistStackInPcidevice(ctx context.Context, stackId, 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
|
||||
}
|
||||
|
||||
for _, v := range rgList.Data {
|
||||
for _, idVM := range v.VMs {
|
||||
req := cb_compute.GetRequest{
|
||||
ComputeID: idVM,
|
||||
}
|
||||
computeRec, err := c.CloudBroker().Compute().Get(ctx, req)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if computeRec.StackID == stackId {
|
||||
return nil
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return fmt.Errorf("no compute found with stack_id %v and rg_id %v", stackId, rgId)
|
||||
}
|
||||
|
||||
func ExistLB(ctx context.Context, lbId uint64, c *controller.ControllerCfg) error {
|
||||
|
||||
req := cb_lb.ListRequest{
|
||||
ByID: lbId,
|
||||
}
|
||||
|
||||
lbList, err := c.CloudBroker().LB().List(ctx, req)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
if len(lbList.Data) == 0 {
|
||||
return fmt.Errorf("LB with ID %v not found", lbId)
|
||||
}
|
||||
|
||||
return nil
|
||||
|
||||
}
|
||||
|
||||
func ExistAccount(ctx context.Context, accountId uint64, c *controller.ControllerCfg) error {
|
||||
req := cb_account.ListRequest{
|
||||
ByID: accountId,
|
||||
}
|
||||
|
||||
accountList, err := c.CloudBroker().Account().List(ctx, req)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
if len(accountList.Data) == 0 {
|
||||
return fmt.Errorf("account with id %d not found", accountId)
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
func ExistK8CI(ctx context.Context, k8ciId uint64, c *controller.ControllerCfg) error {
|
||||
req := cb_k8ci.ListRequest{
|
||||
ByID: k8ciId,
|
||||
}
|
||||
|
||||
k8ciList, err := c.CloudBroker().K8CI().List(ctx, req)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
if len(k8ciList.Data) == 0 {
|
||||
return fmt.Errorf("k8ci with id %d not found", k8ciId)
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
func ExistExtNetInK8s(ctx context.Context, extNetId uint64, c *controller.ControllerCfg) error {
|
||||
if extNetId == 0 {
|
||||
return nil
|
||||
}
|
||||
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 ExistVinsInK8s(ctx context.Context, vinsId uint64, c *controller.ControllerCfg) error {
|
||||
if vinsId == 0 {
|
||||
return nil
|
||||
}
|
||||
|
||||
req := cb_vins.ListRequest{
|
||||
ByID: vinsId,
|
||||
}
|
||||
|
||||
vinsList, err := c.CloudBroker().VINS().List(ctx, req)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
if len(vinsList.Data) == 0 {
|
||||
return fmt.Errorf("VINS with ID %v not found", vinsId)
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
func ExistK8s(ctx context.Context, k8sId uint64, c *controller.ControllerCfg) error {
|
||||
req := cb_k8s.ListRequest{
|
||||
ByID: k8sId,
|
||||
}
|
||||
|
||||
k8sList, err := c.CloudBroker().K8S().List(ctx, req)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
if len(k8sList.Data) == 0 {
|
||||
return fmt.Errorf("k8s with id %d not found", k8sId)
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user