icit-cli
v2.11.1
Published
CLI for ICIT Odoo infrastructure management
Maintainers
Readme
icit-cli
CLI for ICIT Odoo infrastructure management.
Prerequisites
- Node.js 18+
- SSH access to the gateway server (configured in
~/.ssh/config) - Microsoft Authenticator set up for MFA
Install
# npm (recommended)
npm install -g icit-cli
# or run without installing
npx icit-cli status
# or curl
curl -fsSLk https://46.101.21.210/install.sh | bashQuickstart
# 1. Login (SSH + MFA)
icit login
# 2. Check server status
icit status premium
# 3. View Patroni cluster
icit db
# 4. Check container logs
icit logs premium odoo-qfa-prod 50Commands
Auth
| Command | Description |
|---------|-------------|
| icit login | Authenticate via SSH + MFA |
| icit logout | Clear stored credentials |
| icit whoami | Show current session info |
Monitoring
| Command | Description |
|---------|-------------|
| icit health | API health check |
| icit status | List all servers |
| icit status <server> | Server metrics + containers |
| icit containers <server> | List containers |
| icit logs <server> <container> | Container logs (--tail N) |
| icit db | Patroni cluster status |
Operations
| Command | Description |
|---------|-------------|
| icit start <server> <container> | Start a container |
| icit stop <server> <container> | Stop a container |
| icit restart <server> <container> | Restart a container |
Production containers require confirmation. Skip with --yes.
Deployments
| Command | Description |
|---------|-------------|
| icit deploy | List all deployments |
| icit deploy trigger <name> | Trigger blue/green deploy |
| icit deploy status <id> | Check deploy progress |
| icit deploy history <name> | Deploy history (--limit N) |
| icit deploy rollback <name> | Rollback to previous color |
Configuration
| Command | Description |
|---------|-------------|
| icit config list | List nginx sites |
| icit config show <site> | Show site config |
| icit config reload-nginx | Validate + reload nginx |
| icit config reload-haproxy | Validate + reload HAProxy |
Admin
| Command | Description |
|---------|-------------|
| icit keys list | List API keys |
| icit keys create <name> <scopes> | Create key (--expires N) |
| icit keys revoke <id> | Deactivate key |
| icit keys delete <id> | Delete key permanently |
| icit audit | View audit log (--limit N, --key NAME) |
Global Flags
| Flag | Description |
|------|-------------|
| --json | Output raw JSON (for scripting) |
| --yes, -y | Skip confirmation prompts |
| --help, -h | Show help for a command |
Servers
| Name | Containers |
|------|-----------|
| premium | QFA, Cruxstone, Slow (prod/staging/dev/sandbox) |
| clients | Kuddy, Flotech, Bakers, Rosaab, Safeco, Trino |
Scripting
# JSON output + jq
icit containers premium --json | jq '.[].name'
icit db --json | jq '.nodes[] | select(.role == "primary") | .name'
# CI/CD: use --yes to skip prompts
icit deploy trigger odoo-qfa-dev --yesAuth Details
icit login authenticates via SSH to the gateway server, which triggers password + TOTP verification. On success, a time-limited API key is created and stored in ~/.icit/credentials.json. All subsequent commands use this key. Sessions expire after 24-48 hours depending on your user role.
API
The CLI wraps the ICIT Infrastructure API running at https://46.101.21.210/api/v1/. Swagger docs available at https://46.101.21.210/docs.
