Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

BotKube's new configuration proposal #628

Closed
mszostok opened this issue Jul 1, 2022 · 2 comments
Closed

BotKube's new configuration proposal #628

mszostok opened this issue Jul 1, 2022 · 2 comments
Labels
community enhancement New feature or request
Projects
Milestone

Comments

@mszostok
Copy link
Contributor

mszostok commented Jul 1, 2022

BotKube's new configuration proposal

Note
The new syntax is not backward compatible, so before implementing it, we want to know your opinion first.

To enable the multichannel feature (see epic #596), we want to refactor the current BotKube configuration syntax and extend it with new properties.

Overview

Q: Why refactor?
A: The BotKube already has a lot of great features, however, their way of configuration sometimes differs. We want to unify it and make it more self-describing and structured. Additionally, we want to enable further extensibility.

Q: What does the new syntax allow for?
A: The new syntax not only groups the feature configurations and improves the readability. It also adds such features:

  • Defining kubectl (executor) permissions per channel—in particular, configuring what commands can be executed and in which Namespaces.
  • Routing notifications to individual channels. Example use cases:
    • a separate Slack channel for sending network errors and another channel for all error events that occur in the team-a Namespace
    • sending Pod's error events to Slack and, at the same time, notifying Elasticsearch of all events
  • Providing an easy way to define new notifiers (e.g. Sysdig) and executors (e.g. helm) in the future.

Q: Where can I find the new configuration proposal?
A: The proposal is available on the #623 pull request.

Q: How can I provide feedback?
A: You can get in touch with us in several ways:

  • join the feedback meeting, or
  • comment directly under this issue or the proposal pull request

notification Feedback Meeting

Date: 7th June at 5:00PM CEST. Convert to your timezone.

Meeting Link: Zoom

Meeting Agenda: Read, comment, or add agenda items in the meeting notes.

Calendar invite: Link to the Google invite.

Feedback

We are waiting for your feedback and information if the new approach supports your use cases.

We follow the lazy consensus approach to decision-making, which assumes that:

  • Any objections are good opportunities for healthy and constructive discussions.
  • Silence is consent. By default, lack of objections to a proposed decision means a silent approval.

Deadline: 12th July (2 weeks from the day of announcement)

Timeline

  • 1st July - announcement
  • 7th July at 5:00PM CEST. Convert to your timezone. - Feedback Meeting
  • 15th July - feedback deadline
@mszostok mszostok added enhancement New feature or request community labels Jul 1, 2022
@mszostok mszostok added this to the v0.13.0 milestone Jul 1, 2022
@mszostok mszostok added this to To do in v0.13.0 via automation Jul 1, 2022
@mszostok mszostok pinned this issue Jul 1, 2022
@mszostok mszostok moved this from To do to To review in v0.13.0 Jul 1, 2022
@pkosiec pkosiec mentioned this issue Jul 1, 2022
@pkosiec pkosiec moved this from To review to Blocked in v0.13.0 Jul 5, 2022
@brampling
Copy link
Contributor

/cc @jeremymv2 @pierluigilenoci @xakraz @muffl0n @dsaydon90 @sgandon @Lion916 @akath19

CC'ing those of you above as you had indicated interest in multi-channel support in BotKube. Please feel free to leave your comments and reviews here and in the proposal.

@mszostok
Copy link
Contributor Author

Hi all!

Thanks to all for providing great feedback about the new BotKube's configuration syntax!

The feedback deadline was 5 days ago and there were only votes for yes 🎉 Today, the proposal was merged as accepted and the implementation has started 🏗️ The work will be tracked in #596.

Stay tuned for the upcoming release and the new multichannel support!

v0.13.0 automation moved this from Blocked to Done Jul 20, 2022
@mszostok mszostok unpinned this issue Jul 20, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
community enhancement New feature or request
Projects
No open projects
Development

No branches or pull requests

2 participants