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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
eb4130951f4619661eff0b9153822341f8923bdd04e19a05e0cd5c87d15a7304
|
|
| MD5 |
96312af78c23d4616d4a43f148f20440
|
|
| BLAKE2b-256 |
b1ad222d34e9bd66d6bb340a9886aab3c45b61dd3ac81bb2ec52ead0b899a2ec
|
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
84a51ac341171f48cbe14541c55d9a4ab7d933cb038146f264a08509416c8c45
|
|
| MD5 |
de21cb9d4d01c7996938c948007269a1
|
|
| BLAKE2b-256 |
4752c8b4dbd688a351e25b1a543f746efe7b9211af3330002373178c0dbcaf6f
|