Command-line interface for KubeVoIP Kubernetes resources.
Project description
KubeVoIP CLI
Command-line tools for working with KubeVoIP Kubernetes resources.
The package is published as kubevoip and exposes the kubevoip command:
uvx kubevoip --help
uvx kubevoip api-resources
uvx kubevoip --namespace telephony init
The CLI discovers KubeVoIP API details from CRDs. By default it uses the
installed cluster CRDs for live commands such as init, get, and apply,
and uses the latest published KubeVoIP release for offline commands such as
manifest and explain. You can override this with --schema-source latest|cluster|file.
Examples
Create a small platform with demo PostgreSQL and two SIP users:
kubevoip --namespace telephony init
Use an existing PostgreSQL database instead:
printf '%s' "$POSTGRES_PASSWORD" | kubevoip --namespace telephony init \
--database existing \
--postgres-host "$POSTGRES_HOST" \
--postgres-db kubevoip \
--postgres-user kubevoip \
--postgres-password-stdin
Generate a manifest:
kubevoip manifest sipuser --name alice --namespace telephony
Create individual platform resources. Friendly create commands apply by default after a Kubernetes server-side dry-run:
kubevoip --namespace telephony network-profile create public
kubevoip --namespace telephony media-relay create main --network-profile public
kubevoip --namespace telephony gateway create main \
--database-secret postgres-app \
--network-profile public \
--media-relay main
kubevoip user create alice \
--extension 100 \
--gateway main \
--dial-policy internal-external \
--auth-username alice \
--caller-id "Alice <100>" \
--password-secret alice-sip \
--namespace telephony
Print GitOps-friendly YAML instead:
kubevoip user create alice \
--extension 100 \
--gateway main \
--dial-policy internal-external \
--auth-username alice \
--password-secret alice-sip \
--namespace telephony \
--dry-run -o yaml
Update a user's extension without re-entering the rest of the SIPUser spec. The CLI reads the live resource, merges the changed fields, then applies the result:
kubevoip user update alice \
--extension 101 \
--caller-id "Alice <101>" \
--namespace telephony
Create a SIP user Secret without putting the value in shell history:
printf '%s' "$SIP_PASSWORD" | kubevoip secret sip-user alice-sip \
--namespace telephony \
--from-stdin
Development
uv sync --extra dev
uv run ruff check .
uv run pytest
uv run kubevoip --help
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 kubevoip-0.1.4.tar.gz.
File metadata
- Download URL: kubevoip-0.1.4.tar.gz
- Upload date:
- Size: 90.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.21 {"installer":{"name":"uv","version":"0.11.21","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e5904e1d860bb3709a8c84081577fb4f7dd56b413f29831cd75663538b5c9efd
|
|
| MD5 |
79e57bd5c2bfc8ff6290bd08d394b975
|
|
| BLAKE2b-256 |
0aef6b3737d1d5fb69e641b9415f5342c88fb7b79dfb102998f74680fd369227
|
File details
Details for the file kubevoip-0.1.4-py3-none-any.whl.
File metadata
- Download URL: kubevoip-0.1.4-py3-none-any.whl
- Upload date:
- Size: 17.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.21 {"installer":{"name":"uv","version":"0.11.21","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ee9889c727ad3ce1c5c7be562ff4a24219882ebb27d0b027f71684f51132e59c
|
|
| MD5 |
87372e3601e51b15949fa82d83050f95
|
|
| BLAKE2b-256 |
8bbce99f9a9d5b6025b4378d56932a6cad32ec3b9588aabaeccb0594efb46f7a
|