This is the repository for the system that I use as my own control plane. It serves as a monitoring system, job queues control panel, notifications endpoint for webhooks, etc.
The backend is implemented in Haskell. You will need the Nix package manager to handle external dependencies.
To build the backend without optimisations, run:
$ cabal build
or, to enable optimisations
$ cabal build -O2
You will need a PostgreSQL 12 database or higher.
Please configure the environment variables in the appropriate source file in ./deployment
and source the file in your environment.
To launch the server, run
$ cabal run exe:control-plane-server start
To launch the job runner, run
$ cabal run exe:control-plane-jobs
You can start both of them in a tmux shell by running start-tmux.sh
While the former and the latter do not need to reside on the same machine, they both need access to the database server.
- Cards with the domain name, port, current status (reachable / unreacheable since <timestamp>)