Azure Boards
Azure Boards is de werkitemtracker van Microsoft, onderdeel van Azure DevOps Services. Werkitems hebben binnen een project een oplopend numeriek ID (#12345), dat in commitberichten vaak het voorvoegsel AB# krijgt om het te onderscheiden van issueverwijzingen in GitHub-stijl.
Forgejo-kant: externe issuetracker
Repository-instellingen → Onderdelen → Issues → Gebruik externe issue tracker.
| Veld | Waarde |
|---|---|
| External issue tracker URL | https://dev.azure.com/<your-org>/<your-project>/_workitems/edit/{index} |
| External issue tracker URL format | https://dev.azure.com/<your-org>/<your-project>/_workitems/edit/{index} |
| External issue tracker number format | Regexp |
| External issue tracker number format regexp | `(?:AB |
De reguliere expressie vangt zowel AB#12345 (de standaardverwijzing van Azure Boards) als de oudere vorm #12345. Vervang <your-org> en <your-project> door de slugs van je Azure DevOps-organisatie en -project.
Aanbevolen formaat voor commitberichten
refactor: extract token-exchange path
AB#34521Het voorvoegsel AB# is een losse conventie uit de documentatie van het Azure DevOps-team. Gebruikt je team liever een kale #12345, dan vangt de reguliere expressie hierboven beide, maar het mengen van beide stijlen in één repository brengt tools verderop in de keten in de war.
Trackerkant: service hooks (optioneel)
Zo laat je Azure Boards de gekoppelde commits en PR’s bij elk werkitem tonen:
- Azure DevOps → Project Settings → Service hooks → + Add subscription.
- Service: Web Hooks (de laatste optie in de lijst; Azure levert geen eigen “Forgejo”-service hook, maar Web Hooks accepteert elke URL).
- Trigger: laat staan op “Code pushed” / “Pull request created”, afhankelijk van wat je zichtbaar wilt maken.
- URL: maak in fremforge EERST een uitgaande webhook aan (beheer → Webhooks → Webhook toevoegen) met als doel
https://dev.azure.com/<your-org>/<your-project>/_apis/git/repositories/<your-repo-id>/links, het endpoint van Azure voor het koppelen van links. Plak die URL in het abonnement van de service hook.
De route is asymmetrisch (Forgejo → Azure), omdat Azure DevOps externe repository’s voor Forgejo niet afvraagt; het verwacht pushmeldingen van je CI of codehost. De uitgaande webhook van fremforge is daarvoor de juiste bouwsteen.
Gevolgen voor subverwerkers
Het control plane van Azure DevOps Services is Microsoft Azure (regio’s US-Central + EU-West, afhankelijk van de dataresidentie). Als je fremforge aan Azure Boards koppelt:
- Stromen commitmetadata en repositoryverwijzingen naar Microsoft Azure.
- Neem je Microsoft Corporation op in je register van subverwerkers als verwerker van persoonsgegevens (e-mailadres van de commitauteur, commitbericht).
- De DPA van fremforge sluit Microsoft als subverwerker uitdrukkelijk uit (volgens de soevereiniteitsopzet op de trustpagina); voor dit deel geldt alleen het DPA-addendum van je eigen organisatie.
Overweeg voor soevereiniteitsgevoelige workloads Plane (zelf gehost, in de EU te draaien, Apache 2.0) als alternatief voor Azure Boards.
Wat dit niet doet
- Geen automatisch sluiten bij een merge (Azure Boards ondersteunt automatisering via Work Item Automation rules; stel de regel in op de payload van de inkomende Web Hook).
- De eigen integratie van Azure DevOps Repos (statusovergang bij het mergen van een PR) werkt niet voor Forgejo; die koppeling is specifiek voor Repos. De fremforge-integratie werkt in één richting (commit/PR → link in het werkitem), aangevuld met automatisering die je zelf inricht voor de omgekeerde richting.
- Synchronisatie van sprints, iteraties en area paths valt buiten de scope. Dat zijn Azure-interne begrippen die niet goed op een Git-host passen.