Updated on 2024-06-17 GMT+08:00

Option Overview

KooCLI options are system parameters that can be added to commands for calling APIs. The following table describes the options supported by KooCLI. Any option except help, debug, dryrun, cli-output, cli-query, cli-output-num, cli-jsonInput, and cli-endpoint can be set in profiles. When a command is executed, the value of a parameter in the command takes precedence over that in the profile.

Table 1 KooCLI options

Option

Description

Example

help

Prints help information.

hcloud RDS ListCollations --cli-region="ap-southeast-1" --help

debug

Prints debugging information during command invocation. For example, the steps of API calling and the complete request URL.

hcloud VPC ShowVpc/v3 --cli-region="ap-southeast-1" --project_id="0dd8cb****************19b5a84546" --vpc_id="0bbe****-****-****-****-****235be6e7" --debug

dryrun

Checks a command. The system prints the request message after verification. It does not call the target API.

hcloud RDS CreateConfiguration --cli-region="ap-southeast-1" --project_id="4ff018c******************df31948" --datastore.type="MySQL" --datastore.version="5.7" --values.max_connections="10" --name="test-001" --description="test create configuration" --dryrun

skeleton

Generates an API input parameter skeleton for passing API parameters using --cli-jsonInput.

hcloud RDS CreateConfiguration --cli-region="ap-southeast-1" --skeleton

cli-region

Region where the cloud service resources to be managed are located.

hcloud EVS DeleteVolume --cli-region="ap-southeast-1" --volume_id="aed9****-****-****-****-****0e3219cf" --project_id="0dd8cb****************19b5a84546"

cli-access-key, cli-secret-key, cli-security-token

  • cli-access-key: access key ID (AK). This parameter must be used together with SK.
  • cli-secret-key: secret access key (SK). This parameter must be used together with AK.
  • cli-security-token: temporary security credential. This parameter is required when you use a temporary AK/SK for identity authentication.

These options are used to call cloud service APIs using an AK/SK in non-configuration mode.

Call cloud service APIs using an AK/SK in non-configuration mode.

  • Use an access key (permanent AK/SK):
    hcloud RDS ListApiVersion --cli-region="ap-southeast-1" --cli-access-key=******** --cli-secret-key=********
  • Use temporary security credentials (temporary AK/SK and SecurityToken):
    hcloud RDS ListApiVersion --cli-region="ap-southeast-1" --cli-access-key=******** --cli-secret-key=******** --cli-security-token=********

cli-domain-id

ID of the account to which the IAM user belongs. This option is required when global service APIs are called in AK/SK authentication mode. In this case, KooCLI automatically obtains this parameter from your authentication information.

hcloud CDN ListDomains --cli-region="ap-southeast-1" --cli-domain-id="08e09a6e******************1bb800"

cli-profile

Name of a KooCLI profile. A profile stores a group of common information (such as the AK/SK, region, and project ID) required for calling cloud service APIs.

hcloud EVS ListSnapshots --cli-profile=test

cli-mode

Authentication mode of a profile. Options:

  • AKSK
  • ecsAgency
  • SSO
  • Set cli-mode to AKSK.
    hcloud CCE ListNodes --cluster_id="f288****-****-****-****-****ac101534" --project_id="0dd8cb****************19b5a84546" --cli-profile=test --cli-mode=AKSK
  • Set cli-mode to ecsAgency.
    hcloud CCE ListNodes --cluster_id="f288****-****-****-****-****ac101534" --project_id="0dd8cb****************19b5a84546" --cli-profile=test --cli-mode=ecsAgency

cli-output, cli-query, cli-output-num

Output format.

  • cli-output
    Output format of the response data. The options include:
    • json
    • table
    • tsv
  • cli-query

    JMESPath for filtering response data.

  • cli-output-num

    Indicates whether to print the row numbers during table output. The value can be true or false.

  • When the value of cli-output is json:
    • Call a cloud service API
      hcloud CCE ListClusters --cli-region="ap-southeast-1" --type="VirtualMachine" --project_id="0dd8cb****************19b5a84546" --cli-query="items[0]"
    • Call a CLI system command
      hcloud configure list --cli-output=json --cli-query="profiles[].{Name:name,Mode:mode,Ak:accessKeyId,SK:secretAccessKey}"
  • When the value of cli-output is table:
    hcloud configure list --cli-output=table --cli-query="profiles[].{Name:name,Mode:mode,Ak:accessKeyId,SK:secretAccessKey}"
  • When the value of cli-output is tsv:
    hcloud configure list --cli-output=tsv --cli-query="profiles[].{Name:name,Mode:mode,Ak:accessKeyId,SK:secretAccessKey}"

cli-jsonInput

Specifies a JSON file to pass API parameters. If a cloud service API has too many parameters, you can define the parameters in a JSON file. KooCLI then parses the parameters in the file.

hcloud ECS CreateServers --cli-region="ap-southeast-1" --cli-read-timeout=60 --cli-jsonInput=C:\cli\Ecs_CreateServers.json

cli-connect-timeout and cli-read-timeout

Request timeouts.

  • cli-connect-timeout: request connection timeout, in seconds. The default value is 5, and the minimum value is 1.
  • cli-read-timeout: I/O timeout, in seconds. The default value is 10, and the minimum value is 1.
hcloud ECS DeleteServerPassword --cli-region="ap-southeast-1" --project_id="2cc60f5****************efa5019ef" --server_id="e6b99563-****-****-****-1820d4fd2a67" --cli-connect-timeout=10 --cli-read-timeout=15

cli-retry-count

Number of connection attempts. The system retries automatically if the connection times out. The value ranges from 0 to 5, and the default value is 0.

hcloud RDS ListInstances --cli-region="ap-southeast-1" --Content-Type="application/json" --project_id="2cc60****************caefa5019ef" --cli-retry-count=3

cli-skip-secure-verify

Specifies whether to skip HTTPS certificate verification (not recommended). The value can be true or false. The default value is false. Skipping certificate verification has security risks. If you set this parameter to true, KooCLI will display a message asking for your confirmation.

hcloud ECS NovaListServers --cli-region="ap-southeast-1" --project_id="2cc6****************6caefa5019ef" --cli-skip-secure-verify=true

cli-endpoint

Custom domain name.

By default, requests are sent to the target cloud service in the relevant region. You can also specify an endpoint of this cloud service.

hcloud IoTDA UpdateDevice --cli-region="ap-southeast-1" --description="test update device" --device_id="testz*********************0802" --cli-endpoint="iot-mqtts.ap-southeast-1.myhuaweicloud.com"

cli-waiter

Result polling. The parameters must be in JSON format and enclosed in double quotation marks.

hcloud ECS NovaShowServer --cli-region="ap-southeast-1" --server_id="e6b99563-xxxx-xxxx-xxxx-1820d4fd2a6" --cli-waiter="{\"expr\":\"server.status\",\"to\":\"ACTIVE\",\"timeout\":300}"