Recentemente ho avuto la necessità di creare una code wiki in Azure DevOps, ovvero una Wiki basata su un repository di Azure DevOps. Questo perchè avevo già a disposizione un repository con il codice sorgente di un microservizio, e questo conteneva la documentazione in una apposita cartella "/docs", generata in automatico per me.
Al momento della creazione della Wiki, mi sono però accorto che già ne esisteva una di progetto (project wiki), che non mi permetteva di utilizzare il repository che avevo già a disposizione, perché, per l'appunto, non è direttamente collegata ad un repository che possiamo modificare a nostro piacimento. A questo punto ho deciso di creare una code wiki, che mi permette di utilizzare il repository che già avevo a disposizione, ma così mi sono ritrovato con due Wiki e non era quello che volevo.
L'idea era quindi di migrare il contenuto già esistente nella project wiki dentro la coded wiki, per poi eliminarla e tenere solo la documentazione basata su git.
Tecnicamente una project Wiki può comunque essere clonata come un qualsiasi repository tramite il comando (un po' nascosto):
git clone https://<org>@dev.azure.com/<org>/<project>/_git/<project>.wiki
A questo punto è sufficiente copia i file nella nuova destinazione, ovvero la coded wiki e quindi pubblicare l'aggiornamento. Rimane il problema che abbiamo due wiki, mentre noi vogliamo eliminare quella di progetto. Purtroppo, anche tramite la CLI questo non è fattibile e il seguente comando ritornerà un errore:
az devops wiki delete -wiki <wiki-id> --organization https://dev.azure.com/<org> --project <project>
Questo perchè il comando funziona solamente sulle nuove wiki di tipo code-based. Per eliminarla, dobbiamo quindi fare un workaround, ovvero eliminare il repository che si trova dietro la project wiki:
REPOSITORY_ID=$(az devops wiki list --org https://dev.azure.com/<org> --project <project> | jq -r '.[] | select(.type == "projectWiki") | .id') az repos delete --id $REPOSITORY_ID --org https://dev.azure.com/<org> --project <org>
A questo punto navigando la wiki ci ritroveremo solo con la coded wiki. Attenzione perchè l'operazione non è reversibile e quindi è bene farsi una copia prima di procedere alla cancellazione.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Recuperare gli audit log in Azure DevOps
Gestire codice JavaScript con code splitting e lazy loading
Collegare applicazioni server e client con .NET Aspire
Importare un servizio esterno in .NET Aspire
Supportare la crittografia di ASP.NET Core con Azure Container App
Utilizzare l'espressione if inline in una pipeline di Azure DevOps
Recuperare automaticamente un utente e aggiungerlo ad un gruppo di Azure DevOps
Utilizzare l nesting nativo dei CSS
Integrazione di Copilot in .NET Aspire
Scrivere selettori CSS più semplici ed efficienti con :is()
Personalizzare le pagine di errore su Azure App Service


