Monitoring Plugins Assets
Overview
An attempt at packaging individual C plugins from the Monitoring Plugins project in the new Sensu 2.0 Asset format. The goal of the project is to provide a simple workflow for creating Sensu 2.0 Assets containing individual C plugins (nice and small!).
Usage
-
Clone this repo:
$ git clone git@github.com:calebhailey/monitoring-plugins-assets.git $ cd monitoring-plugins-assets
-
Build the Docker container:
$ docker build -t monitoring-plugins:latest .
-
Export Sensu 2.0 Assets:
$ docker run -v $PWD:/output -e "PLUGINS=check_http check_tcp" monitoring-plugins:latest
The Docker container will output a single Sensu 2.0 Asset per plugin into your local working directory, and then exit.
Project Status
This is a prototype! My initial build target is Alpine Linux. Instead of compiling the plugins myself, I'm being lazy and using the Alpine Linux monitoring-plugins packages. Eventually I'd like to add support for more platforms (e.g. for Ubuntu/RHEL/etc), but the interface should always be a two step process of building a container, and running it to export assets containing individual C plugins.
Next Steps / Project Goals
- Hook up a build pipeline to automatically build/package all of the plugins and upload them as GitHub Releases (i.e. use GitHub Releases to host the assets).