Skip to content

Release workflow#6

Merged
behrangsa merged 8 commits into
masterfrom
feature/version-synchronization-workflow
Aug 27, 2025
Merged

Release workflow#6
behrangsa merged 8 commits into
masterfrom
feature/version-synchronization-workflow

Conversation

@behrangsa
Copy link
Copy Markdown
Contributor

This pull request introduces a fully automated workflow for tagging and releasing new versions of the project. It also updates the version references in both the README.md and keegees.sh files to ensure consistency with the new release process.

Automated Tagging and Release Workflow:

  • Added .github/workflows/auto-tag-and-release.yml to automate version calculation, tagging, updating version references, generating release notes, and publishing release assets on every push to the master branch or manual trigger.

Version Synchronization:

  • Updated the version displayed in the CLI help example in README.md from 1.0.0 to 0.0.1 to match the new release versioning.
  • Changed the readonly VERSION constant in keegees.sh from 1.0.0 to 0.0.1 for consistency across the codebase.

This commit introduces a comprehensive GitHub Actions workflow that automates
the versioning and release process for keegees with the following features:

Automated Release Pipeline:
- Triggers on pushes to master branch with manual workflow_dispatch option
- Implements custom v-x.y.z tag format with automated patch version increments
- Creates both .tar.gz and .zip release archives with proper directory structure
- Generates professional release notes with installation instructions

Quality Assurance:
- Runs ShellCheck validation on keegees.sh and install.sh before releases
- Ensures code quality standards are maintained in automated releases
- Includes comprehensive error handling and validation steps

Release Management:
- Creates GitHub releases with detailed descriptions and usage examples
- Attaches source code archives for easy distribution
- Updates README version badges automatically
- Provides clear installation instructions and requirements

This workflow enables seamless automated releases while maintaining the
project's high quality standards and comprehensive documentation.
…nization and corrected baseline to v0.0.1

This commit significantly improves the automated release workflow and establishes proper version consistency across the entire codebase.

Workflow enhancements:
- Added comprehensive multi-file version synchronization that updates README.md version references and keegees.sh VERSION constant
- Implemented atomic commit functionality with [skip ci] tags to prevent recursive workflow triggers
- Enhanced workflow structure with proper step ordering and dependency management
- Added verification logging for all version update operations

Version baseline corrections:
- Fixed README.md CLI example version display: 1.0.0 → 0.0.1
- Fixed keegees.sh VERSION constant: 1.0.0 → 0.0.1
- Established consistent v0.0.1 baseline across git tags, GitHub releases, README.md, and keegees.sh

The enhanced workflow now ensures perfect version consistency across all project files and maintains the keegees project's professional standards with robust error handling and safety-first approach.
Copilot AI review requested due to automatic review settings August 27, 2025 18:52
@behrangsa behrangsa self-assigned this Aug 27, 2025

This comment was marked as outdated.

behrangsa and others added 5 commits August 27, 2025 22:24
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
… generation

This commit addresses the final functional bug in the GitHub Actions workflow
where automated commits would incorrectly appear in release notes.

Key improvements:
- Fixed grep pattern from "🤖 Automated version bump" to "🔄 Sync version"
  on lines 135 and 137 to match actual automated commit messages
- Added dynamic version warning system that provides appropriate guidance
  based on major version (pre-1.0 vs stable releases)
- Enhanced release notes generation with better user experience

This resolves the noise issue in release notes and makes the workflow
production-ready with perfect functionality addressing all GitHub Copilot
feedback.
@behrangsa behrangsa requested a review from Copilot August 27, 2025 19:26
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This pull request introduces a fully automated GitHub Actions workflow for tagging and releasing new versions of the keegees project. The workflow handles version calculation, file updates, and release asset generation, while also synchronizing version references across the codebase from 1.0.0 to 0.0.1.

  • Added comprehensive GitHub Actions workflow for automated releases with custom tag formatting (v-X.Y.Z)
  • Updated version references in both README.md and keegees.sh from 1.0.0 to 0.0.1
  • Implemented automatic version synchronization across all project files during the release process

Reviewed Changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 4 comments.

File Description
.github/workflows/auto-tag-and-release.yml New automated workflow for tagging, releasing, and version management
keegees.sh Updated VERSION constant from 1.0.0 to 0.0.1
README.md Updated version display in CLI help example from 1.0.0 to 0.0.1

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

Comment thread .github/workflows/auto-tag-and-release.yml Outdated
Comment thread .github/workflows/auto-tag-and-release.yml Outdated
Comment thread .github/workflows/auto-tag-and-release.yml Outdated
Comment thread .github/workflows/auto-tag-and-release.yml Outdated
…debase

Standardized all version references to use vX.Y.Z format (instead of v-X.Y.Z) to align
with semantic versioning conventions and improve consistency across GitHub releases,
tags, and workflow automation.

Changes include:
- Updated GitHub Actions workflow to generate vX.Y.Z formatted tags
- Renamed auto-tag-and-release.yml to release.yml for clarity
- Fixed version parsing logic to handle standard v prefix format
- Updated all tag references in release workflows and documentation
- Enhanced commit filtering and release notes generation

This ensures compatibility with standard semantic versioning practices and
improves integration with GitHub's release management features.
@behrangsa behrangsa requested a review from Copilot August 27, 2025 19:51
@behrangsa behrangsa merged commit a597e33 into master Aug 27, 2025
2 checks passed
@behrangsa behrangsa deleted the feature/version-synchronization-workflow branch August 27, 2025 20:04
@behrangsa behrangsa review requested due to automatic review settings March 23, 2026 21:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants