Nell'ultimo episodio di questa mini-serie su come ricavere le release note a partire delle Pull Request create all'interno di uno o più repository, abbiamo visto come completare lo script di PowerShell utile a recuperare tutte le informazioni necessarie e a produrre in output il file di markdown contenente, appunto, le note di rilascio.
In questa puntata, come promesso, vediamo come integrare lo stesso in una pipeline YAML. Per prima cosa, dobbiamo sfruttare i runtime parameters, ovvero dei parametri speciali che vengono usati nella pipeline stessa anzichè nel template. Questi parametri ci permettono di specificare, prima di eseguire la pipeline, quali sono i tag da fornire in input allo script:
name: '$(date:yyyy).$(date:MM).$(date:dd)$(Rev:.rr)' parameters: - name: ReleaseVersion displayName: Versione corrente type: string default: 'refs/tags/2.0.0' - name: PreviousReleaseVersion displayName: Versione precedente type: string default: 'refs/tags/1.0.0' trigger: none pool: vmImage: 'ubuntu-latest'
Impostati anche alcuni valori relativi a come invocare la pipeline (trigger) e su quale agent girare (ubuntu-latest), possiamo invocare lo script creato precedentemente semplicemente aggiungendo uno step alla pipeline:
steps: - task: PowerShell@2 displayName: Crea release notes env: TEAM_PROJECT: $(System.TeamProject) SYSTEM_ACCESSTOKEN: $(System.AccessToken) inputs: filePath: '$(Build.SourcesDirectory)/scripts/release-diff.ps1' arguments: '-previousReleaseVersion ${{ parameters.PreviousReleaseVersion }} -releaseVersion ${{ parameters.ReleaseVersion }}' pwsh: true
Lo script viene invocato in modalità PowerShell Core, così che sia effettivamente eseguibile sull'agent Linux-based che abbiamo scelto. Inoltre, abbiamo passato tra gli argomenti proprio i parametri (ovvero i tag di riferimento dalla quale partire per recuperare le Pull Request completate) necessari a calcolare le note di rilascio tra due istanti temporali.
A script completato verrà appunto generato un file di markdown che, al momento, non stiamo sfruttando in alcun modo. Vedremo nel prossimo ed ultimo script come fare in modo che il file di markdown venga pubblicato nella Wiki di Azure DevOps, per assicurarci che sia leggibile a tutti i membri del team.
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
Ottimizzare le performance usando Span<T> e il metodo Split
Configurare automaticamente un webhook in Azure DevOps
Recuperare le subissue e il loro stato di completamento in GitHub
Bloccare l'esecuzione di un pod in mancanza di un'artifact attestation di GitHub
Recuperare gli audit log in Azure DevOps
Gestire gli accessi con Token su Azure Container Registry
Gestire progetti .NET + React in .NET Aspire
Rinnovare il token di una GitHub App durante l'esecuzione di un workflow
Recuperare App Service cancellati su Azure
Conoscere il rendering Server o WebAssembly a runtime in Blazor
Ottimizzare le pull con Artifact Cache di Azure Container Registry
I più letti di oggi
- Usare i settings di serializzazione/deserializzazione di System.Text.Json di ASP.NET all'interno di un'applicazione non web
- .NET Conference Italia 2025 - Milano
- The Agentic Day - Milano
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!
- Documentare i servizi REST con Swagger e OpenAPI con .NET 9
- Tutorial LINQ
- Gestione ciclo di vita in .NET Aspire