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
- Kubernetes source constraints
event.reason
,event.message
andresources[].name
are now objects with two lists:include
andexclude
. Both take exact values or regex patterns. Exclude takes precedence over include.
This allows you to set exclude patterns, and also unifies the configuration with namespaces constraints.
- 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
- 1.0.0-rc1 bug fixes by @huseyinbabal in #1035
New Contributors
- @dependabot made their first contribution in #984
Full Changelog: v0.18.0...v1.0.0