mcir

package
v0.4.16 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 24, 2021 License: Apache-2.0 Imports: 20 Imported by: 1

Documentation

Overview

Package mcir is to manage multi-cloud infra resource

Package mcir is to manage multi-cloud infra resource

Package mcir is to manage multi-cloud infra resource

Package mcir is to manage multi-cloud infra resource

Package mcir is to manage multi-cloud infra resource

Package mcir is to manage multi-cloud infra resource

Package mcir is to manage multi-cloud infra resource

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CheckChildResource added in v0.4.10

func CheckChildResource(nsId string, resourceType string, parentResourceId string, resourceId string) (bool, error)

CheckChildResource returns the existence of the TB MCIR resource in bool form.

func CheckResource added in v0.3.1

func CheckResource(nsId string, resourceType string, resourceId string) (bool, error)

CheckResource returns the existence of the TB MCIR resource in bool form.

func DelAllDefaultResources added in v0.4.12

func DelAllDefaultResources(nsId string) (common.IdList, error)

DelAllDefaultResources deletes all Default securityGroup, sshKey, vNet objects

func DelAllResources

func DelAllResources(nsId string, resourceType string, subString string, forceFlag string) (common.IdList, error)

DelAllResources deletes all TB MCIR object of given resourceType

func DelChildResource added in v0.4.10

func DelChildResource(nsId string, resourceType string, parentResourceId string, resourceId string, forceFlag string) error

DelChildResource deletes the TB MCIR object

func DelEleInSlice added in v0.4.10

func DelEleInSlice(arr interface{}, index int)

DelEleInSlice delete an element from slice by index

  • arr: the reference of slice
  • index: the index of element will be deleted

func DelResource

func DelResource(nsId string, resourceType string, resourceId string, forceFlag string) error

DelResource deletes the TB MCIR object

func FetchImagesForAllConnConfigs added in v0.3.8

func FetchImagesForAllConnConfigs(nsId string) (connConfigCount uint, imageCount uint, err error)

FetchImagesForAllConnConfigs gets all conn configs from Spider, lookups all images for each region of conn config, and saves into TB image objects

func FetchImagesForConnConfig added in v0.3.8

func FetchImagesForConnConfig(connConfig string, nsId string) (imageCount uint, err error)

FetchImagesForAllConnConfigs gets all conn configs from Spider, lookups all images for each region of conn config, and saves into TB image objects

func FetchSpecsForAllConnConfigs added in v0.3.8

func FetchSpecsForAllConnConfigs(nsId string) (connConfigCount uint, specCount uint, err error)

FetchSpecsForAllConnConfigs gets all conn configs from Spider, lookups all specs for each region of conn config, and saves into TB spec objects

func FetchSpecsForConnConfig added in v0.3.8

func FetchSpecsForConnConfig(connConfig string, nsId string) (specCount uint, err error)

FetchSpecsForConnConfig lookups all specs for region of conn config, and saves into TB spec objects

func GetAssociatedObjectCount added in v0.3.1

func GetAssociatedObjectCount(nsId string, resourceType string, resourceId string) (int, error)

GetAssociatedObjectCount returns the number of MCIR's associated Tumblebug objects

func GetAssociatedObjectList added in v0.3.1

func GetAssociatedObjectList(nsId string, resourceType string, resourceId string) ([]string, error)

GetAssociatedObjectList returns the list of MCIR's associated Tumblebug objects

func GetNameFromStruct

func GetNameFromStruct(u interface{}) string

GetNameFromStruct accepts any struct for argument, and returns

func GetResource

func GetResource(nsId string, resourceType string, resourceId string) (interface{}, error)

GetResource returns the requested TB MCIR object

func InspectResources added in v0.3.6

func InspectResources(connConfig string, resourceType string) (interface{}, error)

InspectResources returns the state list of TB MCIR objects of given connConfig and resourceType

func ListResource

func ListResource(nsId string, resourceType string) (interface{}, error)

ListResource returns the list of TB MCIR objects of given resourceType

func ListResourceId

func ListResourceId(nsId string, resourceType string) ([]string, error)

ListResourceId returns the list of TB MCIR object IDs of given resourceType

func LoadCommonResource added in v0.4.9

func LoadCommonResource() (common.IdList, error)

LoadCommonResource is to register common resources from asset files (../assets/*.csv)

func LoadDefaultResource added in v0.4.10

func LoadDefaultResource(nsId string, resType string, connectionName string) error

LoadDefaultResource is to register default resource from asset files (../assets/*.csv)

func RefineImageName added in v0.3.7

func RefineImageName(imageName string) string

func RefineSpecName added in v0.3.7

func RefineSpecName(specName string) string

func TbImageReqStructLevelValidation added in v0.4.7

func TbImageReqStructLevelValidation(sl validator.StructLevel)

TbImageReqStructLevelValidation func is for Validation

func TbSecurityGroupReqStructLevelValidation added in v0.4.7

func TbSecurityGroupReqStructLevelValidation(sl validator.StructLevel)

func TbSpecReqStructLevelValidation added in v0.4.7

func TbSpecReqStructLevelValidation(sl validator.StructLevel)

func TbSshKeyReqStructLevelValidation added in v0.4.7

func TbSshKeyReqStructLevelValidation(sl validator.StructLevel)

func TbSubnetReqStructLevelValidation added in v0.4.10

func TbSubnetReqStructLevelValidation(sl validator.StructLevel)

func TbVNetReqStructLevelValidation added in v0.4.7

func TbVNetReqStructLevelValidation(sl validator.StructLevel)

func ToNamingRuleCompatible added in v0.4.10

func ToNamingRuleCompatible(rawName string) string

ToNamingRuleCompatible func is a tool to replace string for name to make the name follow naming convention

func UpdateAssociatedObjectList added in v0.3.1

func UpdateAssociatedObjectList(nsId string, resourceType string, resourceId string, cmd string, objectKey string) ([]string, error)

UpdateAssociatedObjectList adds or deletes the objectKey (currently, vmKey) to/from TB object's associatedObjectList

Types

type FilterSpecsByRangeRequest added in v0.2.8

type FilterSpecsByRangeRequest struct {
	Id                 string `json:"id"`
	Name               string `json:"name"`
	ConnectionName     string `json:"connectionName"`
	CspSpecName        string `json:"cspSpecName"`
	OsType             string `json:"osType"`
	NumvCPU            Range  `json:"numvCPU"`
	NumCore            Range  `json:"numcore"`
	MemGiB             Range  `json:"memGiB"`
	StorageGiB         Range  `json:"storageGiB"`
	Description        string `json:"description"`
	CostPerHour        Range  `json:"costPerHour"`
	NumStorage         Range  `json:"numStorage"`
	MaxNumStorage      Range  `json:"maxNumStorage"`
	MaxTotalStorageTiB Range  `json:"maxTotalStorageTiB"`
	NetBwGbps          Range  `json:"netBwGbps"`
	EbsBwMbps          Range  `json:"ebsBwMbps"`
	GpuModel           string `json:"gpuModel"`
	NumGpu             Range  `json:"numGpu"`
	GpuMemGiB          Range  `json:"gpuMemGiB"`
	GpuP2p             string `json:"gpuP2p"`
	EvaluationStatus   string `json:"evaluationStatus"`
	EvaluationScore01  Range  `json:"evaluationScore01"`
	EvaluationScore02  Range  `json:"evaluationScore02"`
	EvaluationScore03  Range  `json:"evaluationScore03"`
	EvaluationScore04  Range  `json:"evaluationScore04"`
	EvaluationScore05  Range  `json:"evaluationScore05"`
	EvaluationScore06  Range  `json:"evaluationScore06"`
	EvaluationScore07  Range  `json:"evaluationScore07"`
	EvaluationScore08  Range  `json:"evaluationScore08"`
	EvaluationScore09  Range  `json:"evaluationScore09"`
	EvaluationScore10  Range  `json:"evaluationScore10"`
}

type NameOnly

type NameOnly struct {
	Name string
}

type Range added in v0.2.8

type Range struct {
	Min float32 `json:"min"`
	Max float32 `json:"max"`
}

type ReturnValue

type ReturnValue struct {
	CustomStruct interface{}
}

type SpiderAllList added in v0.3.6

type SpiderAllList struct {
	MappedList     []SpiderNameIdSystemId
	OnlySpiderList []SpiderNameIdSystemId
	OnlyCSPList    []SpiderNameIdSystemId
}

SpiderAllList is struct for OnlyCSPList, OnlySpiderList MappedList from CB-Spider response.

type SpiderAllListWrapper added in v0.3.6

type SpiderAllListWrapper struct {
	AllList SpiderAllList
}

SpiderAllListWrapper is struct for wrapping SpiderAllList struct from CB-Spider response.

type SpiderGpuInfo

type SpiderGpuInfo struct {
	Count string
	Mfr   string
	Model string
	Mem   string
}

type SpiderImageInfo

type SpiderImageInfo struct {
	// Fields for request
	Name string

	// Fields for response
	IId          common.IID // {NameId, SystemId}
	GuestOS      string     // Windows7, Ubuntu etc.
	Status       string     // available, unavailable
	KeyValueList []common.KeyValue
}

SpiderImageInfo struct is ...

func LookupImage

func LookupImage(connConfig string, imageId string) (SpiderImageInfo, error)

LookupImage accepts Spider conn config and CSP image ID, lookups and returns the Spider image object

type SpiderImageList

type SpiderImageList struct {
	Image []SpiderImageInfo `json:"image"`
}

SpiderImageList is struct for Spider Image List

func LookupImageList

func LookupImageList(connConfig string) (SpiderImageList, error)

LookupImageList accepts Spider conn config, lookups and returns the list of all images in the region of conn config in the form of the list of Spider image objects

type SpiderImageReqInfoWrapper

type SpiderImageReqInfoWrapper struct {
	ConnectionName string
	ReqInfo        SpiderImageInfo
}

SpiderImageReqInfoWrapper struct is ...

type SpiderKeyPairInfo

type SpiderKeyPairInfo struct {
	// Fields for request
	Name string

	// Fields for response
	IId          common.IID // {NameId, SystemId}
	Fingerprint  string
	PublicKey    string
	PrivateKey   string
	VMUserID     string
	KeyValueList []common.KeyValue
}

type SpiderKeyPairReqInfoWrapper

type SpiderKeyPairReqInfoWrapper struct {
	ConnectionName string
	ReqInfo        SpiderKeyPairInfo
}

type SpiderNameIdSystemId added in v0.3.6

type SpiderNameIdSystemId struct {
	NameId   string
	SystemId string
}

SpiderNameIdSystemId is struct for mapping NameID and System ID from CB-Spider response

type SpiderSecurityInfo

type SpiderSecurityInfo struct {
	// Fields for request
	Name    string
	VPCName string

	// Fields for both request and response
	SecurityRules *[]SpiderSecurityRuleInfo

	// Fields for response
	IId          common.IID // {NameId, SystemId}
	VpcIID       common.IID // {NameId, SystemId}
	Direction    string     // @todo userd??
	KeyValueList []common.KeyValue
}

type SpiderSecurityReqInfoWrapper

type SpiderSecurityReqInfoWrapper struct {
	ConnectionName string
	ReqInfo        SpiderSecurityInfo
}

type SpiderSecurityRuleInfo

type SpiderSecurityRuleInfo struct {
	FromPort   string //`json:"fromPort"`
	ToPort     string //`json:"toPort"`
	IPProtocol string //`json:"ipProtocol"`
	Direction  string //`json:"direction"`
	CIDR       string
}

type SpiderSpecInfo

type SpiderSpecInfo struct {
	Region string
	Name   string
	VCpu   SpiderVCpuInfo
	Mem    string
	Gpu    []SpiderGpuInfo

	KeyValueList []common.KeyValue
}

func LookupSpec

func LookupSpec(connConfig string, specName string) (SpiderSpecInfo, error)

LookupSpec accepts Spider conn config and CSP spec name, lookups and returns the Spider spec object

type SpiderSpecList

type SpiderSpecList struct {
	Vmspec []SpiderSpecInfo `json:"vmspec"`
}

func LookupSpecList

func LookupSpecList(connConfig string) (SpiderSpecList, error)

LookupSpecList accepts Spider conn config, lookups and returns the list of all specs in the region of conn config in the form of the list of Spider spec objects

type SpiderSubnetInfo

type SpiderSubnetInfo struct {
	IId          common.IID // {NameId, SystemId}
	IPv4_CIDR    string
	KeyValueList []common.KeyValue
}

type SpiderSubnetReqInfo

type SpiderSubnetReqInfo struct {
	Name         string `validate:"required"`
	IPv4_CIDR    string `validate:"required"`
	KeyValueList []common.KeyValue
}

type SpiderSubnetReqInfoWrapper added in v0.4.10

type SpiderSubnetReqInfoWrapper struct {
	ConnectionName string
	ReqInfo        SpiderSubnetReqInfo
}

type SpiderVCpuInfo

type SpiderVCpuInfo struct {
	Count string
	Clock string // GHz
}

type SpiderVPCInfo

type SpiderVPCInfo struct {
	IId            common.IID // {NameId, SystemId}
	IPv4_CIDR      string
	SubnetInfoList []SpiderSubnetInfo
	KeyValueList   []common.KeyValue
}

type SpiderVPCReqInfo

type SpiderVPCReqInfo struct {
	Name           string
	IPv4_CIDR      string
	SubnetInfoList []SpiderSubnetReqInfo
}

type SpiderVPCReqInfoWrapper

type SpiderVPCReqInfoWrapper struct {
	ConnectionName string
	ReqInfo        SpiderVPCReqInfo
}

type TbImageInfo

type TbImageInfo struct {
	Namespace            string            `json:"namespace,omitempty"` // required to save in RDB
	Id                   string            `json:"id,omitempty"`
	Name                 string            `json:"name,omitempty"`
	ConnectionName       string            `json:"connectionName,omitempty"`
	CspImageId           string            `json:"cspImageId,omitempty"`
	CspImageName         string            `json:"cspImageName,omitempty"`
	Description          string            `json:"description,omitempty"`
	CreationDate         string            `json:"creationDate,omitempty"`
	GuestOS              string            `json:"guestOS,omitempty"` // Windows7, Ubuntu etc.
	Status               string            `json:"status,omitempty"`  // available, unavailable
	KeyValueList         []common.KeyValue `json:"keyValueList,omitempty"`
	AssociatedObjectList []string          `json:"associatedObjectList,omitempty"`
	IsAutoGenerated      bool              `json:"isAutoGenerated,omitempty"`
}

TbImageInfo struct is for image object

func ConvertSpiderImageToTumblebugImage

func ConvertSpiderImageToTumblebugImage(spiderImage SpiderImageInfo) (TbImageInfo, error)

ConvertSpiderImageToTumblebugImage accepts an Spider image object, converts to and returns an TB image object

func RegisterImageWithId

func RegisterImageWithId(nsId string, u *TbImageReq) (TbImageInfo, error)

RegisterImageWithId accepts image creation request, creates and returns an TB image object

func RegisterImageWithInfo

func RegisterImageWithInfo(nsId string, content *TbImageInfo) (TbImageInfo, error)

RegisterImageWithInfo accepts image creation request, creates and returns an TB image object

func SearchImage added in v0.2.8

func SearchImage(nsId string, keywords ...string) ([]TbImageInfo, error)

SearchImage accepts arbitrary number of keywords, and returns the list of matched TB image objects

func UpdateImage added in v0.4.10

func UpdateImage(nsId string, imageId string, fieldsToUpdate TbImageInfo) (TbImageInfo, error)

UpdateImage accepts to-be TB image objects, updates and returns the updated TB image objects

type TbImageReq

type TbImageReq struct {
	Name           string `json:"name" validate:"required"`
	ConnectionName string `json:"connectionName" validate:"required"`
	CspImageId     string `json:"cspImageId" validate:"required"`
	Description    string `json:"description"`
}

TbImageReq struct is for image create request

type TbInspectResourcesResponse added in v0.3.6

type TbInspectResourcesResponse struct {
	// ResourcesOnCsp       interface{} `json:"resourcesOnCsp"`
	// ResourcesOnSpider    interface{} `json:"resourcesOnSpider"`
	// ResourcesOnTumblebug interface{} `json:"resourcesOnTumblebug"`
	ResourcesOnCsp       []resourceOnCspOrSpider `json:"resourcesOnCsp"`
	ResourcesOnSpider    []resourceOnCspOrSpider `json:"resourcesOnSpider"`
	ResourcesOnTumblebug []resourceOnTumblebug   `json:"resourcesOnTumblebug"`
}

TbInspectResourcesResponse is struct for response of InspectResources request

type TbSecurityGroupInfo

type TbSecurityGroupInfo struct {
	Id                   string                    `json:"id"`
	Name                 string                    `json:"name"`
	ConnectionName       string                    `json:"connectionName"`
	VNetId               string                    `json:"vNetId"`
	Description          string                    `json:"description"`
	FirewallRules        *[]SpiderSecurityRuleInfo `json:"firewallRules"`
	CspSecurityGroupId   string                    `json:"cspSecurityGroupId"`
	CspSecurityGroupName string                    `json:"cspSecurityGroupName"`
	KeyValueList         []common.KeyValue         `json:"keyValueList"`
	AssociatedObjectList []string                  `json:"associatedObjectList"`
	IsAutoGenerated      bool                      `json:"isAutoGenerated"`
}

func CreateSecurityGroup

func CreateSecurityGroup(nsId string, u *TbSecurityGroupReq) (TbSecurityGroupInfo, error)

CreateSecurityGroup accepts SG creation request, creates and returns an TB SG object

type TbSecurityGroupReq

type TbSecurityGroupReq struct {
	Name           string                    `json:"name" validate:"required"`
	ConnectionName string                    `json:"connectionName" validate:"required"`
	VNetId         string                    `json:"vNetId" validate:"required"`
	Description    string                    `json:"description"`
	FirewallRules  *[]SpiderSecurityRuleInfo `json:"firewallRules" validate:"required"`
}

type TbSpecInfo

type TbSpecInfo struct {
	Namespace             string   `json:"namespace,omitempty"` // required to save in RDB
	Id                    string   `json:"id,omitempty"`
	Name                  string   `json:"name,omitempty"`
	ConnectionName        string   `json:"connectionName,omitempty"`
	CspSpecName           string   `json:"cspSpecName,omitempty"`
	OsType                string   `json:"osType,omitempty"`
	NumvCPU               uint16   `json:"numvCPU,omitempty"`
	NumCore               uint16   `json:"numCore,omitempty"`
	MemGiB                float32  `json:"memGiB,omitempty"`
	StorageGiB            uint32   `json:"storageGiB,omitempty"`
	Description           string   `json:"description,omitempty"`
	CostPerHour           float32  `json:"costPerHour,omitempty"`
	NumStorage            uint8    `json:"numStorage,omitempty"`
	MaxNumStorage         uint8    `json:"maxNumStorage,omitempty"`
	MaxTotalStorageTiB    uint16   `json:"maxTotalStorageTiB,omitempty"`
	NetBwGbps             uint16   `json:"netBwGbps,omitempty"`
	EbsBwMbps             uint32   `json:"ebsBwMbps,omitempty"`
	GpuModel              string   `json:"gpuModel,omitempty"`
	NumGpu                uint8    `json:"numGpu,omitempty"`
	GpuMemGiB             float32  `json:"gpuMemGiB,omitempty"`
	GpuP2p                string   `json:"gpuP2p,omitempty"`
	OrderInFilteredResult uint16   `json:"orderInFilteredResult,omitempty"`
	EvaluationStatus      string   `json:"evaluationStatus,omitempty"`
	EvaluationScore01     float32  `json:"evaluationScore01,omitempty"`
	EvaluationScore02     float32  `json:"evaluationScore02,omitempty"`
	EvaluationScore03     float32  `json:"evaluationScore03,omitempty"`
	EvaluationScore04     float32  `json:"evaluationScore04,omitempty"`
	EvaluationScore05     float32  `json:"evaluationScore05,omitempty"`
	EvaluationScore06     float32  `json:"evaluationScore06,omitempty"`
	EvaluationScore07     float32  `json:"evaluationScore07,omitempty"`
	EvaluationScore08     float32  `json:"evaluationScore08,omitempty"`
	EvaluationScore09     float32  `json:"evaluationScore09,omitempty"`
	EvaluationScore10     float32  `json:"evaluationScore10,omitempty"`
	AssociatedObjectList  []string `json:"associatedObjectList,omitempty"`
	IsAutoGenerated       bool     `json:"isAutoGenerated,omitempty"`
}

func ConvertSpiderSpecToTumblebugSpec

func ConvertSpiderSpecToTumblebugSpec(spiderSpec SpiderSpecInfo) (TbSpecInfo, error)

ConvertSpiderSpecToTumblebugSpec accepts an Spider spec object, converts to and returns an TB spec object

func FilterSpecs added in v0.2.8

func FilterSpecs(nsId string, filter TbSpecInfo) ([]TbSpecInfo, error)

FilterSpecs accepts criteria for filtering, and returns the list of filtered TB spec objects

func FilterSpecsByRange added in v0.2.8

func FilterSpecsByRange(nsId string, filter FilterSpecsByRangeRequest) ([]TbSpecInfo, error)

FilterSpecsByRange accepts criteria ranges for filtering, and returns the list of filtered TB spec objects

func RegisterSpecWithCspSpecName

func RegisterSpecWithCspSpecName(nsId string, u *TbSpecReq) (TbSpecInfo, error)

RegisterSpecWithCspSpecName accepts spec creation request, creates and returns an TB spec object

func RegisterSpecWithInfo

func RegisterSpecWithInfo(nsId string, content *TbSpecInfo) (TbSpecInfo, error)

RegisterSpecWithInfo accepts spec creation request, creates and returns an TB spec object

func SortSpecs added in v0.2.8

func SortSpecs(specList []TbSpecInfo, orderBy string, direction string) ([]TbSpecInfo, error)

SortSpecs accepts the list of TB spec objects, criteria and sorting direction, sorts and returns the sorted list of TB spec objects

func UpdateSpec added in v0.2.8

func UpdateSpec(nsId string, specId string, fieldsToUpdate TbSpecInfo) (TbSpecInfo, error)

UpdateSpec accepts to-be TB spec objects, updates and returns the updated TB spec objects

type TbSpecReq

type TbSpecReq struct {
	Name           string `json:"name" validate:"required"`
	ConnectionName string `json:"connectionName" validate:"required"`
	CspSpecName    string `json:"cspSpecName" validate:"required"`
	Description    string `json:"description"`
}

type TbSshKeyInfo

type TbSshKeyInfo struct {
	Id                   string            `json:"id"`
	Name                 string            `json:"name"`
	ConnectionName       string            `json:"connectionName"`
	Description          string            `json:"description"`
	CspSshKeyName        string            `json:"cspSshKeyName"`
	Fingerprint          string            `json:"fingerprint"`
	Username             string            `json:"username"`
	VerifiedUsername     string            `json:"verifiedUsername"`
	PublicKey            string            `json:"publicKey"`
	PrivateKey           string            `json:"privateKey"`
	KeyValueList         []common.KeyValue `json:"keyValueList"`
	AssociatedObjectList []string          `json:"associatedObjectList"`
	IsAutoGenerated      bool              `json:"isAutoGenerated"`
}

func CreateSshKey

func CreateSshKey(nsId string, u *TbSshKeyReq) (TbSshKeyInfo, error)

CreateSshKey accepts SSH key creation request, creates and returns an TB sshKey object

type TbSshKeyReq

type TbSshKeyReq struct {
	Name           string `json:"name" validate:"required"`
	ConnectionName string `json:"connectionName" validate:"required"`
	Description    string `json:"description"`
}

type TbSubnetInfo added in v0.4.10

type TbSubnetInfo struct {
	Id           string
	Name         string `validate:"required"`
	IPv4_CIDR    string `validate:"required"`
	KeyValueList []common.KeyValue
	Description  string
}

type TbSubnetReq added in v0.4.10

type TbSubnetReq struct {
	Name         string `validate:"required"`
	IPv4_CIDR    string `validate:"required"`
	KeyValueList []common.KeyValue
	Description  string
}

type TbVNetInfo

type TbVNetInfo struct {
	Id                   string            `json:"id"`
	Name                 string            `json:"name"`
	ConnectionName       string            `json:"connectionName"`
	CidrBlock            string            `json:"cidrBlock"`
	SubnetInfoList       []TbSubnetInfo    `json:"subnetInfoList"`
	Description          string            `json:"description"`
	CspVNetId            string            `json:"cspVNetId"`
	CspVNetName          string            `json:"cspVNetName"`
	Status               string            `json:"status"`
	KeyValueList         []common.KeyValue `json:"keyValueList"`
	AssociatedObjectList []string          `json:"associatedObjectList"`
	IsAutoGenerated      bool              `json:"isAutoGenerated"`
}

func CreateSubnet added in v0.4.10

func CreateSubnet(nsId string, vNetId string, req TbSubnetReq, objectOnly bool) (TbVNetInfo, error)

CreateSubnet accepts subnet creation request, creates and returns an TB vNet object

func CreateVNet

func CreateVNet(nsId string, u *TbVNetReq) (TbVNetInfo, error)

CreateVNet accepts vNet creation request, creates and returns an TB vNet object

type TbVNetReq

type TbVNetReq struct {
	Name           string        `json:"name" validate:"required"`
	ConnectionName string        `json:"connectionName" validate:"required"`
	CidrBlock      string        `json:"cidrBlock"`
	SubnetInfoList []TbSubnetReq `json:"subnetInfoList"`
	Description    string        `json:"description"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL