MTV - automation of Release Notes#864
Conversation
Signed-off-by: owner <owner@owners-MacBook-Pro.local>
c057656 to
4c58de9
Compare
|
|
||
| You can also export using JQL queries: | ||
| - Resolved issues: `project = MTV AND status = Resolved AND fixVersion = "2.11.1"` | ||
| - Known issues: `project = MTV AND labels = "known-issue" AND fixVersion = "2.11.1"` |
There was a problem hiding this comment.
| - Known issues: `project = MTV AND labels = "known-issue" AND fixVersion = "2.11.1"` | |
| - Known issues: `project = MTV AND labels = "known-issue" AND fixVersion = "2.11.*"` |
There was a problem hiding this comment.
Hi @anarnold97 I'm not sure if a wildcard like "2.11.*" is an option here in your script, but I know it works in Jira queries. It's just that if a known issue is in a release, it won't have that release as a fix version because the fix is targeted for a later release, e.g. an issue is a known issue in 2.11.1. The fix is targeted for 2.11.3. The Jira won't have 2.11.1 as the fix version. It might have 2.11.3 as the fix version or something like or 2.11.z if the fix version isn't determined yet.
There was a problem hiding this comment.
One thing to be aware of capturing is known issues that are updated to bug fixes, e.g. an issue might be a known issue for three releases in a row and then be updated to bug fix when it's finally resolved. There's no need to create a separate Jira for the bug fix, just update the release note type and description from known issue to bug fix in the original Jira.
There was a problem hiding this comment.
Test Jira filter for 2.11: https://issues.redhat.com/issues/?filter=12490270
with test Jira query:
project = "Migration Toolkit for Virtualization" AND "Release Note Type" not in (---, "Release Note Not Required", "CVE - Common Vulnerabilities and Exposures") AND fixVersion = 2.11.1 OR ("Release Note Type" = "Known issue" AND fixVersion ~ "2.11.*")
There was a problem hiding this comment.
Test 2 Jira filter with AND labels = release-note-req added (optional)
https://issues.redhat.com/issues/?filter=12490271
with test Jira query:
project = "Migration Toolkit for Virtualization" AND labels = release-note-req AND "Release Note Type" not in (---, "Release Note Not Required", "CVE - Common Vulnerabilities and Exposures") AND fixVersion = 2.11.1 OR ("Release Note Type" = "Known issue" AND fixVersion ~ "2.11.*")
Automate Release Notes Generation with Python Script
Summary
This PR introduces an automated release notes generation system that streamlines the process of creating release notes documentation from JIRA ticket exports. The solution includes a Python script that handles branch creation, CSV processing, AsciiDoc file generation, and automatic master.adoc updates.
Problem Statement
Creating release notes for MTV/Forklift releases is a manual, time-consuming process that involves:
This PR automates these steps to reduce manual effort and minimize errors.
What This PR Does
Core Functionality
This PR adds a comprehensive Python script (
scripts/generate_release_notes.py) that:Automates Git Branch Creation
MTV-RN-<version>(e.g.,MTV-RN-2.11.1)Processes JIRA CSV Exports
Generates AsciiDoc Files
rn-{major-version}.adoc)rn-{version}-resolved-issues.adoc)known-issues-{major-version}.adoc)Intelligent File Management
Automatic master.adoc Updates
documentation/doc-Release_notes/master.adocautomaticallyKey Features
Files Added
scripts/generate_release_notes.py- Main Python script (812 lines)scripts/README.md- Comprehensive documentationscripts/QUICK_START.md- Quick reference guidescripts/sample_resolved_issues.csv- Example CSV template for resolved issuesscripts/sample_known_issues.csv- Example CSV template for known issuesUsage Example
The script prompts for:
2.11.1)It then:
MTV-RN-2.11.1rn-2-11.adoc,rn-2-11-1-resolved-issues.adoc,known-issues-2-11.adocmaster.adocwith new includesCSV Format Requirements
The script expects CSV files with these columns (auto-detects variations):
Benefits
Technical Details
Testing
This PR has been tested with:
The script is not ready for use with any MTV release version until further testing is complete.
Documentation
Comprehensive documentation is included:
README.md: Full feature documentation, CSV format guide, troubleshootingQUICK_START.md: Step-by-step usage guideFuture Enhancements
Potential future improvements:
Known Limitations and Future Work
This PR provides a solid foundation for automating release notes generation, but there are additional workflow considerations:
These enhancements would complement the current script-based approach and potentially enable more direct integration with JIRA and the RENOA system.