Discourse Jira

|||
-|-|-|
:discourse: | Zusammenfassung | Discourse Jira synchronisiert Projekte, Problemtypen, Felder, Status und verwaltet die Probleme.
:hammer_and_wrench: | Repository-Link | https://github.com/discourse/discourse-jira
:open_book: | Installationsanleitung | So installieren Sie Plugins in Discourse

Funktionen

  • Jira-Projekte, Problemtypen, Felder und Feldoptionen werden automatisch synchronisiert.
  • Erstellen Sie ein neues Jira-Problem für einen Discourse-Beitrag mit dem dynamischen Formular zur Problem-Erstellung.
  • Hängen Sie ein bestehendes Jira-Problem an einen Discourse-Beitrag an.
  • Synchronisieren Sie den Status von Jira-Problemen mithilfe von Webhooks.

Screenshots

Beitragsmenü

Konfiguration

Legen Sie die Werte für die unten aufgeführten Website-Einstellungen fest, bevor Sie das Plugin aktivieren.

  • discourse_jira_url: Geben Sie die URL Ihrer Jira-Instanz ein. Sie sollte mit einem /-Symbol enden.
  • discourse_jira_username: Der Benutzername des Benutzers, in dessen Auftrag Probleme erstellt werden.
  • discourse_jira_password: Der API-Schlüssel, der dem Benutzer zugewiesen ist, der Probleme erstellt. Ein Passwort funktioniert möglicherweise, ist aber unsicher und die API wurde von Atlassian als veraltet markiert.
  • discourse_jira_enabled: Aktivieren Sie das Jira-Plugin für Discourse.
  • discourse_jira_allowed_groups: Wählen Sie Gruppen aus, die Zugriff auf die Jira-Plugin-Funktionen haben. Standardmäßig Administratoren und Moderatoren.

Webhook

Legen Sie ein geheimes Token fest, um die eingehenden Webhooks von Jira zu verifizieren.

  • discourse_jira_webhook_token: Dieses Token muss im ‘t’-Query-Parameter des Webhooks übergeben werden.

Wenn beispielsweise das Webhook-Token supersecret lautet und Ihre Basis-Discourse-URL discourse.example.com ist, würden Sie die Webhook-URL als https://discourse.example.com/jira/issues/webhook?t=supersecret in den Webhook-Einstellungen für Ihre Jira-Instanz einrichten.

Um nur zu überprüfen, ob der Webhook ausgelöst wird und der übermittelte Body korrekt ist, können Sie externe Websites wie RequestBin oder Webhook.site verwenden, um temporäre Webhook-URLs einzurichten.

Debugging

discourse_jira_verbose_log: Aktivieren Sie diese Einstellung, um die Payloads der eingehenden Webhooks und ausgehenden API-Anfragen zu protokollieren.

:discourse2: Von uns gehostet? Dieses Plugin ist in unserem Enterprise-Plan verfügbar.

10 „Gefällt mir“

@vinothkannans Wir haben festgestellt, dass unsere Benutzer den Status dieser Tickets nicht sehen können, sondern nur Administratoren. Kann etwas getan werden, um den “Status” für Benutzer sichtbarer zu machen?

Eine Möglichkeit wäre natürlich, diesen Zitatblock sichtbar zu machen, oder es wäre auch schön, wenn Sie Jira-Status mit Tags zuordnen könnten und das Thema-Tag den Ticketfortschritt widerspiegelt (backlog, in-progress, #complete usw.).

Um Jordans Anliegen zu ergänzen, habe ich einige zusätzliche Ideen zur Verbesserung dieses Plugins.

  1. Möglichkeit, ein JIRA-Ticket zu lösen. Ich sehe keine Option, ein JIRA-Ticket, das ich mit einem Beitrag verknüpft habe, zu lösen oder zu löschen.
  2. Auswählen, welche Gruppen angehängte JIRA-Tickets sehen können. Derzeit scheint es, dass nur Website-Administratoren sie sehen können, aber wir möchten die Möglichkeit haben, eine oder mehrere zusätzliche Gruppen auszuwählen, die sie sehen können.
  3. Sichtbarkeitsstufen. Möglichkeit anzugeben, welcher Teil (welche Teile) des Tickets für Nicht-Administratoren angezeigt wird. Wir möchten zum Beispiel vielleicht, dass alle Gruppen die Ticketnummer und den Status sehen, aber nicht den Titel des Tickets, der sensible Informationen enthalten kann. Dann können wir vertrauenswürdige Gruppen angeben, die den Ticket-Titel sehen können.
2 „Gefällt mir“

Ihre Vorschläge würden die Erfahrung mit diesem Plugin wirklich verbessern.

Wir brauchen wirklich die Möglichkeit, dass der Inhalt einer bestimmten Gruppe (die keine Administratoren ist) angezeigt werden kann.

Gibt es eine OpenProject-Version davon? Das wäre großartig, da wir OpenProject für die Verwaltung unserer Aufgaben verwenden.

@jordan-violet @colin.mckibben Das sind gute Vorschläge, um das Plugin nützlicher zu machen. Ich werde das bei meiner nächsten Arbeit daran berücksichtigen.

1 „Gefällt mir“

Hallo, ich habe eine Frage zur Konfiguration des Plugins. Ich erhalte 500-Fehler beim Erstellen/Anhängen von Issues, daher glaube ich, dass meine Einstellungen nicht ganz richtig sind. Was habe ich falsch gemacht?

Zuerst habe ich die Stelle, an der ich normalerweise auf meine Jira-Instanz zugegriffen habe, in discourse jira url kopiert und eingefügt, obwohl ich mir bei der URL nicht ganz sicher bin, da die URL je nach ausgewählter Jira-Ansicht unterschiedlich ist.

Zuerst habe ich einen zufälligen discourse jira username festgelegt, wobei das discourse jira password aus einem generierten Atlassian API-Token kopiert und eingefügt wurde.



Dann habe ich einen Jira Webhook hinzugefügt und die URL des Jira Webhooks auf die URL meiner Discourse-Instanz plus /jira/issues/webhook?t= gesetzt.

Dann habe ich das Webhook-Geheimnis festgelegt und dieses Geheimnis zurück in das Plugin-Konfigurationsfeld discourse jira webhook token kopiert und eingefügt.

Irgendwelche Gedanken? Hilfe wird sehr geschätzt! Danke.

Kann jemand seine funktionierenden Plugin-Einstellungen in Discourse (natürlich ohne Passwort/Token) teilen, damit ich sehen kann, wie Sie es zum Laufen gebracht haben? Danke!

Ich habe den Webhook-Token wieder in die URL in der Jira-Webhook-Einrichtung kopiert, sodass dort https://example.com/jira/issues/webhook?t=abcdefghijk steht, und auch Ihre discourse_jira_url soll https://modernsquared.atlassian.net/ ohne den Pfad sein.

@vinothkannans Ich habe jedoch noch eine weitere Frage: Ist es möglich, nach dem Anhängen zu ändern, welches Issue an ein Thema angehängt ist, oder die Anhängung einfach zu entfernen/löschen? Wenn nicht, haben Sie darüber nachgedacht, dies zu implementieren?

Danke @mikael.gundhus, ich konnte das Plugin mit Jira verbinden.

Aber ich bin auf eine Merkwürdigkeit gestoßen. Ich bin mir nicht sicher, ob ich der Einzige bin, der auf dieses Problem stößt, aber die Schaltflächen „Create and Attach issues“ scheinen vertauscht zu sein? Wenn ich auf die Schaltfläche „Create Issue“ klicke, bringt mich das Plugin zum Bildschirm „Attach issue“:

Und wenn ich auf die Schaltfläche „Attach issue“ klicke, bringt mich das Plugin zum Bildschirm „Create issue“: MS-155 ist ein bestehendes Problem in Jira. Wenn ich eine neue Aufgabe eingebe, z. B. MS-200, die in Jira nicht existiert, wird mir mitgeteilt: Ein Fehler ist aufgetreten: Sie sind nicht berechtigt, die angeforderte Ressource anzuzeigen.

@mikael.gundhus Ja, es sollte eine Option geben, den vorhandenen Anhang zu entfernen. @ckshen Es scheint, dass die Modal-Fenster falsche Überschriften haben. Wir werden uns in der nächsten Iteration darum kümmern.

Gibt es Pläne, dies für Benutzer zugänglich zu machen, die keine Administratoren/Mods sind? Wir haben interne Teams, die ihre Operationen auf Discourse verlagern möchten, und wie die Dinge stehen, ist der einzige Weg, wie sie das JIra-Tool nutzen können, indem wir ihnen modale Berechtigungen für die gesamte Website geben.

4 „Gefällt mir“

Ich habe dieses Plugin gerade mit Gruppenberechtigungen aktualisiert! Es umfasst standardmäßig Administratoren und muss diese immer einschließen, aber mit diesem Update können Benutzer jetzt Jira-Tickets erstellen, ohne Administrator zu sein. Viel Spaß!

5 „Gefällt mir“

Hallo Leute,

Hat jemand dieses Plugin erfolgreich mit Jira Server oder Datacenter zum Laufen gebracht?

Ich sehe keine Anhangsoption und eine Fehlermeldung in den Protokollen.

Job exception: DiscourseJira::InvalidURI

Bisher haben wir dieses Plugin nur mit APIs für Jira Cloud erstellt. Daher sind Sie bei Jira DC möglicherweise nicht erfolgreich.

Jira Cloud REST-Dokumentation: https://developer.atlassian.com/cloud/jira/platform/rest/v2/api-group-issues/#api-rest-api-2-issue-createmeta-get
Jira DC/Server REST-Dokumentation: https://developer.atlassian.com/server/jira/platform/jira-rest-api-examples

1 „Gefällt mir“

Danke Natalie, nachdem wir unseren Host unter Sicherheit zu den zulässigen internen Hosts hinzugefügt hatten, konnten wir Probleme verknüpfen und erstellen. Dies ist wahrscheinlich hilfreich für alle, die eine interne Instanz von Jira verwenden. Wir arbeiten noch an der Kommentar-Synchronisierung, aber ich glaube, das ist ein Konfigurationsproblem.

2 „Gefällt mir“

Funktioniert diese Funktion auch mit Jira Service Management Projekten?

Es scheint eine Inkompatibilität zwischen jira und reactions zu geben

1 „Gefällt mir“