Metadata-Version: 2.5
Name: lampion-cli
Version: 0.1.0
Summary: CLI for Lampion — sovereign serverless PostgreSQL hosted in France
Project-URL: Homepage, https://lampion.cloud
Project-URL: Documentation, https://lampion.cloud/cli
Project-URL: Changelog, https://lampion.cloud/roadmap
Author: Lampion
License-Expression: MIT
License-File: LICENSE
Keywords: cli,database,lampion,postgres,postgresql,serverless,sovereign
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: System Administrators
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Database
Classifier: Topic :: Database :: Front-Ends
Classifier: Topic :: Utilities
Requires-Python: >=3.10
Requires-Dist: click>=8.1.0
Requires-Dist: httpx>=0.28.0
Requires-Dist: rich>=13.0.0
Description-Content-Type: text/markdown

# Lampion CLI

Command-line interface for [Lampion](https://lampion.cloud) — sovereign serverless PostgreSQL hosted in France.

## Install

```bash
pip install lampion-cli
```

## Setup

```bash
export LAMPION_TOKEN=lmp_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
# Optional: export LAMPION_API_URL=https://api.lampion.cloud
```

Generate an API key at https://app.lampion.cloud/settings

## Usage

```bash
# Projects
lampion projects list
lampion projects create my-app --region fr-par-1
lampion projects delete <project-id>

# Branches
lampion branches list <project-id>
lampion branches create <project-id> dev --parent <project-id>
lampion branches reset <project-id> <branch-id>
lampion branches merge <project-id> <branch-id> --dry-run
lampion branches promote <project-id> <branch-id>

# Endpoints (computes)
lampion endpoints list <project-id>
lampion endpoints suspend <project-id> <endpoint-id>
lampion endpoints resume <project-id> <endpoint-id>

# SQL
lampion sql <project-id> <endpoint-id> "SELECT * FROM users LIMIT 10"

# Schema introspection
lampion schema <project-id> --database postgres --schema public

# Databases & Roles
lampion databases list <project-id> <endpoint-id>
lampion databases create <project-id> <endpoint-id> mydb
lampion roles list <project-id> <endpoint-id>
lampion roles create <project-id> <endpoint-id> app_user

# Extensions
lampion extensions list <project-id> <endpoint-id>
lampion extensions install <project-id> <endpoint-id> pgvector

# Monitoring
lampion metrics <project-id>
lampion slow-queries <project-id> <endpoint-id>
lampion logs <project-id> <endpoint-id> --lines 50
lampion usage <project-id>

# Backups (PITR)
lampion backups list <project-id>
lampion backups create <project-id> <branch-id> "before-migration"
lampion backups restore <project-id> <backup-id>

# Dump
lampion dump <project-id> <endpoint-id> --database postgres -o dump.sql

# PII Masking
lampion anon status <project-id> <branch-id>
lampion anon enable <project-id> <branch-id>
lampion anon add-rule <project-id> <branch-id> --table users --column email --function "anon.fake_email()"
lampion anon disable <project-id> <branch-id>

# IP Allowlist
lampion allowlist get <project-id> <endpoint-id>
lampion allowlist set <project-id> <endpoint-id> 1.2.3.4/32 5.6.7.8/32

# Permissions
lampion permissions list <project-id> <endpoint-id>
lampion permissions grant <project-id> <endpoint-id> --role app_user --table users --privilege SELECT
lampion permissions revoke <project-id> <endpoint-id> --role app_user --table users --privilege ALL

# Data residency
lampion residency <project-id>
```

## JSON output

Most list commands support `--json` for machine-readable output:

```bash
lampion projects list --json
lampion branches list <project-id> --json
```

## Regions

| Region | Provider | Location |
|--------|----------|----------|
| `fr-par-1` | Scaleway | Paris, France |
| `fr-gra-1` | OVH Cloud | Gravelines, France |
