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.15.tar.gz (78.3 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.15-py3-none-any.whl (73.2 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for pingera_cli-0.1.15.tar.gz
Algorithm Hash digest
SHA256 867ebb5aeef8c07222e864926e2e0a9ffc70c385b9c8bc2d4f89d60ba1648e5c
MD5 79eb8b33cff0f8e5241304a338d41730
BLAKE2b-256 efeca3338319b6a2cda8a7db0da2bd93649d9370b49d6077608ad3953126d6d7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pingera_cli-0.1.15-py3-none-any.whl
Algorithm Hash digest
SHA256 8c3981e5bc4145ae45a5d39f2e437acb8a3f7254906e4e5b1d006d3a4238ca5b
MD5 cb91134d265d35192229fbaa7081c6b7
BLAKE2b-256 d53bdc4d1ffdb6756df1a7ebf62b999dd31138d4c22b38bdb117bbec08eec82a

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