Cloud Driver Capability Info Guide - cloud-barista/cb-spider GitHub Wiki
Cloud Driver Capability Info Guide
1. CB-Spider Cloud Driver Capability Info Overview
-
Users can check whether the Driver for the current Connection supports specific resources and features using Driver Capability information.
-
Within code that utilizes CB-Spider, it is possible to handle CSPs that do not provide certain resources by conditionally checking resource availability of the current Connection's Driver.
2. CB-Spider Cloud Driver Capability Info API and Specification
-
Users can retrieve Driver Capability information in JSON format using the following CB-Spider REST API.
GET /driver/capability - Get Driver Capability Information -
The information included in the JSON result is as follows:
Property Description Example Value RegionZoneHandler Whether the Driver provides a handler for RegionZone information list trueorfalsePriceInfoHandler Whether the Driver provides a handler for Price information list trueorfalseQuotaInfoHandler Whether the Driver provides a handler for Quota information list trueorfalseImageHandler Whether the Driver provides a handler for Image information list trueorfalseVMSpecHandler Whether the Driver provides a handler for VM Spec information list trueorfalseDBSpecHandler Whether the Driver provides a handler for DB Spec information list trueorfalseZoneBasedControl Whether the Driver supports Zone-based Control for resources trueorfalseVPCHandler VPC_CIDR SINGLE_VPC EMULATED_VPC Whether the Driver provides a handler for VPC control Whether the Driver provides VPC CIDR information Whether the Driver provides a single VPC Whether the Driver emulates VPC for Classic CSP compatibility trueorfalsetrueorfalsetrueorfalsetrueorfalseSecurityHandler Whether the Driver provides a handler for Security Group control trueorfalseKeyPairHandler Whether the Driver provides a handler for KeyPair control trueorfalseVMHandler Whether the Driver provides a handler for VM control trueorfalseDiskHandler Whether the Driver provides a handler for Disk control trueorfalseMyImageHandler Whether the Driver provides a handler for MyImage control trueorfalsePublicIPHandler Whether the Driver provides a handler for PublicIP control trueorfalseNICHandler Whether the Driver provides a handler for NIC control trueorfalseNLBHandler Whether the Driver provides a handler for NLB control trueorfalseClusterHandler Whether the Driver provides a handler for Cluster control trueorfalseFileSystemHandler Whether the Driver provides a handler for FileSystem control trueorfalseRDBMSHandler RDBMSMySQLHandler RDBMSMariaDBHandler RDBMSPostgreSQLHandler Whether the Driver provides a handler for RDBMS control Whether the Driver supports the MySQL DB engine ( DBEngine=mysql) Whether the Driver supports the MariaDB DB engine (DBEngine=mariadb) Whether the Driver supports the PostgreSQL DB engine (DBEngine=postgresql)trueorfalsetrueorfalsetrueorfalsetrueorfalseTagHandler Whether the Driver provides a handler for Tag control trueorfalseTagSupportResourceType List of resource types supported for tagging by the Driver ["vpc", "subnet", "vm"]
3. CB-Spider Cloud Driver Capability Info API Example
- The following is an example of calling the Driver Capability API for the Driver configured in the AWS
aws-config01Connection.curl -sX 'GET' 'http://localhost:1024/spider/driver/capability?ConnectionName=aws-config01' | json_pp{ "RegionZoneHandler" : true, "PriceInfoHandler" : true, "QuotaInfoHandler" : true, "ImageHandler" : true, "VMSpecHandler" : true, "DBSpecHandler" : true, "ZoneBasedControl" : true, "VPCHandler" : true, "VPC_CIDR" : true, "SINGLE_VPC" : false, "EMULATED_VPC" : false, "SecurityHandler" : true, "KeyPairHandler" : true, "VMHandler" : true, "DiskHandler" : true, "MyImageHandler" : true, "PublicIPHandler" : true, "NICHandler" : false, "NLBHandler" : true, "ClusterHandler" : true, "FileSystemHandler" : true, "RDBMSHandler" : true, "RDBMSMySQLHandler" : true, "RDBMSMariaDBHandler" : true, "RDBMSPostgreSQLHandler" : false, "TagHandler" : true, "TagSupportResourceType" : [ "vpc", "subnet", "sg", "keypair", "vm", "nlb", "disk", "myimage", "cluster", "filesystem", "rdbms" ] }