Jira und GitLab verbinden
Nutzen Sie Jira als Tracker und GitLab für den Code, auch mit Boards mit deutschen Spaltennamen.
Viele Teams planen in Jira und halten ihren Code in GitLab. kanman unterstützt diese Kombination: Stories kommen aus einem Jira-Projekt, Codeänderungen gehen als Merge Requests nach GitLab, und GitLab-Pipelines zählen im Outcome-Gate als CI.
Sie können Jira auch mit GitHub-Code kombinieren oder GitLab-Issues als Tracker nutzen. Die Regeln unten sind dieselben.
Jira
Was kanman mit Jira tut
| Bereich | Was passiert |
|---|---|
| Issues | kanman spiegelt die Issues eines Jira-Projekts, die das Übernahme-Label tragen (standardmäßig kanman). Das Jira-Projekt bleibt die maßgebliche Quelle. |
| Aufgreifen | Ein Issue wird aufgegriffen, wenn es das Übernahme-Label hat und in einem Status liegt, der der Rolle Ready zugeordnet ist. |
| Aufnahme | Freigegebene Stories werden als Jira-Issues vom Typ Task mit dem Übernahme-Label angelegt. |
| Übergänge | kanman bewegt Issues durch Ihren Workflow, wenn ein Run startet, Review erreicht oder gemergt wird. |
| Kommentare | Das Nachweispaket erscheint als ein Kommentar am Issue; der Pull Request wird als Link ergänzt. |
Der kanman-Benutzer
kanman handelt in Jira als normaler Benutzer, sodass Sie in der Jira-Historie sehen, was es getan hat. Wir empfehlen ein eigenes Jira-Konto, zum Beispiel [email protected] mit dem Anzeigenamen “kanman”, mit Zugriff auf das Projekt und den Rechten, Issues anzuzeigen, anzulegen, zu bearbeiten, zu überführen und zu kommentieren.
Verbinden
Inhaber und Admins des Workspaces verbinden Jira unter Einstellungen > Tracker. Auch die Team-Einrichtung führt dorthin: Jira verbinden im ersten Schritt öffnet die Seite, und Team-Einrichtung fortsetzen bringt Sie mit Ihren bisherigen Angaben zurück.
- Wählen Sie, wo Ihr Jira läuft:
- Jira Cloud: Ihre Site-URL, zum Beispiel
https://acme.atlassian.net, die E-Mail-Adresse des kanman-Benutzers und ein API-Token dieses Benutzers. Das Token erstellen Sie im Atlassian-Konto unter Sicherheit > API-Token. - Jira Server oder Data Center: die Adresse Ihres Jira, zum Beispiel
https://jira.acme.de, und ein persönliches Zugriffstoken des kanman-Benutzers, erstellt im Jira-Profil unter Persönliche Zugriffstoken.
- Jira Cloud: Ihre Site-URL, zum Beispiel
- Wählen Sie Verbindung testen. kanman meldet sich mit dem Token an und zeigt das Konto, mit dem es handeln wird.
- Wählen Sie Verbindung speichern. Das Token wird verschlüsselt gespeichert und nie wieder angezeigt. Um es zu ersetzen, speichern Sie das Formular erneut.
Ihr Jira muss über https aus dem Internet erreichbar sein.
Wenn Sie ein Team auf dieser Verbindung einrichten, schlägt der Schritt Projekt und Repositories die Projekte Ihres Jira vor. Wählen Sie den Projektschlüssel, dann liest kanman die Workflow-Status des Projekts und übernimmt sie als Spalten des Teams. Der nächste Schritt ordnet sie den Rollen zu.
Änderungen in Jira erreichen kanman innerhalb weniger Minuten. Für sofortige Aktualisierungen legt eine Jira-Administratorin oder ein Administrator unter System > WebHooks einen Webhook für Issue- und Kommentar-Ereignisse an, mit der URL und dem Secret, die Sie von kanman erhalten. kanman weist Zustellungen ohne gültige Signatur ab.
Status den Spaltenrollen zuordnen
Jira-Status unterscheiden sich je Projekt. Im Schritt Spalten der Team-Einrichtung (später unter Tracker in den Team-Einstellungen) ordnen Sie jeden Status einer der Rollen von kanman zu. kanman schlägt eine Zuordnung anhand der Statusnamen vor (Rollen vorschlagen in den Team-Einstellungen).
Boards mit deutschen Statusnamen werden standardmäßig so zugeordnet:
| Jira-Status | kanman-Rolle |
|---|---|
| Backlog | backlog |
| Verfeinerung | refining |
| Bereit | ready |
| In Arbeit | in_progress |
| QS | review |
| Fertig | done |
Weitere gängige Namen werden ebenfalls erkannt, zum Beispiel “Zu erledigen” (backlog), “Bereit zur Entwicklung” (ready), “In Prüfung” (review) und “Erledigt” (done). Prüfen Sie den Vorschlag, bevor Sie bestätigen. Ein Status ohne Rolle bleibt unberührt: kanman verschiebt nie ein Issue in ihn hinein.
Hinweis
kanman nutzt nur Übergänge, die es in Ihrem Jira-Workflow gibt. Führt kein Übergang vom aktuellen Status in einen Status der gewünschten Rolle, wird die Verschiebung nicht nach Jira gespiegelt, und der fehlgeschlagene Tracker-Schreibvorgang erscheint im Audit-Log. Ergänzen Sie den Übergang in Ihrem Workflow.
GitLab
Was kanman mit GitLab tut
| Bereich | Was passiert |
|---|---|
| Code | kanman klont das Projekt, arbeitet pro Run auf einem eigenen Branch und pusht ihn. |
| Merge Requests | Ein Merge Request pro Story, mit dem Nachweispaket als Kommentar. |
| CI | GitLab-Pipelines am Merge Request zählen im Outcome-Gate als CI. |
| Issues | Optional: GitLab-Issues können statt Jira der Tracker sein, mit dem Label kanman als Übernahme-Regel. Status sind Labels, auch Scoped Labels wie workflow::In Arbeit. |
Verbinden
Verbinden Sie GitLab unter Einstellungen > Git auf der GitLab-Karte. Jede Person verbindet ihr eigenes Konto; für die Repositories eines Teams nutzt kanman das Konto der Person, die das Team einrichtet.
- gitlab.com: Wählen Sie gitlab.com verbinden und bestätigen Sie in GitLab, oder nutzen Sie ein Zugriffstoken wie unten beschrieben.
- Ihr eigener GitLab-Server: Wählen Sie Zugriffstoken verwenden, geben Sie die Adresse Ihres GitLab ein, zum Beispiel
https://gitlab.acme.de, und ein Zugriffstoken. Für gitlab.com lassen Sie die Adresse leer.
Das Token kann ein persönliches, ein Gruppen- oder ein Projekt-Zugriffstoken sein. Es braucht den Scope api, damit kanman klonen, die Run-Branches pushen, Merge Requests öffnen und Pipelines lesen kann. Testen prüft das Token, ohne es zu speichern; Verbinden speichert es. Die Karte zeigt danach Konto und GitLab-Server, zum Beispiel “Verbunden als kanman auf gitlab.acme.de”.
Repositories wählen
Ist Ihr Tracker Jira, wählen Sie in der Team-Einrichtung im Schritt Projekt und Repositories GitLab als Code-Host. kanman listet die Projekte, die Ihr GitLab-Konto erreicht. Wählen Sie sie aus der Liste oder tippen Sie ihren Pfad, zum Beispiel platform/payments/api; Untergruppen werden unterstützt. Die Repositories des Teams werden als GitLab-Repositories gespeichert, und kanman klont und pusht sie auf Ihrem GitLab-Server.
Weitere Repositories fügen Sie später unter Repositories in den Teameinstellungen hinzu. Neue Repositories nutzen den Code-Host des Teams.
Selbst betriebenes GitLab
kanman arbeitet mit selbst betriebenen GitLab-Instanzen genauso wie mit gitlab.com. Verbinden Sie sich wie oben beschrieben mit einem Zugriffstoken und der Adresse Ihrer Instanz. Ihre Instanz muss über https aus dem Internet erreichbar sein, damit kanman ihre API erreicht und über https klonen kann.
Kommt in einem späteren Release
Den Nachweis-Kommentar am Merge Request und das Pipeline-Ergebnis im Outcome-Gate auf selbst betriebenen Instanzen. Bis dahin funktioniert beides auf gitlab.com; auf Ihrem eigenen Server prüfen Sie den Merge Request vor dem Mergen selbst.
Geschützte Branches und Freigaben
Die geschützten Branches und Freigaberegeln für Merge Requests in GitLab gelten für kanman wie für alle anderen. Erlauben Sie Pushes auf kanman/*-Branches und lassen Sie den Ziel-Branch geschützt.
Fehlerbehebung
| Symptom | Wahrscheinliche Ursache |
|---|---|
| Issues in Ready werden nicht aufgegriffen | Ihnen fehlt das Übernahme-Label, oder ihr Status ist nicht der Rolle Ready zugeordnet. Prüfen Sie Übernahme ansehen in den Tracker-Einstellungen des Teams. |
| Eine Verschiebung erscheint nicht in Jira | Ihr Jira-Workflow hat keinen Übergang zwischen den beiden Status. Das Audit-Log zeigt den fehlgeschlagenen Tracker-Schreibvorgang. |
| Änderungen aus Jira dauern einige Minuten | Es ist kein Webhook eingerichtet. Nutzen Sie Jetzt synchronisieren in den Tracker-Einstellungen des Teams, oder fragen Sie nach den Webhook-Daten. |
| Ein Run wartet auf die CI | Für Merge Requests läuft keine Pipeline. Prüfen Sie die Einstellungen rules oder only in .gitlab-ci.yml. |
| Verbindung testen meldet, dass Jira nicht erreichbar ist | Die Adresse ist falsch, nicht https, oder Ihr Jira ist nur im Firmennetz erreichbar. |
GitLab meldet, dass das Token den Scope api braucht |
Das Token hat nur Lesezugriff. Erstellen Sie ein neues Token mit dem Scope api. |
Zuletzt aktualisiert: January 1, 0001
kanman öffnen