Skip to content
ByoungSeob Kim edited this page Sep 20, 2024 · 9 revisions

spctl Specification

Usage:

$ spctl [global flag] resource [resource flag] command [command flag]

Global Flags:

Flag Description
-s, --server string Spider server URL (default "localhost:1024")
-h, --help Help for spctl

Resource Flags:

Flag Description
-h, --help Help for resource

Command Flags:

Create:

Flag Description
-h, --help Help for command
-d, --data string Input string data in JSON format

List:

Flag Description
-c, --ConnectionName string Connection name
-h, --help Help for command

Get:

Flag Description
-c, --ConnectionName string Connection name
-n, --Name string Resource name
-h, --help Help for command

Delete:

Flag Description
-n, --Name string Resource name
--force string Force flag (true/false) (default "false")
-h, --help Help for command

Resources and Commands:

Resource Command Description
all-cluster count Get the total number of Clusters across all connections.
list Retrieve a comprehensive list of all Clusters associated with a specific connection, including those mapped between CB-Spider and the CSP, only registered in CB-Spider's metadata, and only existing in the CSP.
all-connection count Get the total number of connections.
all-disk count Get the total number of Disks across all connections.
list Retrieve a comprehensive list of all Disks associated with a specific connection, including those mapped between CB-Spider and the CSP, only registered in CB-Spider's metadata, and only existing in the CSP.
all-keypair count Get the total number of KeyPairs across all connections.
list Retrieve a comprehensive list of all KeyPairs associated with a specific connection, including those mapped between CB-Spider and the CSP, only registered in CB-Spider's metadata, and only existing in the CSP.
all-myimage count Get the total number of MyImages across all connections.
list Retrieve a comprehensive list of all MyImages associated with a specific connection, including those mapped between CB-Spider and the CSP, only registered in CB-Spider's metadata, and only existing in the CSP.
all-nlb count Get the total number of Network Load Balancers (NLBs) across all connections.
list Retrieve a comprehensive list of all Network Load Balancers (NLBs) associated with a specific connection, including those mapped between CB-Spider and the CSP, only registered in CB-Spider's metadata, and only existing in the CSP.
all-resource destroy Deletes all resources associated with a specific cloud connection. This action is irreversible.
all-securitygroup count Get the total number of Security Groups across all connections.
list Retrieve a comprehensive list of all Security Groups associated with a specific connection, including those mapped between CB-Spider and the CSP, only registered in CB-Spider's metadata, and only existing in the CSP.
all-subnet count Get the total number of Subnets across all connections.
all-vm count Get the total number of Virtual Machines (VMs) across all connections.
list Retrieve a comprehensive list of all Virtual Machines (VMs) associated with a specific connection, including those mapped between CB-Spider and the CSP, only registered in CB-Spider's metadata, and only existing in the CSP.
all-vpc count Get the total number of VPCs across all connections.
list Retrieve a comprehensive list of all Virtual Private Clouds (VPCs) associated with a specific connection, including those mapped between CB-Spider and the CSP, only registered in CB-Spider's metadata, and only existing in the CSP.
call any Execute a custom function (FID) with key-value parameters through AnyCall. Development Guide
check-health health Checks the health of CB-Spider service and its dependencies via /health endpoint. User Guide
check-healthcheck health Checks the health of CB-Spider service and its dependencies via /healthcheck endpoint. User Guide
check-ping health Checks the health of CB-Spider service and its dependencies via /ping endpoint. User Guide
check-readyz health Checks the health of CB-Spider service and its dependencies via /readyz endpoint. User Guide
cloudos list Retrieve a list of supported Cloud OS.
cloudos-metainfo get Retrieve metadata information for a specific Cloud OS.
cluster create Create a new Cluster with specified configurations. Concept Guide
delete Delete a specified Cluster.
get Retrieve details of a specific Cluster.
list Retrieve a list of Clusters associated with a specific connection.
register Register a new Cluster with the specified VPC and CSP ID.
unregister Unregister a Cluster with the specified name.
upgrade Upgrade a Cluster to a specified version.
cluster-by-connection count Get the total number of Clusters for a specific connection.
cluster-owner-vpc get Retrieve the owner VPC of a specified Cluster.
completion bash Generate the autocompletion script for bash.
connection create Create a new Connection Config. User Guide
delete Delete a specific Connection Config.
get Retrieve details of a specific Connection Config.
list Retrieve a list of registered Connection Configs.
connection-by-provider count Get the total number of connections for a specific provider.
credential get Retrieve details of a specific Credential.
list Retrieve a list of registered Credentials.
register Register a new Credential. User Guide
unregister Unregister a specific Credential.
csp-cluster delete Delete a specified CSP Cluster.
csp-disk delete Delete a specified CSP Disk.
csp-keypair delete Delete a specified CSP KeyPair.
csp-myimage delete Delete a specified CSP MyImage.
csp-nlb delete Delete a specified CSP Network Load Balancer (NLB).
csp-securitygroup delete Delete a specified CSP Security Group.
csp-subnet remove Remove an existing CSP Subnet from a VPC.
csp-vm get Retrieve details of a specific CSP Virtual Machine (VM).
terminate Terminate a specified CSP Virtual Machine (VM).
csp-vpc delete Delete a specified CSP Virtual Private Cloud (VPC).
disk attach Attach an existing Disk to a VM.
create Create a new Disk with the specified configuration. Concept Guide, Snapshot-MyImage,Disk Guide
delete Delete a specified Disk.
detach Detach an existing Disk from a VM.
get Retrieve details of a specific Disk.
list Retrieve a list of Disks associated with a specific connection.
register Register a new Disk with the specified name, zone, and CSP ID.
unregister Unregister a Disk with the specified name.
disk-by-connection count Get the total number of Disks for a specific connection.
disk-size increase Increase the size of an existing disk.
driver get Retrieve details of a specific Cloud Driver.
list Retrieve a list of registered Cloud Drivers.
register Register a new Cloud Driver. User Guide
unregister Unregister a specific Cloud Driver.
upload Upload a Cloud Driver library file.
image get Retrieve details of a specific Public Image. User Guide
list Retrieve a list of Public Images associated with a specific connection. User Guide
keypair create Create a new KeyPair with the specified configurations. User Guide
delete Delete a specified KeyPair.
get Retrieve details of a specific KeyPair.
list Retrieve a list of KeyPairs associated with a specific connection.
register Register a new KeyPair with the specified name and CSP ID.
unregister Unregister a KeyPair with the specified name.
keypair-by-connection count Get the total number of KeyPairs for a specific connection.
myimage delete Delete a specified MyImage.
get Retrieve details of a specific MyImage.
list Retrieve a list of MyImages associated with a specific connection.
register Register a new MyImage with the specified name and CSP ID.
unregister Unregister a MyImage with the specified name.
myimage-by-connection count Get the total number of MyImages for a specific connection.
nlb create Create a new Network Load Balancer (NLB) with specified configurations. Concept Guide
delete Delete a specified Network Load Balancer (NLB).
get Retrieve details of a specific Network Load Balancer (NLB).
list Retrieve a list of Network Load Balancers (NLBs) associated with a specific connection.
register Register a new Network Load Balancer (NLB) with the specified name and CSP ID.
unregister Unregister a Network Load Balancer (NLB) with the specified name.
nlb-by-connection count Get the total number of Network Load Balancers (NLBs) for a specific connection.
nlb-owner-vpc get Retrieve the owner VPC of a specified Network Load Balancer (NLB).
nlb-vm add Add a new set of VMs to an existing Network Load Balancer (NLB).
remove Remove a set of VMs from an existing Network Load Balancer (NLB).
nodegroup add Add a new Node Group to an existing Cluster.
remove Remove an existing Node Group from a Cluster.
nodegroup-autoscaling set Enable or disable auto scaling for a Node Group in a Cluster.
nodegroup-scaling change Change the scaling settings for a Node Group in a Cluster.
org-region list Retrieve a list of Original Regions associated with a specific connection.
org-vm-spec get Retrieve details of a specific Original VM Spec.
list Retrieve a list of Original VM Specs associated with a specific connection.
org-zone list Retrieve a list of Original Zones associated with a specific connection.
preconfigured-original-org-region list Retrieve a list of pre-configured Original Regions based on driver and credential names.
price-info get Retrieve price details of a specific Product Family in a specific Region. Concept Guide, User Guide
product-family list Retrieve a list of Product Families associated with a specific connection and region.
region get Retrieve details of a specific Region.
list Retrieve a list of registered Regions.
register Register a new Region. User Guide
unregister Unregister a specific Region.
region-zone get Retrieve details of a specific Region Zone. User Guide
list Retrieve a list of Region Zones associated with a specific connection. User Guide
region-zone-preconfig get Retrieve details of a specific pre-configured Region Zone based on driver and credential names. User Guide
list Retrieve a list of pre-configured Region Zones based on driver and credential names. User Guide
rule add Add new rules to a Security Group.
remove Remove existing rules from a Security Group.
securitygroup create Create a new Security Group with specified rules and tags. Concept Guide, User Guide
delete Delete a specified Security Group.
get Retrieve details of a specific Security Group.
list Retrieve a list of Security Groups associated with a specific connection.
register Register a new Security Group with the specified name and CSP ID.
unregister Unregister a Security Group with the specified name.
securitygroup-by-connection count Get the total number of Security Groups for a specific connection.
sg-owner-vpc get Retrieve the owner VPC of a specified Security Group.
subnet add Add a new Subnet to an existing VPC.
get Retrieve a specific Subnet from a VPC.
register Register a new Subnet within a specified VPC.
remove Remove an existing Subnet from a VPC.
unregister Unregister a Subnet from a specified VPC.
subnet-by-connection count Get the total number of Subnets for a specific connection.
tcp-port check Verifies whether a given TCP port is open on the specified host.
udp-port check Verifies whether a given UDP port is open on the specified host.
vm control Control the state of a Virtual Machine (VM) such as suspend, resume, or reboot.
get Retrieve details of a specific Virtual Machine (VM).
list Retrieve a list of Virtual Machines (VMs) associated with a specific connection.
register Register a new Virtual Machine (VM) with the specified name and CSP ID.
snapshot Create a new MyImage snapshot from a specified VM. Concept Guide, Snapshot-MyImage,Disk Guide
start Start a new Virtual Machine (VM) with specified configurations. User Guide, Snapshot-MyImage,Disk Guide
terminate Terminate a specified Virtual Machine (VM).
unregister Unregister a Virtual Machine (VM) with the specified name.
vm-by-connection count Get the total number of Virtual Machines (VMs) for a specific connection.
vm-status get Retrieve the status of a specific Virtual Machine (VM).
list Retrieve a list of statuses for Virtual Machines (VMs) associated with a specific connection.
vm-using-rs get Retrieve details of a VM using resource ID.
vmgroup-healthinfo get Retrieve the health information of the VM group in a specified Network Load Balancer (NLB).
vmspec get Retrieve details of a specific VM spec. User Guide
list Retrieve a list of VM specs associated with a specific connection. User Guide
vpc create Create a new Virtual Private Cloud (VPC) with specified subnet configurations. User Guide
delete Delete a specified Virtual Private Cloud (VPC).
get Retrieve details of a specific Virtual Private Cloud (VPC).
list Retrieve a list of Virtual Private Clouds (VPCs) associated with a specific connection.
register Register a new Virtual Private Cloud (VPC) with the specified name and CSP ID.
unregister Unregister a VPC with the specified name.
vpc-by-connection count Get the total number of VPCs for a specific connection.

Examples:

Help

This command shows all available vpc commands.

$ spctl vpc (help)
Commands for vpc

Usage:
  spctl vpc [command]

Available Commands:
  create      Create a new Virtual Private Cloud (VPC) with specified subnet configurations. 🕷️ [[User Guide](https://github.com/cloud-barista/cb-spider/wiki/features-and-usages#3-vpcsubnet-%EC%83%9D%EC%84%B1-%EB%B0%8F-%EC%A0%9C%EC%96%B4)]
  delete      Delete a specified Virtual Private Cloud (VPC).
  get         Retrieve details of a specific Virtual Private Cloud (VPC).
  list        Retrieve a list of Virtual Private Clouds (VPCs) associated with a specific connection.
  register    Register a new Virtual Private Cloud (VPC) with the specified name and CSP ID.
  unregister  Unregister a VPC with the specified name.

Flags:
  -h, --help   help for vpc

Global Flags:
  -s, --server string   Spider server URL (default "localhost:1024")

Use "spctl vpc [command] --help" for more information about a command.

Create Command Guidance

The command supports full and required fields examples for creating a VPC.

./spctl vpc create
Usage:
  spctl vpc create [flags]

Flags:
  -d, --data string   JSON Body/Form parameter: VPCCreateRequest
  -h, --help          help for create

Global Flags:
  -s, --server string   Spider server URL (default "localhost:1024")

Examples:
    Example JSON for VPCCreateRequest with all fields:
    '{
        "ConnectionName": "aws-connection",
        "IDTransformMode": "ON",
        "ReqInfo": {
          "IPv4_CIDR": "10.0.0.0/16",
          "Name": "vpc-01",
          "SubnetInfoList": [
            {
              "IPv4_CIDR": "10.0.8.0/22",
              "Name": "subnet-01",
              "TagList": [
                {
                  "Key": "key1",
                  "Value": "value1"
                }
              ],
              "Zone": "us-east-1b"
            }
          ],
          "TagList": [
            {
              "Key": "key1",
              "Value": "value1"
            }
          ]
        }
      }'

    Example JSON for VPCCreateRequest with required fields only:
    '{
        "ConnectionName": "aws-connection",
        "ReqInfo": {
          "IPv4_CIDR": "10.0.0.0/16",
          "Name": "vpc-01",
          "SubnetInfoList": [
            {
              "IPv4_CIDR": "10.0.8.0/22",
              "Name": "subnet-01"
            }
          ]
        }
      }'

Create VPC Example

$ spctl vpc create -d '{
  "ConnectionName": "aws-ohio-config",
  "ReqInfo": {
    "Name": "sp-vpc-1",
    "IPv4_CIDR": "192.168.0.0/16",
    "SubnetInfoList": [
      {
        "Name": "sp-subnet-1",
        "IPv4_CIDR": "192.168.1.0/24"
      }
    ]
  }
}'

This document outlines the command structure, available flags, and the complete set of resources based on the provided Swagger specification from CB-Spider.

Table of contents



Clone this wiki locally