Skip to main content

OKS-CLI

Project Incubating

Kubernetes


🌐 Links


📄 Table of Contents


🧭 Overview

OKS-CLI is a command-line interface that allows you to deploy and manage Kubernetes clusters on top of OUTSCALE infrastructure.


✅ Requirements

  • Python 3.11 or later
  • pip (Python package manager)
  • kubectl (required for commands that interact with the Kubernetes API)

📦 Installation

Standard Installation

# Create and activate a virtual environment
python -m venv venv
source venv/bin/activate

# Install the CLI
pip install oks-cli

# Check version of oks-cli
oks-cli version

🚀 Usage

Display all available commands:

oks-cli fullhelp

Commands

Command Description
profile list List existing profiles
profile add Add AK/SK or username/password new profile
profile delete Delete a profile by name
profile update Update an existing profile
project list List all projects
project create Create a new project
project get Get default project or the project by name
project update Update a project by name
project delete Delete a project by name
project login Set a default project by name
project logout Unset default project
project quotas Get project quotas
project snapshots Get project snapshots
project publicips Get project public ips
cluster list List all clusters
cluster create Create a new cluster
cluster get Get a cluster by name
cluster update Update a cluster by name
cluster upgrade Upgrade a cluster by name
cluster delete Delete a cluster by name
cluster login Set a default cluster
cluster logout Unset default cluster
cluster kubeconfig Fetch the kubeconfig for a cluster
cluster kubectl Fetch kubeconfig and run kubectl against it
cluster nodepool list List nodepools in the specified cluster
cluster nodepool create Create a new nodepool in the cluster
cluster nodepool delete Delete a nodepool by name from the cluster
cache clear Clear cache
cache kubeconfigs List cached kubeconfigs
quotas Get quotas
fullhelp Display detailed help information for all commands
version Show the current CLI version
install-completion Install shell completion scripts

Examples

# List all projects
oks-cli project list

# Dry run project creation
oks-cli project create --project-name my-project --description "Test project" --dry-run

# Dry run cluster creation
oks-cli cluster create \
  --cluster-name my-cluster \
  --project-name my-project \
  --description "My test cluster" \
  --version "1.32" \
  --dry-run

# Set a default project profile
oks-cli project login --project-name my-project

🛠 Development

Editable Mode

Install the CLI in editable mode with development dependencies

# Clone the repository
git clone https://github.com/outscale/oks-cli.git
cd oks-cli

# Create and activate a virtual environment
python -m venv venv
source venv/bin/activate

# CLI in editable mode
pip install -e ".[dev]"

Changes in the oks_cli/ directory will be immediately reflected without reinstalling.

Tests

Run the test suite using pytest to ensure code correctness and stability:

pytest

Project Structure

oks-cli/
├── oks_cli/              # Source code
│   ├── cache.py
│   ├── cluster.py
│   ├── main.py
│   ├── netpeering.py
│   ├── profile.py
│   ├── project.py
│   ├── quotas.py
│   └── utils.py
├── setup.py              # Packaging configuration
├── requirements.txt      # Dependencies
└── README.md             # Project documentation

Dependencies

Dependencies are managed via setup.py and requirements.txt.

To reinstall or update:

pip install -e .

🤝 Contributing

OKS-CLI is open source software licensed under BSD-3-Clause.

We welcome contributions! Please see CONTRIBUTING.md for guidelines and instructions.


📜 License

BSD-3-Clause © Outscale SAS


🆘 Support

Metadata

Release files for oks-cli 1.22

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for oks-cli 1.22
File Size Uploaded
oks_cli-1.22.tar.gz 44.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for oks-cli 1.22
File Interpreter ABI Platform
oks_cli-1.22-py3-none-any.whl Python 3 none any Details

Total release size: 81.5 kB

Release files / oks_cli-1.22.tar.gz

Download URL oks_cli-1.22.tar.gz
Size 44.2 kB
Tags Source
SHA-256 checksum
How to use checksums
cebcefd50dd86fe46c8ba7b3f72d29b576ef3f39c9710c43ea3a30ab3d4bf66a
BLAKE2b-256 checksum
How to use checksums
4cb376f93b1f0e090257f47a74b6aec2e861b905a0f7eafeaf766375c3e58c89
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.13

Release files / oks_cli-1.22-py3-none-any.whl

Download URL oks_cli-1.22-py3-none-any.whl
Size 37.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
7ffe71605356957d862ba52f34b8529bc953850a2a45b7bbd207e5d6779917a1
BLAKE2b-256 checksum
How to use checksums
62cd9942dceeef7ffa0c7ecbc4d1514c3cce5032820784c71fb18376e821e05f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.13

Release history Release notifications | RSS feed

This release

1.22 This release

2 release files

1.21

2 release files

1.20

2 release files

1.19

2 release files

1.18

2 release files

1.17

2 release files

1.16

2 release files

1.15

2 release files

1.14

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page