🚀 Feature: Support announcements creation targeting only to specific groups of people
🔖 Feature description
It would be great if the announcements creation could target only specific groups of people inside backstage. Another cool feature could be mentioning groups and people in the description using @.
🎤 Context
I want to create announcements that notify to only some groups of users, because some announcements are specific to some squads or teams and are not company-wide. I think this could be achieved now somehow using categories, but a more specific group-approach could be a nice to have.
✌️ Possible Implementation
One idea could be:
- Add a new optional field to the announcements creation form to target backstage groups. In this field you will select to which groups the announcement will be created for. Groups will be selected dynamically loading them from an input component connected to the catalog. Multiple groups could be created, and if empty, the announcement will affect to all of them.
- In the announcements page you will have a filter to see only the announcements that affect the groups you belong to. But you could remove this filter and see all the announcements.
- In the home page you will be able to add a groups filter to the component, to see only the announcements that affects you. Similar to what categories input offers, but specific to groups.
- Mention groups and people in the description form.
👀 Have you spent some time to check if this feature request has been raised before?
- [X] I checked and didn't find similar issue
Are you willing to submit PR?
Yes I am willing to submit a PR!
Hey @danigar, thanks for opening this. I like your possible implementation, and think there is definitely value in this. I see you are willing to submit a PR. How do you see us breaking this work down?
Hi @kurtaking. Sure, do you have any idea how to approach this from the beginning?
It would be great if the announcements creation could target only specific groups of people inside backstage. Another cool feature could be mentioning groups and people in the description using @.
Mention groups and people in the description form.
I'd probably keep these separate for now. Focus on the first, and make @ing groups and mentioning in description follow up feature enhancements.
In the announcements page you will have a filter to see only the announcements that affect the groups you belong to. But you could remove this filter and see all the announcements.
Maybe I could work on the filtering aspect because we need that for a few other feature requests. So that once you add functionality to target, filtering would be in place.
In the home page you will be able to add a groups filter to the component, to see only the announcements that affects you. Similar to what categories input offers, but specific to groups.
This is a follow up to filtering so I could probably take this as well.
TL;DR - I am down to help with some of this. We need to figure out how to handle storing this information in the database. Do we need a new lookup table? Do you have any ideas there? Once we figure out some of those concrete details, we can split up the work like I mentioned above.
Everything sounds great.
I don't have all the implementation details so I could be missing something important here, but I think we could use the catalog api to look for backstage groups when referencing them inside an announcement. Probably with the group name info is enough for us..so we just need to store the group name in the annoucements table (in a new optional groups field?). wdyt @kurtaking?
Hey @danigar - we lost track of this and the plugins have now been migrated to the community repo. I think there is value in still having this feature.
Do you mind creating a copy of the issue in https://github.com/backstage/community-plugins. I am going to close it out here as not planned.