Zmiana pola resolution (bez grzebania w bazie danych)

By in
Zmiana pola resolution (bez grzebania w bazie danych)

Niekiedy pojawia się potrzeba masowej zmiany daty w polu Resolution dla zamkniętych już zadań. Pola nie można jednak edytować w standardowy sposób. W dzisiejszym poście pokażę jak zrobić to szybko, bezboleśnie i co najważniejsze bez bezpośredniej ingerencji w bazę danych.

Narzędziem, którego użyjemy do tego zadania będzie External System Import. Przyda się jeszcze Microsoft Excel, LibreOffice albo inne narzędzie, w którym będziemy mogli edytować plik CSV. Należy mieć również uprawnienia administratora Jira.

1. Znalezienie zadań, które będziemy edytować

W pierwszej kolejności trzeba znaleźć zadania, którym chcemy zmienić Resolution Date. Robimy to za pomocą zapytania JQL, wybierając z górnego menu Issues -> Search for issues. W moim przypadku było to project = TEST and resolution is not EMPTY and reporter = lprzybyl. Jako wynik dostałem poniższy zestaw zadań.

2. Eksport zadań do CSV i przygotowanie pliku

Jeśli zadań jest więcej wygodnie jest eksportować je do CSV i w edytorze przygotować plik do importu. Opcję tą znajdujemy po prawej stronie w rozwijanym menu Export. Przy eksporcie należy zaznaczyć, aby delimiterem pól był przecinek (coma).

Otwieramy plik CSV w edytorze i zmieniamy daty w kolumnie Resolved. U mnie będzie to data 04/Jan/21 00:00. Do całej operacji będziemy potrzebowali jedynie pól Key, Summary, Resolved oraz Resolution. Resztę możemy spokojnie usunąć. Po tej operacji nasz plik CSV powinien wyglądać jak poniżej. Zapisujemy go rzecz jasna jako .csv.

3. Import zadań

Import zawsze najlepiej jest przeprowadzić najpierw na jednym zadaniu i zweryfikować czy wszystko poszło zgodnie z planem. W takim wypadku z pliku CSV usuwamy pozostałe zadania, zostawiając tylko jedno. Załóżmy, że import testowy został już przeprowadzony, ruszamy więc z importem właściwym. Narzędzie External System Import możemy znaleźć w sekcji System (kółeczko zębate w prawym górnym rogu ekranu -> System), następnie po lewej znajdujemy sekcję IMPORT AND EXPORT i wybieramy to, czego szukaliśmy. Dalej interesuje nas import z CSV. Od tego momentu importer przeprowadzi nas przez kolejne kroki. Oczywiście importer w tym przypadku nie zaimportuje nowych zadań, a zaktualizuje już istniejące.

  1. File import
    • Załączamy plik CSV
  2. Setup
    • Wybieramy projekt, do którego mają być zaimportowane zadania
    • Sprawdzamy czy format daty zgadza się z tym, który mamy w pliku CSV. Jeśli zadania eskportowaliśmy z Jira, to powinno tak być
  3. Map fields
    • Ustawiamy mapowanie pól z naszego CSV do pól w Jira. U mnie wygląda to tak:
    • Dodatkowo zaznaczam pola Map field value, co pozwoli mi na podejrzenie czy importowane wartości się zgadzają. Jeśli tak jest klikamy Begin Import. STOP! Jeszcze jedna rzecz:) W projekcie do którego importujemy zadania trzeba czasowo wyłączyć powiadomienia. Wchodzimy zatem w Project Settings -> Notifications -> Scheme. Następnie Actions -> Use a different scheme i z rozwijanej listy wybieramy None. Uchroni to użytkowników przed spamem powiadomień podczas masowej edycji zadań.
    • Teraz możemy bezpiecznie rozpocząć import.
    • Po całej operacji daty powinny być już zmienione:
    • Pamiętajmy, żeby na koniec pracy przywrócić powiadomienia w projekcie.

Mała uwaga na koniec – jeśli coś pójdzie nie tak podczas importu i trzeba będzie go powtórzyć, warto skorzystać z dwóch opcji, które będą dostępne na ekranie po zakończonym imporcie (niezależnie od jego powodzenia):

  • download a detailed log – tu możemy zobaczyć co konkretnie poszło nie tak, dzięki czemu będziemy wiedzieli co poprawić
  • save the configuration – zapiszmy konfigurację, przyda się nam, abyśmy przy powtórzeniu importu nie musieli ręcznie ustawiać parametrów, mapowania pól etc. Aby skorzystać z takiego pliku należy na ekranie głównym importu zaznaczyć checkbox Use an existing configuration file, a następnie załączyć plik.

Powodzenia! Masz uwagi? Chcesz podzielić się swoją wiedzą! Pisz, czekam na kontakt od Ciebie: contact [at] jiraforthepeople.com

 

Leave a reply

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *