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.9.tar.gz (66.0 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.9-py3-none-any.whl (57.9 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for pingera_cli-0.1.9.tar.gz
Algorithm Hash digest
SHA256 89ad2f04882f2cff399a7ef8b9eeb6ba906b8ba90d862d7644e6988cf6b86595
MD5 55119449974535bb52ad8e4a6b6dfb98
BLAKE2b-256 1a1708ee07f8c7afaa49aa745d610958ccfc504a9dbcb5add54438e0612449f0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pingera_cli-0.1.9-py3-none-any.whl
Algorithm Hash digest
SHA256 da083c048008445b0f16a0d3283a16296c6eb55333693e8382d36e1f0c7631cd
MD5 a07eb7f9f00351735fc77f7e0e02b0ff
BLAKE2b-256 bc9327de9041223ff2e1acccf8dbbe00bf6d150829439490232fc01d5fb97d79

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