Documentation
¶
Overview ¶
Package resource is to handle REST API for resource
Package resource is to handle REST API for resource ¶
Package resource is to handle REST API for resource ¶
Package resource is to handle REST API for resource ¶
Package resource is to handle REST API for resource ¶
Package resource is to handle REST API for resource ¶
Package mci is to handle REST API for mci ¶
Package resource is to handle REST API for resource ¶
Package resource is to handle REST API for resource ¶
Package mci is to handle REST API for mci ¶
Package resource is to handle REST API for resource ¶
Package resource is to handle REST API for resource ¶
Package resource is to handle REST API for resource ¶
Package mci is to handle REST API for mci
Index ¶
- func ExtractSitesInfoFromMciInfo(nsId, mciId string) (*model.SitesInfo, error)
- func RestCheckK8sNodeGroupsOnK8sCreation(c echo.Context) error
- func RestCheckK8sNodeImageDesignation(c echo.Context) error
- func RestCheckResource(c echo.Context) error
- func RestCreateSharedResource(c echo.Context) error
- func RestDelAllCustomImage(c echo.Context) error
- func RestDelAllDataDisk(c echo.Context) error
- func RestDelAllImage(c echo.Context) error
- func RestDelAllResources(c echo.Context) error
- func RestDelAllSecurityGroup(c echo.Context) error
- func RestDelAllSharedResources(c echo.Context) error
- func RestDelAllSshKey(c echo.Context) error
- func RestDelAllVNet(c echo.Context) error
- func RestDelCustomImage(c echo.Context) error
- func RestDelDataDisk(c echo.Context) error
- func RestDelFirewallRules(c echo.Context) error
- func RestDelImage(c echo.Context) error
- func RestDelResource(c echo.Context) error
- func RestDelSecurityGroup(c echo.Context) error
- func RestDelSpec(c echo.Context) error
- func RestDelSshKey(c echo.Context) error
- func RestDelSubnet(c echo.Context) error
- func RestDelVNet(c echo.Context) error
- func RestDeleteAllK8sCluster(c echo.Context) error
- func RestDeleteDeregisterSubnet(c echo.Context) error
- func RestDeleteDeregisterVNet(c echo.Context) error
- func RestDeleteK8sCluster(c echo.Context) error
- func RestDeleteK8sNodeGroup(c echo.Context) error
- func RestDeleteObjectStorage(c echo.Context) error
- func RestDeleteSiteToSiteVpn(c echo.Context) error
- func RestDeleteSqlDB(c echo.Context) error
- func RestFetchImages(c echo.Context) error
- func RestFetchImagesAsync(c echo.Context) error
- func RestFetchPrice(c echo.Context) error
- func RestFetchSpecs(c echo.Context) error
- func RestFilterSpecsByRange(c echo.Context) error
- func RestGetAllCustomImage(c echo.Context) error
- func RestGetAllDataDisk(c echo.Context) error
- func RestGetAllImage(c echo.Context) error
- func RestGetAllK8sCluster(c echo.Context) error
- func RestGetAllObjectStorage(c echo.Context) error
- func RestGetAllResources(c echo.Context) error
- func RestGetAllSecurityGroup(c echo.Context) error
- func RestGetAllSiteToSiteVpn(c echo.Context) error
- func RestGetAllSqlDB(c echo.Context) error
- func RestGetAllSshKey(c echo.Context) error
- func RestGetAllVNet(c echo.Context) error
- func RestGetAvailableK8sNodeImage(c echo.Context) error
- func RestGetAvailableK8sVersion(c echo.Context) error
- func RestGetControlK8sCluster(c echo.Context) error
- func RestGetCustomImage(c echo.Context) error
- func RestGetDataDisk(c echo.Context) error
- func RestGetFetchImagesAsyncResult(c echo.Context) error
- func RestGetImage(c echo.Context) error
- func RestGetK8sCluster(c echo.Context) error
- func RestGetListSubnet(c echo.Context) error
- func RestGetObjectStorage(c echo.Context) error
- func RestGetRequestStatusOfSiteToSiteVpn(c echo.Context) error
- func RestGetRequiredK8sSubnetCount(c echo.Context) error
- func RestGetResource(c echo.Context) error
- func RestGetSecurityGroup(c echo.Context) error
- func RestGetSiteToSiteVpn(c echo.Context) error
- func RestGetSitesInMci(c echo.Context) error
- func RestGetSpec(c echo.Context) error
- func RestGetSqlDB(c echo.Context) error
- func RestGetSshKey(c echo.Context) error
- func RestGetSubnet(c echo.Context) error
- func RestGetVNet(c echo.Context) error
- func RestGetVmDataDisk(c echo.Context) error
- func RestLoadAssets(c echo.Context) error
- func RestLookupImage(c echo.Context) error
- func RestLookupImageList(c echo.Context) error
- func RestLookupSpec(c echo.Context) error
- func RestLookupSpecList(c echo.Context) error
- func RestPostCmdK8sCluster(c echo.Context) error
- func RestPostCustomImage(c echo.Context) error
- func RestPostDataDisk(c echo.Context) error
- func RestPostFileToK8sCluster(c echo.Context) error
- func RestPostFirewallRules(c echo.Context) error
- func RestPostImage(c echo.Context) error
- func RestPostK8sCluster(c echo.Context) error
- func RestPostK8sClusterDynamic(c echo.Context) error
- func RestPostK8sClusterDynamicCheckRequest(c echo.Context) error
- func RestPostK8sNodeGroup(c echo.Context) error
- func RestPostK8sNodeGroupDynamic(c echo.Context) error
- func RestPostObjectStorage(c echo.Context) error
- func RestPostRegisterSubnet(c echo.Context) error
- func RestPostRegisterVNet(c echo.Context) error
- func RestPostSecurityGroup(c echo.Context) error
- func RestPostSiteToSiteVpn(c echo.Context) error
- func RestPostSpec(c echo.Context) error
- func RestPostSqlDB(c echo.Context) error
- func RestPostSshKey(c echo.Context) error
- func RestPostSubnet(c echo.Context) error
- func RestPostVNet(c echo.Context) error
- func RestPostVmDataDisk(c echo.Context) error
- func RestPutChangeK8sNodeGroupAutoscaleSize(c echo.Context) error
- func RestPutDataDisk(c echo.Context) error
- func RestPutImage(c echo.Context) error
- func RestPutK8sCluster(c echo.Context) error
- func RestPutSecurityGroup(c echo.Context) error
- func RestPutSetK8sNodeGroupAutoscaling(c echo.Context) error
- func RestPutSpec(c echo.Context) error
- func RestPutSshKey(c echo.Context) error
- func RestPutUpgradeK8sCluster(c echo.Context) error
- func RestPutVmDataDisk(c echo.Context) error
- func RestRecommendK8sNode(c echo.Context) error
- func RestSearchImage(c echo.Context) error
- func RestSearchImageOptions(c echo.Context) error
- func RestTestAddObjectAssociation(c echo.Context) error
- func RestTestDeleteObjectAssociation(c echo.Context) error
- func RestTestGetAssociatedObjectCount(c echo.Context) error
- func RestUpdateImagesFromAsset(c echo.Context) error
- type JSONResult
- type RestFilterSpecsResponse
- type RestGetAllCustomImageResponse
- type RestGetAllDataDiskResponse
- type RestGetAllK8sClusterResponse
- type RestGetAllSecurityGroupResponse
- type RestGetAllSshKeyResponse
- type RestGetAllSubnetResponse
- type RestGetAllVNetResponse
- type RestLookupImageRequest
- type RestLookupSpecRequest
- type TbFirewallRulesWrapper
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ExtractSitesInfoFromMciInfo ¶ added in v0.9.22
func RestCheckK8sNodeGroupsOnK8sCreation ¶ added in v0.10.0
RestCheckK8sNodeGroupsOnK8sCreation func is a rest api wrapper for GetModelK8sNodeGroupsOnK8sCreation. RestCheckK8sNodeGroupsOnK8sCreation godoc @ID CheckK8sNodeGroupsOnK8sCreation @Summary Check whether nodegroups are required during the K8sCluster creation @Description Check whether nodegroups are required during the K8sCluster creation @Tags [Kubernetes] Cluster Management @Accept json @Produce json @Param providerName query string true "Name of the CSP to retrieve" @Success 200 {object} model.K8sClusterNodeGroupsOnCreation @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /checkK8sNodeGroupsOnK8sCreation [get]
func RestCheckK8sNodeImageDesignation ¶ added in v0.10.0
RestCheckK8sNodeImageDesignation func is a rest api wrapper for GetK8sNodeImageDesignation. RestCheckK8sNodeImageDesignation godoc @ID CheckK8sNodeImageDesignation @Summary Check whether node image designation is possible to create a K8sCluster @Description Check whether node image designation is possible to create a K8sCluster @Tags [Kubernetes] Cluster Management @Accept json @Produce json @Param providerName query string true "Name of the CSP to retrieve" @Success 200 {object} model.K8sClusterNodeImageDesignation @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /checkK8sNodeImageDesignation [get]
func RestCheckResource ¶
RestCheckResource godoc @ID CheckResource @Summary Check resources' existence @Description Check resources' existence @Tags [Infra Resource] Common Utility @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param resourceType path string true "Resource Type" @Param resourceId path string true "Resource ID" @Success 200 {object} model.SimpleMsg @Failure 404 {object} model.SimpleMsg @Router /ns/{nsId}/checkResource/{resourceType}/{resourceId} [get]
func RestCreateSharedResource ¶ added in v0.9.10
RestCreateSharedResource godoc @ID CreateSharedResource @Summary Create shared resources for MC-Infra @Description Create shared resources for MC-Infra @Tags [Infra Resource] Common Utility @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param option query string true "Option" Enums(all,vnet,sg,sshkey) @Param connectionName query string false "connectionName of cloud for designated resource" default() @Success 200 {object} model.SimpleMsg @Failure 404 {object} model.SimpleMsg @Router /ns/{nsId}/sharedResource [post]
func RestDelAllCustomImage ¶
RestDelAllCustomImage godoc @ID DelAllCustomImage @Summary Delete all customImages @Description Delete all customImages @Tags [Infra Resource] Image Management @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param match query string false "Delete resources containing matched ID-substring only" default() @Success 200 {object} model.IdList @Failure 404 {object} model.SimpleMsg @Router /ns/{nsId}/resources/customImage [delete]
func RestDelAllDataDisk ¶
RestDelAllDataDisk godoc @ID DelAllDataDisk @Summary Delete all Data Disks @Description Delete all Data Disks @Tags [Infra Resource] Data Disk Management @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param match query string false "Delete resources containing matched ID-substring only" default() @Success 200 {object} model.IdList @Failure 404 {object} model.SimpleMsg @Router /ns/{nsId}/resources/dataDisk [delete]
func RestDelAllImage ¶
RestDelAllImage godoc @ID DelAllImage @Summary Delete all images @Description Delete all images @Tags [Infra Resource] Image Management @Accept json @Produce json @Param nsId path string true "Namespace ID" default(system) @Param match query string false "Delete resources containing matched ID-substring only" default() @Success 200 {object} model.IdList @Failure 404 {object} model.SimpleMsg @Router /ns/{nsId}/resources/image [delete]
func RestDelAllResources ¶
RestDelAllResources is a common function to handle 'DelAllResources' REST API requests. Dummy functions for Swagger exist in [resource/*.go]
func RestDelAllSecurityGroup ¶
RestDelAllSecurityGroup godoc @ID DelAllSecurityGroup @Summary Delete all Security Groups @Description Delete all Security Groups @Tags [Infra Resource] Security Group Management @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param match query string false "Delete resources containing matched ID-substring only" default() @Success 200 {object} model.IdList @Failure 404 {object} model.SimpleMsg @Router /ns/{nsId}/resources/securityGroup [delete]
func RestDelAllSharedResources ¶
RestDelAllSharedResources godoc @ID DelAllSharedResources @Summary Delete all Default Resource Objects in the given namespace @Description Delete all Default Resource Objects in the given namespace @Tags [Infra Resource] Common Utility @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Success 200 {object} model.IdList @Failure 404 {object} model.SimpleMsg @Router /ns/{nsId}/sharedResources [delete]
func RestDelAllSshKey ¶
RestDelAllSshKey godoc @ID DelAllSshKey @Summary Delete all SSH Keys @Description Delete all SSH Keys @Tags [Infra Resource] Access Key Management @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param match query string false "Delete resources containing matched ID-substring only" default() @Success 200 {object} model.IdList @Failure 404 {object} model.SimpleMsg @Router /ns/{nsId}/resources/sshKey [delete]
func RestDelAllVNet ¶
RestDelAllVNet godoc @ID DelAllVNet @Summary Delete all VNets @Description Delete all VNets @Tags [Infra Resource] Network Management @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param match query string false "Delete resources containing matched ID-substring only" default() @Success 200 {object} model.IdList @Failure 404 {object} model.SimpleMsg @Router /ns/{nsId}/resources/vNet [delete]
func RestDelCustomImage ¶
RestDelCustomImage godoc @ID DelCustomImage @Summary Delete customImage @Description Delete customImage @Tags [Infra Resource] Image Management @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param customImageId path string true "customImage ID" @Success 200 {object} model.SimpleMsg @Failure 404 {object} model.SimpleMsg @Router /ns/{nsId}/resources/customImage/{customImageId} [delete]
func RestDelDataDisk ¶
RestDelDataDisk godoc @ID DelDataDisk @Summary Delete Data Disk @Description Delete Data Disk @Tags [Infra Resource] Data Disk Management @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param dataDiskId path string true "Data Disk ID" @Success 200 {object} model.SimpleMsg @Failure 404 {object} model.SimpleMsg @Router /ns/{nsId}/resources/dataDisk/{dataDiskId} [delete]
func RestDelFirewallRules ¶
RestDelFirewallRules godoc @ID DelFirewallRules @Summary Delete FirewallRules @Description Delete FirewallRules @Tags [Infra Resource] Security Group Management @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param securityGroupId path string true "Security Group ID" @Param firewallRuleReq body TbFirewallRulesWrapper true "FirewallRules to delete" @Success 200 {object} model.TbSecurityGroupInfo @Failure 404 {object} model.SimpleMsg @Router /ns/{nsId}/resources/securityGroup/{securityGroupId}/rules [delete]
func RestDelImage ¶
RestDelImage godoc @ID DelImage @Summary Delete image @Description Delete image @Tags [Infra Resource] Image Management @Accept json @Produce json @Param nsId path string true "Namespace ID" default(system) @Param imageId path string true "Image ID ({providerName}+{regionName}+{cspImageName})" @Success 200 {object} model.SimpleMsg @Failure 404 {object} model.SimpleMsg @Router /ns/{nsId}/resources/image/{imageId} [delete]
func RestDelResource ¶
RestDelResource is a common function to handle 'DelResource' REST API requests. Dummy functions for Swagger exist in [resource/*.go]
func RestDelSecurityGroup ¶
RestDelSecurityGroup godoc @ID DelSecurityGroup @Summary Delete Security Group @Description Delete Security Group @Tags [Infra Resource] Security Group Management @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param securityGroupId path string true "Security Group ID" @Success 200 {object} model.SimpleMsg @Failure 404 {object} model.SimpleMsg @Router /ns/{nsId}/resources/securityGroup/{securityGroupId} [delete]
func RestDelSpec ¶
RestDelSpec godoc @ID DelSpec @Summary Delete spec @Description Delete spec @Tags [Infra Resource] Spec Management @Accept json @Produce json @Param nsId path string true "Namespace ID" default(system) @Param specId path string true "Spec ID ({providerName}+{regionName}+{cspSpecName})" @Success 200 {object} model.SimpleMsg @Failure 404 {object} model.SimpleMsg @Router /ns/{nsId}/resources/spec/{specId} [delete]
func RestDelSshKey ¶
RestDelSshKey godoc @ID DelSshKey @Summary Delete SSH Key @Description Delete SSH Key @Tags [Infra Resource] Access Key Management @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param sshKeyId path string true "SSH Key ID" @Success 200 {object} model.SimpleMsg @Failure 404 {object} model.SimpleMsg @Router /ns/{nsId}/resources/sshKey/{sshKeyId} [delete]
func RestDelSubnet ¶
RestDelSubnet godoc @ID DelSubnet @Summary Delete Subnet (supporting actions: refine, force) @Description Delete Subnet @Description - refine: delete a subnet `object` if there's no resource on CSP or no inforamation on Spider @Description - force: force: delete a subnet `resource` on a CSP regardless of the current resource status (e.g., attempt to delete even if in use) @Tags [Infra Resource] Network Management @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param vNetId path string true "VNet ID" @Param subnetId path string true "Subnet ID" @Param action query string false "Action" Enums(refine, force) @Success 200 {object} model.SimpleMsg @Failure 404 {object} model.SimpleMsg @Router /ns/{nsId}/resources/vNet/{vNetId}/subnet/{subnetId} [delete]
func RestDelVNet ¶
RestDelVNet godoc @ID DelVNet @Summary Delete VNet (supporting actions: withsubnet, refine, force) @Description Delete VNet @Description - withsubnets: delete VNet and its subnets @Description - refine: delete information of VNet and its subnets if there's no info/resource in Spider/CSP @Description - force: delete VNet and its subnets regardless of the status of info/resource in Spider/CSP @Tags [Infra Resource] Network Management @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param vNetId path string true "VNet ID" @Param action query string false "Action" Enums(withsubnets,refine,force) @Success 200 {object} model.SimpleMsg @Failure 404 {object} model.SimpleMsg @Router /ns/{nsId}/resources/vNet/{vNetId} [delete]
func RestDeleteAllK8sCluster ¶
RestDeleteAllK8sCluster godoc @ID DeleteAllK8sCluster @Summary Delete all K8sClusters @Description Delete all K8sClusters @Tags [Kubernetes] Cluster Management @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param match query string false "Delete resources containing matched ID-substring only" default() @Param option query string false "Option for K8sCluster deletion" Enums(force) @Success 200 {object} model.IdList @Failure 404 {object} model.SimpleMsg @Router /ns/{nsId}/k8sCluster [delete]
func RestDeleteDeregisterSubnet ¶ added in v0.9.9
RestDeleteDeregisterSubnet godoc @ID DeleteDeregisterSubnet @Summary Deregister Subnet (created in CSP) @Description Deregister Subnet, which was created in CSP @Tags [Infra Resource] Network Management @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param vNetId path string true "VNet ID" @Param subnetId path string true "Subnet ID" @Success 200 {object} model.SimpleMsg @Failure 404 {object} model.SimpleMsg @Router /ns/{nsId}/deregisterCspResource/vNet/{vNetId}/subnet/{subnetId} [delete]
func RestDeleteDeregisterVNet ¶ added in v0.9.9
RestDeleteDeregisterVNet godoc @ID DeleteDeregisterVNet @Summary Deregister VNet (created in CSP) @Description Deregister the VNet, which was created in CSP @Tags [Infra Resource] Network Management @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param vNetId path string true "VNet ID" @Param withSubnets query string false "Delete subnets as well" Enums(true,false) @Success 201 {object} model.TbVNetInfo @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /ns/{nsId}/deregisterCspResource/vNet/{vNetId} [delete]
func RestDeleteK8sCluster ¶
RestDeleteK8sCluster func is a rest api wrapper for DeleteK8sCluster. RestDeleteK8sCluster godoc @ID DeleteK8sCluster @Summary Delete K8sCluster @Description Delete K8sCluster @Tags [Kubernetes] Cluster Management @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param k8sClusterId path string true "K8sCluster ID" default(k8scluster01) @Param option query string false "Option for K8sCluster deletion" Enums(force) @Success 200 {object} model.SimpleMsg @Failure 404 {object} model.SimpleMsg @Router /ns/{nsId}/k8sCluster/{k8sClusterId} [delete]
func RestDeleteK8sNodeGroup ¶
RestDeleteK8sNodeGroup func is a rest api wrapper for RemoveK8sNodeGroup. RestDeleteK8sNodeGroup godoc @ID DeleteK8sNodeGroup @Summary Remove a K8sNodeGroup @Description Remove a K8sNodeGroup @Tags [Kubernetes] Cluster Management @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param k8sClusterId path string true "K8sCluster ID" default(k8scluster01) @Param k8sNodeGroupName path string true "K8sNodeGroup Name" default(k8sng01) @Param option query string false "Option for K8sNodeGroup deletion" Enums(force) @Success 200 {object} model.SimpleMsg @Failure 404 {object} model.SimpleMsg @Router /ns/{nsId}/k8sCluster/{k8sClusterId}/k8sNodeGroup/{k8sNodeGroupName} [delete]
func RestDeleteObjectStorage ¶ added in v0.10.2
RestDeleteObjectStorage godoc @ID DeleteObjectStorage @Summary Delete a Object Storage @Description Delete a Object Storage @Tags [Infra Resource] Object Storage Management (under development) @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param objectStorageId path string true "Object Storage ID" default(objectstorage01) @Success 200 {object} model.SimpleMsg "OK" @Failure 400 {object} model.SimpleMsg "Bad Request" @Failure 500 {object} model.SimpleMsg "Internal Server Error" @Failure 503 {object} model.SimpleMsg "Service Unavailable" @Router /ns/{nsId}/resources/objectStorage/{objectStorageId} [delete]
func RestDeleteSiteToSiteVpn ¶ added in v0.9.22
RestDeleteSiteToSiteVpn godoc @ID DeleteSiteToSiteVpn @Summary Delete a site-to-site VPN @Description Delete a site-to-site VPN @Tags [Infra Resource] Site-to-site VPN Management (under development) @Accept json @Produce json-stream @Param nsId path string true "Namespace ID" default(default) @Param mciId path string true "MCI ID" default(mci01) @Param vpnId path string true "VPN ID" default(vpn01) @Success 200 {object} model.SimpleMsg "OK" @Failure 400 {object} model.SimpleMsg "Bad Request" @Failure 500 {object} model.SimpleMsg "Internal Server Error" @Failure 503 {object} model.SimpleMsg "Service Unavailable" @Router /ns/{nsId}/mci/{mciId}/vpn/{vpnId} [delete]
func RestDeleteSqlDB ¶ added in v0.10.2
RestDeleteSqlDB godoc @ID DeleteSqlDb @Summary Delete a SQL datatbase @Description Delete a SQL datatbase @Tags [Infra Resource] SQL Database Management (under development) @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param sqlDbId path string true "SQL DB ID" default(sqldb01) @Success 200 {object} model.SimpleMsg "OK" @Failure 400 {object} model.SimpleMsg "Bad Request" @Failure 500 {object} model.SimpleMsg "Internal Server Error" @Failure 503 {object} model.SimpleMsg "Service Unavailable" @Router /ns/{nsId}/resources/sqlDb/{sqlDbId} [delete]
func RestFetchImages ¶
RestFetchImages godoc @ID FetchImages @Summary Fetch images for regions of each CSP synchronously @Description Fetch images waiting for completion @Tags [Infra Resource] Image Management @Accept json @Produce json @Param fetchOption body model.ImageFetchOption true "Fetch option" @Success 202 {object} resource.FetchImagesAsyncResult @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /fetchImages [post]
func RestFetchImagesAsync ¶ added in v0.10.7
RestFetchImagesAsync godoc @ID FetchImagesAsync @Summary Fetch images asynchronously @Description Fetch images in the background without waiting for completion @Tags [Infra Resource] Image Management @Accept json @Produce json @Param fetchOption body model.ImageFetchOption true "Fetch option" @Success 202 {object} model.SimpleMsg @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /fetchImagesAsync [post]
func RestFetchPrice ¶ added in v0.10.7
RestFetchPrice godoc @ID FetchPrice @Summary Fetch price from all CSP connections and update the price information for associated specs in the system. @Description Fetch price from all CSP connections and update the price information for associated specs in the system. @Tags [Infra Resource] Spec Management @Accept json @Produce json @Success 200 {object} model.SimpleMsg @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /fetchPrice [post]
func RestFetchSpecs ¶
RestFetchSpecs godoc @ID FetchSpecs @Summary Fetch specs from CSPs and register them in the system. @Description Fetch specs from CSPs and register them in the system. @Tags [Infra Resource] Spec Management @Accept json @Produce json @Success 200 {object} model.SimpleMsg @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /fetchSpecs [post]
func RestFilterSpecsByRange ¶
RestFilterSpecsByRange godoc @ID FilterSpecsByRange @Summary Filter specs by range @Description Filter specs by range @Tags [Infra Resource] Spec Management @Accept json @Produce json @Param nsId path string true "Namespace ID" default(system) @Param specRangeFilter body model.FilterSpecsByRangeRequest false "Filter for range-filtering specs" @Success 200 {object} RestFilterSpecsResponse @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /ns/{nsId}/resources/filterSpecsByRange [post]
func RestGetAllCustomImage ¶
RestGetAllCustomImage godoc @ID GetAllCustomImage @Summary List all customImages or customImages' ID @Description List all customImages or customImages' ID @Tags [Infra Resource] Image Management @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param option query string false "Option" Enums(id) @Param filterKey query string false "Field key for filtering (ex:guestOS)" @Param filterVal query string false "Field value for filtering (ex: Ubuntu18.04)" @Success 200 {object} JSONResult{[DEFAULT]=RestGetAllCustomImageResponse,[ID]=model.IdList} "Different return structures by the given option param" @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /ns/{nsId}/resources/customImage [get]
func RestGetAllDataDisk ¶
RestGetAllDataDisk godoc @ID GetAllDataDisk @Summary List all Data Disks or Data Disks' ID @Description List all Data Disks or Data Disks' ID @Tags [Infra Resource] Data Disk Management @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param option query string false "Option" Enums(id) @Param filterKey query string false "Field key for filtering (ex: systemLabel)" @Param filterVal query string false "Field value for filtering (ex: Registered from CSP resource)" @Success 200 {object} JSONResult{[DEFAULT]=RestGetAllDataDiskResponse,[ID]=model.IdList} "Different return structures by the given option param" @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /ns/{nsId}/resources/dataDisk [get]
func RestGetAllImage ¶
RestGetAllImage godoc @ID GetAllImage @Summary List all images or images' ID @Description List all images or images' ID @Tags [Infra Resource] Image Management @Accept json @Produce json @Param nsId path string true "Namespace ID" default(system) @Param option query string false "Option" Enums(id) @Param filterKey query string false "Field key for filtering (ex:guestOS)" @Param filterVal query string false "Field value for filtering (ex: Ubuntu18.04)" @Success 200 {object} JSONResult{[DEFAULT]=model.SearchImageResponse,[ID]=model.IdList} "Different return structures by the given option param" @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /ns/{nsId}/resources/image [get]
func RestGetAllK8sCluster ¶
RestGetAllK8sCluster godoc @ID GetAllK8sCluster @Summary List all K8sClusters or K8sClusters' ID @Description List all K8sClusters or K8sClusters' ID @Tags [Kubernetes] Cluster Management @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param option query string false "Option" Enums(id) @Param filterKey query string false "Field key for filtering (ex: cspResourceName)" @Param filterVal query string false "Field value for filtering (ex: default-alibaba-ap-northeast-2-vpc)" @Success 200 {object} JSONResult{[DEFAULT]=RestGetAllK8sClusterResponse,[ID]=model.IdList} "Different return structures by the given option param" @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /ns/{nsId}/k8sCluster [get]
func RestGetAllObjectStorage ¶ added in v0.10.2
RestGetAllObjectStorage godoc @ID GetAllObjectStorage @Summary Get all Object Storages (TBD) @Description Get all Object Storages (TBD) @Tags [Infra Resource] Object Storage Management (under development) @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param option query string false "Option" Enums(InfoList, IdList) default(IdList) @Success 200 {object} model.VpnInfoList "OK" ///////////// @Success 200 {object} model.VpnIdList "OK" ///////////// @Failure 400 {object} model.SimpleMsg "Bad Request" @Failure 500 {object} model.SimpleMsg "Internal Server Error" @Failure 503 {object} model.SimpleMsg "Service Unavailable" @Router /ns/{nsId}/resources/objectStorage [get]
func RestGetAllResources ¶
RestGetAllResources is a common function to handle 'GetAllResources' REST API requests. Dummy functions for Swagger exist in [resource/*.go]
func RestGetAllSecurityGroup ¶
RestGetAllSecurityGroup godoc @ID GetAllSecurityGroup @Summary List all Security Groups or Security Groups' ID @Description List all Security Groups or Security Groups' ID @Tags [Infra Resource] Security Group Management @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param option query string false "Option" Enums(id) @Param filterKey query string false "Field key for filtering (ex: systemLabel)" @Param filterVal query string false "Field value for filtering (ex: Registered from CSP resource)" @Success 200 {object} JSONResult{[DEFAULT]=RestGetAllSecurityGroupResponse,[ID]=model.IdList} "Different return structures by the given option param" @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /ns/{nsId}/resources/securityGroup [get]
func RestGetAllSiteToSiteVpn ¶ added in v0.9.22
RestGetAllSiteToSiteVpn godoc @ID GetAllSiteToSiteVpn @Summary Get all site-to-site VPNs @Description Get all site-to-site VPNs @Tags [Infra Resource] Site-to-site VPN Management (under development) @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param mciId path string true "MCI ID" default(mci01) @Param option query string false "Option" Enums(InfoList, IdList) default(IdList) @Success 200 {object} model.VpnInfoList "OK" @Success 200 {object} model.VpnIdList "OK" @Failure 400 {object} model.SimpleMsg "Bad Request" @Failure 500 {object} model.SimpleMsg "Internal Server Error" @Failure 503 {object} model.SimpleMsg "Service Unavailable" @Router /ns/{nsId}/mci/{mciId}/vpn [get]
func RestGetAllSqlDB ¶ added in v0.10.2
RestGetAllSqlDb godoc @ID GetAllSqlDb @Summary Get all SQL Databases (TBD) @Description Get all SQL Databases (TBD) @Tags [Infra Resource] SQL Database Management (under development) @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param option query string false "Option" Enums(InfoList, IdList) default(IdList) @Success 200 {object} model.VpnInfoList "OK" ///////////// @Success 200 {object} model.VpnIdList "OK" ///////////// @Failure 400 {object} model.SimpleMsg "Bad Request" @Failure 500 {object} model.SimpleMsg "Internal Server Error" @Failure 503 {object} model.SimpleMsg "Service Unavailable" @Router /ns/{nsId}/resources/sqlDb [get]
func RestGetAllSshKey ¶
RestGetAllSshKey godoc @ID GetAllSshKey @Summary List all SSH Keys or SSH Keys' ID @Description List all SSH Keys or SSH Keys' ID @Tags [Infra Resource] Access Key Management @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param option query string false "Option" Enums(id) @Param filterKey query string false "Field key for filtering (ex: systemLabel)" @Param filterVal query string false "Field value for filtering (ex: Registered from CSP resource)" @Success 200 {object} JSONResult{[DEFAULT]=RestGetAllSshKeyResponse,[ID]=model.IdList} "Different return structures by the given option param" @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /ns/{nsId}/resources/sshKey [get]
func RestGetAllVNet ¶
RestGetAllVNet godoc @ID GetAllVNet @Summary List all VNets or VNets' ID @Description List all VNets or VNets' ID @Tags [Infra Resource] Network Management @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param option query string false "Option" Enums(id) @Param filterKey query string false "Field key for filtering (ex: cspResourceName)" @Param filterVal query string false "Field value for filtering (ex: default-alibaba-ap-northeast-1-vpc)" @Success 200 {object} JSONResult{[DEFAULT]=RestGetAllVNetResponse,[ID]=model.IdList} "Different return structures by the given option param" @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /ns/{nsId}/resources/vNet [get]
func RestGetAvailableK8sNodeImage ¶ added in v0.10.0
RestGetAvailableK8sNodeImage func is a rest api wrapper for GetAvailableK8sNodeImage. RestGetAvailableK8sNodeImage godoc @ID GetAvailableK8sNodeImage @Summary (UNDER DEVELOPMENT!!!) Get available kubernetes cluster node image @Description (UNDER DEVELOPMENT!!!) Get available kubernetes cluster node image @Tags [Kubernetes] Cluster Management @Accept json @Produce json @Param providerName query string true "Name of the CSP to retrieve" @Param regionName query string true "Name of region to retrieve" @Success 200 {object} model.K8sClusterNodeImageDetailAvailable @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /availableK8sNodeImage [get]
func RestGetAvailableK8sVersion ¶ added in v0.10.0
RestGetAvailableK8sVersion func is a rest api wrapper for GetAvailableK8sVersion. RestGetAvailableK8sVersion godoc @ID GetAvailableK8sVersion @Summary Get available kubernetes cluster version @Description Get available kubernetes cluster version @Tags [Kubernetes] Cluster Management @Accept json @Produce json @Param providerName query string true "Name of the CSP to retrieve" @Param regionName query string true "Name of region to retrieve" @Success 200 {object} model.K8sClusterVersionDetailAvailable @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /availableK8sVersion [get]
func RestGetControlK8sCluster ¶ added in v0.10.0
RestGetControlK8sCluster godoc @ID GetControlK8sCluster @Summary Control the creation of K8sCluster (continue, withdraw) @Description Control the creation of K8sCluster (continue, withdraw) @Tags [Kubernetes] Cluster Management @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param k8sClusterId path string true "K8sCluster ID" default(k8scluster01) @Param action query string true "Action to K8sCluster" Enums(continue, withdraw) @Success 200 {object} model.SimpleMsg @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /ns/{nsId}/control/k8sCluster/{k8sClusterId} [get]
func RestGetCustomImage ¶
RestGetCustomImage godoc @ID GetCustomImage @Summary Get customImage @Description Get customImage @Tags [Infra Resource] Image Management @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param customImageId path string true "customImage ID" @Success 200 {object} model.TbCustomImageInfo @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /ns/{nsId}/resources/customImage/{customImageId} [get]
func RestGetDataDisk ¶
RestGetDataDisk godoc @ID GetDataDisk @Summary Get Data Disk @Description Get Data Disk @Tags [Infra Resource] Data Disk Management @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param dataDiskId path string true "Data Disk ID" @Success 200 {object} model.TbDataDiskInfo @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /ns/{nsId}/resources/dataDisk/{dataDiskId} [get]
func RestGetFetchImagesAsyncResult ¶ added in v0.10.7
RestGetFetchImagesAsyncResult godoc @ID GetFetchImagesAsyncResult @Summary Get result of asynchronous image fetching @Description Get detailed results from the last asynchronous image fetch operation @Tags [Infra Resource] Image Management @Accept json @Produce json @Success 200 {object} resource.FetchImagesAsyncResult @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /fetchImagesResult [get]
func RestGetImage ¶
RestGetImage godoc @ID GetImage @Summary Get image @Description GetImage returns an image object if there are matched images for the given namespace and imageKey(Id, CspResourceName, GuestOS,...) @Tags [Infra Resource] Image Management @Accept json @Produce json @Param nsId path string true "Namespace ID" default(system) @Param imageId path string true "(Note: imageId param will be refined in next release, enabled for temporal support) This param accepts vaious input types as Image Key: [1. registerd ID: ({providerName}+{regionName}+{GuestOS}). 2. cspImageName. 3. GuestOS)]" @Success 200 {object} model.TbImageInfo @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /ns/{nsId}/resources/image/{imageId} [get]
func RestGetK8sCluster ¶
RestGetK8sCluster func is a rest api wrapper for GetK8sCluster. RestGetK8sCluster godoc @ID GetK8sCluster @Summary Get K8sCluster @Description Get K8sCluster @Tags [Kubernetes] Cluster Management @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param k8sClusterId path string true "K8sCluster ID" default(k8scluster01) @Success 200 {object} model.TbK8sClusterInfo @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /ns/{nsId}/k8sCluster/{k8sClusterId} [get]
func RestGetListSubnet ¶ added in v0.9.9
RestGetListSubnet godoc @ID GetAllSubnet @Summary List all subnets @Description List all subnets @Tags [Infra Resource] Network Management @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param vNetId path string true "VNet ID" @Success 200 {object} RestGetAllSubnetResponse @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /ns/{nsId}/resources/vNet/{vNetId}/subnet [get]
func RestGetObjectStorage ¶ added in v0.10.2
RestGetObjectStorage godoc @ID GetObjectStorage @Summary Get resource info of a Object Storage @Description Get resource info of a Object Storage @Tags [Infra Resource] Object Storage Management (under development) @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param objectStorageId path string true "Object Storage ID" default(objectstorage01) @Param detail query string false "Resource info by detail (refined, raw)" default(refined) @Success 200 {object} model.ObjectStorageInfo "OK" @Failure 400 {object} model.SimpleMsg "Bad Request" @Failure 500 {object} model.SimpleMsg "Internal Server Error" @Failure 503 {object} model.SimpleMsg "Service Unavailable" @Router /ns/{nsId}/resources/objectStorage/{objectStorageId} [get]
func RestGetRequestStatusOfSiteToSiteVpn ¶ added in v0.9.22
RestGetRequestStatusOfSiteToSiteVpn godoc @ID GetRequestStatusOfSiteToSiteVpn @Summary Check the status of a specific request by its ID @Description Check the status of a specific request by its ID @Tags [Infra Resource] Site-to-site VPN Management (under development) @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param mciId path string true "MCI ID" default(mci01) @Param vpnId path string true "VPN ID" default(vpn01) @Param requestId path string true "Request ID" @Success 200 {object} model.Response "OK" @Failure 400 {object} model.SimpleMsg "Bad Request" @Failure 500 {object} model.SimpleMsg "Internal Server Error" @Failure 503 {object} model.SimpleMsg "Service Unavailable" @Router /ns/{nsId}/mci/{mciId}/vpn/{vpnId}/request/{requestId} [get]
func RestGetRequiredK8sSubnetCount ¶ added in v0.10.0
RestGetRequiredK8sSubnetCount func is a rest api wrapper for GetModelK8sRequiredSubnetCount. RestGetRequiredK8sSubnetCount godoc @ID GetRequiredK8sSubnetCount @Summary Get the required subnet count to create a K8sCluster @Description Get the required subnet count to create a K8sCluster @Tags [Kubernetes] Cluster Management @Accept json @Produce json @Param providerName query string true "Name of the CSP to retrieve" @Success 200 {object} model.K8sClusterRequiredSubnetCount @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /requiredK8sSubnetCount [get]
func RestGetResource ¶
RestGetResource is a common function to handle 'GetResource' REST API requests. Dummy functions for Swagger exist in [resource/*.go]
func RestGetSecurityGroup ¶
RestGetSecurityGroup godoc @ID GetSecurityGroup @Summary Get Security Group @Description Get Security Group @Tags [Infra Resource] Security Group Management @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param securityGroupId path string true "Security Group ID" @Success 200 {object} model.TbSecurityGroupInfo @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /ns/{nsId}/resources/securityGroup/{securityGroupId} [get]
func RestGetSiteToSiteVpn ¶ added in v0.9.22
RestGetSiteToSiteVpn godoc @ID GetSiteToSiteVpn @Summary Get resource info of a site-to-site VPN @Description Get resource info of a site-to-site VPN @Tags [Infra Resource] Site-to-site VPN Management (under development) @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param mciId path string true "MCI ID" default(mci01) @Param vpnId path string true "VPN ID" default(vpn01) @Success 200 {object} model.VpnInfo "OK" @Failure 400 {object} model.SimpleMsg "Bad Request" @Failure 500 {object} model.SimpleMsg "Internal Server Error" @Failure 503 {object} model.SimpleMsg "Service Unavailable" @Router /ns/{nsId}/mci/{mciId}/vpn/{vpnId} [get]
func RestGetSitesInMci ¶ added in v0.9.22
RestGetSitesInMci godoc @ID GetSitesInMci @Summary Get sites in MCI @Description Get sites in MCI @Tags [Infra Resource] Site-to-site VPN Management (under development) @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param mciId path string true "MCI ID" default(mci01) @Success 200 {object} model.SitesInfo "OK" @Failure 400 {object} model.SimpleMsg "Bad Request" @Failure 500 {object} model.SimpleMsg "Internal Server Error" @Failure 503 {object} model.SimpleMsg "Service Unavailable" @Router /ns/{nsId}/mci/{mciId}/site [get]
func RestGetSpec ¶
RestGetSpec godoc @ID GetSpec @Summary Get spec @Description Get spec @Tags [Infra Resource] Spec Management @Accept json @Produce json @Param nsId path string true "Namespace ID" default(system) @Param specId path string true "Spec ID ({providerName}+{regionName}+{cspSpecName})" @Success 200 {object} model.TbSpecInfo @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /ns/{nsId}/resources/spec/{specId} [get]
func RestGetSqlDB ¶ added in v0.10.2
RestGetSqlDB godoc @ID GetSqlDb @Summary Get resource info of a SQL datatbase @Description Get resource info of a SQL datatbase @Tags [Infra Resource] SQL Database Management (under development) @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param sqlDbId path string true "SQL DB ID" default(sqldb01) @Param detail query string false "Resource info by detail (refined, raw)" default(refined) @Success 200 {object} model.SqlDBInfo "OK" @Failure 400 {object} model.SimpleMsg "Bad Request" @Failure 500 {object} model.SimpleMsg "Internal Server Error" @Failure 503 {object} model.SimpleMsg "Service Unavailable" @Router /ns/{nsId}/resources/sqlDb/{sqlDbId} [get]
func RestGetSshKey ¶
RestGetSshKey godoc @ID GetSshKey @Summary Get SSH Key @Description Get SSH Key @Tags [Infra Resource] Access Key Management @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param sshKeyId path string true "SSH Key ID" @Success 200 {object} model.TbSshKeyInfo @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /ns/{nsId}/resources/sshKey/{sshKeyId} [get]
func RestGetSubnet ¶ added in v0.9.9
RestGetSubnet godoc @ID GetSubnet @Summary Get Subnet @Description Get Subnet @Tags [Infra Resource] Network Management @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param vNetId path string true "VNet ID" @Param subnetId path string true "Subnet ID" @Success 200 {object} model.TbSubnetInfo @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /ns/{nsId}/resources/vNet/{vNetId}/subnet/{subnetId} [get]
func RestGetVNet ¶
RestGetVNet godoc @ID GetVNet @Summary Get VNet @Description Get VNet @Tags [Infra Resource] Network Management @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param vNetId path string true "VNet ID" @Success 200 {object} model.TbVNetInfo @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /ns/{nsId}/resources/vNet/{vNetId} [get]
func RestGetVmDataDisk ¶
RestGetVmDataDisk godoc @ID GetVmDataDisk @Summary Get available dataDisks for a VM @Description Get available dataDisks for a VM @Tags [Infra Resource] Data Disk Management @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param mciId path string true "MCI ID" default(mci01) @Param vmId path string true "VM ID" default(g1-1) @Success 200 {object} JSONResult{[DEFAULT]=RestGetAllDataDiskResponse,[ID]=model.IdList} "Different return structures by the given option param" @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /ns/{nsId}/mci/{mciId}/vm/{vmId}/dataDisk [get]
func RestLoadAssets ¶ added in v0.9.10
RestLoadAssets godoc @ID LoadAssets @Summary Load Common Resources from internal asset files @Description Load Common Resources from internal asset files (Spec, Image) @Tags [Admin] System Configuration @Accept json @Produce json @Success 200 {object} model.IdList @Failure 404 {object} model.SimpleMsg @Router /loadAssets [get]
func RestLookupImage ¶
RestLookupImage godoc @ID LookupImage @Summary Lookup image (for debugging purposes) @Description Lookup image (for debugging purposes) @Tags [Infra Resource] Image Management @Accept json @Produce json @Param lookupImageReq body RestLookupImageRequest true "Specify connectionName, cspImageName" @Success 200 {object} model.SpiderImageInfo @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /lookupImage [post]
func RestLookupImageList ¶
RestLookupImageList godoc @ID LookupImageList @Summary Lookup image list (for debugging purposes) @Description Lookup image list (for debugging purposes) @Tags [Infra Resource] Image Management @Accept json @Produce json @Param lookupImagesReq body common.TbConnectionName true "Specify connectionName" @Success 200 {object} model.SpiderImageList @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /lookupImages [post]
func RestLookupSpec ¶
RestLookupSpec godoc @ID LookupSpec @Summary Lookup spec (for debugging purposes) @Description Lookup spec (for debugging purposes) @Tags [Infra Resource] Spec Management @Accept json @Produce json @Param lookupSpecReq body RestLookupSpecRequest true "Specify connectionName & cspSpecNameS" @Success 200 {object} model.SpiderSpecInfo @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /lookupSpec [post]
func RestLookupSpecList ¶
RestLookupSpecList godoc @ID LookupSpecList @Summary Lookup spec list (for debugging purposes) @Description Lookup spec list (for debugging purposes) @Tags [Infra Resource] Spec Management @Accept json @Produce json @Param lookupSpecsReq body common.TbConnectionName true "Specify connectionName" @Success 200 {object} model.SpiderSpecList @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /lookupSpecs [post]
func RestPostCmdK8sCluster ¶ added in v0.10.4
RestPostCmdK8sCluster godoc @ID PostCmdK8sCluster @Summary Send a command to specified Container in K8sCluster @Description Send a command to specified Container in K8sCluster @Description [note] This feature is not intended for general use @Description This API is provided as an exceptional and limited function for specific purposes such as migration. @Description Kubernetes resource information required as input for this API is not currently provided, and its availability in the future is uncertain. @Tags [Kubernetes] Cluster's Container Remote Command @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param k8sClusterId path string true "K8sCluster ID" default(k8scluster01) @Param k8sClusterNamespace query string true "Namespace in K8sCluster to apply the command" default(default) @Param k8sClusterPodName query string true "Pod Name in K8sCluster to apply the command" default(mypod) @Param k8sClusterContainerName query string false "Container Name in K8sCluster to apply the command" @Param k8sClusterContainerCmdReq body model.TbK8sClusterContainerCmdReq true "K8sCluster's Container Command Request" @Param x-request-id header string false "Custom request ID" @Success 200 {object} model.TbK8sClusterContainerCmdResult @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /ns/{nsId}/cmd/k8sCluster/{k8sClusterId} [post]
func RestPostCustomImage ¶
RestPostCustomImage godoc @ID PostCustomImage @Summary Register existing Custom Image in a CSP @Description Register existing Custom Image in a CSP (option=register) @Tags [Infra Resource] Image Management @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param option query string true "Option: " Enums(register) @Param customImageRegisterReq body model.TbCustomImageReq true "Request to Register existing Custom Image in a CSP" @Success 200 {object} model.TbCustomImageInfo @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /ns/{nsId}/resources/customImage [post]
func RestPostDataDisk ¶
RestPostDataDisk godoc @ID PostDataDisk @Summary Create Data Disk @Description Create Data Disk @Tags [Infra Resource] Data Disk Management @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param option query string false "Option: " Enums(register) @Param dataDiskInfo body model.TbDataDiskReq true "Details for an Data Disk object" @Success 200 {object} model.TbDataDiskInfo @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /ns/{nsId}/resources/dataDisk [post]
func RestPostFileToK8sCluster ¶ added in v0.10.7
RestPostFileToK8sCluster godoc @ID PostFileToK8sCluster @Summary Transfer a file to specified Container in K8sCluster @Description Transfer a file to specified Container in K8sCluster. The tar command is required in the container. @Description [note] This feature is not intended for general use @Description This API is provided as an exceptional and limited function for specific purposes such as migration. @Description Kubernetes resource information required as input for this API is not currently provided, and its availability in the future is uncertain. @Tags [Kubernetes] Cluster's Container Remote Command @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param k8sClusterId path string true "K8sCluster ID" default(k8scluster01) @Param k8sClusterNamespace query string true "Namespace in K8sCluster to apply the command" default(default) @Param k8sClusterPodName query string true "Pod Name in K8sCluster to apply the command" default(mypod) @Param k8sClusterContainerName query string false "Container Name in K8sCluster to apply the command" @Param path formData string true "Target path where the file will be stored" default(/tmp) @Param file formData file true "The file to be uploaded (Max 10MB)" @Param x-request-id header string false "Custom request ID" @Success 200 {object} model.TbK8sClusterContainerCmdResults @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /ns/{nsId}/transferFile/k8sCluster/{k8sClusterId} [post]
func RestPostFirewallRules ¶
RestPostFirewallRules godoc @ID PostFirewallRules @Summary Create FirewallRules @Description Create FirewallRules @Tags [Infra Resource] Security Group Management @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param securityGroupId path string true "Security Group ID" @Param firewallRuleReq body TbFirewallRulesWrapper true "FirewallRules to create" @Success 200 {object} model.TbSecurityGroupInfo @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /ns/{nsId}/resources/securityGroup/{securityGroupId}/rules [post]
func RestPostImage ¶
RestPostImage godoc @ID PostImage @Summary Register image @Description Register image @Tags [Infra Resource] Image Management @Accept json @Produce json @Param action query string true "registeringMethod" Enums(registerWithInfo, registerWithId) @Param nsId path string true "Namespace ID" default(system) @Param imageInfo body model.TbImageInfo false "Specify details of a image object (cspResourceName, guestOS, description, ...) manually" @Param imageReq body model.TbImageReq false "Specify (name, connectionName, cspImageName) to register an image object automatically" @Param update query boolean false "Force update to existing image object" default(false) @Success 200 {object} model.TbImageInfo @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /ns/{nsId}/resources/image [post]
func RestPostK8sCluster ¶
RestPostK8sCluster func is a rest api wrapper for CreateK8sCluster. RestPostK8sCluster godoc @ID PostK8sCluster @Summary Create K8sCluster @Description Create K8sCluster<br>Find details from https://github.com/cloud-barista/cb-tumblebug/discussions/1614 @Tags [Kubernetes] Cluster Management @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param option query string false "Option: [required params for register] connectionName, name, cspResourceId" Enums(register) @Param k8sClusterReq body model.TbK8sClusterReq true "Details of the K8sCluster object" @Success 200 {object} model.TbK8sClusterInfo @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /ns/{nsId}/k8sCluster [post]
func RestPostK8sClusterDynamic ¶ added in v0.10.0
RestPostK8sClusterDynamic godoc @ID PostK8sClusterDynamic @Summary Create K8sCluster Dynamically @Description Create K8sCluster Dynamically from common spec and image @Tags [Kubernetes] Cluster Management @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param k8sClusterDyanmicReq body model.TbK8sClusterDynamicReq true "Request body to provision K8sCluster dynamically. <br> Must include commonSpec and commonImage info. <br> (ex: {name: k8scluster01, commonImage: azure+koreacentral+ubuntu22.04, commonSpec: azure+koreacentral+Standard_B2s}]}) <br> You can use /k8sClusterRecommendNode and /k8sClusterDynamicCheckRequest to get it. <br> Check the guide: https://github.com/cloud-barista/cb-tumblebug/discussions/1913" @Param option query string false "Option for K8sCluster creation" Enums(hold) @Param x-request-id header string false "Custom request ID" @Success 200 {object} model.TbK8sClusterInfo @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /ns/{nsId}/k8sClusterDynamic [post]
func RestPostK8sClusterDynamicCheckRequest ¶ added in v0.10.0
RestPostK8sClusterDynamicCheckRequest godoc @ID PostK8sClusterDynamicCheckRequest @Summary Check available ConnectionConfig list for creating K8sCluster Dynamically @Description Check available ConnectionConfig list before create K8sCluster Dynamically from common spec and image @Tags [Kubernetes] Cluster Management @Accept json @Produce json @Param k8sClusterConnectionConfigCandidatesReq body model.K8sClusterConnectionConfigCandidatesReq true "Details for K8sCluster dynamic request information" @Success 200 {object} model.CheckK8sClusterDynamicReqInfo @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /k8sClusterDynamicCheckRequest [post]
func RestPostK8sNodeGroup ¶
RestPostK8sNodeGroup func is a rest api wrapper for AddK8sNodeGroup. RestPostK8sNodeGroup godoc @ID PostK8sNodeGroup @Summary Add a K8sNodeGroup @Description Add a K8sNodeGroup @Tags [Kubernetes] Cluster Management @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param k8sClusterId path string true "K8sCluster ID" default(k8scluster01) @Param k8sNodeGroupReq body model.TbK8sNodeGroupReq true "Details of the K8sNodeGroup object" @Success 200 {object} model.TbK8sClusterInfo @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /ns/{nsId}/k8sCluster/{k8sClusterId}/k8sNodeGroup [post]
func RestPostK8sNodeGroupDynamic ¶ added in v0.10.2
RestPostK8sNodeGroupDynamic godoc @ID PostK8sNodeGroupDynamic @Summary Create K8sNodeGroup Dynamically @Description Create K8sNodeGroup Dynamically from common spec and image @Tags [Kubernetes] Cluster Management @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param k8sClusterId path string true "K8sCluster ID" default(k8scluster01) @Param k8sNodeGroupDynamicReq body model.TbK8sNodeGroupDynamicReq true "Request body to provision K8sNodeGroup dynamically. <br> Must include commonSpec and commonImage info. <br> (ex: {name: k8sng01, commonImage: azure+koreacentral+ubuntu22.04, commonSpec: azure+koreacentral+Standard_B2s}]}) <br> You can use /k8sClusterRecommendNode and /k8sClusterDynamicCheckRequest to get it. <br> Check the guide: https://github.com/cloud-barista/cb-tumblebug/discussions/1913" @Param x-request-id header string false "Custom request ID" @Success 200 {object} model.TbK8sNodeGroupInfo @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /ns/{nsId}/k8sCluster/{k8sClusterId}/k8sNodeGroupDynamic [post]
func RestPostObjectStorage ¶ added in v0.10.2
RestPostObjectStorage godoc @ID PostObjectStorage @Summary Create a Object Storages @Description Create a Object Storages @Description @Description Supported CSPs: AWS, Azure @Description - Note - `connectionName` example: aws-ap-northeast-2, azure-koreacentral @Description @Description - Note - Please check the `requiredCSPResource` property which includes CSP specific values. @Description @Description - Note - You can find the API usage examples on this link, https://github.com/cloud-barista/mc-terrarium/discussions/117 @Description @Tags [Infra Resource] Object Storage Management (under development) @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param objectStorageReq body model.RestPostObjectStorageRequest true "Request body to create a Object Storage" @Param action query string false "Action" Enums(retry) @Success 200 {object} model.ObjectStorageInfo "OK" @Failure 400 {object} model.SimpleMsg "Bad Request" @Failure 500 {object} model.SimpleMsg "Internal Server Error" @Failure 503 {object} model.SimpleMsg "Service Unavailable" @Router /ns/{nsId}/resources/objectStorage [post]
func RestPostRegisterSubnet ¶ added in v0.9.9
RestPostRegisterSubnet godoc @ID PostRegisterSubnet @Summary Register Subnet (created in CSP) @Description Register Subnet, which was created in CSP @Tags [Infra Resource] Network Management @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param vNetId path string true "VNet ID" @Param subnetReq body model.TbRegisterSubnetReq true "Details for an Subnet object" @Success 200 {object} model.TbSubnetInfo @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /ns/{nsId}/registerCspResource/vNet/{vNetId}/subnet [post]
func RestPostRegisterVNet ¶ added in v0.9.9
RestPostRegisterVNet godoc @ID PostRegisterVNet @Summary Register VNet (created in CSP) @Description Register the VNet, which was created in CSP @Tags [Infra Resource] Network Management @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param vNetRegisterReq body model.TbRegisterVNetReq true "Inforamation required to register the VNet created externally" @Success 201 {object} model.TbVNetInfo @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /ns/{nsId}/registerCspResource/vNet [post]
func RestPostSecurityGroup ¶
RestPostSecurityGroup godoc @ID PostSecurityGroup @Summary Create Security Group @Description Create Security Group @Tags [Infra Resource] Security Group Management @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param option query string false "Option: [required params for register] connectionName, name, vNetId, cspResourceId" Enums(register) @Param securityGroupReq body model.TbSecurityGroupReq true "Details for an securityGroup object" @Success 200 {object} model.TbSecurityGroupInfo @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /ns/{nsId}/resources/securityGroup [post]
func RestPostSiteToSiteVpn ¶ added in v0.9.22
RestPostSiteToSiteVpn godoc @ID PostSiteToSiteVpn @Summary Create a site-to-site VPN @Description Create a site-to-site VPN @Description @Description The supported CSP sets are as follows: @Description @Description - AWS and one of CSPs in Azure, GCP, Alibaba, Tencent, and IBM @Description @Description - Note: It will take about `15 ~ 45 minutes`. @Tags [Infra Resource] Site-to-site VPN Management (under development) @Accept json @Produce json-stream @Param nsId path string true "Namespace ID" default(default) @Param mciId path string true "MCI ID" default(mci01) @Param vpnReq body model.RestPostVpnRequest true "Sites info for VPN configuration" @Param action query string false "Action" Enums(retry) @Success 200 {object} model.SimpleMsg "OK" @Failure 400 {object} model.SimpleMsg "Bad Request" @Failure 500 {object} model.SimpleMsg "Internal Server Error" @Failure 503 {object} model.SimpleMsg "Service Unavailable" @Router /ns/{nsId}/mci/{mciId}/vpn [post]
func RestPostSpec ¶
RestPostSpec godoc @ID PostSpec @Summary Register spec @Description Register spec @Tags [Infra Resource] Spec Management @Accept json @Produce json @Param action query string true "registeringMethod" Enums(registerWithInfo, registerWithCspResourceId) @Param nsId path string true "Namespace ID" default(system) @Param specInfo body model.TbSpecInfo false "Specify details of a spec object (vCPU, memoryGiB, ...) manually" @Param specReq body model.TbSpecReq false "Specify n(ame, connectionName, cspSpecName) to register a spec object automatically" @Param update query boolean false "Force update to existing spec object" default(false) @Success 200 {object} model.TbSpecInfo @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /ns/{nsId}/resources/spec [post]
func RestPostSqlDB ¶ added in v0.10.2
RestPostSqlDB godoc @ID PostSqlDb @Summary Create a SQL Databases @Description Create a SQL Databases @Description @Description Supported CSPs: AWS, Azure, GCP, NCP @Description - Note - `connectionName` example: aws-ap-northeast-2, azure-koreacentral, gcp-asia-northeast3, ncpvpc-kr @Description @Description - Note - Please check the `requiredCSPResource` property which includes CSP specific values. @Description @Description - Note - You can find the API usage examples on this link, https://github.com/cloud-barista/mc-terrarium/discussions/110 @Description @Tags [Infra Resource] SQL Database Management (under development) @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param sqlDbReq body model.RestPostSqlDBRequest true "Request body to create a SQL database" @Param action query string false "Action" Enums(retry) @Success 200 {object} model.SqlDBInfo "OK" @Failure 400 {object} model.SimpleMsg "Bad Request" @Failure 500 {object} model.SimpleMsg "Internal Server Error" @Failure 503 {object} model.SimpleMsg "Service Unavailable" @Router /ns/{nsId}/resources/sqlDb [post]
func RestPostSshKey ¶
RestPostSshKey godoc @ID PostSshKey @Summary Create SSH Key @Description Create SSH Key @Tags [Infra Resource] Access Key Management @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param option query string false "Option: [required params for register] connectionName, name, cspResourceId, fingerprint, username, publicKey, privateKey" Enums(register) @Param sshKeyInfo body model.TbSshKeyReq true "Details for an SSH Key object" @Success 200 {object} model.TbSshKeyInfo @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /ns/{nsId}/resources/sshKey [post]
func RestPostSubnet ¶
RestPostSubnet godoc @ID PostSubnet @Summary Create Subnet @Description Create Subnet @Tags [Infra Resource] Network Management @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param vNetId path string true "VNet ID" @Param subnetReq body model.TbSubnetReq true "Details for an Subnet object" @Success 200 {object} model.TbSubnetInfo @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /ns/{nsId}/resources/vNet/{vNetId}/subnet [post]
func RestPostVNet ¶
RestPostVNet godoc @ID PostVNet @Summary Create VNet @Description Create a new VNet @Tags [Infra Resource] Network Management @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param vNetReq body model.TbVNetReq false "Details for an VNet object" @Success 201 {object} model.TbVNetInfo @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /ns/{nsId}/resources/vNet [post]
func RestPostVmDataDisk ¶
RestPostVmDataDisk godoc @ID PostVmDataDisk @Summary Provisioning (Create and attach) dataDisk @Description Provisioning (Create and attach) dataDisk @Tags [Infra Resource] Data Disk Management @Accept json @Produce json @Param dataDiskInfo body model.TbDataDiskVmReq true "Details for an Data Disk object" @Param nsId path string true "Namespace ID" default(default) @Param mciId path string true "MCI ID" default(mci01) @Param vmId path string true "VM ID" default(g1-1) @Success 200 {object} model.TbVmInfo @Failure 404 {object} model.SimpleMsg @Router /ns/{nsId}/mci/{mciId}/vm/{vmId}/dataDisk [post]
func RestPutChangeK8sNodeGroupAutoscaleSize ¶
RestPutChangeK8sNodeGroupAutoscaleSize func is a rest api wrapper for ChangeK8sNodeGroupAutoscaleSize. RestPutChangeK8sNodeGroupAutoscaleSize godoc @ID PutChangeK8sNodeGroupAutoscaleSize @Summary Change a K8sNodeGroup's Autoscale Size @Description Change a K8sNodeGroup's Autoscale Size @Tags [Kubernetes] Cluster Management @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param k8sClusterId path string true "K8sCluster ID" default(k8scluster01) @Param k8sNodeGroupName path string true "K8sNodeGroup Name" default(k8sng01) @Param changeK8sNodeGroupAutoscaleSizeReq body model.TbChangeK8sNodeGroupAutoscaleSizeReq true "Details of the TbChangeK8sNodeGroupAutoscaleSizeReq object" @Success 200 {object} model.TbChangeK8sNodeGroupAutoscaleSizeRes @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /ns/{nsId}/k8sCluster/{k8sClusterId}/k8sNodeGroup/{k8sNodeGroupName}/autoscaleSize [put]
func RestPutDataDisk ¶
RestPutDataDisk godoc @ID PutDataDisk @Summary Upsize Data Disk @Description Upsize Data Disk @Tags [Infra Resource] Data Disk Management @Accept json @Produce json @Param dataDiskUpsizeReq body model.TbDataDiskUpsizeReq true "Request body to upsize the dataDisk" @Param nsId path string true "Namespace ID" default(default) @Param dataDiskId path string true "DataDisk ID" @Success 200 {object} model.TbDataDiskInfo @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /ns/{nsId}/resources/dataDisk/{dataDiskId} [put]
func RestPutImage ¶
RestPutImage godoc @ID PutImage @Summary Update image @Description Update image @Tags [Infra Resource] Image Management @Accept json @Produce json @Param imageInfo body model.TbImageInfo true "Details for an image object" @Param nsId path string true "Namespace ID" default(system) @Param imageId path string true "Image ID ({providerName}+{regionName}+{cspImageName})" @Success 200 {object} model.TbImageInfo @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /ns/{nsId}/resources/image/{imageId} [put]
func RestPutK8sCluster ¶
function RestPutK8sCluster not yet implemented
// RestPutK8sCluster godoc // @ID PutK8sCluster // @Summary Update K8sCluster // @Description Update K8sCluster // @Tags [Kubernetes] Cluster Management // @Accept json // @Produce json // @Param nsId path string true "Namespace ID" default(default) // @Param k8sClusterId path string true "K8sCluster ID" default(k8scluster01) // @Param k8sClusterInfo body model.TbK8sClusterInfo true "Details of the K8sCluster object" // @Success 200 {object} model.TbK8sClusterInfo // @Failure 404 {object} model.SimpleMsg // @Failure 500 {object} model.SimpleMsg // @Router /ns/{nsId}/k8sCluster/{k8sClusterId} [put]
func RestPutSecurityGroup ¶
function RestPutSecurityGroup not yet implemented
// RestPutSecurityGroup godoc // @ID PutSecurityGroup // @Summary Update Security Group // @Description Update Security Group // @Tags [Infra Resource] Security Group Management // @Accept json // @Produce json // @Param securityGroupInfo body model.TbSecurityGroupInfo true "Details for an securityGroup object" // @Success 200 {object} model.TbSecurityGroupInfo // @Failure 404 {object} model.SimpleMsg // @Failure 500 {object} model.SimpleMsg // @Router /ns/{nsId}/resources/securityGroup/{securityGroupId} [put]
func RestPutSetK8sNodeGroupAutoscaling ¶
RestPutSetK8sNodeGroupAutoscaling func is a rest api wrapper for SetK8sNodeGroupAutoscaling. RestPutSetK8sNodeGroupAutoscaling godoc @ID PutSetK8sNodeGroupAutoscaling @Summary Set a K8sNodeGroup's Autoscaling On/Off @Description Set a K8sNodeGroup's Autoscaling On/Off @Tags [Kubernetes] Cluster Management @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param k8sClusterId path string true "K8sCluster ID" default(k8scluster01) @Param k8sNodeGroupName path string true "K8sNodeGroup Name" default(k8sng01) @Param setK8sNodeGroupAutoscalingReq body model.TbSetK8sNodeGroupAutoscalingReq true "Details of the TbSetK8sNodeGroupAutoscalingReq object" @Success 200 {object} model.TbSetK8sNodeGroupAutoscalingRes @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /ns/{nsId}/k8sCluster/{k8sClusterId}/k8sNodeGroup/{k8sNodeGroupName}/onAutoscaling [put]
func RestPutSpec ¶
RestPutSpec godoc @ID PutSpec @Summary Update spec @Description Update spec @Tags [Infra Resource] Spec Management @Accept json @Produce json @Param specInfo body model.TbSpecInfo true "Details for an spec object" @Param nsId path string true "Namespace ID" default(system) @Param specId path string true "Spec ID ({providerName}+{regionName}+{cspSpecName})" @Success 200 {object} model.TbSpecInfo @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /ns/{nsId}/resources/spec/{specId} [put]
func RestPutSshKey ¶
RestPutSshKey godoc @ID PutSshKey @Summary Update SSH Key @Description Update SSH Key @Tags [Infra Resource] Access Key Management @Accept json @Produce json @Param sshKeyInfo body model.TbSshKeyInfo true "Details for an SSH Key object" @Param nsId path string true "Namespace ID" default(default) @Param sshKeyId path string true "SshKey ID" @Success 200 {object} model.TbSshKeyInfo @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /ns/{nsId}/resources/sshKey/{sshKeyId} [put]
func RestPutUpgradeK8sCluster ¶
RestPutUpgradeK8sCluster func is a rest api wrapper for UpgradeK8sCluster. RestPutUpgradeK8sCluster godoc @ID PutUpgradeK8sCluster @Summary Upgrade a K8sCluster's version @Description Upgrade a K8sCluster's version @Tags [Kubernetes] Cluster Management @Accept json @Produce json @Param nsId path string true "Namespace ID" default(default) @Param k8sClusterId path string true "K8sCluster ID" default(k8scluster01) @Param upgradeK8sClusterReq body model.TbUpgradeK8sClusterReq true "Details of the TbUpgradeK8sClusterReq object" @Success 200 {object} model.SimpleMsg @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /ns/{nsId}/k8sCluster/{k8sClusterId}/upgrade [put]
func RestPutVmDataDisk ¶
RestPutVmDataDisk godoc @ID PutVmDataDisk @Summary Attach/Detach available dataDisk @Description Attach/Detach available dataDisk @Tags [Infra Resource] Data Disk Management @Accept json @Produce json @Param attachDetachDataDiskReq body model.TbAttachDetachDataDiskReq false "Request body to attach/detach dataDisk" @Param nsId path string true "Namespace ID" default(default) @Param mciId path string true "MCI ID" default(mci01) @Param vmId path string true "VM ID" default(g1-1) @Param option query string true "Option for MCI" Enums(attach, detach) @Param force query string false "Force to attach/detach even if VM info is not matched" Enums(true, false) @Success 200 {object} model.TbVmInfo @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /ns/{nsId}/mci/{mciId}/vm/{vmId}/dataDisk [put]
func RestRecommendK8sNode ¶ added in v0.10.0
RestRecommendK8sNode godoc @ID RecommendK8sNode @Summary Recommend K8sCluster's Node plan (filter and priority) @Description Recommend K8sCluster's Node plan (filter and priority) Find details from https://github.com/cloud-barista/cb-tumblebug/discussions/1234 @Tags [Kubernetes] Cluster Management @Accept json @Produce json @Param deploymentPlan body model.DeploymentPlan false "Recommend K8sCluster's Node plan (filter and priority)" @Success 200 {object} []model.TbSpecInfo @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /k8sClusterRecommendNode [post]
func RestSearchImage ¶
RestSearchImage godoc @ID SearchImage @Summary Search image @Description Search image @Tags [Infra Resource] Image Management @Accept json @Produce json @Param nsId path string true "Namespace ID" default(system) @Param condition body model.SearchImageRequest true "condition" @Success 200 {object} model.SearchImageResponse @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /ns/{nsId}/resources/searchImage [post]
func RestSearchImageOptions ¶ added in v0.10.7
RestSearchImageOptions godoc @ID SearchImageOptions @Get available image search request options @Description Get all available options for image search fields @Tags [Infra Resource] Image Management @Accept json @Produce json @Param nsId path string true "Namespace ID" default(system) @Success 200 {object} model.SearchImageRequestOptions @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /ns/{nsId}/resources/searchImageOptions [get]
func RestTestAddObjectAssociation ¶
RestTestAddObjectAssociation is a REST API call handling function to test "model.UpdateAssociatedObjectList" function with "add" argument.
func RestTestDeleteObjectAssociation ¶
RestTestDeleteObjectAssociation is a REST API call handling function to test "model.UpdateAssociatedObjectList" function with "delete" argument.
func RestTestGetAssociatedObjectCount ¶
RestTestGetAssociatedObjectCount is a REST API call handling function to test "model.GetAssociatedObjectCount" function.
func RestUpdateImagesFromAsset ¶ added in v0.10.7
RestUpdateImagesFromAsset godoc @ID UpdateImagesFromAsset @Summary Update images from cloudimage.csv asset file @Description Update image information based on the cloudimage.csv asset file @Tags [Infra Resource] Image Management @Accept json @Produce json @Success 202 {object} resource.FetchImagesAsyncResult @Failure 404 {object} model.SimpleMsg @Failure 500 {object} model.SimpleMsg @Router /updateImagesFromAsset [post]
Types ¶
type RestFilterSpecsResponse ¶
type RestFilterSpecsResponse struct {
Spec []model.TbSpecInfo `json:"spec"`
}
RestFilterSpecsResponse is Response structure for RestFilterSpecs
type RestGetAllCustomImageResponse ¶
type RestGetAllCustomImageResponse struct {
CustomImage []model.TbCustomImageInfo `json:"customImage"`
}
Response structure for RestGetAllCustomImage
type RestGetAllDataDiskResponse ¶
type RestGetAllDataDiskResponse struct {
DataDisk []model.TbDataDiskInfo `json:"dataDisk"`
}
Response struct for RestGetAllDataDisk
type RestGetAllK8sClusterResponse ¶
type RestGetAllK8sClusterResponse struct {
K8sCluster []model.TbK8sClusterInfo `json:"cluster"`
}
Response structure for RestGetAllK8sCluster
type RestGetAllSecurityGroupResponse ¶
type RestGetAllSecurityGroupResponse struct {
SecurityGroup []model.TbSecurityGroupInfo `json:"securityGroup"`
}
Response structure for RestGetAllSecurityGroup
type RestGetAllSshKeyResponse ¶
type RestGetAllSshKeyResponse struct {
SshKey []model.TbSshKeyInfo `json:"sshKey"`
}
Response struct for RestGetAllSshKey
type RestGetAllSubnetResponse ¶ added in v0.9.9
type RestGetAllSubnetResponse struct {
SubnetInfoList []model.TbSubnetInfo `json:"subnetInfoList"`
}
Response structure for RestGetAllSubnet
type RestGetAllVNetResponse ¶
type RestGetAllVNetResponse struct {
VNet []model.TbVNetInfo `json:"vNet"`
}
Response structure for RestGetAllVNet
type RestLookupImageRequest ¶
type RestLookupImageRequest struct {
ConnectionName string `json:"connectionName"`
CspImageName string `json:"cspImageName"`
}
Request structure for RestLookupImage
type RestLookupSpecRequest ¶
type RestLookupSpecRequest struct {
ConnectionName string `json:"connectionName"`
CspResourceId string `json:"cspResourceId"`
}
Request structure for RestLookupSpec
type TbFirewallRulesWrapper ¶
type TbFirewallRulesWrapper struct {
FirewallRules []model.TbFirewallRuleInfo `json:"firewallRules"` // validate:"required"`
}