Jak automatycznie dodawać obserwatora do zgłoszeń bez użycia pluginów?

Pomysły użytkowników to jeden z najlepszych znanych mi sposobów na uczenie się. Kolega zapytał mnie ostatnio „czy mogę być dodany automatycznie jako obserwator do wszystkich zgłoszeń w wybranym projekcie? A najlepiej jakby można było decydować czy się chce czy nie chce być tym obserwatorem.” Pomyślałem, że pewnie trzeba użyć jakiegoś pluginu. Okazało się jednak, że wcale nie. Wystarczy trochę pokombinować.

Jeśli w tym momencie nie masz czasu czytać całego artykułu z dokładnymi instrukcjami to na dole znajdziesz checklistę co powinieneś zrobić.

Po co dodawać obserwatorów do każdego zgłoszenia w projekcie?

W każdym projekcie są ludzie, którzy potrzebują wiedzieć co się w nim dzieje, nie tylko na poziomie poszczególnych zadań i postępów prac, ale także z szerszej perspektywy. Takimi ludźmi najczęściej są Project Managerowie czy Product Ownerzy. Życie jednak pokazuje, że nie tylko oni. Dokładniejszych informacji mogą potrzebować dyrektorzy, kierownicy, czy kluczowi inżynierowie.

Jaki efekt muszę osiągnąć?

Jira posiada funkcjonalność o nazwie obserwator (ang. watcher). Jest to z definicji ktoś, kto niekoniecznie musi być zaangażowany w realizowanie zadań, jednak z jakiegoś powodu jest zainteresowany tym co się w nich dzieje.

Dokładne działanie obserwatora m.in. uprawnienia, jakich wymaga, wybiega poza treść tego artykułu. W tym miejscu wspomnę jedynie, że dwa najczęstsze sposoby zostania obserwatorem to założenie zgłoszenia oraz dopisanie się samemu lub przez kogoś innego.

W moim przypadku jednak użytkownikowi nie zależy na tym, żeby go ręcznie dodawać do każdego zgłoszenia. Klikanie poszczególnych zadań byłoby, sami przyznacie, lekko upierdliwe w realizacji. To, co chcę osiągnąć to automatyczne dodawanie użytkownika do wszystkich zgłoszeń w danym projekcie.

Co mam do dyspozycji jeśli nie mam pluginu?

Tak jak wspomniałem wyżej Jira nie ma wbudowanej wprost funkcjonalności w stylu „default issues watcher”, do której mógłbym odpisać użytkownika.

Moje myśli zaczęły wędrować już w stronę uwielbianego przeze mnie ostatnimi czasy Script Runnera. Postanowiłem jednak pogooglać. I słusznie. Zrealizowanie zadania nie wymagało korzystania z żadnej zewnętrznej apki. Wystarczy trochę pokombinować z tym, co mam. To też jest fajny przykład na to, że brak istnienia danej funkcji wprost nie wyklucza możliwości osiągnięcia pożądanego rezultatu innym sposobem.

Konfiguracja krok po kroku

W skrócie – utworzyłem nową rolę (ang. role) dla projektów w schemacie powiadomień (ang. notification scheme) i skonfigurowałem dla niej odpowiednie akcje. Jeśli już wiesz, o czym mowa to na dole artykułu przygotowałem checklistę jak to zrobić. Jeśli potrzebujesz więcej szczegółów, czytaj dalej.

Nieco bardziej szczegółowo – w Jira przy konfiguracji projektów możemy korzystać z tak zwanych ról projektowych (ang. project roles), do których możemy przypisywać pojedynczych lub całe grupy użytkowników. Idąc dalej, możemy tym rolom nadawać różne uprawnienia związane z dostępami czy właśnie powiadomieniami.

Krok 1: konfiguracja ról

Jira ma kilka defaultowych ról, ale pozwala nam także dodawać swoje. Ja chcę dodać nową więc przeszedłem do Project Role Browser, który znajduje się w

Administration > System > Project roles

Dodanie roli jest trywialne. Na dole Project Role Browsera są dwa pola i jeden przycisk:

Ja swoją rolę nazwałem Project Watchers, ale nazwa jest oczywiście dowolna. Jak zawsze zalecam Wam dodawanie opisów, do czego dodany element służy i dodanie informacji, że jest to fragment konfiguracji stworzony przed administratora, a nie utworzony przez Jirę. Po pierwsze potem wiadomo od razu, po co to jest, a po drugie wiem, że to ja to stworzyłem, a nie jest to część domyślnej konfiguracji. Ja dla rozróżnienia tego, co sam stworzyłem używam słówka custom.

Serio. Dodaj taki opis. Dzisiaj, jutro możesz pamiętać, ale jak za pół roku usiądziesz do konfiguracji Ty, albo Twój współadmin to może być jak w tym dowcipie o programiście (a może to wcale nie dowcip?)

Mój opis to „Custom project role that represents people who are „watchers” for all issues in project”.

Krok 2: konfiguracja powiadomień

Samo utworzenie roli nie wystarczy. Musimy jeszcze skonfigurować, w jakim przypadku użytkownicy do niej przypisani mają otrzymywać powiadomienie (notification). Można to zrobić na dwa sposoby:

Administration > Issues > Notification schemes > [nazwa schematu powiadomień]

Możemy także przejść do interesującego nas projektu:

Project settings > Notifications > Actions > Edit notifications

Następnie do każdego wydarzenia, które ma wyzwolić powiadomienie dodajemy Project Role i stworzoną przez nas rolę.

Przykład: chcę, żeby powiadomienie było wysyłane w chwili kiedy zgłoszenie jest utworzone. Obecnie powiadomienie takie trafia do osoby, do której zgłoszenie zostało przypisane (Current Assignee) oraz wszystkich dodanych ręcznie do obserwatorów (All Watchers)

Klikam add, a następnie zaznaczam Project Role i z listy wybieram stworzoną przeze mnie rolę Project Watchers (jeśli chcesz dodać od razu więcej zdarzeń to trzymając ctrl zaznaczaj zdarzenia na liście event). Na koniec naciśnij add na dole ekranu.

Krok 3: dodanie nowej roli do projektu

Czas na dodanie roli do interesującego mnie projektu. Po lewej na dole klikam:

Project settings > Users and roles > Add users to role


W polu Users or groups wpisuję grupę lub osobę, która ma być przypisana do nowej roli. W polu Role wybieram moją rolę – Project Watchers.

I to wszystko. Od teraz za każdym razem, jeśli w projekcie będzie miało miejsce zdarzenie, dla którego skonfigurowałem powiadomienie to osoba z roli Project Watchers otrzyma maila. Z pewnością ucieszy Was fakt, że dodanie osoby lub grupy do roli może zostać wykonane przez administratora projektu. Dzięki temu administrator aplikacji – czyli my będziemy mieli mniej roboty. I o to chodzi 😉

Checklista

  1. Stwórz nową rolę: Administration > System > Project roles
  2. Skonfiguruj, w jakich przypadkach rola ma dostawać powiadomienia: Administration > Issues > Notification schemes > [nazwa schematu powiadomień] lub Project settings > Notifications > Actions > Edit notifications
  3. Dodaj nową rolę do projektu(ów): [Project name] > Project settings > Users and roles > Add users to role

Podsumowanie

Reasumując. Pomimo iż w świecie Jira znajdzie się plugin na wszystko, bez wątpienia nie zawsze jest to najlepsze, a na pewno najtańsze rozwiązanie. Jak widać powyżej, czasem warto się zastanowić czy dany efekt można osiągnąć tym, co już mamy. Bardzo często tak właśnie jest.

Jeśli spodobał Ci się artykuł to zachęcam Cię do subskrypcji bloga 🙂

Źródła

https://community.atlassian.com/t5/Jira-questions/Add-a-default-watcher-to-projects/qaq-p/829708
https://community.atlassian.com/t5/Jira-questions/Watch-all-issues-in-a-certain-Project/qaq-p/111509



3 comments On Jak automatycznie dodawać obserwatora do zgłoszeń bez użycia pluginów?

  • Artykuł ciekawy i na pewno przydatny. Natomiast tytuł trochę mylący. Ponieważ nie opisujesz tak naprawdę jak dodawać automatycznie ludzi do listy Watchers tylko jak sprawdzić aby byli automatycznie notyfikowani o zgłoszeniach. Nie mogą się natomiast odklikać, żeby konkretnego zgłoszenia nieobserwować jak można zrobić na liście Watchers.

    • Dzięki Hubert za komentarz 🙂 Faktycznie patrząc z tej perspektywy masz rację co do tytułu. Lista Watchers i notyfikacje to inne mechanizmy. Nie pomyślałem o tym. Znasz może jakiś sposób w jaki można by osiągnąć taki efekt o jaki prosił mnie user, ale tak żeby faktycznie mógł być dodany z automatu do listy Watchers?

      • Wydaje mi się, że nie ma takiego mechanizmu wbudowanego. Jest jedynie opcja „Autowatch own issues” w User Default Settings – można to zostać wyłączone/napisane w profilu użytkownika. Wtedy użytkownik jest automatycznie Watchersem ale to on musi tworzyć dany issue. Być może można by to osiągnać również tworząć issue poprzez REST API lub używając JIRA CLI (ale to już swego rodzaju plugin)

Skomentuj:

Twój adres email nie zostanie opublikowany

Site Footer