Skapa en tjänstkrok för Azure DevOps Services och TFS med Trello
Azure DevOps Services | Azure DevOps Server 2022 – Azure DevOps Server 2019
Skapa kort och listor i Trello som svar på händelser från Azure DevOps. Till exempel när kod laddas upp eller en build inträffar.
Förutsättningar
Kategori | Krav |
---|---|
behörigheter | – Medlem i gruppen Projektsamlingsadministratörer. Organisationsägare är automatiskt medlemmar i den här gruppen. - Redigera prenumerationer och Visa prenumerationer behörigheter inställda på Tillåt. Som standard har endast projektadministratörer dessa behörigheter. Om du vill bevilja behörigheter till andra användare kan du använda kommandoradsverktyget eller Security REST API. |
Verktyg | Trello |
Hämta en Trello-auktoriseringstoken
Om du inte har ett Trello-konto registrerar du dig på Trello.
Gå till sidan Auktorisera Azure DevOps Services för Trellooch logga in med dina Trello-autentiseringsuppgifter.
Tillåt att Azure DevOps använder ditt Trello-konto.
Kopiera auktoriseringstoken.
Skapa ett Trello-kort eller en lista från en Azure DevOps Services-händelse.
Gå till projektets Service Hooks-sida:
https://{orgName}/{project_name}/_settings/serviceHooks
Välj Skapa prenumeration.
Välj Trello-tjänsten.
Konfigurera den händelse i Visual Studio som utlöser. I det här fallet kommer prenumerationen att svara när ett arbetsobjekt skapas.
Konfigurera den åtgärd som Trello ska vidta som svar på utlösaren – skapa antingen ett kort eller en lista.
konfigurationssidan för
Du kan använda platshållare för att infoga innehåll från händelsen i namnet och beskrivningen av korten eller listor som prenumerationen skapar. När vi till exempel kör testmeddelandet får kortet som skapas namnet "Bugg #5: En bra ny idé!" eftersom testarbetsobjektet är en bugg (ID=5) med rubriken "En bra ny idé!".
Testa service hook-prenumerationen och avsluta guiden.
Nu har den konfigurerats. Gå till Trello och se korten dyka upp.
Platshållare
Du kan infoga platshållare i namnet på en lista eller namnet eller beskrivningen av ett kort som ska skapas av din prenumeration. När en lista eller ett kort skapas ersätts platshållarna av värden från händelsen som skapades. Exemplet som vi använde för kortnamnet på den här sidan använder:
{{workitem.workItemType}} #{{workitem.id}}: {{workitem.title}}
Så när en bugg skapas med ID 5 och titeln "Some great new idea!", är kortnamnet "Bug #5: Some great new idea!".
Platshållarens grundläggande form är {{resource.field}}
där resursen är namnet på resursen som lyfter händelsen (arbetsobjekt, bygge och så vidare) och fältet är ett fält i resursavsnittet i händelsen, till exempel ID.
Så om prenumerationen är för en färdig version kan det vara ungefär som
Build {{build.id}} completed at {{build.finishTime}}
Där build är namnet på resursen och ID, finishTime är fält som är tillgängliga i den här resursen. Om du vill förstå vilka händelsetyper, fält och resurser som är tillgängliga att använda kan du titta på referensen händelser.
Fält för arbetsobjekt
Fält för arbetsobjekt visas i händelsen i fältmatrisen, som i det här exemplet:
" fields": {
" System.AreaPath": "Fabrikam-Fiber-Git",
" System.TeamProject": "Fabrikam-Fiber-Git",
" System.IterationPath": "Fabrikam-Fiber-Git",
" System.WorkItemType": "Product Backlog Item",
" System.State": "New",
" System.Reason": "New backlog item",
" System.CreatedDate": "2014-11-05T21:11:28.85Z",
" System.CreatedBy": "Normal Paulk",
" System.ChangedDate": "2014-11-05T21:11:29.23Z",
" System.ChangedBy": "Normal Paulk",
" System.Title": "Test PBI",
" Microsoft.Azure DevOps Services.Common.BacklogPriority": 999999999,
" WEF_6CB513B6E70E43499D9FC94E5BBFB784_Kanban.Column": "New"
},
När vi arbetade direkt från händelsedefinitionen skulle vi ha skapat vårt kortnamn som det här exemplet:
{{workitem.fields["System.workItemType"]}} #{{workitem.fields["System.id"]}: {{workitem.fields["System.title"]}}
Som en genväg kan du referera till alla fält i System eller Microsoft.Azure DevOps Services.Common-namnområden som om de vore fält för resursen.
Så {{workitem.fields["System.workItemType"]}}
blir {{workitem.workItemType}}
.
Platshållaruttryck
De här platshållarna använder en Handlebars-mallar-implementering som till stor del är kompatibel med Mustache. Några användbara uttryck är
Typ av uttryck | Exempel |
---|---|
grundläggande uttryck | {{workitem.name}} |
fältuttryck | {{pullRequest.reviewers.[0].displayName}} |
Mustaschsektioner |
{{#workitem.assignedTo}} Det här WI-programmet har tilldelats {{/workitem.assignedTo}} |
Mustache inverterade sektioner |
{{^workitem.assignedTo}} Detta WI är inte tilldelat {{/workitem.assignedTo}} |
Hjälpverktyg för styrblock | med if/else om inte varje |
Sökvägar för Handlebars | ... Detta Till exempel {{../comment/id}} eller {{this/title}} |
Mallkommentarer | {{!-- this is a handlebar comment --}} |
Prissättning
Azure DevOps debiterar inte för ramverket för integrering med externa tjänster. Kolla in den specifika tjänstens webbplats för priser relaterade till deras tjänster.
Q & A
F: Kan jag programmatiskt skapa prenumerationer?
S: Ja, se detaljer här.
F: Kan jag få mer information om Trello?
S: Ja, trello.com.