← Back to projects

Data integrationCommercial (anonymized)

Integracja załączników Jira ze wspólnym repozytorium dokumentów

Listener ScriptRunner, który po pojawieniu się załączników tworzy folder w repozytorium plików, przenosi pliki idempotentnie i nadaje dostęp assignee.

Problem i kontekst

Integracja oparta o listener ScriptRunner, która po pojawieniu się załączników w wybranych zgłoszeniach tworzy folder dokumentowy w zewnętrznym repozytorium plików, przenosi pliki i zapisuje stan synchronizacji. Rozwiązanie dba o idempotencję uploadu oraz automatyczne nadawanie dostępu nowym assignee.

Co robi rozwiązanie

  • uruchamia się na wybranych eventach Jira,
  • tworzy folder dokumentowy dopiero wtedy, gdy zgłoszenie ma załączniki,
  • wysyła pliki tylko raz i zapisuje manifest synchronizacji,
  • nadaje dostęp nowym assignee według zdefiniowanej reguły tożsamości,
  • może zapisać link do folderu w polu niestandardowym Jira,
  • nie usuwa uprawnień i nie robi reverse sync do Jira.

Architektura

sequenceDiagram
    participant J as Jira Issue
    participant L as ScriptRunner Listener
    participant G as Graph API
    participant D as Repozytorium dokumentow

    J->>L: event po zalaczniku lub zmianie assignee
    L->>G: autoryzacja i operacje folderu
    G->>D: utworzenie folderu / upload pliku / nadanie dostepu
    D-->>G: wynik operacji
    G-->>L: link i status synchronizacji
    L-->>J: aktualizacja pola z linkiem i zapis stanu

Dlaczego w portfolio

  • pokazuje integrację Jira z zewnętrznym systemem plików i modelem uprawnień,
  • łączy event-driven automation, idempotencję i zarządzanie stanem synchronizacji,
  • dobry przykład praktycznego listenera z realnym przepływem dokumentów.

Anonimizacja

  • usunięto wszystkie identyfikatory tenantów, klientów, drive’ów i pól,
  • zastąpiono nazwy handlowe neutralnym opisem wspólnego repozytorium dokumentów,
  • nie ujawniono zasad mapowania konkretnych kont i domen.