Skip to content

ci: Setup release process#197

Merged
brunodam merged 1 commit intomainfrom
00082-setup-release-process
Nov 18, 2025
Merged

ci: Setup release process#197
brunodam merged 1 commit intomainfrom
00082-setup-release-process

Conversation

@brunodam
Copy link
Contributor

Description

This pull request introduces a new GitHub Actions CI/CD workflow setup, adding modular and reusable workflows for building, testing, and releasing the project. The changes establish a standardized process for compiling code, running unit tests, and deploying release artifacts, with a focus on security and maintainability.

New CI/CD Workflows

  • Added a pull request checks workflow (flow-pull-request-checks.yaml) that orchestrates build and unit test jobs using reusable workflow calls, ensuring PRs are automatically validated.
  • Introduced a release artifact deployment workflow (flow-deploy-release-artifact.yaml) that automates building, signing, and releasing artifacts, including semantic versioning and dry-run support.

Reusable Job Definitions

  • Created a reusable build workflow (zxc-code-compiles.yaml) for compiling code and checking code style, parameterized for Go version and job labeling.
  • Added a reusable unit test workflow (zxc-unit-test.yaml) for running and reporting unit tests, also parameterized for Go version and job labeling.

Security and Tooling Improvements

  • All workflows now include runner hardening via step-security/harden-runner, and use pinned action versions for improved security and reproducibility. [1] [2] [3] [4]

Related Issues

@brunodam brunodam requested a review from a team as a code owner November 18, 2025 05:13
Base automatically changed from 00195-from-provisioner-to-weaver to main November 18, 2025 05:22
@brunodam brunodam force-pushed the 00082-setup-release-process branch 2 times, most recently from 7d8fae4 to 1b8f38b Compare November 18, 2025 05:27
@brunodam brunodam requested review from Copilot, leninmehedy and nathanklick and removed request for crypto-pablo November 18, 2025 05:28
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 establishes a CI/CD workflow infrastructure for the project, introducing automated build validation, testing, and release processes with security hardening and semantic versioning support.

  • Adds GitHub Actions workflows for pull request validation (build and unit tests) and release artifact deployment with GPG signing
  • Creates reusable workflow templates for code compilation and unit testing with configurable Go versions
  • Uncomments version logging in the application's initialization code

Reviewed Changes

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

Show a summary per file
File Description
.github/workflows/flow-pull-request-checks.yaml Main PR validation workflow orchestrating build and test jobs
.github/workflows/flow-deploy-release-artifact.yaml Release workflow handling versioning, artifact building, signing, and GitHub release creation
.github/workflows/zxc-code-compiles.yaml Reusable workflow for code compilation and style checks
.github/workflows/zxc-unit-test.yaml Reusable workflow for running unit tests with report generation
cmd/weaver/commands/root.go Enables version and commit logging during application initialization

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

- Add PR checks workflow for automated build and test validation
- Add release deployment workflow for artifact publishing
- Add reusable workflows for code compilation and unit testing
- Configure concurrency control and dry-run support

Signed-off-by: Bruno De Assis Marques <bruno.marques@swirldslabs.com>
@brunodam brunodam force-pushed the 00082-setup-release-process branch from 1b8f38b to 4fa9b72 Compare November 18, 2025 06:13
@brunodam brunodam merged commit 9232ab5 into main Nov 18, 2025
9 checks passed
@brunodam brunodam deleted the 00082-setup-release-process branch November 18, 2025 22:07
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.

Setup release process

3 participants