Skip to main content

The MLSysOps Agents Framework CLI.

Project description

MLSysOps CLI

MLSysOps CLI (mls) is a command-line tool for interacting with the MLSysOps framework. It allows users to manage applications, infrastructure resources, and orchestration agents across the device-edge-cloud continuum.

📦 Installation

Make sure you have Python 3.7+ and pip installed.

Option 1: Install via pip (recommended)

pip install -i https://test.pypi.org/simple/ mlsysops-cli

After installation, you can use the mls command directly in your terminal.


Option 2: Install from source (for development)

If you want to work on the CLI or customize it:

# Clone the repository (make sure to use the CLI branch)
git clone -b CLI https://github.com/mlsysops-eu/mlsysops-framework.git

# Go into the CLI directory
cd mlsysops-framework/mlsysops-cli

# Install it in editable mode
pip install -e .

This will also expose the mls command in your terminal, and any changes you make to the code will be reflected immediately.


🔧 Configuration

Make sure you have your environment variables or .env file set up with:

# Configuration with the framework API
export MLS_API_IP=<MLS API host ip>
export MLS_API_PORT=8000

# Deployment
export KARMADA_HOST_KUBECONFIG=<path to karmada host kubeconfig>
export KARMADA_API_KUBECONFIG=<path to karmada api kubeconfig>
export KARMADA_HOST_IP=<karmada host ip>

🚀 Usage

mls --help

Each section of the system has its own command group:

  • mls apps – Manage application deployments
  • mls infra – Query and register infrastructure
  • mls manage – System control (ping, mode switch)
  • mls agents – Deploy orchestration agents

🧹 Application Commands

mls apps deploy-app --path ./my_app.yaml
mls apps list-all
mls apps remove-app

🏗️ Infrastructure Commands

mls infra list-infra --type Cluster

⚙️ Management Commands

mls manage ping-agent
mls manage set-mode --mode 1

Framework Commands

mls framework deploy-all
mls framework deploy-cluster
mls framework deploy-continuum
mls framework deploy-node
mls framework deploy-services

Optional path argument: Use the --path flag to specify the system descriptions folder.

mls framework deploy-all/cluster/continuum/node --path ./descriptions

The descriptions folder should contain subfolders like node, cluster, or continuum for proper agent configuration.

Optional inventory argument: Use the --inventory flag to specify the inventory YAML file used during the K3s installation.

mls framework add-system-agents --inventory ./inventory.yaml

Note: Only one of --path or --inventory can be specified at a time. If both options are provided, the command will throw an error.


⚡ Tab Completion (Bash)

Enable tab-completion for the mls CLI in your terminal to quickly discover available commands and options:

echo 'eval "$(_MLS_COMPLETE=bash_source mls)"' >> ~/.bashrc
source ~/.bashrc

Then try:

mls [TAB][TAB]

Enjoy instant access to commands and flags 🎉


📄 License

License © 2025 [MLSysOps]

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

mlsysops_cli-0.1.3.tar.gz (20.0 kB view details)

Uploaded Source

Built Distribution

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

mlsysops_cli-0.1.3-py3-none-any.whl (21.2 kB view details)

Uploaded Python 3

File details

Details for the file mlsysops_cli-0.1.3.tar.gz.

File metadata

  • Download URL: mlsysops_cli-0.1.3.tar.gz
  • Upload date:
  • Size: 20.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for mlsysops_cli-0.1.3.tar.gz
Algorithm Hash digest
SHA256 85612d078673f4cf03f68d46342181cc613561b048eb7897a9a3b51aa8c9ae5a
MD5 732a42c97cd6cabaf772e7a426640a87
BLAKE2b-256 817062e70ca6a18e84a2269538f2f3137c342afa5517c793504b19d5bbbbff71

See more details on using hashes here.

File details

Details for the file mlsysops_cli-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: mlsysops_cli-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 21.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for mlsysops_cli-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 1aaeb603637ab2af37a7e372c350b0a7f74d74ff2fffc5384cda17f6f4523ee3
MD5 4c0c1686096ad2e22266df74c51338cf
BLAKE2b-256 442ba3a8b50ed0c62085ceacb259df767ce61eefbe1bc77fb80bcdc81f639695

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