In uno dei primissimi script di questo canale abbiamo visto come sia possibile disabilitare il clone del repository durante l'esecuzione di una pipeline YAML. Questa è un'attività che, infatti, viene eseguita di default da ogni "job" (ad esclusione dei deployment job). Al contrario di questo, può invece risultare utile dover clonare non solo il repository corrente, ma anche un secondario (o molti altri). A questo scopo è stata rilasciata recentemente la feature del multi-checkout per i repository:
resources: repositories: - repository: MyGitHubRepo type: github endpoint: MyGitHubServiceConnection name: MyGitHubOrgOrUser/MyGitHubRepo - repository: MyBitBucketRepo type: bitbucket endpoint: MyBitBucketServiceConnection name: MyBitBucketOrgOrUser/MyBitBucketRepo - repository: MyAzureReposGitRepository type: git name: MyProject/MyAzureReposGitRepo trigger: - master pool: vmImage: 'ubuntu-latest' steps: - checkout: self - checkout: MyGitHubRepo - checkout: MyBitBucketRepo - checkout: MyAzureReposGitRepository ....
Come si può notare dalla definizione della pipeline, in questo caso siamo andati a fare il link con tre repository diversi da quello corrente, specificandoli nella sezione resources. Durante l'esecuzione dei singoli step, poi, siamo andati a impostare quelli di cui vogliamo fare il checkout, ovvero tutti, incluso self ovvero il repository dalla quale la build è partita. Come evidenziato, possiamo effettuare il checkout di qualsiasi repository git, che sia caricato su Azure DevOps oppure che appartenga a sorgenti esterne come, ad esempio, BitBucket o GitHub.
Ovviamente sta a noi scegliere di quali repository abbiamo bisogno, perciò in ogni job possiamo specificare quale checkout effettuare.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Configurare e gestire sidecar container in Azure App Service
Eseguire query per recuperare il padre di un record che sfrutta il tipo HierarchyID in Entity Framework
Gestione dei nomi con le regole @layer in CSS
Il nuovo controllo Range di Blazor 9
Loggare le query più lente con Entity Framework
Recuperare automaticamente un utente e aggiungerlo ad un gruppo di Azure DevOps
Autenticazione di git tramite Microsoft Entra ID in Azure DevOps
Anonimizzare i dati sensibili nei log di Azure Front Door
Potenziare la ricerca su Cosmos DB con Full Text Search
Effettuare il refresh dei dati di una QuickGrid di Blazor
Rendere le variabili read-only in una pipeline di Azure DevOps
Applicare un filtro per recuperare alcune issue di GitHub