Skip to main content

Command-line interface for the v6Node cloud platform.

Project description

v6ctl

The official command-line interface for the v6Node cloud platform.

Deploy and manage VPS nodes, SSH keys, webhooks, and more — all from your terminal.

$ v6ctl nodes list
╭───────────────────────────── Nodes ─────────────────────────────╮
│ ID        Hostname      Region    Plan      OS          IP     │
│ a0fd028d  prod-web-1    Nürnberg  Standard  debian-13   5.1.2.3 │
│ b12c444e  staging-db    Nürnberg  Compute   ubuntu-24   5.1.2.4 │
╰─────────────────────────────────────────────────────────────────╯

Install

pipx install v6ctl

Don't have pipx?

# macOS
brew install pipx

# Debian / Ubuntu
sudo apt install pipx

# Everywhere else
python3 -m pip install --user pipx
python3 -m pipx ensurepath

Or use plain pip:

pip install v6ctl

Configure

Get your API token from the v6Node dashboard, then:

v6ctl config set token v6_...

Token is stored at ~/.config/v6ctl/config.json with 0600 permissions.

Alternatively, set V6_TOKEN in your environment.

Use

v6ctl nodes list                                # list your nodes
v6ctl nodes show <pay-id>                       # full details for a node
v6ctl nodes create -r 7 -p 13 -k 3200 -t debian-13
v6ctl nodes reboot <pay-id>
v6ctl nodes delete <pay-id>

v6ctl keys list                                 # list SSH keys
v6ctl keys create -d "laptop" -k "ssh-ed25519 AAAA..."

v6ctl webhooks create -u https://example.com/hook -e node.deployed

v6ctl plans                                     # available plans + pricing
v6ctl regions                                   # available regions
v6ctl templates                                 # available OS templates

Run v6ctl --help or v6ctl <command> --help for the full reference.

JSON output

Every command supports --json for scripting:

v6ctl --json nodes list | jq '.items[].pay_id'
v6ctl --json plans       | jq '.[] | select(.memory_mb >= 4096)'

Configuration

Where Precedence
--flag on the command line 1 (highest)
Environment variable (V6_TOKEN, V6_API_URL) 2
Config file ~/.config/v6ctl/config.json 3
Built-in defaults 4 (lowest)
v6ctl config show            # show resolved config (token redacted)
v6ctl config path            # print config file path
v6ctl config set api_url https://cloud.v6node.com/api/v1
v6ctl config unset token

Requirements

  • Python 3.10 or newer

License

MIT — see LICENSE.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

v6ctl-0.1.0.tar.gz (12.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

v6ctl-0.1.0-py3-none-any.whl (12.8 kB view details)

Uploaded Python 3

File details

Details for the file v6ctl-0.1.0.tar.gz.

File metadata

  • Download URL: v6ctl-0.1.0.tar.gz
  • Upload date:
  • Size: 12.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for v6ctl-0.1.0.tar.gz
Algorithm Hash digest
SHA256 eb4130951f4619661eff0b9153822341f8923bdd04e19a05e0cd5c87d15a7304
MD5 96312af78c23d4616d4a43f148f20440
BLAKE2b-256 b1ad222d34e9bd66d6bb340a9886aab3c45b61dd3ac81bb2ec52ead0b899a2ec

See more details on using hashes here.

File details

Details for the file v6ctl-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: v6ctl-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 12.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for v6ctl-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 84a51ac341171f48cbe14541c55d9a4ab7d933cb038146f264a08509416c8c45
MD5 de21cb9d4d01c7996938c948007269a1
BLAKE2b-256 4752c8b4dbd688a351e25b1a543f746efe7b9211af3330002373178c0dbcaf6f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page