CLI Tool

CUDO Compute has a CLI tool called `cudoctl` to manage all of your resources within the platform.

You will need to create an API key from the web UI before you can use cudoctl.

Download

We have multiple download links for different kind of operating systems and architectures.

MacOS - amd64

MacOS - arm64

MacOS - universal

Debian - amd64

Debian - arm64

RedHat (RPM) - amd64

RedHat (RPM) - arm64

Other Linux - amd64

Other Linux - arm64

Windows

If you have any issues with our CLI tool, please reach out to our support team at [email protected]

Getting Started

Run cudoctl init and follow the steps.

$ cudoctl init
 api key: my-api-key
 project: my-project
 billing account: my-billing-account
 context: default
config file saved ~/.config/cudo/cudo.yml

A config file will be maintained in $HOME/.config/cudo/cudo.yml

configVersion: v0
keys:
    - key: xxxyyyzzz
      name: my-first-api-key
    - key: aaabbbccc
      name: my-second-api-key
contexts:
    - name: cudo-demo
      key: my-first-api-key
      billing-account: xxxxxxxxx
      project: my-project
    - name: cudo-demo-2
      key: my-second-api-key
      billing-account: xxxxxxxxx
      project: my-other-project
current-context: cudo-demo

The file can be edited manually, and new contexts can be added using cudoctl init. Multiple contexts can be setup which are used like profiles when cudoctl runs. One context is selected at a time as the current context.

Show help at any level by using -h e.g cudoctl -h

Global Options

Global options are used to set top level options that affect the rest of the execution of cudoctl . See cudoctl -h for more details.

# choose a config file
$ cudoctl --config /etc/config/cudo.yaml <group> [command]

# set context with an environment variable
$ CUDOCTL_CONTEXT=local cudoctl <group> [command]

# output in json
$ cudoctl --json <group> [command]

Config

Show and set the current config context. See cudoctl config -h for more details.

$ cudoctl config current
local

$ cudoctl config use cudo-demo-2

$ cudoctl config current
cudo-demo-2

$ cudoctl config show
name: cudo-demo-2
key: my-second-api-key
billing-account: xxxxxxxxx
project: my-other-project