InEdge Cloud CLI
Project description
inedge-cli
Command-line interface for InEdge Cloud. Deploy, manage, and monitor your services from the terminal.
Install
pip install inedge
Quick Start
inedge login # Authenticate via browser
inedge login --token <api-key> # CI/CD (non-interactive)
inedge orgs list # List your organizations
inedge orgs switch fastassert # Set active org
inedge projects create --name production # Create a project
inedge projects switch production # Set active project
inedge context # Show current org + project
Commands
inedge login [--token <key>] Log in (browser OAuth or API key)
inedge logout Clear stored credentials
inedge auth status Show auth state + org + project
inedge orgs list List organizations
inedge orgs switch <org> Switch active org
inedge projects list List projects in current org
inedge projects create --name <name> Create project
inedge projects switch <project> Switch active project
inedge context Show current org + project
inedge context set --org --project Set context directly
inedge config list Show all config values
inedge config set <key> <value> Set a config value
inedge services list List services in current project
inedge services get <id> Get service details
inedge services create --name <n> --image <img> Create service
inedge services delete <id> [--yes] Delete service
inedge services deploy <id> --image <img> Deploy new image
inedge services scale <id> --replicas <n> Scale replicas
inedge deployments list <service-id> List deployment history
inedge deployments rollback <service-id> [--to <dep-id>] Rollback
inedge registry repos List image repositories
inedge registry artifacts <repo> List artifacts/tags
inedge registry credentials [--github-actions] Get push credentials
inedge db list List databases in current project
inedge db get <id> Get database details
inedge db create --name <n> ... Create managed PostgreSQL database
inedge db delete <id> [--yes] Delete database
inedge db credentials <id> Show connection credentials
inedge db connect <id> [--copy] Get psql connection string
inedge db link <id> --service <svc> Link database to a service
inedge db unlink <id> --service <svc> Unlink database from a service
inedge db backups <id> List backups (requires PITR)
inedge db backup <id> Create on-demand backup
inedge db restore <id> [--backup|--target-time] [--yes] Restore database
inedge db metrics <id> Show database metrics
inedge secrets list List secrets in current project
inedge secrets get <key> Get secret details
inedge secrets set <key> --value <v> Create or update a secret
inedge secrets delete <key> [--yes] Delete a secret
inedge secrets import --file <path> Import secrets from .env file
inedge secrets link <key> --service <svc> Link secret to service
inedge secrets unlink <key> --service <svc> Unlink secret from service
inedge env list <service-id> List env vars for a service
inedge env set <svc> KEY=VALUE ... Set environment variables
inedge env delete <svc> <key> Delete an environment variable
inedge env import <svc> --file <path> Import env vars from .env file
All commands support --format json|table for output formatting.
Current Status
| Milestone | Status | Details |
|---|---|---|
| M0 — Foundation | ✅ Complete | Auth, context, orgs, projects commands |
| M1 — Web Services + Registry | ✅ Complete | Services CRUD + deploy, deployments, registry commands |
| M2 — Databases + Secrets | ✅ Complete | Database CRUD, backups, restore, metrics, secrets, env vars |
Configuration
Config is stored at ~/.inedge/config.toml. Auth tokens are stored in the OS keychain via keyring.
inedge config set api-url https://api.inedge.ai/api/v1
inedge config set default-org mycompany
inedge config set default-project production
Development
python3 -m venv .venv
source .venv/bin/activate
pip install -e ".[dev]"
inedge --help
Structure
inedge-cli/
├── src/inedge_cli/
│ ├── __init__.py
│ ├── main.py # Typer app entry point
│ ├── config.py # Config management (~/.inedge/config.toml)
│ ├── api_client.py # HTTP client (httpx) for Cloud API
│ ├── auth.py # Token management via keyring
│ ├── commands/
│ │ ├── auth.py # login, logout, auth status
│ │ ├── context.py # context show, context set
│ │ ├── orgs.py # orgs list, switch
│ │ ├── projects.py # projects list, create, switch
│ │ ├── services.py # services CRUD + deploy (M1)
│ │ ├── deployments.py # deployments list, rollback (M1)
│ │ ├── registry.py # registry login, list, tags (M1)
│ │ ├── databases.py # database CRUD, backups, restore, metrics (M2)
│ │ ├── secrets.py # secrets CRUD, import, link/unlink (M2)
│ │ └── env.py # env vars list, set, delete, import (M2)
│ └── utils/
│ ├── output.py # Rich table / JSON formatting
│ └── errors.py # User-friendly error handling
├── tests/
├── pyproject.toml
└── README.md
Project details
Release history Release notifications | RSS feed
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 inedge-0.13.0.tar.gz.
File metadata
- Download URL: inedge-0.13.0.tar.gz
- Upload date:
- Size: 116.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d53c992dfff7b157e416729a1cbd50e74d65c198e5d69e0080a43c704af83ad0
|
|
| MD5 |
6ee447685022c0a063250de996260435
|
|
| BLAKE2b-256 |
fd7ad03c044795c0d661c7aa1c6f0be342deacc380e585862192ff0c160a5554
|
Provenance
The following attestation bundles were made for inedge-0.13.0.tar.gz:
Publisher:
cd.yml on InEdge-Cloud-Platform/inedge-cli
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
inedge-0.13.0.tar.gz -
Subject digest:
d53c992dfff7b157e416729a1cbd50e74d65c198e5d69e0080a43c704af83ad0 - Sigstore transparency entry: 1566595756
- Sigstore integration time:
-
Permalink:
InEdge-Cloud-Platform/inedge-cli@799d8f4bbf505cfd3513f32f8e9f5ff3ea255ad1 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/InEdge-Cloud-Platform
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
cd.yml@799d8f4bbf505cfd3513f32f8e9f5ff3ea255ad1 -
Trigger Event:
push
-
Statement type:
File details
Details for the file inedge-0.13.0-py3-none-any.whl.
File metadata
- Download URL: inedge-0.13.0-py3-none-any.whl
- Upload date:
- Size: 77.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
081e07538b1dcbfe8069be0bf24adca0a1f29c89e51d392d6c04049d64e18c02
|
|
| MD5 |
e6c626d98c77899afdcfd2813b87a0c9
|
|
| BLAKE2b-256 |
c320f1cd90609a9232cd96639a6de18c6780a9d562dd1a02090601d54d97abb6
|
Provenance
The following attestation bundles were made for inedge-0.13.0-py3-none-any.whl:
Publisher:
cd.yml on InEdge-Cloud-Platform/inedge-cli
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
inedge-0.13.0-py3-none-any.whl -
Subject digest:
081e07538b1dcbfe8069be0bf24adca0a1f29c89e51d392d6c04049d64e18c02 - Sigstore transparency entry: 1566595790
- Sigstore integration time:
-
Permalink:
InEdge-Cloud-Platform/inedge-cli@799d8f4bbf505cfd3513f32f8e9f5ff3ea255ad1 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/InEdge-Cloud-Platform
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
cd.yml@799d8f4bbf505cfd3513f32f8e9f5ff3ea255ad1 -
Trigger Event:
push
-
Statement type: