-
Notifications
You must be signed in to change notification settings - Fork 0
feat: simplify changelog generator and remove unnecessary complexity #32
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
- Simplified generate-changelog.rb to require only --version parameter - Auto-detect repository URL for commit links - Removed complex configuration files (YAML configs) - Updated workflows to call script directly like pico-api-docs - Removed unnecessary DevOps tooling (Docker, GitHub Actions, etc.) - Made the script self-contained and easily reusable The changelog generator now works like pico-api-docs version: Just run: ruby generate-changelog.rb --version X.Y.Z
Contributor
📊 Code Coverage ReportTotal Coverage: 49.6% Coverage by Package
Detailed CoverageClick to expand detailed coverage |
- Restored working deploy.yml from develop branch - Simplified release-branch-creation.yml to call script directly - Removed complex DevOps over-engineering - Kept essential workflows: CI, Deploy, Release Branch Creation, Release Workflow - Added empty lines at end of files per requirement The workflows now follow the pico-api-docs pattern: - Simple changelog generation with --version parameter - No complex configuration or Docker requirements - Focus on essential functionality that works
✅ Fixed all duplicate jobs and workflow conflicts: - Removed duplicate deployment logic from release-workflow.yml - Enhanced deploy.yml with proper trigger conditions - Fixed duplicate GitHub release creation - Added missing newlines to all workflow files - Ensured clear separation of concerns: - ci.yml: Development quality gates - release-branch-creation.yml: Release preparation - release-workflow.yml: Git Flow orchestration - deploy.yml: Production deployment Perfect Git Flow automation: 1. Release branch created → Generate changelog, create PRs 2. Release merged to main → Create tag, setup back-merge 3. Tag created → Deploy to production, create GitHub release No more duplicates, conflicts, or circular dependencies!
- Fix Go version inconsistency in release-branch-creation.yml (1.21 -> 1.25.x)
- Add version_files configuration to .version-config.yml
- Create scripts/update-version.sh for automated version updates
- Replace hardcoded file updates with configuration-driven approach
- Support pattern-based version replacement with {version} and {major} placeholders
…rganization - Add swagger regeneration step after version updates - Move generate-changelog.rb to scripts/ directory for better organization - Update workflow to use Ruby script instead of Go script - Ensure swagger docs reflect version changes automatically - Maintain script organization consistency across project
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
Simplified the changelog generator to match the approach used in pico-api-docs, removing unnecessary complexity and making it truly reusable.
Changes Made
🎯 Core Simplification
--versionparameter (like pico-api-docs)📝 Script Updates
generate-changelog.rbfrom 650+ lines to essentials([hash](url))🔧 Workflow Improvements
release-branch-creation.ymlto call script directlyruby generate-changelog.rb --version X.Y.Z🗑️ Removed Unnecessary Complexity
Usage
# Simple, just like pico-api-docs ruby generate-changelog.rb --version 1.2.3 ruby generate-changelog.rb --version v1.2.3 --dry-run ruby generate-changelog.rb --version 1.2.3 --force ruby generate-changelog.rb --version 1.2.3 --no-linksBenefits
Testing