Releases: kubeshop/botkube
Releases · kubeshop/botkube
v1.0.0-rc.1
What's Changed
Breaking Changes 💥
notification: short/long
was removed, it's up to the plugin to return a suitable message.- kubectl error handling
Before:After:"Sorry, the kubectl command is not authorized to work with 'role' resources in the 'default' Namespace on cluster '%s'. Use 'list executors' to see allowed executors."
Error from server (Forbidden): roles.rbac.authorization.k8s.io is forbidden: User "kubectl-wait-and-deploy-all" cannot list resource "roles" in API group "rbac.authorization.k8s.io" in the namespace "default"
kubectl
configuration is named asbotkube/kubectl
kubernetes
configuration is named asbotkube/kubernetes
- New RBAC support: Plugins that use kubernetes client need to declare RBAC config in order to get kubeconfig.
botkube/kubectl: context: rbac: group: type: Static prefix: "" static: values: [my-group]
filters
configuration is removed from main configuration, now it is under Kubernetes source plugin.
Before:After:# ...trimmed filters: kubernetes: objectAnnotationChecker: true nodeEventsChecker: true #...trimmed
...trimmed 'k8s-all-events': displayName: "Kubernetes Info" botkube/kubernetes: enabled: true config: filters: objectAnnotationChecker: true nodeEventsChecker: true # ...trimmed
Implemented Enhancements 🎉
- Update prometheus message format by @mszostok in #966
- Add SourceBindings built-in alias and fix filtering commands by @pkosiec in #967
- Use new format to download deps by @mszostok in #968
- Support include/exclude regexes for event and resource constraints by @pkosiec in #963
- Add
kubectl
plugin to run directly typedkubectl
commands by @mszostok in #973 - Introduce global bot name placeholder by @mszostok in #979
- Include API Key when fetching remote Botkube configuration by @pkosiec in #980
- Add interactive builder in kubectl plugin by @mszostok in #982
- Kubernetes source plugin by @huseyinbabal in #985
- Add resource version for status reporting and update configuration types by @pkosiec in #1004
- Add event rendering for all platforms, add isInteractive, fix e2e tests, update Prometheus by @mszostok in #1005
- Reload Botkube on remote config change by @pkosiec in #1006
- Update and validate plugin JSON schemas, produce second plugin index by @pkosiec in #1013
- Report Deployment ID when using remote configuration by @pkosiec in #1019
- Support ChannelName RBAC mapping for executors by @josefkarasek in #1023
- Remove built-in kubectl, filters, defaultNamespace, fix list bugs by @mszostok in #1026
- Add error message to remote gql reporter by @mszostok in #1029
Fixed Bugs 🐛
- Fix alias validation and "Show Config" button in Help by @pkosiec in #970
- Enable actions even if not bind to a specific channel by @mszostok in #1014
- Fix audit log reporting for source events and commands by @pkosiec in #1022
Other Changes ✨
- Add "Testing" section in pull request template by @pkosiec in #976
- Update config to support RBAC policy rules by @josefkarasek in #960
- Report botkube status by @josefkarasek in #978
- Add default remote config provider endpoint by @pkosiec in #988
- Bump github.com/hashicorp/go-getter from 1.6.2 to 1.7.0 by @dependabot in #984
- Report executor and source actions to backend by @josefkarasek in #991
- Vulnerability Scanning Workflow Fix by @huseyinbabal in #1002
- Bump golang.org/x/net from 0.5.0 to 0.7.0 by @dependabot in #990
- Webhook refactored after k8s plugin extraction by @huseyinbabal in #1008
- Elasticsearch sink refactor by @huseyinbabal in #1010
- Implement patching remote config by @josefkarasek in #1007
- Add remote call for patching Actions by @josefkarasek in #1017
- Heartbeat Reporting by @huseyinbabal in #1018
- Generate kube config based on plugin RBAC by @josefkarasek in #1020
- RBAC e2e tests by @huseyinbabal in #1028
New Contributors
- @dependabot made their first contribution in #984
Full Changelog: v0.18.0...v1.0.0-rc.1
v0.18.0
What's Changed
Implemented Enhancements 🎉
- Fetch only used plugin repositories, fix logging, add repo validation by @mszostok in #940
- Add JSON schema to plugins by @josefkarasek in #932
- Upload plugins to GCS by @josefkarasek in #944
- Prometheus source plugin by @huseyinbabal in #942
- Support fetching plugin dependencies by @pkosiec in #950
- Add plugin helper functions by @mszostok in #951
- Add GitHub issue creator by @mszostok in #953
- Support Help() in plugins by @josefkarasek in #948
- Support global aliases for commands by @pkosiec in #956
- Validate alias commands and display builtin command aliases by @pkosiec in #959
- Update golang.org/x/net lib to fix reported CVEs by @mszostok in #964
- Update Prometheus message format by @mszostok in #966
Fixed Bugs 🐛
- Add default helm namespace, update helm help by @mszostok in #921
- Fix marshalling event for Elasticsearch integration by @pkosiec in #923
- Fix changelog generation by @mszostok in #928
- start|stop -> enable|disable notifications by @josefkarasek in #924
- Fix Prometheus source JSON schema and generated resources CI job by @pkosiec in #952
- Comment deprecated Slack configuration properties by @pkosiec in #962
- Fix alias validation and "Show Config" button in Help by @pkosiec #970
Other Changes ✨
- Replace start|stop notif with enable|disable by @josefkarasek in #920
- helm option is added for config source by @huseyinbabal in #936
- Make refURL omitempty by @josefkarasek in #946
- fix invalid goreleaser tag by @huseyinbabal in #947
- Use new format to download deps by @mszostok in #968
Full Changelog: v0.17.0...v0.18.0
v0.18.0-rc.3
v0.18.0-rc.2
v0.18.0-rc.1
What's Changed
Implemented Enhancements 🎉
- Fetch only used plugin repositories, fix logging, add repo validation by @mszostok in #940
- Add JSON schema to plugins by @josefkarasek in #932
- Upload plugins to GCS by @josefkarasek in #944
- Prometheus source plugin by @huseyinbabal in #942
- Support fetching plugin dependencies by @pkosiec in #950
- Add plugin helper functions by @mszostok in #951
- Add GitHub issue creator by @mszostok in #953
- Support Help() in plugins by @josefkarasek in #948
- Support global aliases for commands by @pkosiec in #956
- Validate alias commands and display builtin command aliases by @pkosiec in #959
- Update golang.org/x/net lib to fix reported CVEs by @mszostok in #964
Fixed Bugs 🐛
- Add default helm namespace, update helm help by @mszostok in #921
- Fix marshalling event for Elasticsearch integration by @pkosiec in #923
- Fix changelog generation by @mszostok in #928
- start|stop -> enable|disable notifications by @josefkarasek in #924
- Fix Prometheus source JSON schema and generated resources CI job by @pkosiec in #952
- Comment deprecated Slack configuration properties by @pkosiec in #962
Other Changes ✨
- Replace start|stop notif with enable|disable by @josefkarasek in #920
- helm option is added for config source by @huseyinbabal in #936
- Make refURL omitempty by @josefkarasek in #946
- fix invalid goreleaser tag by @huseyinbabal in #947
Full Changelog: v0.17.0...v0.18.0-rc.1
v0.17.0
What's Changed
Breaking Changes 💥
-
Remove support for running kubectl command without prefix by @mszostok in #914
-
Unify commands by @josefkarasek in #867
In release v0.17.0 we introduce new structure of commands, where verb is followed by feature:
@Botkube <verb> [feature]
For example:
@Botkube show config
This is a breaking change and commands in the previous form are no longer accepted.
The following table describes which commands have changed:Before v0.17.0 In v0.17.0 filters enable enable filters filters disable disable filters filters list list filters commands list show config notifier start enable notifications notifier stop disable notifications notifier status status notifications notifier showconfig show config
Implemented Enhancements 🎉
- Describe how plugins can be consumed within Botkube core by @mszostok in #859
- Add support for handling executor plugins by @mszostok in #862
- Add plugin manager for sources by @mszostok in #857
- Pass configuration to source and executor plugins by @mszostok in #875
- Add plugin validation for configuration groups, bindings and index repository by @mszostok in #877
- Add automated way of generating plugin index file by @mszostok in #884
- Add logger for plugin binary output and the plugin client itself by @mszostok in #879
- Add release process for Botkube plugins by @mszostok in #882
- Dynamically generate help messages by @josefkarasek in #885
- Update docs in example folder by @mszostok in #898
- Add Botkube Helm plugin by @mszostok in #900
- Add commands for Sources and Executors by @josefkarasek in #905
- Add plugins configuration to make release possible by @mszostok in #911
- Add helm get and history cmds, update Botkube help, add testing scenario, fix bugs by @mszostok in #912
- Replace removed 'list commands', print multi-cluster info only for supported platforms by @mszostok in #913
Fixed Bugs 🐛
- Fixup
kubectl
help wording by @brampling in #863 - Move actions list E2E test after initial help message by @pkosiec in #864
- Make plugin logger independent, fix naming in err msgs by @mszostok in #897
- Fix bugs in executors by @mszostok in #902
- Add default helm namespace, update helm help by @mszostok in #921
- Fix marshalling event for Elasticsearch integration by @pkosiec in #923
- Add helm binding to all bot platforms by @mszostok in #917
- Print Display Name for status sourcebindings by @josefkarasek in #918
- Replace start|stop notif with enable|disable by @josefkarasek in #920
Other Changes ✨
- Change links to the documentation by @madebyrogal in #866
- Make the integration jobs independent by @mszostok in #883
- Revert changes from auto-merged PR by @josefkarasek in #894
- Simplify command args parsing by @josefkarasek in #888
- Add option to set discord user's ID directly by @mszostok in #903
- Fix notifier verbs by @josefkarasek in #895
- config source provider is added by @huseyinbabal in #896
- Describe RBAC design proposal and add instruction for RBAC PoC by @pkosiec in #910
- Update release categories, update golangci-lint by @mszostok in #915
- Add health endpoints by @josefkarasek in #916
New Contributors
- @brampling made their first contribution in #863
Full Changelog: v0.16.0...v0.17.0
v0.17.0-rc.3
What's Changed
Fixed Bugs 🐛
- Add default helm namespace, update helm help by @mszostok in #921
- Fix marshalling event for Elasticsearch integration by @pkosiec in #923
Full Changelog: v0.17.0-rc.2...v0.17.0-rc.3
v0.17.0-rc.2
What's Changed
Other Changes ✨
- Add helm binding to all bot platforms by @mszostok in #917
- Print Display Name for status sourcebindings by @josefkarasek in #918
- Replace start|stop notif with enable|disable by @josefkarasek in #920
Full Changelog: v0.17.0-rc.1...v0.17.0-rc.2
v0.17.0-rc.1
What's Changed
Implemented Enhancements 🎉
- Describe how plugins can be consumed within Botkube core by @mszostok in #859
- Add support for handling executor plugins by @mszostok in #862
- Add plugin manager for sources by @mszostok in #857
- Pass configuration to source and executor plugins by @mszostok in #875
- Add plugin validation for configuration groups, bindings and index repository by @mszostok in #877
- Unify commands by @josefkarasek in #867
- Add automated way of generating plugin index file by @mszostok in #884
- Add logger for plugin binary output and the plugin client itself by @mszostok in #879
- Add release process for Botkube plugins by @mszostok in #882
- Dynamically generate help messages by @josefkarasek in #885
- Update docs in example folder by @mszostok in #898
- Add Botkube Helm plugin by @mszostok in #900
- Add commands for Sources and Executors by @josefkarasek in #905
- Add plugins configuration to make release possible by @mszostok in #911
- Add helm get and history cmds, update Botkube help, add testing scenario, fix bugs by @mszostok in #912
- Replace removed 'list commands', print multi-cluster info only for supported platforms by @mszostok in #913
Fixed Bugs 🐛
- Fixup
kubectl
help wording by @brampling in #863 - Move actions list E2E test after initial help message by @pkosiec in #864
- Make plugin logger independent, fix naming in err msgs by @mszostok in #897
- Fix bugs in executors by @mszostok in #902
Breaking Changes 💥
Other Changes ✨
- Change links to the documentation by @madebyrogal in #866
- Make the integration jobs independent by @mszostok in #883
- Revert changes from auto-merged PR by @josefkarasek in #894
- Simplify command args parsing by @josefkarasek in #888
- Add option to set discord user's ID directly by @mszostok in #903
- Fix notifier verbs by @josefkarasek in #895
- config source provider is added by @huseyinbabal in #896
- Describe RBAC design proposal and add instruction for RBAC PoC by @pkosiec in #910
- Update release categories, update golangci-lint by @mszostok in #915
- Add health endpoints by @josefkarasek in #916
New Contributors
- @brampling made their first contribution in #863
Full Changelog: v0.16.0...v0.17.0-rc.1
v0.16.0
What's Changed
Breaking Changes 💥
- The
sources[alias].resources[].name
field has been renamed tosources[alias].resources[].type
, to allow resource name regexes. - The
sources[alias].events
field has been renamed and moved tosources[alias].event.types
to allow definition of additional event constraints. Similarly, thesources[alias]resources[].events
field has been renamed and moved tosources[alias]resources[].event.types
.
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
- Include node count in anonymous analytics by @pradeepnnv in #853
- Unify package names and split utils by @pkosiec in #855
- Add warning about kubectl to the help message by @mszostok in #861
New Contributors
- @josefkarasek made their first contribution in #845
- @pradeepnnv made their first contribution in #853
Full Changelog: v0.15.0...v0.16.0