Skip to content

Conversation

piotr-roslaniec
Copy link

@piotr-roslaniec piotr-roslaniec commented Oct 8, 2025

Summary

Implements automated GitHub releases triggered by version tags, resolving the TODO for softprops/action-gh-release integration.

Changes

  • Release workflow (.github/workflows/release.yml): Tag-triggered automation that builds multi-platform binaries, runs tests, and creates releases with generated notes
  • Client workflow update: Replace TODO with reference to dedicated release workflow
  • Documentation (docs/release-process.md): Release guide and troubleshooting

Usage

Before: Manual workflow dispatch → download artifacts → create release manually

After: git tag v2.1.1 && git push origin v2.1.1 → automated release

Test Plan

  1. Merge PR
  2. Test with v2.1.1-test tag
  3. Create production release with v2.1.1 tag

- Create dedicated release.yml workflow triggered by version tags
- Builds multi-platform binaries (Linux/macOS AMD64)
- Runs tests before release creation
- Generates release notes with changelog
- Handles pre-releases automatically for tags with hyphens
- Updates client.yml to reference new dedicated workflow
- Add comprehensive release process documentation

Resolves TODO for implementing softprops/action-gh-release automation
- Fix long lines by adding proper line breaks
- Add missing newline at end of file
- Improve readability while maintaining functionality
Copy link
Collaborator

@evandrosaturnino evandrosaturnino left a comment

Choose a reason for hiding this comment

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

Overall, it's looking good, with the exception of a single line that I think will break due to a nested double quote.


- name: Resolve versions
run: |
echo "version=$(git describe --tags --match "v[0-9]*" HEAD)" \
Copy link
Collaborator

Choose a reason for hiding this comment

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

I believe this line will break because of nested double quotes.

The second double quote closes the first one, so maybe something like the following should fix this:

echo "version=$(git describe --tags --match \"v[0-9]*\" HEAD)" >> "$GITHUB_ENV"

@evandrosaturnino
Copy link
Collaborator

I noticed that the client-build-test-publish workflow is failing. I believe we should simply update the client.yml workflow from v3 to v4 to fix this.

@piotr-roslaniec
Copy link
Author

We've fixed the failing CI here: #3829

Replace double quotes with single quotes in git describe commands
to prevent shell parsing errors in GitHub Actions
@piotr-roslaniec piotr-roslaniec changed the base branch from main to release/v2.2.0-prep October 9, 2025 10:30
@piotr-roslaniec piotr-roslaniec merged commit 2dd8ff3 into release/v2.2.0-prep Oct 9, 2025
13 of 15 checks passed
@piotr-roslaniec piotr-roslaniec deleted the feature/automated-releases branch October 9, 2025 10:30
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