Skip to content

devopsforhumans/kumaone

Repository files navigation

kumaone

Hatch project PyPI - Version PyPI - Python Version Documentation Status


Table of Contents

Note

kumaone's primary objective is to enable users to perform bulk action in uptime kuma server. A very special thanks to the author and contributors of the project uptime-kuma-api. kumaone is built by studying and understanding the code of uptime-kuma-api and in places I used some parts of the code as it is from uptime-kuma-api. Appreciate the outstanding work done by the author and contributors of both uptime kuma and uptime-kuma-api project.

kumaone is a CLI application. Designed for bulk operations mainly from reading configuration files. kumaone is very early in development. Contribution and constructive feedbacks are always welcome.

Virtualenv

  • Install pipenv from here

  • Activate virtual environment

    pipenv shell

    if there are no virtual environment available (e.g. first use), a virtual environment will be created and activated automatically.

  • Install dependencies

    To install dependencies with pipenv use the following command

    pipenv install

    To install dev dependencies use --dev flag

    pipenv install --dev

Installation

pip install kumaone

Installation (Dev)

pip install -e .

To Do List

Info

  • Show information about kumaone

Configuration

  • Show uptime kuma configuration (default/custom paths).
  • Create uptime kuma configuration (default/custom path).
  • Delete uptime kuma configuration.
  • Edit uptime kuma configuration.

Monitors

  • Supported Monitor types (tested)
    • HTTP
    • JSON_QUERY
    • PING
  • List all monitors.
  • List monitor by groups and processes also.
  • Show details of a monitor by ID.
  • Bulk add monitors from file(s).
  • Bulk delete monitors from file(s).
  • Add single monitor from inline dictionary data.
  • Delete single Monitor by name.
  • Delete single monitor by id.

Status Page

  • List all staus page(s).
  • See details of a single status page.
  • Add a new status page.
  • Add status pages from file(s).
  • Delete single status page by slug.
  • Delete status page from file(s).

Notification

  • Supported notification providers (tested)
    • Discord
    • Email(SMTP)
    • Opsgenie
    • PagerDuty
    • Rocket.Chat
    • Slack
    • Teams
    • Webhook
  • List all notification(s).
  • See details of a single notification by name/id.
  • Add new notification (interactive).
  • Add notifications from single file.
  • Delete notification by name.
  • Delete notification by id.
  • Delete notifications from single file.

Maintenance

TBA

Incident

TBA

Change Password

  • Change password from CLI.
  • Update password in kumaone config.

Cleanup

  • Clear heartbeats.
  • Clear statistics.
  • Clear events.

Backlog

  • Don't stop the program if one monitor process runs into error.
  • Add debug logs for methods.