Skip to main content

A beautiful Python CLI tool built with typer and rich, distributed via pip and based on Pingera SDK

Project description

Pingera Platform CLI 🚀

A beautiful Python CLI tool for the Pingera Platform - built with typer and rich, distributed via pip and based on Pingera SDK.

PyPI version Python Support License: MIT

✨ Features

  • Beautiful Terminal Output: Powered by Rich library for colorful, formatted output
  • Modern CLI Interface: Built with Typer for intuitive command-line interactions
  • Pingera Platform Integration: Seamlessly integrates with Pingera SDK for managing and running checks (statuspages and other coming soon)
  • Cross-Platform: Works on Windows, macOS, and Linux
  • Easy Installation: Simple pip install with all dependencies managed
  • Configuration Management: Flexible configuration with environment variables and config files
  • Secrets Management: Manage organization secrets for monitoring checks

🚀 Installation

Install Pingera Platform CLI using pip:

pip install pingera-cli

🔐 Authentication

Before using the CLI, you need to authenticate with the Pingera Platform:

  1. Get your API key: Visit app.pingera.ru and create an API token in your account settings
  2. Login to the CLI:
    pngr auth login --api-key your-api-key-here
    
  3. Verify authentication:
    pngr auth status
    

Alternatively, you can set the API key as an environment variable:

export PINGERA_API_KEY=your-api-key-here

📖 Basic Usage

List all monitoring checks

pngr checks list

Get details of a specific check

pngr checks get <check-id>

Create a new web check

pngr checks create \
  --name "My Website" \
  --type web \
  --url https://example.com \
  --interval 300

Get check results

pngr checks results <check-id>

Run an on-demand check

pngr checks run custom \
  --type web \
  --url https://example.com \
  --name "Quick Test"

Manage check groups

# List all check groups
pngr checks groups list

# Create a new group
pngr checks groups create \
  --name "Production APIs" \
  --description "Critical production endpoints" \
  --color "#FF5733"

# Assign a check to a group
pngr checks assign-group check_123 --group-id group_456

# Remove a check from its group
pngr checks assign-group check_123 --group-id null

Secrets Management

# List organization secrets
pngr secrets list

# Create a new secret
pngr secrets create "DATABASE_PASSWORD"

# Update a secret's value
pngr secrets update sec123abc456

# Delete a secret
pngr secrets delete sec123abc456

List available regions

pngr checks list-regions

Filter regions by check type

pngr checks list-regions --check-type web

🔧 Configuration

The CLI stores configuration in ~/.config/pingera-cli/config.json. You can manage settings with:

# Show current configuration
pngr config show

# Set default output format
pngr config set output_format json

📊 Output Formats

The CLI supports multiple output formats:

  • table (default): Human-readable tables
  • json: JSON format for scripting
  • yaml: YAML format
# JSON output
pngr checks list --output json

# YAML output  
pngr checks list --output yaml

🌐 Platform Links

🛠️ Development

# Clone the repository
git clone https://github.com/pingera/pingera-cli.git
cd pingera-cli

# Install in development mode
pip install -e .

# Test the CLI (after installation)
pngr --help

# Run tests
python -m pytest tests/

📝 License

This project is licensed under the MIT License - see the LICENSE file for details.

🤝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

📞 Support

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

pingera_cli-0.1.4.tar.gz (61.2 kB view details)

Uploaded Source

Built Distribution

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

pingera_cli-0.1.4-py3-none-any.whl (54.9 kB view details)

Uploaded Python 3

File details

Details for the file pingera_cli-0.1.4.tar.gz.

File metadata

  • Download URL: pingera_cli-0.1.4.tar.gz
  • Upload date:
  • Size: 61.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.5.11

File hashes

Hashes for pingera_cli-0.1.4.tar.gz
Algorithm Hash digest
SHA256 a2a7ab15d620a86652c5cbd227e4c04a683b6b3f83362d9274228b0578aba747
MD5 66ec85aebacf3c1e2bbcd41c5c0ba418
BLAKE2b-256 23c2910ebf78e5692badeaeeddd01ea38d07caf212865434f56af286099bca99

See more details on using hashes here.

File details

Details for the file pingera_cli-0.1.4-py3-none-any.whl.

File metadata

File hashes

Hashes for pingera_cli-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 cfcdfa1e2e82464b617a8192e926cf7deb5949168479c23c0a9131556258119a
MD5 cff07b691a84c0fb2715bb29da198126
BLAKE2b-256 25a539e427b58ece4b10b59ca3aa9fcd979b149bb7480d8b51914dc9494ff1d1

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