Skip to content

Conversation

@Jasrags
Copy link
Contributor

@Jasrags Jasrags commented May 14, 2025

Description

This pull request updates the GoMud release workflows by modifying the GitHub Actions workflow files to utilize a new semantic versioning pattern and improved version injection into the built binaries and release artifacts.

  • Modified docker-package workflow to use the semantic version tag pattern "v*.." and added a RELEASE_VERSION environment variable.
  • Updated build-and-release workflow to trigger on release tags, add a code generation step, inject the release version into build commands via ldflags, and update artifact naming for releases.

Changes

  • Modified .github/workflows/docker-package.yml and .github/workflows/build-and-release.yml

@Jasrags Jasrags requested a review from Copilot May 14, 2025 17:34
@Jasrags Jasrags requested a review from Volte6 as a code owner May 14, 2025 17:34
@Jasrags Jasrags linked an issue May 14, 2025 that may be closed by this pull request
@Jasrags Jasrags marked this pull request as draft May 14, 2025 17:35
Copy link
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 updates the GoMud release workflows by modifying the GitHub Actions workflow files to utilize a new semantic versioning pattern and improved version injection into the built binaries and release artifacts.

  • Modified docker-package workflow to use the semantic version tag pattern "v*.." and added a RELEASE_VERSION environment variable.
  • Updated build-and-release workflow to trigger on release tags, add a code generation step, inject the release version into build commands via ldflags, and update artifact naming for releases.

Reviewed Changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.

File Description
.github/workflows/docker-package.yml Updated tag pattern and added RELEASE_VERSION for consistency with semantic versioning.
.github/workflows/build-and-release.yml Adjusted triggers to use tags, added a version display and code generation step, and modified build commands and artifact naming to incorporate RELEASE_VERSION.
Comments suppressed due to low confidence (1)

.github/workflows/build-and-release.yml:101

  • Verify that using RELEASE_VERSION for artifact naming aligns with your versioning expectations and consider updating documentation to reflect this change.
+          filename: ${{ env.RELEASE_FILENAME }}-${{ env.RELEASE_VERSION }}.zip

@Jasrags Jasrags added the enhancement New feature or request label May 14, 2025
@Jasrags Jasrags self-assigned this May 14, 2025
@Jasrags Jasrags requested a review from Copilot May 15, 2025 23:22
Copy link
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 PR updates the GoMud release workflows to adopt a new semantic versioning pattern and ensure the release version is injected into build binaries and artifacts.

  • Updated GitHub Actions workflows to use semantic version tags (v*..) and a RELEASE_VERSION environment variable.
  • Upgraded Go setup actions from v4 to v5 and added a code generation step.
  • Modified build commands to include version injection via ldflags and updated artifact naming and release steps.

Reviewed Changes

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

File Description
.github/workflows/run-tests.yml Upgraded Go setup to v5 and added a code generation step.
.github/workflows/docker-package.yml Adjusted tag trigger to a semantic version pattern and added RELEASE_VERSION.
.github/workflows/build-and-release.yml Enabled tag-based triggers, injected RELEASE_VERSION into build commands, and updated artifact archive and release steps.
Comments suppressed due to low confidence (1)

.github/workflows/docker-package.yml:11

  • The updated tag pattern 'v*..' replaces the previous patterns. Please confirm that this pattern covers all required semantic version tags, as removal of 'release-*' may impact existing release workflows.
      - 'v*.*.*'

@Jasrags Jasrags marked this pull request as ready for review May 15, 2025 23:23
@Jasrags Jasrags requested a review from colinsenner May 15, 2025 23:24
Copy link
Member

@Volte6 Volte6 left a comment

Choose a reason for hiding this comment

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

Looks good (I think?)

Question:

It looks like it triggers on a tag being added that follows v*.*.*
Is that the only criteria for a new build/release?

Can you detail in the notes the expected stepr or process for new release, and also for a basic release?

It seems that any merge to master should in principle trigger at least a minor version update, but maybe not.

@Jasrags
Copy link
Contributor Author

Jasrags commented May 19, 2025

Looks good (I think?)

Question:

It looks like it triggers on a tag being added that follows v*.*.* Is that the only criteria for a new build/release?

Can you detail in the notes the expected stepr or process for new release, and also for a basic release?

It seems that any merge to master should in principle trigger at least a minor version update, but maybe not.

Added RELEASING.md to help document the process.

@Jasrags Jasrags requested review from Volte6 and Copilot May 19, 2025 16:40
Copy link
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 streamlines the GoMud release workflows to adopt a new semantic versioning pattern and improve version injection into binaries and release artifacts.

  • Updated Go version setups and added a code generation step in the test and build workflows.
  • Modified tag filters and release artifact naming to use semantic version strings.
  • Added documentation in RELEASING.md outlining the release process.

Reviewed Changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated 1 comment.

File Description
.github/workflows/run-tests.yml Upgraded Go setup to v5 and inserted a code generation step.
.github/workflows/docker-package.yml Changed tag matching to 'v*..' and added RELEASE_VERSION env.
.github/workflows/build-and-release.yml Updated trigger conditions, injected version via ldflags, altered artifact naming, and improved Discord webhook embed configuration.
.github/RELEASING.md Established detailed steps for the new semantic versioning release process.
Comments suppressed due to low confidence (2)

.github/workflows/docker-package.yml:11

  • Ensure that the updated tag pattern 'v*..' consistently captures all intended semantic version formats, including versions with multi-digit segments.
-      - 'v*'

.github/workflows/build-and-release.yml:124

  • [nitpick] Validate that the conditional fallback for the Discord webhook embed parameters meets the intended notification behavior when PR data is unavailable.
embed-title: ${{ steps.get_pr_data.outputs.result && fromJson(steps.get_pr_data.outputs.result).title || '🎉 New update on `master` branch' }}

@Jasrags Jasrags merged commit b7cd090 into master May 19, 2025
6 checks passed
@Jasrags Jasrags deleted the 346-update-gomud-release-workflows branch May 19, 2025 19:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Update GoMud release workflows

3 participants