Nello script precedente abbiamo visto come possiamo fare riferimento ad un tool come GitVersion, fornito da GitTools per calcolare automaticamente un numero di versione in base ai commit, al branch, ai tag presenti e così via. In questo modo, il numero di versione viene calcolato centralmente dal server, ovvero dalla pipeline che esegue il nostro codice, così che non ci si debba preoccupare di installare add-on particolari localmente.
Calcolato il numero di versione con gli step visti nello scorso script, ora non ci rimane altro che applicarlo al codice sorgente, così che questo venga rilasciato e versionato correttamente. Questa operazione è un po' più complessa rispetto al calcolo, non tanto tecnicamente, ma da spiegare poichè richiede un flusso diverso in base al processo che vogliamo indirizzare. Supponendo di avere un repository con una applicazione .NET Core (almeno un csproj), possiamo fare riferimento a questo codice:
- task: Assembly-Info-NetCore@2 displayName: Set assembly info inputs: Path: '$(Build.SourcesDirectory)' FileNames: '**/*.csproj' InsertAttributes: true FileEncoding: 'auto' WriteBOM: false VersionNumber: '$(AssemblySemVer)' FileVersionNumber: '$(AssemblySemVer)' InformationalVersion: '$(FullSemVer)'
Il task di riferimento non è built-in di Azure DevOps ma lo si trova facilmente e gratuitamente nel marketplace. Una volta inserito nella pipeline, dovremo solamente andare a specificare alcuni parametri come il percorso in cui si trova il codice sorgente (con default impostato sulla variabile d'ambiente della SourcesDirectory) e tutti i file che vogliamo versionare (in questo caso, tramite wildcard referenziamo tutti i csproj): prendendo in input anche le variabili di AssemblySemVer e FullSemVer, il task andrà a cercare nei file di progetto indicati per applicare i tag VersionNumber, FileVersionNumber e InformationalVersion corrispondenti le versioni recuperate dal task di GitTools.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Disabilitare le run concorrenti di una pipeline di Azure DevOps
Ridurre il reflow ottimizzando il CSS
Utilizzare il metodo ExceptBy per eseguire operazione di sottrazione tra liste
Utilizzare Container Queries nominali
Introduzione alle Container Queries
Testare l'invio dei messaggi con Event Hubs Data Explorer
Applicare un filtro per recuperare alcune issue di GitHub
Autenticazione di git tramite Microsoft Entra ID in Azure DevOps
Bloccare l'esecuzione di un pod in mancanza di un'artifact attestation di GitHub
Utilizzare WebJobs su Linux con Azure App Service
Creare una libreria CSS universale: Immagini
Utilizzare i variable font nel CSS
I più letti di oggi
- Novità nella gestione del modello asincrono in C# 5 e VB 11
- Eseguire query con LINQ to SQL
- Conoscere il rendering Server o WebAssembly a runtime in Blazor
- Gestione file Javascript in Blazor con .NET 9
- Migliorare la velocità delle connessioni ai database
- #vs2017 sarà rilasciato il 07/03, in concomitanza con i suoi 20 anni https://aspit.co/bfn
- #VS2017 Community è già disponibile al download da questa pagina https://aspit.co/bgb
- #VS2017 non ha un'ISO, ma è possibile creare un installer offline seguendo la guida ufficiale: https://aspit.co/bgd
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!