botkube v0.16 releases: monitor your Kubernetes cluster, debug critical deployments
BotKube integration with Slack, Mattermost, or Microsoft Teams helps you monitor your Kubernetes cluster, debug critical deployments, and gives recommendations for standard practices by running checks on the Kubernetes resources. You can also ask BotKube to execute kubectl commands on the k8s cluster which helps debugging an application or cluster.
- Informer Controller: Registers informers to kube-apiserver to watch events on the configured k8s resources. It forwards the incoming k8s event to the Event Manager.
- Event Manager: Extracts required fields from the k8s event object and creates a new BotKube event struct. It passes the BotKube event struct to the Filter Engine.
- Filter Engine: Takes the k8s object and BotKube event struct and runs Filters on them. Each filter runs some validations on the k8s object and modifies the messages in the BotKube event struct if required.
- Event Notifier: Finally, the notifier sends BotKube event over the configured communication channel.
- Bot Interface: Bot interface takes care of authenticating and managing connections with communication mediums like Slack, Mattermost, Microsoft Teams and reads/sends messages from/to them.
- Executor: Executes BotKube or kubectl command and sends back the result to the Bot interface.
Breaking Changes 💥
sources[alias].resources.namefield has been renamed to
sources[alias].resources.type, to allow resource name regexes.
sources[alias].eventsfield has been renamed and moved to
sources[alias].event.typesto allow definition of additional event constraints. Similarly, the
sources[alias]resources.eventsfield has been renamed and moved to
Implemented Enhancements 🎉
- Botkube extensibility design for sources and executors by @huseyinbabal in #783
- Wire execution of automated actions by @pkosiec in #837
- Validate bindings for communcators by @josefkarasek in #845
- Trigger automated actions based on config and fix event issues by @pkosiec in #848
- Prepare sources config for additional constraints by @pkosiec in #850
- Support source constraints for event details and resource labels, annotations, name by @pkosiec in #854
- Add support for list/enable/disable actions by @josefkarasek in #852
Fixed Bugs 🐛
- Cherry-picked v0.15.0 Fixes / Enhancements (#826) by @ezodude in #827
- Work around empty K8s resources list which causes Botkube crash by @pkosiec in #834
- Improve Helm chart documentation for Actions and sources by @pkosiec in #856
Other Changes ✨
- Configure action automation for a selected incoming event by @ezodude in #830
- Unify package names and split utils by @pkosiec in #855
- Include node count in anonymous analytics by @pradeepnnv in #853
- Add warning about kubectl to the help message by @mszostok in #861
Copyright (c) 2019-2020 InfraCloud Technologies