2009-04-18 5 views
8

Ich möchte eine Liste von Fragen im Zusammenhang mit der Lage sein, einen bestimmten zu bekommen:Wie kann JIRA Seife API diese Methode nicht haben?

Projektname und Release Version

dies scheint wie eine Grund JIRA Seife

Es scheint API 101 Anfrage, in der Dokumentation suchen:

http://docs.atlassian.com/software/jira/docs/api/rpc-jira-plugin/latest/index.html?com/atlassian/jira/rpc/soap/JiraSoapService.html

können Sie Probleme bekommen von:

  1. Filter
  2. Search
  3. Search und Projekt

aber nicht die oben. Ist dies eine vollständige Aufsicht oder ich bin etwas fehlt

ich erwarten würde, so etwas zu sehen:

RemoteIssue[] issues = _soapService.getIssues(string project_, string version_) 

jede mögliche Hilfe?


UPDATE: Ich sehe, dass JIRA 4.0 ist out, aber ich alle Unterlagen nicht finden kann, wenn die API um diese Anforderung zu unterstützen oben geändert hat. Kann jemand diesen Link finden, um diese Fragen zu beantworten.

Antwort

6

Dies ist mit der aktuellen JIRA API nicht möglich. Sie werden es wahrscheinlich in JIRA 4.0 schaffen.

In JIRA Client haben wir dieses Problem gelöst, indem Sie IssueNavigator.jspa (Registerkarte Probleme suchen) mit Suchbedingungen in URL und anfragender RSS-Ausgabe angefordert haben; dann Parsen der RSS.

erklärte ich habe einige der Feinheiten der Ferne mit JIRA tun haben, einschließlich der Suche, in diesem Webinar: http://blogs.atlassian.com/news/2008/11/killer_jira_cli.html

hoffe, das hilft

+0

danke für das Video. Es erscheint überraschend, dass JIRA dich durch solche Reifen springen lässt. Ich weiß auf dem Video, dass du erwähnt hast, dass du Zeiterfassung hinzufügen würdest. Gibt es dafür einen Zeitrahmen und wie würde es funktionieren? – leora

+0

auch, wie finden Sie heraus, was in JIRA 4.0 sein wird. Wird die SOAP-API erweitert? – leora

+0

Ich weiß nicht, was in JIRA 4.0 sein wird, aber es gab Gespräche mit Atlassian über JIRA 4, einschließlich der Suche. Da dies ein großes Upgrade wäre, denke ich (und hoffe!) Wird die API erweitert. Sie sollten wirklich Atlassian Jungs fragen (übrigens, der beste Ort dafür ist Atlassian Summit - http://www.atlassian.com/summit). – sereda

0

Es gibt einige Kommentare auf der Atlassian JIRA in Bezug auf die neuen Methoden geliefert in JIRA 4.0 http://jira.atlassian.com/browse/JRA-17509

Ein weiteres Problem zeigt, dass die SOAP API nicht sehr hoch in der Prioritätenliste ist. unter JRA-7614, und Atlassian empfiehlt die Änderungen selbst vorzunehmen.

Ich brauche auch eine ausgearbeitete SOAP-API (z. B. Problem Link, ...). Wer will/Hilfe leisten in immer es getan, damit wir tun 'HTML Screen Scraping' ... vermeiden a (@sereda, danke für das Video btw)

Francis

+0

Ich habe Atlassian in den letzten Tagen dazu gehämmert. Wir verwenden SpiraTest für das Testfall-Management, und der Mangel an Funktionalität in der SOAP-Schnittstelle lässt wichtige Dinge wie Probleme und Unterprobleme, Versionshierarchie, verwandte Probleme, ++ verschwinden. Ich verfolge alle "behobenen" Fälle auf der Soap-Oberfläche und sage ihnen, dass dies nicht behoben werden kann, wenn Sie gerade eine andere Schnittstelle für diese (REST) ​​implementiert haben. Was übrigens meinen Nichtentwickleraugen wirklich unordentlich erscheint. – sonstabo

1

Es ist möglich, schreiben JIRA Plug-in, um die gewünschten Methoden über SOAP mit der RPC Endpoint Plugin Module zu offenbaren.

+0

Wenn JIRA diese API nicht verfügbar macht, denke ich nicht, dass es eine Lösung gibt. Wie bereits erwähnt, erhält JIRA 4.0 in diesem Bereich ein Upgrade – leora

+0

Es gibt keine Lösung, es sei denn, Sie schreiben Ihr eigenes Plug-in oder modifizieren das vorhandene RPC-Plugin (dessen Quelle frei verfügbar ist). – titaniumdecoy

1

Ich glaube, Sie können einen Filter erstellen, der die gewünschten Eigenschaften hat - wie Projektname und Release-Version - dann verwenden Sie die Soap-API, um die Liste basierend auf diesem Filter zu erhalten, übergeben Sie den Projektnamen und Release-Version, die Sie wollen. Ich habe kein Beispiel dafür, aber ich weiß, dass es unsere App macht. Der Nachteil ist, dass Sie zuerst einen Filter von Hand erstellen müssen, dann seine ID fest codieren und davon ausgehen, dass sie existiert, aber wenn Sie bereit sind, so "hässlich" zu sein. es sollte für dich arbeiten.

-Carl

+2

das ist, was wir tun, aber es stinkt :) – leora

6

In JIRA 4 Sie die JIRA Query Language mit der SOAP-Methode getIssuesFromJqlSearch verwenden können.

+0

Dank für das Update – leora

+1

Ja in JIRA 4.0+, können Sie diese Suche mit JQL tun und die getIssuesFromJqlSearch Methode. –

4

Nicht in der Lage zu Jira 4 jederzeit und mit einer ähnlichen Anforderung zu aktualisieren, habe ich Probleme nach Suchbegriff und Projekt abgerufen, kludging einen "Suchbegriff", der als Platzhalter zu funktionieren scheint: "- 0 1 2 3 4 5 6 7 8 9 ". Da alle generierten Issue-Schlüssel die Form XXX-YYY haben, wobei Y eine Ziffer ist, sollten alle Probleme gefunden werden, wenn auch wahrscheinlich nicht effizient für große Projekte. Sie müssten dann die Versionsnummern des Ergebnisses überprüfen.

Nicht schön - und ich habe das noch nicht gründlich getestet - aber es scheint zu funktionieren.

Thor

0

Was die Timetracking (sorry, wollte einen Kommentar zu seredas Antwort hinzuzufügen, scheint aber ich habe nicht genug Ruf)

Wir haben Jira 4.1.2 läuft und das funktioniert (python2.6 mit Schaum):

>>> client.service.getWorklogs(auth,"PROJ-650") 
[(RemoteWorklogImpl){ 
    author = "philipp" 
    comment = None 
    created = 2010-07-21 12:46:34 
    groupLevel = None 
    id = "12651" 
    roleLevelId = None 
    startDate = 2010-07-21 12:46:00 
    timeSpent = "10 minutes" 
    timeSpentInSeconds = 600 
    updateAuthor = "philipp" 
    updated = 2010-07-21 12:46:34 
}] 
0

Während mit verschiedenen Optionen experimentieren fanden wir eine folgende Lösung für das erhalten Projekt Tickets aus Jira:

so etwas wie dieses 210

wo JQL

issueKey > ":keyOfTheLastIssueReceived" and project = ":projectCode" order by issueKey 

Sie Bestellung von issueKey müssen, ist, da diese Methode nur „pagesize“ von Fragen und Filtern von issueKey kehrt in die nächste „Seite“ zu gelangen (beginnend rechts, wo die vorherige "Seite" endete)

Ich denke, dass Sie in der Lage sein werden, zu bekommen, was Sie wollen, indem Sie eine fixVersion = ":requiredVersion" zum jql hinzufügen.