restruntime

package
v0.9.3 Latest Latest
Warning

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

Go to latest
Published: Sep 2, 2024 License: Apache-2.0 Imports: 29 Imported by: 0

README

runtime for REST-based API.

Documentation

Index

Constants

define string of resource types redefined for backward compatibility

Variables

This section is empty.

Functions

func AddNLBVMs added in v0.5.11

func AddNLBVMs(c echo.Context) error

func AddNodeGroup added in v0.6.14

func AddNodeGroup(c echo.Context) error

func AddRules added in v0.5.4

func AddRules(c echo.Context) error

addRules godoc @ID add-rules-securitygroup @Summary Add Rules to SecurityGroup @Description Add new rules to a Security Group. @Tags [SecurityGroup Management] @Accept json @Produce json @Param SGName path string true "The name of the SecurityGroup to add rules to" @Param RuleControlRequest body restruntime.RuleControlRequest true "Request body for adding rules" @Success 200 {object} cres.SecurityInfo "Details of the SecurityGroup after adding rules" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid JSON structure or missing fields" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /securitygroup/{SGName}/rules [post]

func AddSubnet added in v0.4.9

func AddSubnet(c echo.Context) error

addSubnet godoc @ID add-subnet @Summary Add Subnet @Description Add a new Subnet to an existing VPC. @Tags [VPC Management] @Accept json @Produce json @Param VPCName path string true "The name of the VPC to add the Subnet to" @Param AddSubnetRequest body restruntime.AddSubnetRequest true "Request body for adding a Subnet" @Success 200 {object} cres.VPCInfo "Details of the VPC including the added Subnet" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid JSON structure or missing fields" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /vpc/{VPCName}/subnet [post]

func AddTag added in v0.9.2

func AddTag(c echo.Context) error

func AllClusterList added in v0.6.15

func AllClusterList(c echo.Context) error

func AnyCall added in v0.6.9

func AnyCall(c echo.Context) error

func ApiServer

func ApiServer(routes []route)

================ REST API Server: setup & start

func AttachDisk added in v0.6.7

func AttachDisk(c echo.Context) error

attachDisk godoc @ID attach-disk @Summary Attach Disk @Description Attach an existing Disk to a VM. @Tags [Disk Management] @Accept json @Produce json @Param DiskAttachRequest body restruntime.DiskAttachRequest true "Request body for attaching a Disk to a VM" @Param Name path string true "The name of the Disk to attach" @Success 200 {object} cres.DiskInfo "Details of the attached Disk" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid JSON structure or missing fields" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /disk/{Name}/attach [put]

func ChangeHealthChecker added in v0.5.11

func ChangeHealthChecker(c echo.Context) error

---------------------------------------------------// @todo To support or not will be decided later. // ---------------------------------------------------//

func ChangeListener added in v0.5.11

func ChangeListener(c echo.Context) error

---------------------------------------------------// @todo To support or not will be decided later. // ---------------------------------------------------//

func ChangeNodeGroupScaling added in v0.6.14

func ChangeNodeGroupScaling(c echo.Context) error

func ChangeVMGroup added in v0.5.11

func ChangeVMGroup(c echo.Context) error

---------------------------------------------------// @todo To support or not will be decided later. // ---------------------------------------------------//

func ControlVM added in v0.4.9

func ControlVM(c echo.Context) error

controlVM godoc @ID control-vm @Summary Control VM @Description Control the state of a Virtual Machine (VM) such as suspend, resume, or reboot. @Tags [VM Management] @Accept json @Produce json @Param ConnectionRequest body restruntime.ConnectionRequest true "Request body for controlling a VM" @Param Name path string true "The name of the VM to control" @Param action query string true "The action to perform on the VM (suspend, resume, reboot)" @Success 200 {object} VMStatusResponse "Result of the control operation" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid JSON structure or missing fields" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /controlvm/{Name} [put]

func CountAllClusters added in v0.8.17

func CountAllClusters(c echo.Context) error

func CountAllConnections added in v0.8.17

func CountAllConnections(c echo.Context) error

func CountAllDisks added in v0.8.17

func CountAllDisks(c echo.Context) error

countAllDisks godoc @ID count-all-disks @Summary Count All Disks @Description Get the total number of Disks across all connections. @Tags [Disk Management] @Produce json @Success 200 {object} CountResponse "Total count of Disks" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /countdisk [get]

func CountAllKeys added in v0.8.17

func CountAllKeys(c echo.Context) error

countAllKeys godoc @ID count-all-keys @Summary Count All KeyPairs @Description Get the total number of KeyPairs across all connections. @Tags [KeyPair Management] @Produce json @Success 200 {object} CountResponse "Total count of KeyPairs" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /countkeypair [get]

func CountAllMyImages added in v0.8.17

func CountAllMyImages(c echo.Context) error

countAllMyImages godoc @ID count-all-myimages @Summary Count All MyImages @Description Get the total number of MyImages across all connections. @Tags [MyImage Management] @Produce json @Success 200 {object} CountResponse "Total count of MyImages" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /countmyimage [get]

func CountAllNLBs added in v0.8.17

func CountAllNLBs(c echo.Context) error

func CountAllSecurityGroups added in v0.8.17

func CountAllSecurityGroups(c echo.Context) error

countAllSecurityGroups godoc @ID count-all-securitygroups @Summary Count All SecurityGroups @Description Get the total number of Security Groups across all connections. @Tags [SecurityGroup Management] @Produce json @Success 200 {object} CountResponse "Total count of SecurityGroups" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /countsecuritygroup [get]

func CountAllSubnets added in v0.8.17

func CountAllSubnets(c echo.Context) error

countAllSubnets godoc @ID count-all-subnets @Summary Count All Subnets @Description Get the total number of Subnets across all connections. @Tags [VPC Management] @Produce json @Success 200 {object} CountResponse "Total count of Subnets" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /countsubnet [get]

func CountAllVMs added in v0.8.17

func CountAllVMs(c echo.Context) error

countAllVMs godoc @ID count-all-vms @Summary Count All VMs @Description Get the total number of Virtual Machines (VMs) across all connections. @Tags [VM Management] @Produce json @Success 200 {object} CountResponse "Total count of VMs" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /countvm [get]

func CountAllVPCs added in v0.8.17

func CountAllVPCs(c echo.Context) error

countAllVPCs godoc @ID count-all-vpcs @Summary Count All VPCs @Description Get the total number of VPCs across all connections. @Tags [VPC Management] @Produce json @Success 200 {object} CountResponse "Total count of VPCs" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /countvpc [get]

func CountClustersByConnection added in v0.8.17

func CountClustersByConnection(c echo.Context) error

func CountConnectionsByProvider added in v0.8.17

func CountConnectionsByProvider(c echo.Context) error

func CountDisksByConnection added in v0.8.17

func CountDisksByConnection(c echo.Context) error

countDisksByConnection godoc @ID count-disks-by-connection @Summary Count Disks by Connection @Description Get the total number of Disks for a specific connection. @Tags [Disk Management] @Produce json @Param ConnectionName path string true "The name of the Connection" @Success 200 {object} CountResponse "Total count of Disks for the connection" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /countdisk/{ConnectionName} [get]

func CountKeysByConnection added in v0.8.17

func CountKeysByConnection(c echo.Context) error

countKeysByConnection godoc @ID count-keys-by-connection @Summary Count KeyPairs by Connection @Description Get the total number of KeyPairs for a specific connection. @Tags [KeyPair Management] @Produce json @Param ConnectionName path string true "The name of the Connection" @Success 200 {object} CountResponse "Total count of KeyPairs for the connection" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /countkeypair/{ConnectionName} [get]

func CountMyImagesByConnection added in v0.8.17

func CountMyImagesByConnection(c echo.Context) error

countMyImagesByConnection godoc @ID count-myimages-by-connection @Summary Count MyImages by Connection @Description Get the total number of MyImages for a specific connection. @Tags [MyImage Management] @Produce json @Param ConnectionName path string true "The name of the Connection" @Success 200 {object} CountResponse "Total count of MyImages for the connection" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /countmyimage/{ConnectionName} [get]

func CountNLBsByConnection added in v0.8.17

func CountNLBsByConnection(c echo.Context) error

func CountSecurityGroupsByConnection added in v0.8.17

func CountSecurityGroupsByConnection(c echo.Context) error

countSecurityGroupsByConnection godoc @ID count-securitygroups-by-connection @Summary Count SecurityGroups by Connection @Description Get the total number of Security Groups for a specific connection. @Tags [SecurityGroup Management] @Produce json @Param ConnectionName path string true "The name of the Connection" @Success 200 {object} CountResponse "Total count of SecurityGroups for the connection" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /countsecuritygroup/{ConnectionName} [get]

func CountSubnetsByConnection added in v0.8.17

func CountSubnetsByConnection(c echo.Context) error

countSubnetsByConnection godoc @ID count-subnets-by-connection @Summary Count Subnets by Connection @Description Get the total number of Subnets for a specific connection. @Tags [VPC Management] @Produce json @Param ConnectionName path string true "The name of the Connection" @Success 200 {object} CountResponse "Total count of Subnets for the connection" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /countsubnet/{ConnectionName} [get]

func CountVMsByConnection added in v0.8.17

func CountVMsByConnection(c echo.Context) error

countVMsByConnection godoc @ID count-vms-by-connection @Summary Count VMs by Connection @Description Get the total number of Virtual Machines (VMs) for a specific connection. @Tags [VM Management] @Produce json @Param ConnectionName path string true "The name of the Connection" @Success 200 {object} CountResponse "Total count of VMs for the connection" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /countvm/{ConnectionName} [get]

func CountVPCsByConnection added in v0.8.17

func CountVPCsByConnection(c echo.Context) error

countVPCsByConnection godoc @ID count-vpcs-by-connection @Summary Count VPCs by Connection @Description Get the total number of VPCs for a specific connection. @Tags [VPC Management] @Produce json @Param ConnectionName path string true "The name of the Connection" @Success 200 {object} CountResponse "Total count of VPCs for the connection" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /countvpc/{ConnectionName} [get]

func CreateCluster added in v0.6.14

func CreateCluster(c echo.Context) error

func CreateConnectionConfig added in v0.4.9

func CreateConnectionConfig(c echo.Context) error

================ ConnectionConfig Handler

func CreateDisk added in v0.6.7

func CreateDisk(c echo.Context) error

createDisk godoc @ID create-disk @Summary Create Disk @Description Create a new Disk with the specified configuration. @Tags [Disk Management] @Accept json @Produce json @Param DiskCreateRequest body restruntime.DiskCreateRequest true "Request body for creating a Disk" @Success 200 {object} cres.DiskInfo "Details of the created Disk" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid JSON structure or missing fields" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /disk [post]

func CreateKey added in v0.4.9

func CreateKey(c echo.Context) error

createKey godoc @ID create-key @Summary Create KeyPair @Description Create a new KeyPair with the specified configurations. @Tags [KeyPair Management] @Accept json @Produce json @Param KeyCreateRequest body restruntime.KeyCreateRequest true "Request body for creating a KeyPair" @Success 200 {object} cres.KeyPairInfo "Details of the created KeyPair" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid JSON structure or missing fields" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /keypair [post]

func CreateNLB added in v0.5.10

func CreateNLB(c echo.Context) error

func CreateSecurity added in v0.4.9

func CreateSecurity(c echo.Context) error

createSecurity godoc @ID create-securitygroup @Summary Create SecurityGroup @Description Create a new Security Group with specified rules and tags. @Tags [SecurityGroup Management] @Accept json @Produce json @Param SecurityGroupCreateRequest body restruntime.SecurityGroupCreateRequest true "Request body for creating a SecurityGroup" @Success 200 {object} cres.SecurityInfo "Details of the created SecurityGroup" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid JSON structure or missing fields" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /securitygroup [post]

func CreateVPC added in v0.4.9

func CreateVPC(c echo.Context) error

createVPC godoc @ID create-vpc @Summary Create VPC @Description Create a new Virtual Private Cloud (VPC) with specified subnet configurations. @Tags [VPC Management] @Accept json @Produce json @Param CreateVPCRequest body restruntime.CreateVPCRequest true "Request body for creating a VPC" @Success 200 {object} cres.VPCInfo "Details of the created VPC" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid JSON structure or missing fields" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /vpc [post]

func DeleteCSPCluster added in v0.6.14

func DeleteCSPCluster(c echo.Context) error

(1) get args from REST Call (2) call common-runtime API (3) return REST Json Format

func DeleteCSPDisk added in v0.6.7

func DeleteCSPDisk(c echo.Context) error

deleteCSPDisk godoc @ID delete-csp-disk @Summary Delete CSP Disk @Description Delete a specified CSP Disk. @Tags [Disk Management] @Accept json @Produce json @Param ConnectionRequest body restruntime.ConnectionRequest true "Request body for deleting a CSP Disk" @Param Id path string true "The CSP Disk ID to delete" @Success 200 {object} BooleanInfo "Result of the delete operation" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid JSON structure or missing fields" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /cspdisk/{Id} [delete]

func DeleteCSPKey added in v0.4.9

func DeleteCSPKey(c echo.Context) error

deleteCSPKey godoc @ID delete-csp-key @Summary Delete CSP KeyPair @Description Delete a specified CSP KeyPair. @Tags [KeyPair Management] @Accept json @Produce json @Param ConnectionRequest body restruntime.ConnectionRequest true "Request body for deleting a CSP KeyPair" @Param Id path string true "The CSP KeyPair ID to delete" @Success 200 {object} BooleanInfo "Result of the delete operation" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid JSON structure or missing fields" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /cspkeypair/{Id} [delete]

func DeleteCSPMyImage added in v0.6.10

func DeleteCSPMyImage(c echo.Context) error

deleteCSPMyImage godoc @ID delete-csp-myimage @Summary Delete CSP MyImage @Description Delete a specified CSP MyImage. @Tags [MyImage Management] @Accept json @Produce json @Param ConnectionRequest body restruntime.ConnectionRequest true "Request body for deleting a CSP MyImage" @Param Id path string true "The CSP MyImage ID to delete" @Success 200 {object} BooleanInfo "Result of the delete operation" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid JSON structure or missing fields" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /cspmyimage/{Id} [delete]

func DeleteCSPNLB added in v0.5.10

func DeleteCSPNLB(c echo.Context) error

(1) get args from REST Call (2) call common-runtime API (3) return REST Json Format

func DeleteCSPSecurity added in v0.4.9

func DeleteCSPSecurity(c echo.Context) error

deleteCSPSecurity godoc @ID delete-csp-securitygroup @Summary Delete CSP SecurityGroup @Description Delete a specified CSP Security Group. @Tags [SecurityGroup Management] @Accept json @Produce json @Param ConnectionRequest body restruntime.ConnectionRequest true "Request body for deleting a CSP SecurityGroup" @Param Id path string true "The CSP SecurityGroup ID to delete" @Success 200 {object} BooleanInfo "Result of the delete operation" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid JSON structure or missing fields" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /cspsecuritygroup/{Id} [delete]

func DeleteCSPVPC added in v0.4.9

func DeleteCSPVPC(c echo.Context) error

deleteCSPVPC godoc @ID delete-csp-vpc @Summary Delete CSP VPC @Description Delete a specified CSP Virtual Private Cloud (VPC). @Tags [VPC Management] @Accept json @Produce json @Param ConnectionRequest body restruntime.ConnectionRequest true "Request body for deleting a CSP VPC" @Param Id path string true "The CSP VPC ID to delete" @Success 200 {object} BooleanInfo "Result of the delete operation" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid JSON structure or missing fields" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /cspvpc/{Id} [delete]

func DeleteCluster added in v0.6.14

func DeleteCluster(c echo.Context) error

(1) get args from REST Call (2) call common-runtime API (3) return REST Json Format

func DeleteConnectionConfig added in v0.4.9

func DeleteConnectionConfig(c echo.Context) error

func DeleteDisk added in v0.6.7

func DeleteDisk(c echo.Context) error

deleteDisk godoc @ID delete-disk @Summary Delete Disk @Description Delete a specified Disk. @Tags [Disk Management] @Accept json @Produce json @Param ConnectionRequest body restruntime.ConnectionRequest true "Request body for deleting a Disk" @Param Name path string true "The name of the Disk to delete" @Param force query string false "Force delete the Disk" @Success 200 {object} BooleanInfo "Result of the delete operation" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid JSON structure or missing fields" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /disk/{Name} [delete]

func DeleteKey added in v0.4.9

func DeleteKey(c echo.Context) error

deleteKey godoc @ID delete-key @Summary Delete KeyPair @Description Delete a specified KeyPair. @Tags [KeyPair Management] @Accept json @Produce json @Param ConnectionRequest body restruntime.ConnectionRequest true "Request body for deleting a KeyPair" @Param Name path string true "The name of the KeyPair to delete" @Param force query string false "Force delete the KeyPair" @Success 200 {object} BooleanInfo "Result of the delete operation" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid JSON structure or missing fields" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /keypair/{Name} [delete]

func DeleteMyImage added in v0.6.10

func DeleteMyImage(c echo.Context) error

deleteMyImage godoc @ID delete-myimage @Summary Delete MyImage @Description Delete a specified MyImage. @Tags [MyImage Management] @Accept json @Produce json @Param ConnectionRequest body restruntime.ConnectionRequest true "Request body for deleting a MyImage" @Param Name path string true "The name of the MyImage to delete" @Param force query string false "Force delete the MyImage" @Success 200 {object} BooleanInfo "Result of the delete operation" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid JSON structure or missing fields" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /myimage/{Name} [delete]

func DeleteNLB added in v0.5.10

func DeleteNLB(c echo.Context) error

(1) get args from REST Call (2) call common-runtime API (3) return REST Json Format

func DeleteSecurity added in v0.4.9

func DeleteSecurity(c echo.Context) error

deleteSecurity godoc @ID delete-securitygroup @Summary Delete SecurityGroup @Description Delete a specified Security Group. @Tags [SecurityGroup Management] @Accept json @Produce json @Param ConnectionRequest body restruntime.ConnectionRequest true "Request body for deleting a SecurityGroup" @Param Name path string true "The name of the SecurityGroup to delete" @Param force query string false "Force delete the SecurityGroup" @Success 200 {object} BooleanInfo "Result of the delete operation" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid JSON structure or missing fields" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /securitygroup/{Name} [delete]

func DeleteVPC added in v0.4.9

func DeleteVPC(c echo.Context) error

deleteVPC godoc @ID delete-vpc @Summary Delete VPC @Description Delete a specified Virtual Private Cloud (VPC). @Tags [VPC Management] @Accept json @Produce json @Param ConnectionRequest body restruntime.ConnectionRequest true "Request body for deleting a VPC" @Param Name path string true "The name of the VPC to delete" @Param force query string false "Force delete the VPC" @Success 200 {object} BooleanInfo "Result of the delete operation" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid JSON structure or missing fields" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /vpc/{Name} [delete]

func Destroy added in v0.8.20

func Destroy(c echo.Context) error

func DetachDisk added in v0.6.7

func DetachDisk(c echo.Context) error

detachDisk godoc @ID detach-disk @Summary Detach Disk @Description Detach an existing Disk from a VM. @Tags [Disk Management] @Accept json @Produce json @Param DiskDetachRequest body restruntime.DiskDetachRequest true "Request body for detaching a Disk from a VM" @Param Name path string true "The name of the Disk to detach" @Success 200 {object} BooleanInfo "Result of the detach operation" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid JSON structure or missing fields" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /disk/{Name}/detach [put]

func FindTag added in v0.9.2

func FindTag(c echo.Context) error

func GetAllSPLockInfo added in v0.5.7

func GetAllSPLockInfo(c echo.Context) error

func GetCSPResourceInfo added in v0.6.17

func GetCSPResourceInfo(c echo.Context) error

func GetCSPResourceName added in v0.6.6

func GetCSPResourceName(c echo.Context) error

func GetCSPVM added in v0.6.16

func GetCSPVM(c echo.Context) error

getCSPVM godoc @ID get-csp-vm @Summary Get CSP VM @Description Retrieve details of a specific CSP Virtual Machine (VM). @Tags [VM Management] @Accept json @Produce json @Param ConnectionName query string true "The name of the Connection to get a CSP VM for" @Param Id path string true "The CSP VM ID to retrieve" @Success 200 {object} cres.VMInfo "Details of the CSP VM" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid JSON structure or missing fields" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /cspvm/{Id} [get]

func GetCloudDriver added in v0.4.9

func GetCloudDriver(c echo.Context) error

func GetCloudOSMetaInfo added in v0.5.1

func GetCloudOSMetaInfo(c echo.Context) error

================ CloudOS Metainfo

func GetCluster added in v0.6.14

func GetCluster(c echo.Context) error

func GetClusterOwnerVPC added in v0.6.14

func GetClusterOwnerVPC(c echo.Context) error

func GetConnectionConfig added in v0.4.9

func GetConnectionConfig(c echo.Context) error

func GetCredential added in v0.4.9

func GetCredential(c echo.Context) error

func GetDisk added in v0.6.7

func GetDisk(c echo.Context) error

getDisk godoc @ID get-disk @Summary Get Disk @Description Retrieve details of a specific Disk. @Tags [Disk Management] @Accept json @Produce json @Param ConnectionName query string true "The name of the Connection to get a Disk for" @Param Name path string true "The name of the Disk to retrieve" @Success 200 {object} cres.DiskInfo "Details of the Disk" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid JSON structure or missing fields" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /disk/{Name} [get]

func GetImage added in v0.4.9

func GetImage(c echo.Context) error

getImage godoc @ID get-image @Summary Get Public Image @Description Retrieve details of a specific Public Image. @Tags [Cloud Metadata] Public VM Image @Accept json @Produce json @Param ConnectionName query string true "The name of the Connection to get a specific Public Image for" @Param Name path string true "The name of the Public Image to retrieve" @Success 200 {object} cres.ImageInfo "Details of the Public Image" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid query parameter" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /vmimage/{Name} [get]

func GetKey added in v0.4.9

func GetKey(c echo.Context) error

getKey godoc @ID get-key @Summary Get KeyPair @Description Retrieve details of a specific KeyPair. @Tags [KeyPair Management] @Accept json @Produce json @Param ConnectionName query string true "The name of the Connection to get a KeyPair for" @Param Name path string true "The name of the KeyPair to retrieve" @Success 200 {object} cres.KeyPairInfo "Details of the KeyPair" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid JSON structure or missing fields" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /keypair/{Name} [get]

func GetMyImage added in v0.6.10

func GetMyImage(c echo.Context) error

getMyImage godoc @ID get-myimage @Summary Get MyImage @Description Retrieve details of a specific MyImage. @Tags [MyImage Management] @Accept json @Produce json @Param ConnectionName query string true "The name of the Connection to get a MyImage for" @Param Name path string true "The name of the MyImage to retrieve" @Success 200 {object} cres.MyImageInfo "Details of the MyImage" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid JSON structure or missing fields" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /myimage/{Name} [get]

func GetNLB added in v0.5.10

func GetNLB(c echo.Context) error

func GetNLBOwnerVPC added in v0.5.11

func GetNLBOwnerVPC(c echo.Context) error

func GetOrgVMSpec added in v0.4.9

func GetOrgVMSpec(c echo.Context) error

getOrgVMSpec godoc @ID get-org-vm-spec @Summary Get Original VM Spec @Description Retrieve details of a specific Original VM Spec. @Tags [Cloud Metadata] VM Spec @Accept json @Produce json @Param ConnectionName query string true "The name of the Connection to get a specific Original VM spec for" @Param Name path string true "The name of the VM spec to retrieve" @Success 200 {object} OriginalVMSpecListResponse "Details of the Original VM Spec" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid query parameter" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /vmorgspec/{Name} [get]

func GetPriceInfo added in v0.8.2

func GetPriceInfo(c echo.Context) error

getPriceInfo godoc @ID get-price-info @Summary Get Price Information @Description Retrieve price details of a specific Product Family in a specific Region. <br> * example body: {"connectionName":"aws-connection","FilterList":[{"Key":"instanceType","Value":"t2.micro"}]} @Tags [Cloud Metadata] Price @Accept json @Produce json @Param ProductFamily path string true "The name of the Product Family to retrieve price information for" example("Compute Instance") @Param RegionName path string true "The name of the Region to retrieve price information for" example("us-east-1") @Param PriceInfoRequest body PriceInfoRequest false "The request body containing additional filters for price information" @Success 200 {object} PriceInfoResponse "Price Information Details" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid query parameter" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /priceinfo/{ProductFamily}/{RegionName} [post]

func GetRegion added in v0.4.9

func GetRegion(c echo.Context) error

func GetRegionZone added in v0.7.6

func GetRegionZone(c echo.Context) error

getRegionZone godoc @ID get-region-zone @Summary Get Region Zone @Description Retrieve details of a specific Region Zone. @Tags [Cloud Metadata] Region/Zone @Accept json @Produce json @Param ConnectionName query string true "The name of the Connection to get a specific Region and Zones for" @Param Name path string true "The name of the Region to retrieve" @Success 200 {object} cres.RegionZoneInfo "Details of the Region Zone" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid query parameter" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /regionzone/{Name} [get]

func GetRegionZonePreConfig added in v0.8.5

func GetRegionZonePreConfig(c echo.Context) error

getRegionZonePreConfig godoc @ID get-region-zone-preconfig @Summary Get Pre-configured Region Zone @Description Retrieve details of a specific pre-configured Region Zone based on driver and credential names. @Tags [Cloud Metadata] Region/Zone @Accept json @Produce json @Param PreConfigRegionZoneGetRequest query restruntime.PreConfigRegionZoneGetRequest true "Query parameters for getting a specific pre-configured region zone" @Param Name path string true "The name of the Region to retrieve" @Success 200 {object} cres.RegionZoneInfo "Details of the Pre-configured Region Zone" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid query parameter" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /preconfig/regionzone/{Name} [get]

func GetSGOwnerVPC added in v0.5.5

func GetSGOwnerVPC(c echo.Context) error

getSGOwnerVPC godoc @ID get-sg-owner-vpc @Summary Get Security Group Owner VPC @Description Retrieve the owner VPC of a specified Security Group. @Tags [VPC Management] @Accept json @Produce json @Param GetSGOwnerVPCRequest body restruntime.GetSGOwnerVPCRequest true "Request body for getting Security Group Owner VPC" @Success 200 {object} cres.IID "Details of the owner VPC" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid JSON structure or missing fields" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /getsecuritygroupowner [post]

func GetSecurity added in v0.4.9

func GetSecurity(c echo.Context) error

getSecurity godoc @ID get-securitygroup @Summary Get SecurityGroup @Description Retrieve details of a specific Security Group. @Tags [SecurityGroup Management] @Accept json @Produce json @Param ConnectionName query string true "The name of the Connection to get a SecurityGroup for" @Param Name path string true "The name of the SecurityGroup to retrieve" @Success 200 {object} cres.SecurityInfo "Details of the SecurityGroup" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid JSON structure or missing fields" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /securitygroup/{Name} [get]

func GetTag added in v0.9.2

func GetTag(c echo.Context) error

func GetVM added in v0.4.9

func GetVM(c echo.Context) error

getVM godoc @ID get-vm @Summary Get VM @Description Retrieve details of a specific Virtual Machine (VM). @Tags [VM Management] @Accept json @Produce json @Param ConnectionName query string true "The name of the Connection to get a VM for" @Param Name path string true "The name of the VM to retrieve" @Success 200 {object} cres.VMInfo "Details of the VM" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid JSON structure or missing fields" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /vm/{Name} [get]

func GetVMGroupHealthInfo added in v0.5.11

func GetVMGroupHealthInfo(c echo.Context) error

func GetVMSpec added in v0.4.9

func GetVMSpec(c echo.Context) error

getVMSpec godoc @ID get-vm-spec @Summary Get VM Spec @Description Retrieve details of a specific VM spec. @Tags [Cloud Metadata] VM Spec @Accept json @Produce json @Param ConnectionName query string true "The name of the Connection to get a specific VM spec for" @Param Name path string true "The name of the VM spec to retrieve" @Success 200 {object} cres.VMSpecInfo "Details of the VM spec" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid query parameter" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /vmspec/{Name} [get]

func GetVMStatus added in v0.4.9

func GetVMStatus(c echo.Context) error

getVMStatus godoc @ID get-vm-status @Summary Get VM Status @Description Retrieve the status of a specific Virtual Machine (VM). @Tags [VM Management] @Accept json @Produce json @Param ConnectionName query string true "The name of the Connection to get a VM status for" @Param Name path string true "The name of the VM to retrieve the status of" @Success 200 {object} VMStatusResponse "Details of the VM status" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid JSON structure or missing fields" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /vmstatus/{Name} [get]

func GetVMUsingRS added in v0.5.5

func GetVMUsingRS(c echo.Context) error

getVMUsingRS godoc @ID get-vm-using-rs @Summary Get VM Using Resource @Description Retrieve details of a VM using resource ID. @Tags [VM Management] @Accept json @Produce json @Param ConnectionName query string true "Connection name for the VM" @Param CSPId query string true "CSP ID of the VM" @Success 200 {object} restruntime.VMUsingResources "Details of the VM using resource" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid query parameters" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /getvmusingresources [get]

func GetVPC added in v0.4.9

func GetVPC(c echo.Context) error

getVPC godoc @ID get-vpc @Summary Get VPC @Description Retrieve details of a specific Virtual Private Cloud (VPC). @Tags [VPC Management] @Accept json @Produce json @Param ConnectionName query string true "The name of the Connection to get a VPC for" @Param Name path string true "The name of the VPC to retrieve" @Success 200 {object} cres.VPCInfo "Details of the VPC" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid JSON structure or missing fields" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /vpc/{Name} [get]

func IncreaseDiskSize added in v0.9.3

func IncreaseDiskSize(c echo.Context) error

increaseDiskSize godoc @ID increase-disk-size @Summary Increase Disk Size @Description Increase the size of an existing disk. @Tags [Disk Management] @Accept json @Produce json @Param IncreaseDiskSizeRequest body restruntime.IncreaseDiskSizeRequest true "Request body for increasing the Disk size" @Param Name path string true "The name of the Disk to increase the size for" @Success 200 {object} BooleanInfo "Result of the size increase operation" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid JSON structure or missing fields" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /disk/{Name}/size [put]

func ListAllCluster added in v0.6.14

func ListAllCluster(c echo.Context) error

list all Clusters for management (1) get args from REST Call (2) get all Cluster List by common-runtime API (3) return REST Json Format

func ListAllDisk added in v0.6.7

func ListAllDisk(c echo.Context) error

listAllDisk godoc @ID list-all-disk @Summary List All Disks @Description Retrieve a list of all Disks across all connections. @Tags [Disk Management] @Accept json @Produce json @Param ConnectionName query string true "The name of the Connection" @Success 200 {object} AllResourceListResponse "List of all Disks with their respective lists" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid JSON structure or missing fields" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /alldisk [get]

func ListAllKey added in v0.4.9

func ListAllKey(c echo.Context) error

listAllKey godoc @ID list-all-key @Summary List All KeyPairs @Description Retrieve a list of all KeyPairs across all connections. @Tags [KeyPair Management] @Accept json @Produce json @Param ConnectionName query string true "The name of the Connection" @Success 200 {object} AllResourceListResponse "List of all KeyPairs with their respective lists" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid query parameter" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /allkeypair [get]

func ListAllMyImage added in v0.6.10

func ListAllMyImage(c echo.Context) error

listAllMyImage godoc @ID list-all-myimage @Summary List All MyImages @Description Retrieve a list of all MyImages across all connections. @Tags [MyImage Management] @Accept json @Produce json @Param ConnectionName query string true "The name of the Connection" @Success 200 {object} AllResourceListResponse "List of all MyImages with their respective lists" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid JSON structure or missing fields" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /allmyimage [get]

func ListAllNLB added in v0.5.10

func ListAllNLB(c echo.Context) error

list all NLBs for management (1) get args from REST Call (2) get all NLB List by common-runtime API (3) return REST Json Format

func ListAllSecurity added in v0.4.9

func ListAllSecurity(c echo.Context) error

listAllSecurity godoc @ID list-all-securitygroups @Summary List All SecurityGroups @Description Retrieve a list of all Security Groups across all connections. @Tags [SecurityGroup Management] @Accept json @Produce json @Param ConnectionName query string true "The name of the Connection" @Success 200 {object} AllResourceListResponse "List of all SecurityGroups with their respective lists" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid JSON structure or missing fields" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /allsecuritygroup [get]

func ListAllVM added in v0.4.9

func ListAllVM(c echo.Context) error

listAllVM godoc @ID list-all-vm @Summary List All VMs @Description Retrieve a list of all Virtual Machines (VMs) across all connections. @Tags [VM Management] @Accept json @Produce json @Param ConnectionName query string true "The name of the Connection" @Success 200 {object} AllResourceListResponse "List of all VMs with their respective lists" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid JSON structure or missing fields" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /allvm [get]

func ListAllVPC added in v0.4.9

func ListAllVPC(c echo.Context) error

listAllVPC godoc @ID list-all-vpc @Summary List All VPCs @Description Retrieve a list of all Virtual Private Clouds (VPCs) across all connections. @Tags [VPC Management] @Accept json @Produce json @Param ConnectionName query string true "The name of the Connection" @Success 200 {object} AllResourceListResponse "List of all VPCs with their respective lists" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid JSON structure or missing fields" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /allvpc [get]

func ListCloudDriver added in v0.4.9

func ListCloudDriver(c echo.Context) error

func ListCloudOS added in v0.4.9

func ListCloudOS(c echo.Context) error

================ List of support CloudOS

func ListCluster added in v0.6.14

func ListCluster(c echo.Context) error

func ListConnectionConfig added in v0.4.9

func ListConnectionConfig(c echo.Context) error

func ListCredential added in v0.4.9

func ListCredential(c echo.Context) error

func ListDisk added in v0.6.7

func ListDisk(c echo.Context) error

listDisk godoc @ID list-disk @Summary List Disks @Description Retrieve a list of Disks associated with a specific connection. @Tags [Disk Management] @Accept json @Produce json @Param ConnectionName query string true "The name of the Connection to list Disks for" @Success 200 {object} DiskListResponse "List of Disks" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid query parameter" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /disk [get]

func ListImage added in v0.4.9

func ListImage(c echo.Context) error

listImage godoc @ID list-image @Summary List Public Images @Description Retrieve a list of Public Images associated with a specific connection. @Tags [Cloud Metadata] Public VM Image @Accept json @Produce json @Param ConnectionName query string true "The name of the Connection to list Public Images for" @Success 200 {object} ImageListResponse "List of Public Images" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid query parameter" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /vmimage [get]

func ListKey added in v0.4.9

func ListKey(c echo.Context) error

listKey godoc @ID list-key @Summary List KeyPairs @Description Retrieve a list of KeyPairs associated with a specific connection. @Tags [KeyPair Management] @Accept json @Produce json @Param ConnectionName query string true "The name of the Connection to list KeyPairs for" @Success 200 {object} restruntime.KeyListResponse "List of KeyPairs" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid query parameter" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /keypair [get]

func ListMyImage added in v0.6.10

func ListMyImage(c echo.Context) error

listMyImage godoc @ID list-myimage @Summary List MyImages @Description Retrieve a list of MyImages associated with a specific connection. @Tags [MyImage Management] @Accept json @Produce json @Param ConnectionName query string true "The name of the Connection to list MyImages for" @Success 200 {object} MyImageListResponse "List of MyImages" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid query parameter" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /myimage [get]

func ListNLB added in v0.5.10

func ListNLB(c echo.Context) error

func ListOrgRegion added in v0.7.6

func ListOrgRegion(c echo.Context) error

listOrgRegion godoc @ID list-org-region @Summary List Original Regions @Description Retrieve a list of Original Regions associated with a specific connection. <br> The response structure may vary depending on the request ConnectionName. @Tags [Cloud Metadata] Region/Zone @Accept json @Produce json @Param ConnectionName query string true "The name of the Connection to list Original regions for" @Success 200 {object} OriginalRegionListResponse "Dynamic JSON structure representing the list of Original Regions" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid query parameter" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /orgregion [get]

func ListOrgRegionPreConfig added in v0.8.5

func ListOrgRegionPreConfig(c echo.Context) error

ListOrgRegionPreConfig godoc @ID list-preconfigured-original-org-region @Summary List Pre-configured Original Regions @Description Retrieve a list of pre-configured Original Regions based on driver and credential names. <br> The response structure may vary depending on the request DriverName and CredentialName. @Tags [Cloud Metadata] Region/Zone @Accept json @Produce json @Param PreConfiguredOriginalRegionListRequest query restruntime.PreConfiguredOriginalRegionListRequest true "Query parameters for listing pre-configured Original regions" @Success 200 {object} OriginalRegionListResponse "List of Pre-configured Original Regions" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid query parameter" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /preconfig/orgregion [get]

func ListOrgVMSpec added in v0.4.9

func ListOrgVMSpec(c echo.Context) error

listOrgVMSpec godoc @ID list-org-vm-spec @Summary List Original VM Specs @Description Retrieve a list of Original VM Specs associated with a specific connection. <br> The response structure may vary depending on the request ConnectionName. @Tags [Cloud Metadata] VM Spec @Accept json @Produce json @Param ConnectionName query string true "The name of the Connection to list Original VM specs for" @Success 200 {object} OriginalVMSpecListResponse "Dynamic JSON structure representing the list of Original VM Specs" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid query parameter" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /vmorgspec [get]

func ListOrgZone added in v0.7.6

func ListOrgZone(c echo.Context) error

listOrgZone godoc @ID list-org-zone @Summary List Original Zones @Description Retrieve a list of Original Zones associated with a specific connection. <br> The response structure may vary depending on the request ConnectionName. @Tags [Cloud Metadata] Region/Zone @Accept json @Produce json @Param ConnectionName query string true "The name of the Connection to list Original zones for" @Success 200 {object} OriginalZoneListResponse "Dynamic JSON structure representing the list of Original Zones" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid query parameter" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /orgzone [get]

func ListProductFamily added in v0.8.2

func ListProductFamily(c echo.Context) error

listProductFamily godoc @ID list-product-family @Summary List Product Families @Description Retrieve a list of Product Families associated with a specific connection and region. @Tags [Cloud Metadata] Price @Accept json @Produce json @Param ConnectionName query string true "The name of the Connection to list Product Families for" @Param RegionName path string true "The name of the Region to list Product Families for" @Success 200 {object} ProductFamilyListResponse "List of Product Families" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid query parameter" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /productfamily/{RegionName} [get]

func ListRegion added in v0.4.9

func ListRegion(c echo.Context) error

func ListRegionZone added in v0.7.6

func ListRegionZone(c echo.Context) error

listRegionZone godoc @ID list-region-zone @Summary List Region Zones @Description Retrieve a list of Region Zones associated with a specific connection. @Tags [Cloud Metadata] Region/Zone @Accept json @Produce json @Param ConnectionName query string true "The name of the Connection to list Region and Zones for" @Success 200 {object} RegionZoneListResponse "List of Region Zones" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid query parameter" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /regionzone [get]

func ListRegionZonePreConfig added in v0.8.5

func ListRegionZonePreConfig(c echo.Context) error

listRegionZonePreConfig godoc @ID list-region-zone-preconfig @Summary List Pre-configured Region Zones @Description Retrieve a list of pre-configured Region Zones based on driver and credential names. @Tags [Cloud Metadata] Region/Zone @Accept json @Produce json @Param PreConfigRegionZoneListRequest query restruntime.PreConfigRegionZoneListRequest true "Query parameters for listing pre-configured region zones" @Success 200 {object} RegionZoneListResponse "List of Pre-configured Region Zones" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid query parameter" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /preconfig/regionzone [get]

func ListSecurity added in v0.4.9

func ListSecurity(c echo.Context) error

listSecurity godoc @ID list-securitygroup @Summary List SecurityGroups @Description Retrieve a list of Security Groups associated with a specific connection. @Tags [SecurityGroup Management] @Accept json @Produce json @Param ConnectionName query string true "The name of the Connection to list SecurityGroups for" @Success 200 {object} restruntime.ListSecurityResponse "List of SecurityGroups" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid query parameter" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /securitygroup [get]

func ListTag added in v0.9.2

func ListTag(c echo.Context) error

func ListVM added in v0.4.9

func ListVM(c echo.Context) error

listVM godoc @ID list-vm @Summary List VMs @Description Retrieve a list of Virtual Machines (VMs) associated with a specific connection. @Tags [VM Management] @Accept json @Produce json @Param ConnectionName query string true "The name of the Connection to list VMs for" @Success 200 {object} VMListResponse "List of VMs" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid query parameter" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /vm [get]

func ListVMSpec added in v0.4.9

func ListVMSpec(c echo.Context) error

listVMSpec godoc @ID list-vm-spec @Summary List VM Specs @Description Retrieve a list of VM specs associated with a specific connection. @Tags [Cloud Metadata] VM Spec @Accept json @Produce json @Param ConnectionName query string true "The name of the Connection to list VM specs for" @Success 200 {object} VMSpecListResponse "List of VM specs" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid query parameter" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /vmspec [get]

func ListVMStatus added in v0.4.9

func ListVMStatus(c echo.Context) error

listVMStatus godoc @ID list-vm-status @Summary List VM Statuses @Description Retrieve a list of statuses for Virtual Machines (VMs) associated with a specific connection. @Tags [VM Management] @Accept json @Produce json @Param ConnectionName query string true "The name of the Connection to list VM statuses for" @Success 200 {object} VMListStatusResponse "List of VM statuses" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid query parameter" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /vmstatus [get]

func ListVPC added in v0.4.9

func ListVPC(c echo.Context) error

listVPC godoc @ID list-vpc @Summary List VPCs @Description Retrieve a list of Virtual Private Clouds (VPCs) associated with a specific connection. @Tags [VPC Management] @Accept json @Produce json @Param ConnectionName query string true "The name of the Connection to list VPCs for" @Success 200 {object} ListVPCResponse "List of VPCs" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid query parameter" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /vpc [get]

func RegisterCloudDriver added in v0.4.9

func RegisterCloudDriver(c echo.Context) error

================ CloudDriver Handler

func RegisterCluster added in v0.6.14

func RegisterCluster(c echo.Context) error

func RegisterCredential added in v0.4.9

func RegisterCredential(c echo.Context) error

================ Credential Handler

func RegisterDisk added in v0.6.7

func RegisterDisk(c echo.Context) error

registerDisk godoc @ID register-disk @Summary Register Disk @Description Register a new Disk with the specified name, zone, and CSP ID. @Tags [Disk Management] @Accept json @Produce json @Param DiskRegisterRequest body restruntime.DiskRegisterRequest true "Request body for registering a Disk" @Success 200 {object} cres.DiskInfo "Details of the registered Disk" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid JSON structure or missing fields" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /regdisk [post]

func RegisterKey added in v0.4.12

func RegisterKey(c echo.Context) error

registerKey godoc @ID register-key @Summary Register KeyPair @Description Register a new KeyPair with the specified name and CSP ID. @Tags [KeyPair Management] @Accept json @Produce json @Param KeyRegisterRequest body restruntime.KeyRegisterRequest true "Request body for registering a KeyPair" @Success 200 {object} cres.KeyPairInfo "Details of the registered KeyPair" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid JSON structure or missing fields" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /regkeypair [post]

func RegisterMyImage added in v0.6.10

func RegisterMyImage(c echo.Context) error

registerMyImage godoc @ID register-myimage @Summary Register MyImage @Description Register a new MyImage with the specified name and CSP ID. @Tags [MyImage Management] @Accept json @Produce json @Param MyImageRegisterRequest body restruntime.MyImageRegisterRequest true "Request body for registering a MyImage" @Success 200 {object} cres.MyImageInfo "Details of the registered MyImage" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid JSON structure or missing fields" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /regmyimage [post]

func RegisterNLB added in v0.5.10

func RegisterNLB(c echo.Context) error

func RegisterRegion added in v0.4.9

func RegisterRegion(c echo.Context) error

================ Region Handler

func RegisterSecurity added in v0.4.12

func RegisterSecurity(c echo.Context) error

registerSecurity godoc @ID register-securitygroup @Summary Register SecurityGroup @Description Register a new Security Group with the specified name and CSP ID. @Tags [SecurityGroup Management] @Accept json @Produce json @Param SecurityGroupRegisterRequest body restruntime.SecurityGroupRegisterRequest true "Request body for registering a SecurityGroup" @Success 200 {object} cres.SecurityInfo "Details of the registered SecurityGroup" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid JSON structure or missing fields" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /regsecuritygroup [post]

func RegisterSubnet added in v0.7.6

func RegisterSubnet(c echo.Context) error

registerSubnet godoc @ID register-subnet @Summary Register Subnet @Description Register a new Subnet within a specified VPC. @Tags [VPC Management] @Accept json @Produce json @Param SubnetRegisterRequest body restruntime.SubnetRegisterRequest true "Request body for registering a Subnet" @Success 200 {object} cres.VPCInfo "Details of the VPC including the registered Subnet" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid JSON structure or missing fields" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /regsubnet [post]

func RegisterVM added in v0.4.12

func RegisterVM(c echo.Context) error

registerVM godoc @ID register-vm @Summary Register VM @Description Register a new Virtual Machine (VM) with the specified name and CSP ID. @Tags [VM Management] @Accept json @Produce json @Param VMRegisterRequest body restruntime.VMRegisterRequest true "Request body for registering a VM" @Success 200 {object} cres.VMInfo "Details of the registered VM" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid JSON structure or missing fields" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /regvm [post]

func RegisterVPC added in v0.4.12

func RegisterVPC(c echo.Context) error

registerVPC godoc @ID register-vpc @Summary Register VPC @Description Register a new Virtual Private Cloud (VPC) with the specified name and CSP ID. @Tags [VPC Management] @Accept json @Produce json @Param VPCRegisterRequest body restruntime.VPCRegisterRequest true "Request body for registering a VPC" @Success 200 {object} cres.VPCInfo "Details of the registered VPC" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid JSON structure or missing fields" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /regvpc [post]

func RemoveCSPSubnet added in v0.4.9

func RemoveCSPSubnet(c echo.Context) error

removeCSPSubnet godoc @ID remove-csp-subnet @Summary Remove CSP Subnet @Description Remove an existing CSP Subnet from a VPC. @Tags [VPC Management] @Accept json @Produce json @Param VPCName path string true "The name of the VPC" @Param Id path string true "The CSP Subnet ID to remove" @Param ConnectionRequest body restruntime.ConnectionRequest true "Request body for removing a CSP Subnet" @Success 200 {object} BooleanInfo "Result of the remove operation" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid JSON structure or missing fields" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /vpc/{VPCName}/cspsubnet/{Id} [delete]

func RemoveNLBVMs added in v0.5.11

func RemoveNLBVMs(c echo.Context) error

func RemoveNodeGroup added in v0.6.14

func RemoveNodeGroup(c echo.Context) error

func RemoveRules added in v0.5.4

func RemoveRules(c echo.Context) error

removeRules godoc @ID remove-rules-securitygroup @Summary Remove Rules from SecurityGroup @Description Remove existing rules from a Security Group. @Tags [SecurityGroup Management] @Accept json @Produce json @Param SGName path string true "The name of the SecurityGroup to remove rules from" @Param RuleControlRequest body restruntime.RuleControlRequest true "Request body for removing rules" @Success 200 {object} BooleanInfo "Result of the remove operation" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid JSON structure or missing fields" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /securitygroup/{SGName}/rules [delete]

func RemoveSubnet added in v0.4.9

func RemoveSubnet(c echo.Context) error

removeSubnet godoc @ID remove-subnet @Summary Remove Subnet @Description Remove an existing Subnet from a VPC. @Tags [VPC Management] @Accept json @Produce json @Param VPCName path string true "The name of the VPC" @Param SubnetName path string true "The name of the Subnet to remove" @Param ConnectionRequest body restruntime.ConnectionRequest true "Request body for removing a Subnet" @Success 200 {object} BooleanInfo "Result of the remove operation" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid JSON structure or missing fields" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /vpc/{VPCName}/subnet/{SubnetName} [delete]

func RemoveTag added in v0.9.2

func RemoveTag(c echo.Context) error

func RunServer added in v0.2.1

func RunServer()

func SSHRun added in v0.4.9

func SSHRun(c echo.Context) error

================ SSH RUN

func SetNodeGroupAutoScaling added in v0.6.14

func SetNodeGroupAutoScaling(c echo.Context) error

func SnapshotVM added in v0.6.10

func SnapshotVM(c echo.Context) error

snapshotVM godoc @ID snapshot-vm @Summary Snapshot VM @Description Create a new MyImage snapshot from a specified VM. @Tags [MyImage Management] @Accept json @Produce json @Param MyImageSnapshotRequest body restruntime.MyImageSnapshotRequest true "Request body for creating a MyImage snapshot" @Success 200 {object} cres.MyImageInfo "Details of the created MyImage snapshot" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid JSON structure or missing fields" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /myimage [post]

func StartVM added in v0.4.9

func StartVM(c echo.Context) error

startVM godoc @ID start-vm @Summary Start VM @Description Start a new Virtual Machine (VM) with specified configurations. @Tags [VM Management] @Accept json @Produce json @Param VMStartRequest body restruntime.VMStartRequest true "Request body for starting a VM" @Success 200 {object} cres.VMInfo "Details of the started VM" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid JSON structure or missing fields" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /vm [post]

func TerminateCSPVM added in v0.4.9

func TerminateCSPVM(c echo.Context) error

terminateCSPVM godoc @ID terminate-csp-vm @Summary Terminate CSP VM @Description Terminate a specified CSP Virtual Machine (VM). @Tags [VM Management] @Accept json @Produce json @Param ConnectionRequest body restruntime.ConnectionRequest true "Request body for terminating a CSP VM" @Param Id path string true "The CSP VM ID to terminate" @Success 200 {object} VMStatusResponse "Result of the terminate operation" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid JSON structure or missing fields" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /cspvm/{Id} [delete]

func TerminateVM added in v0.4.9

func TerminateVM(c echo.Context) error

terminateVM godoc @ID terminate-vm @Summary Terminate VM @Description Terminate a specified Virtual Machine (VM). @Tags [VM Management] @Accept json @Produce json @Param ConnectionRequest body restruntime.ConnectionRequest true "Request body for terminating a VM" @Param Name path string true "The name of the VM to terminate" @Param force query string false "Force terminate the VM" @Success 200 {object} VMStatusResponse "Result of the terminate operation" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid JSON structure or missing fields" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /vm/{Name} [delete]

func UnRegisterCloudDriver added in v0.4.9

func UnRegisterCloudDriver(c echo.Context) error

func UnRegisterCredential added in v0.4.9

func UnRegisterCredential(c echo.Context) error

func UnRegisterRegion added in v0.4.9

func UnRegisterRegion(c echo.Context) error

func UnregisterCluster added in v0.6.14

func UnregisterCluster(c echo.Context) error

(1) get args from REST Call (2) call common-runtime API (3) return REST Json Format

func UnregisterDisk added in v0.6.7

func UnregisterDisk(c echo.Context) error

unregisterDisk godoc @ID unregister-disk @Summary Unregister Disk @Description Unregister a Disk with the specified name. @Tags [Disk Management] @Accept json @Produce json @Param ConnectionRequest body restruntime.ConnectionRequest true "Request body for unregistering a Disk" @Param Name path string true "The name of the Disk to unregister" @Success 200 {object} BooleanInfo "Result of the unregister operation" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid JSON structure or missing fields" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /regdisk/{Name} [delete]

func UnregisterKey added in v0.4.12

func UnregisterKey(c echo.Context) error

unregisterKey godoc @ID unregister-key @Summary Unregister KeyPair @Description Unregister a KeyPair with the specified name. @Tags [KeyPair Management] @Accept json @Produce json @Param ConnectionRequest body restruntime.ConnectionRequest true "Request body for unregistering a KeyPair" @Param Name path string true "The name of the KeyPair to unregister" @Success 200 {object} BooleanInfo "Result of the unregister operation" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid JSON structure or missing fields" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /regkeypair/{Name} [delete]

func UnregisterMyImage added in v0.6.10

func UnregisterMyImage(c echo.Context) error

unregisterMyImage godoc @ID unregister-myimage @Summary Unregister MyImage @Description Unregister a MyImage with the specified name. @Tags [MyImage Management] @Accept json @Produce json @Param ConnectionRequest body restruntime.ConnectionRequest true "Request body for unregistering a MyImage" @Param Name path string true "The name of the MyImage to unregister" @Success 200 {object} BooleanInfo "Result of the unregister operation" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid JSON structure or missing fields" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /regmyimage/{Name} [delete]

func UnregisterNLB added in v0.5.10

func UnregisterNLB(c echo.Context) error

(1) get args from REST Call (2) call common-runtime API (3) return REST Json Format

func UnregisterSecurity added in v0.4.12

func UnregisterSecurity(c echo.Context) error

unregisterSecurity godoc @ID unregister-securitygroup @Summary Unregister SecurityGroup @Description Unregister a Security Group with the specified name. @Tags [SecurityGroup Management] @Accept json @Produce json @Param ConnectionRequest body restruntime.ConnectionRequest true "Request body for unregistering a SecurityGroup" @Param Name path string true "The name of the SecurityGroup to unregister" @Success 200 {object} BooleanInfo "Result of the unregister operation" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid JSON structure or missing fields" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /regsecuritygroup/{Name} [delete]

func UnregisterSubnet added in v0.7.6

func UnregisterSubnet(c echo.Context) error

unregisterSubnet godoc @ID unregister-subnet @Summary Unregister Subnet @Description Unregister a Subnet from a specified VPC. @Tags [VPC Management] @Accept json @Produce json @Param SubnetUnregisterRequest body restruntime.SubnetUnregisterRequest true "Request body for unregistering a Subnet" @Param Name path string true "The name of the Subnet to unregister" @Success 200 {object} BooleanInfo "Result of the unregister operation" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid JSON structure or missing fields" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /regsubnet/{Name} [delete]

func UnregisterVM added in v0.4.12

func UnregisterVM(c echo.Context) error

unregisterVM godoc @ID unregister-vm @Summary Unregister VM @Description Unregister a Virtual Machine (VM) with the specified name. @Tags [VM Management] @Accept json @Produce json @Param ConnectionRequest body restruntime.ConnectionRequest true "Request body for unregistering a VM" @Param Name path string true "The name of the VM to unregister" @Success 200 {object} BooleanInfo "Result of the unregister operation" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid JSON structure or missing fields" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /regvm/{Name} [delete]

func UnregisterVPC added in v0.4.12

func UnregisterVPC(c echo.Context) error

unregisterVPC godoc @ID unregister-vpc @Summary Unregister VPC @Description Unregister a VPC with the specified name. @Tags [VPC Management] @Accept json @Produce json @Param ConnectionRequest body restruntime.ConnectionRequest true "Request body for unregistering a VPC" @Param Name path string true "The name of the VPC to unregister" @Success 200 {object} BooleanInfo "Result of the unregister operation" @Failure 400 {object} SimpleMsg "Bad Request, possibly due to invalid JSON structure or missing fields" @Failure 404 {object} SimpleMsg "Resource Not Found" @Failure 500 {object} SimpleMsg "Internal Server Error" @Router /regvpc/{Name} [delete]

func UpgradeCluster added in v0.6.14

func UpgradeCluster(c echo.Context) error

func UploadCloudDriver added in v0.5.11

func UploadCloudDriver(c echo.Context) error

Types

type AddSubnetRequest added in v0.9.3

type AddSubnetRequest struct {
	ConnectionName  string `json:"ConnectionName" validate:"required" example:"aws-connection"`
	IDTransformMode string `json:"IDTransformMode,omitempty" validate:"omitempty" example:"ON"` // ON: transform CSP ID, OFF: no-transform CSP ID
	ReqInfo         struct {
		Name      string          `json:"Name" validate:"required" example:"subnet-01"`
		Zone      string          `json:"Zone,omitempty" validate:"omitempty" example:"us-east-1b"` // target zone for the subnet, if not specified, it will be created in the same zone as the Connection.
		IPv4_CIDR string          `json:"IPv4_CIDR" validate:"required" example:"10.0.12.0/22"`
		TagList   []cres.KeyValue `json:"TagList,omitempty" validate:"omitempty"`
	} `json:"ReqInfo" validate:"required"`
}

AddSubnetRequest represents the request body for adding a subnet to a VPC.

type AllResourceListResponse added in v0.9.3

type AllResourceListResponse struct {
	AllList struct {
		MappedList     []*cres.IID `json:"MappedList" validate:"required" description:"A list of resources that are mapped between CB-Spider and CSP"`
		OnlySpiderList []*cres.IID `json:"OnlySpiderList" validate:"required" description:"A list of resources that exist only in CB-Spider"`
		OnlyCSPList    []*cres.IID `json:"OnlyCSPList" validate:"required" description:"A list of resources that exist only in the CSP"`
	} `json:"AllList" validate:"required" description:"A list of all VPCs with their respective lists"`
}

AllResourceListResponse represents the response body structure for the ListAllVPC API.

type BooleanInfo

type BooleanInfo struct {
	Result string `json:"Result" validate:"required" example:"true"` // true or false
}

REST API Return struct for boolean type

type ClusterRegisterReq added in v0.6.14

type ClusterRegisterReq struct {
	ConnectionName string
	ReqInfo        struct {
		VPCName string
		Name    string
		CSPId   string
	}
}

type ClusterReq added in v0.6.14

type ClusterReq struct {
	NameSpace       string
	ConnectionName  string
	IDTransformMode string // ON | OFF, default is ON
	ReqInfo         struct {
		// (1) Cluster Info
		Name    string
		Version string

		// (2) Network Info
		VPCName            string
		SubnetNames        []string
		SecurityGroupNames []string

		// (3) NodeGroupInfo List
		NodeGroupList []NodeGroupReq
	}
}

type ConnectionRequest added in v0.9.3

type ConnectionRequest struct {
	ConnectionName string `json:"ConnectionName" validate:"required" example:"aws-connection"`
}

ConnectionRequest represents the request body for common use.

type CountResponse added in v0.9.3

type CountResponse struct {
	Count int `json:"count" validate:"required" example:"5" description:"The total number of resources counted"`
}

CountResponse represents the response body for counting all VPCs.

type CreateVPCRequest added in v0.9.3

type CreateVPCRequest struct {
	ConnectionName  string `json:"ConnectionName" validate:"required" example:"aws-connection"`
	IDTransformMode string `json:"IDTransformMode,omitempty" validate:"omitempty" example:"ON"` // ON: transform CSP ID, OFF: no-transform CSP ID
	ReqInfo         struct {
		Name           string `json:"Name" validate:"required" example:"vpc-01"`
		IPv4_CIDR      string `json:"IPv4_CIDR" validate:"omitempty"` // Some CSPs unsupported VPC CIDR
		SubnetInfoList []struct {
			Name      string          `json:"Name" validate:"required" example:"subnet-01"`
			Zone      string          `json:"Zone,omitempty" validate:"omitempty" example:"us-east-1b"` // target zone for the subnet, if not specified, it will be created in the same zone as the Connection.
			IPv4_CIDR string          `json:"IPv4_CIDR" validate:"required" example:"10.0.8.0/22"`
			TagList   []cres.KeyValue `json:"TagList,omitempty" validate:"omitempty"`
		} `json:"SubnetInfoList" validate:"required"`
		TagList []cres.KeyValue `json:"TagList,omitempty" validate:"omitempty"`
	} `json:"ReqInfo" validate:"required"`
}

CreateVPCRequest represents the request body for creating a VPC.

type DiskAttachRequest added in v0.9.3

type DiskAttachRequest struct {
	ConnectionName string `json:"ConnectionName" validate:"required" example:"aws-connection"`
	ReqInfo        struct {
		VMName string `json:"VMName" validate:"required" example:"vm-01"`
	} `json:"ReqInfo" validate:"required"`
}

DiskAttachRequest represents the request body for attaching a Disk to a VM.

type DiskCreateRequest added in v0.9.3

type DiskCreateRequest struct {
	ConnectionName  string `json:"ConnectionName" validate:"required" example:"aws-connection"`
	IDTransformMode string `json:"IDTransformMode,omitempty" validate:"omitempty" example:"ON"` // ON: transform CSP ID, OFF: no-transform CSP ID
	ReqInfo         struct {
		Name     string          `json:"Name" validate:"required" example:"disk-01"`
		Zone     string          `json:"Zone,omitempty" validate:"omitempty" example:"us-east-1b"` // target zone for the disk, if not specified, it will be created in the same zone as the Connection.
		DiskType string          `json:"DiskType" validate:"required" example:"gp2"`               // gp2 or default, if not specified, default is used
		DiskSize string          `json:"DiskSize" validate:"required" example:"100"`               // 100 or default, if not specified, default is used (unit is GB)
		TagList  []cres.KeyValue `json:"TagList,omitempty" validate:"omitempty"`
	} `json:"ReqInfo" validate:"required"`
}

DiskCreateRequest represents the request body for creating a Disk.

type DiskDetachRequest added in v0.9.3

type DiskDetachRequest struct {
	ConnectionName string `json:"ConnectionName" validate:"required" example:"aws-connection"`
	ReqInfo        struct {
		VMName string `json:"VMName" validate:"required" example:"vm-01"`
	} `json:"ReqInfo" validate:"required"`
}

DiskDetachRequest represents the request body for detaching a Disk from a VM.

type DiskListResponse added in v0.9.3

type DiskListResponse struct {
	Result []*cres.DiskInfo `json:"disk" validate:"required" description:"A list of Disk information"`
}

DiskListResponse represents the response body for listing Disks.

type DiskRegisterRequest added in v0.9.3

type DiskRegisterRequest struct {
	ConnectionName string `json:"ConnectionName" validate:"required" example:"aws-connection"`
	ReqInfo        struct {
		Name  string `json:"Name" validate:"required" example:"disk-01"`
		Zone  string `json:"Zone" validate:"required" example:"us-east-1b"`
		CSPId string `json:"CSPId" validate:"required" example:"csp-disk-1234"`
	} `json:"ReqInfo" validate:"required"`
}

DiskRegisterRequest represents the request body for registering a Disk.

type GetSGOwnerVPCRequest added in v0.9.3

type GetSGOwnerVPCRequest struct {
	ConnectionName string `json:"ConnectionName" validate:"required" example:"aws-connection"`
	ReqInfo        struct {
		CSPId string `json:"CSPId" validate:"required" example:"csp-sg-1234"`
	} `json:"ReqInfo" validate:"required"`
}

GetSGOwnerVPCRequest represents the request body for retrieving the owner VPC of a Security Group.

type HealthCheckerReq added in v0.5.11

type HealthCheckerReq struct {
	Protocol  string // TCP|HTTP|HTTPS
	Port      string // Listener Port or 1-65535
	Interval  string // secs, Interval time between health checks.
	Timeout   string // secs, Waiting time to decide an unhealthy VM when no response.
	Threshold string // num, The number of continuous health checks to change the VM status.
}

for int mapping with string

type ImageListResponse added in v0.9.3

type ImageListResponse struct {
	Result []*cres.ImageInfo `json:"image" validate:"required" description:"A list of public images"`
}

ImageListResponse represents the response body structure for the ListImage API.

type IncreaseDiskSizeRequest added in v0.9.3

type IncreaseDiskSizeRequest struct {
	ConnectionName string `json:"ConnectionName" validate:"required" example:"aws-connection"`
	ReqInfo        struct {
		Size string `json:"Size" validate:"required" example:"150"`
	} `json:"ReqInfo" validate:"required"`
}

IncreaseDiskSizeRequest represents the request body for changing the size of a Disk.

type KeyCreateRequest added in v0.9.3

type KeyCreateRequest struct {
	ConnectionName  string `json:"ConnectionName" validate:"required" example:"aws-connection"`
	IDTransformMode string `json:"IDTransformMode,omitempty" validate:"omitempty" example:"ON"` // ON: transform CSP ID, OFF: no-transform CSP ID
	ReqInfo         struct {
		Name    string          `json:"Name" validate:"required" example:"keypair-01"`
		TagList []cres.KeyValue `json:"TagList,omitempty" validate:"omitempty"`
	} `json:"ReqInfo" validate:"required"`
}

KeyCreateRequest represents the request body for creating a KeyPair.

type KeyListResponse added in v0.9.3

type KeyListResponse struct {
	Result []*cres.KeyPairInfo `json:"keypair"`
}

KeyListResponse represents the response body for listing KeyPairs.

type KeyRegisterRequest added in v0.9.3

type KeyRegisterRequest struct {
	ConnectionName string `json:"ConnectionName" validate:"required" example:"aws-connection"`
	ReqInfo        struct {
		Name  string `json:"Name" validate:"required" example:"keypair-01"`
		CSPId string `json:"CSPId" validate:"required" example:"csp-key-1234"`
	} `json:"ReqInfo" validate:"required"`
}

KeyRegisterRequest represents the request body for registering a KeyPair.

type ListSecurityResponse added in v0.9.3

type ListSecurityResponse struct {
	Result []*cres.SecurityInfo `json:"securitygroup" validate:"required" description:"A list of security group information"`
}

ListSecurityResponse represents the response body for listing SecurityGroups.

type ListVPCResponse added in v0.9.3

type ListVPCResponse struct {
	Result []*cres.VPCInfo `json:"vpc" validate:"required" description:"A list of VPC information"`
}

type MyImageListResponse added in v0.9.3

type MyImageListResponse struct {
	Result []*cres.MyImageInfo `json:"myImage" validate:"required" description:"A list of MyImage information"`
}

MyImageListResponse represents the response body for listing MyImages.

type MyImageRegisterRequest added in v0.9.3

type MyImageRegisterRequest struct {
	ConnectionName string `json:"ConnectionName" validate:"required" example:"aws-connection"`
	ReqInfo        struct {
		Name  string `json:"Name" validate:"required" example:"myimage-01"`
		CSPId string `json:"CSPId" validate:"required" example:"csp-myimage-1234"`
	} `json:"ReqInfo" validate:"required"`
}

MyImageRegisterRequest represents the request body for registering a MyImage.

type MyImageSnapshotRequest added in v0.9.3

type MyImageSnapshotRequest struct {
	ConnectionName  string `json:"ConnectionName" validate:"required" example:"aws-connection"`
	IDTransformMode string `json:"IDTransformMode,omitempty" validate:"omitempty" example:"ON"` // ON: transform CSP ID, OFF: no-transform CSP ID
	ReqInfo         struct {
		Name     string          `json:"Name" validate:"required" example:"myimage-01"`
		SourceVM string          `json:"SourceVM" validate:"required" example:"vm-01"`
		TagList  []cres.KeyValue `json:"TagList,omitempty" validate:"omitempty"`
	} `json:"ReqInfo" validate:"required"`
}

MyImageSnapshotRequest represents the request body for creating a MyImage snapshot.

type NLBRegisterReq added in v0.5.10

type NLBRegisterReq struct {
	ConnectionName string
	ReqInfo        struct {
		VPCName string
		Name    string
		CSPId   string
	}
}

type NLBReq added in v0.5.10

type NLBReq struct {
	ConnectionName  string
	IDTransformMode string // ON | OFF, default is ON
	ReqInfo         struct {
		Name    string
		VPCName string
		Type    string // PUBLIC(V) | INTERNAL
		Scope   string // REGION(V) | GLOBAL

		//------ Frontend
		Listener cres.ListenerInfo

		//------ Backend
		VMGroup       VMGroupReq
		HealthChecker HealthCheckerReq // for int mapping with string
	}
}

type NodeGroupReq added in v0.6.14

type NodeGroupReq struct {
	Name         string
	ImageName    string
	VMSpecName   string
	RootDiskType string
	RootDiskSize string
	KeyPairName  string

	// autoscale config.
	OnAutoScaling   string
	DesiredNodeSize string
	MinNodeSize     string
	MaxNodeSize     string
}

type OriginalRegionListResponse added in v0.9.3

type OriginalRegionListResponse struct {
	RegionInfo map[string]interface{} `json:"RegionInfo" validate:"required"` // CSP-specific JSON format
}

OriginalRegionListResponse represents the dynamic structure for the Original Region List response.

type OriginalVMSpecListResponse added in v0.9.3

type OriginalVMSpecListResponse struct {
	VMSpecInfo map[string]interface{} `json:"VMSpecInfo" validate:"required"` // CSP-specific JSON format
}

OriginalVMSpecListResponse represents the dynamic structure for the Original VM Spec List response.

type OriginalZoneListResponse added in v0.9.3

type OriginalZoneListResponse struct {
	ZoneInfo map[string]interface{} `json:"ZoneInfo" validate:"required"` // CSP-specific JSON format
}

OriginalZoneListResponse represents the dynamic structure for the Original Zone List response.

type PreConfigRegionZoneGetRequest added in v0.9.3

type PreConfigRegionZoneGetRequest struct {
	DriverName     string `json:"DriverName" query:"DriverName" example:"aws-driver"`
	CredentialName string `json:"CredentialName" query:"CredentialName" example:"aws-credential"`
}

PreConfigRegionZoneGetRequest represents the request body for getting a specific region zone with pre-config.

type PreConfigRegionZoneListRequest added in v0.9.3

type PreConfigRegionZoneListRequest struct {
	DriverName     string `json:"DriverName" query:"DriverName" example:"aws-driver"`
	CredentialName string `json:"CredentialName" query:"CredentialName" example:"aws-credential"`
}

================ RegionZone Handler (Pre-Config Version) PreConfigRegionZoneListRequest represents the request body for listing region zones with pre-config.

type PreConfiguredOriginalRegionListRequest added in v0.9.3

type PreConfiguredOriginalRegionListRequest struct {
	DriverName     string `json:"DriverName" query:"DriverName" example:"aws-driver"`
	CredentialName string `json:"CredentialName" query:"CredentialName" example:"aws-credential"`
}

PreConfiguredOriginalRegionListRequest represents the request body for listing Original regions with pre-configuration.

type PriceInfoRequest added in v0.9.3

type PriceInfoRequest struct {
	ConnectionName string          `json:"connectionName" validate:"required" description:"The name of the Connection to get Price Information for"`
	FilterList     []cres.KeyValue `json:"filterList" description:"A list of filters to apply to the price information request"`
}

PriceInfoRequest represents the request body structure for the GetPriceInfo API.

type PriceInfoResponse added in v0.9.3

type PriceInfoResponse struct {
	cres.CloudPriceData `json:",inline" description:"Price information details"`
}

PriceInfoResponse represents the response body structure for the GetPriceInfo API.

type ProductFamilyListResponse added in v0.9.3

type ProductFamilyListResponse struct {
	Result []string `json:"productfamily" validate:"required" description:"A list of product families"`
}

ProductFamilyListResponse represents the response body structure for the ListProductFamily API.

type RegionZoneListResponse added in v0.9.3

type RegionZoneListResponse struct {
	Result []*cres.RegionZoneInfo `json:"regionzone" validate:"required" description:"A list of region zones"`
}

RegionZoneListResponse represents the response body structure for the ListRegionZone API.

type RuleControlRequest added in v0.9.3

type RuleControlRequest struct {
	ConnectionName string `json:"ConnectionName" validate:"required" example:"aws-connection"`
	ReqInfo        struct {
		RuleInfoList []struct {
			Direction  string `json:"Direction" validate:"required" example:"inbound"`
			IPProtocol string `json:"IPProtocol" validate:"required" example:"TCP"`
			FromPort   string `json:"FromPort" validate:"required" example:"22"`
			ToPort     string `json:"ToPort" validate:"required" example:"22"`
			CIDR       string `json:"CIDR,omitempty" validate:"omitempty" example:"0.0.0.0/0(default)"`
		} `json:"RuleInfoList" validate:"required"`
	} `json:"ReqInfo" validate:"required"`
}

RuleControlRequest represents the request body for controlling rules in a SecurityGroup.

type SSHRUNReqInfo

type SSHRUNReqInfo struct {
	UserName   string   // ex) "root"
	PrivateKey []string // ex)   ["-----BEGIN RSA PRIVATE KEY-----",
	//          "MIIEoQIBAAKCAQEArVNOLwMIp5VmZ4VPZotcoCHdEzimKalAsz+ccLfvAA1Y2ELH",
	//          "..."]
	ServerPort string // ex) "node12:22"
	Command    string // ex) "hostname"
}

type SecurityGroupCreateRequest added in v0.9.3

type SecurityGroupCreateRequest struct {
	ConnectionName  string `json:"ConnectionName" validate:"required" example:"aws-connection"`
	IDTransformMode string `json:"IDTransformMode,omitempty" validate:"omitempty" example:"ON"` // ON: transform CSP ID, OFF: no-transform CSP ID
	ReqInfo         struct {
		Name          string                   `json:"Name" validate:"required" example:"sg-01"`
		VPCName       string                   `json:"VPCName" validate:"required" example:"vpc-01"`
		SecurityRules *[]cres.SecurityRuleInfo `json:"SecurityRules" validate:"required"`
		TagList       []dri.KeyValue           `json:"TagList,omitempty" validate:"omitempty"`
	} `json:"ReqInfo" validate:"required"`
}

SecurityGroupCreateRequest represents the request body for creating a SecurityGroup.

type SecurityGroupRegisterRequest added in v0.9.3

type SecurityGroupRegisterRequest struct {
	ConnectionName string `json:"ConnectionName" validate:"required" example:"aws-connection"`
	ReqInfo        struct {
		VPCName string `json:"VPCName" validate:"required" example:"vpc-01"`
		Name    string `json:"Name" validate:"required" example:"sg-01"`
		CSPId   string `json:"CSPId" validate:"required" example:"csp-sg-1234"`
	} `json:"ReqInfo" validate:"required"`
}

SecurityGroupRegisterRequest represents the request body for registering a SecurityGroup.

type SimpleMsg added in v0.3.15

type SimpleMsg struct {
	Message string `json:"message" validate:"required" example:"Any message" description:"A simple message to be returned by the API"`
}

JSON Simple message struct

type SubnetRegisterRequest added in v0.9.3

type SubnetRegisterRequest struct {
	ConnectionName string `json:"ConnectionName" validate:"required" example:"aws-connection"`
	ReqInfo        struct {
		Name    string `json:"Name" validate:"required" example:"subnet-01"`
		Zone    string `json:"Zone,omitempty" validate:"omitempty" example:"us-east-1a"`
		VPCName string `json:"VPCName" validate:"required" example:"vpc-01"`
		CSPId   string `json:"CSPId" validate:"required" example:"csp-subnet-1234"`
	} `json:"ReqInfo" validate:"required"`
}

SubnetRegisterRequest represents the request body for registering a subnet.

type SubnetUnregisterRequest added in v0.9.3

type SubnetUnregisterRequest struct {
	ConnectionName string `json:"ConnectionName" validate:"required" example:"aws-connection"`
	ReqInfo        struct {
		VPCName string `json:"VPCName" validate:"required" example:"vpc-01"`
	} `json:"ReqInfo" validate:"required"`
}

SubnetUnregisterRequest represents the request body for unregistering a subnet.

type VMGroupReq added in v0.5.11

type VMGroupReq struct {
	Protocol string // TCP|HTTP|HTTPS
	Port     string // Listener Port or 1-65535
	VMs      []string
}

for VM IID mapping

type VMListResponse added in v0.9.3

type VMListResponse struct {
	VMs []*cres.VMInfo `json:"vm" validate:"required"`
}

VMListResponse represents the response body structure for listing VMs.

type VMListStatusResponse added in v0.9.3

type VMListStatusResponse struct {
	Result []*cres.VMStatusInfo `json:"vmstatus" validate:"required"`
}

VMListStatusResponse represents the response structure for listing VM statuses.

type VMRegisterRequest added in v0.9.3

type VMRegisterRequest struct {
	ConnectionName string `json:"ConnectionName" validate:"required" example:"aws-connection"`
	ReqInfo        struct {
		Name  string `json:"Name" validate:"required" example:"vm-01"`
		CSPId string `json:"CSPId" validate:"required" example:"csp-vm-1234"`
	} `json:"ReqInfo" validate:"required"`
}

VMRegisterRequest represents the request body for registering a VM.

type VMSpecListResponse added in v0.9.3

type VMSpecListResponse struct {
	Result []*cres.VMSpecInfo `json:"vmspec" validate:"required" description:"A list of VM specs"`
}

VMSpecListResponse represents the response body structure for the ListVMSpec API.

type VMStartRequest added in v0.9.3

type VMStartRequest struct {
	ConnectionName  string `json:"ConnectionName" validate:"required" example:"aws-connection"`
	IDTransformMode string `json:"IDTransformMode,omitempty" validate:"omitempty" example:"ON"` // ON: transform CSP ID, OFF: no-transform CSP ID
	ReqInfo         struct {
		Name       string `json:"Name" validate:"required" example:"vm-01"`
		ImageType  string `json:"ImageType" validate:"required" example:"PublicImage"` // PublicImage or MyImage
		ImageName  string `json:"ImageName" validate:"required" example:"ami-12345678"`
		VMSpecName string `json:"VMSpecName" validate:"required" example:"t2.micro"`

		VPCName            string   `json:"VPCName" validate:"required" example:"vpc-01"`
		SubnetName         string   `json:"SubnetName" validate:"required" example:"subnet-01"`
		SecurityGroupNames []string `json:"SecurityGroupNames" validate:"required" example:"sg-01,sg-02"`
		KeyPairName        string   `json:"KeyPairName" validate:"required" example:"keypair-01"`

		RootDiskType  string   `json:"RootDiskType,omitempty" validate:"omitempty" example:"gp2"`                         // gp2 or default, if not specified, default is used
		RootDiskSize  string   `json:"RootDiskSize,omitempty" validate:"omitempty" example:"30"`                          // 100 or default, if not specified, default is used (unit is GB)
		DataDiskNames []string `json:"DataDiskNames,omitempty" validate:"omitempty" example:"data-disk-01, data-disk-02"` // Data disks in the same zone as this VM

		VMUserId     string `json:"VMUserId,omitempty" validate:"omitempty" example:"Administrator"`    // Administrator, Windows Only
		VMUserPasswd string `json:"VMUserPasswd,omitempty" validate:"omitempty" example:"password1234"` // Windows Only

		TagList []cres.KeyValue `json:"TagList,omitempty" validate:"omitempty"`
	} `json:"ReqInfo" validate:"required"`
}

VMStartRequest represents the request body for starting a VM.

type VMStatusResponse added in v0.9.3

type VMStatusResponse struct {
	Status cres.VMStatus `json:"Status" validate:"required" example:"Running"`
}

VMStatusResponse represents the response body structure for VM status APIs.

type VMUsingResources added in v0.9.3

type VMUsingResources struct {
	Resources struct {
		VPC    *cres.IID   `json:"VPC" validate:"required"`              // example:"{NameId: 'vpc-01', SystemId: 'vpc-12345678'}"
		SGList []*cres.IID `json:"SGList" validate:"required"`           // example:"[{NameId: 'sg-01', SystemId: 'sg-12345678'}]"
		VMKey  *cres.IID   `json:"VMKey,omitempty" validate:"omitempty"` // example:"{NameId: 'keypair-01', SystemId: 'keypair-12345678'}"
	} `json:"Resources" validate:"required"`
}

VMUsingResources represents the structure of the resources associated with a VM.

type VPCRegisterRequest added in v0.9.3

type VPCRegisterRequest struct {
	ConnectionName string `json:"ConnectionName" validate:"required" example:"aws-connection"`
	ReqInfo        struct {
		Name  string `json:"Name" validate:"required" example:"vpc-01"`
		CSPId string `json:"CSPId" validate:"required" example:"csp-vpc-1234"`
	} `json:"ReqInfo" validate:"required"`
}

VPCRegisterRequest represents the request body for registering a VPC.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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