The Pangolin CLI provides command-line tools for managing your Pangolin data catalog infrastructure.
pangolin-admin- Administrative tool for managing tenants, warehouses, catalogs, users, and permissionspangolin-user- User-focused tool for data discovery and catalog operations
# Build from source
cd pangolin
cargo build --release --bin pangolin-admin
# The binary will be at: target/release/pangolin-admin# 1. Login as root
pangolin-admin login --username admin --password password
# 2. Create a tenant
pangolin-admin create-tenant --name my-company \
--admin-username tenant-admin \
--admin-password secure-password
# 3. Login as tenant admin
pangolin-admin login --username tenant-admin --password secure-password
# 4. Create a warehouse
pangolin-admin create-warehouse my-warehouse --type s3
# 5. Create a catalog
pangolin-admin create-catalog my-catalog --warehouse my-warehouse- Admin Overview - Complete admin tool reference
- Tenant Management - Creating and managing tenants
- User Management - User creation and administration
- Warehouse Management - Storage backend configuration
- Catalog Management - Local catalog operations
- Federated Catalogs - External catalog integration
- Permission Management - RBAC and access control
- Service Users - API keys and service accounts
- Token Management - User token operations
- Audit Logging - Viewing and analyzing audit events
- Merge Operations - Managing branch merges
- Update Operations - Updating resources
- Metadata Management - Business metadata operations
- Optimization Commands - Performance and maintenance
- User Overview - Complete user tool reference
- Branch Management - Creating and managing branches
- Tag Management - Versioning with tags
- Discovery - Data discovery and search
- Access Requests - Requesting permissions
- Token Management - Personal token management
- Overview - CLI tools overview
- Configuration - CLI configuration files
- Docker Usage - Running CLI in Docker
- Warehouse Management - Multi-cloud warehouse setup
# Create S3 warehouse
pangolin-admin create-warehouse prod-s3 --type s3 \
--bucket my-bucket \
--access-key AKIA... \
--secret-key ... \
--region us-east-1
# Create Azure warehouse
pangolin-admin create-warehouse prod-azure --type azure
# Create GCS warehouse
pangolin-admin create-warehouse prod-gcs --type gcs
# List warehouses
pangolin-admin list-warehouses
# Update warehouse credentials
pangolin-admin update-warehouse --id <uuid>
# Delete warehouse
pangolin-admin delete-warehouse my-warehouse# Create catalog
pangolin-admin create-catalog my-catalog --warehouse my-warehouse
# List catalogs
pangolin-admin list-catalogs
# Delete catalog
pangolin-admin delete-catalog my-catalog# Create user
pangolin-admin create-user john.doe \
--email john@example.com \
--role tenant-user
# List users
pangolin-admin list-users
# Update user
pangolin-admin update-user --id <uuid> --active falseThe CLI supports an interactive REPL mode:
# Start interactive mode
pangolin-admin
# You'll see a prompt:
(admin:username@tenant)>
# Type commands without the 'pangolin-admin' prefix:
(admin:username@tenant)> list-warehouses
(admin:username@tenant)> create-catalog my-catalog --warehouse my-warehouse
(admin:username@tenant)> exit# Set Pangolin API URL
export PANGOLIN_URL="http://localhost:8080"
# Set tenant context
export PANGOLIN_TENANT="my-tenant"
# Use in commands
pangolin-admin list-warehousesThe CLI saves authentication state in ~/.pangolin/config.json:
{
"base_url": "http://localhost:8080",
"username": "admin",
"token": "...",
"tenant_id": "...",
"tenant_name": "my-tenant"
}Use multiple profiles:
# Use specific profile
pangolin-admin --profile production list-warehouses
# Switch profiles
pangolin-admin --profile staging login --username admin# General help
pangolin-admin help
# Command-specific help
pangolin-admin create-warehouse --help
# List all commands
pangolin-admin help | grep " "# Check API is running
curl http://localhost:8080/health
# Verify URL
echo $PANGOLIN_URL
# Test with explicit URL
pangolin-admin --url http://localhost:8080 list-tenants# Clear saved credentials
rm ~/.pangolin/config.json
# Login again
pangolin-admin login --username admin --password password# Check current user context
pangolin-admin list-users # Shows current user
# Verify tenant context
# Root users must use 'use' command to switch tenants
pangolin-admin use my-tenantSee individual documentation pages for detailed examples:
- Issues: GitHub Issues
- Documentation: Full Documentation
- Architecture: Architecture Docs
Current CLI version: 0.1.0
For API compatibility, see API Documentation.