nkdAgility / azure-devops-migration-tools

Azure DevOps Migration Tools allow you to migrate Teams, Backlogs, Tasks, Test Cases, and Plans & Suits from one Project to another in Azure DevOps / TFS both within the same Organisation, and between Organisations.
https://nkdagility.com/learn/azure-devops-migration-tools/
MIT License
493 stars 328 forks source link

♻️ Refactor Get-ReleaseDescription.ps1 to Improve Modularity and Add Enhanced Release Description Functionality #2291

Closed MrHinsh closed 1 month ago

MrHinsh commented 1 month ago

♻️ (Get-ReleaseDescription.ps1): refactor to use Get-GitChanges function for better modularity

Refactor the script to replace inline git operations with a call to the Get-GitChanges function. This improves code modularity and readability, making it easier to maintain and extend in the future. The new function encapsulates the logic for fetching git changes based on the specified mode, reducing redundancy and potential errors.

✨ (Get-ReleaseDescription.ps1): add new function Get-ReleaseDescription2 for enhanced release descriptions ♻️ (Get-ReleaseDescription.ps1): refactor existing functions to improve modularity and readability 🔧 (Get-ReleaseDescription.ps1): add new configuration options for OpenAI API integration

Introduce a new function Get-ReleaseDescription2 to generate detailed release descriptions using OpenAI's API. Refactor existing code to improve modularity, making it easier to maintain and extend. Add new configuration options to support different modes and environment variables, enhancing the script's flexibility and usability.

🔧 (Get-ReleaseDescription.ps1): switch from Write-Host to Write-Debug for better logging The change replaces Write-Host with Write-Debug to improve logging practices. Using Write-Debug allows for more controlled and conditional output, which is useful for debugging without cluttering standard output. Additionally, the elapsed time for the operation is now logged, providing better insights into performance.

✨ (build): add test.ps1 script for generating release descriptions 📝 (docs): update MigrationTools.xml with new Git metadata

Add a new PowerShell script test.ps1 to the build process to generate release descriptions using the Get-ReleaseDescription2 function. This script helps automate the release note generation, improving the release workflow.

Update MigrationTools.xml to reflect the latest Git metadata, including commit hashes, commit dates, and version tags. This ensures that the documentation is up-to-date with the current state of the repository.