Skip to content

Conversation

@kjanat
Copy link
Owner

@kjanat kjanat commented May 28, 2025

This pull request reorganizes the CI/CD workflows by removing the release process from the ci.yml file and creating a dedicated release.yml workflow. It also introduces Docker image build and push functionality in the new release workflow. The changes streamline the CI pipeline and enhance Docker integration.

Workflow Reorganization:

  • .github/workflows/ci.yml: Removed the release job, which included tasks for running release tests, building binaries, compressing binaries, and creating GitHub releases. This job has been moved to a dedicated release.yml file.
  • .github/workflows/ci.yml: Updated the docker job condition to remove checks for tags and streamline its execution logic.

New Release Workflow:

  • .github/workflows/release.yml: Added a workflow_call trigger to allow other workflows to invoke the release workflow. Defined environment variables (REGISTRY and IMAGE_NAME) for Docker integration.
  • .github/workflows/release.yml: Introduced a docker job that builds and pushes Docker images using metadata extraction, multi-platform support, and caching mechanisms. This job includes steps for logging into Docker registries, setting up QEMU and Buildx, and configuring image metadata and annotations.

- Remove tag trigger from CI workflow to prevent simultaneous execution
- Add Docker build job to release workflow for proper release handling
- CI now only runs on branch pushes and PRs
- Release workflow handles both binary releases and Docker images for tags

Fixes issue where both CI and release workflows would start when pushing vX.X.X tags
@kjanat kjanat self-assigned this May 28, 2025
@kjanat kjanat added the bug Something isn't working label May 28, 2025
@kjanat kjanat requested a review from Copilot May 28, 2025 23:07
@codecov
Copy link

codecov bot commented May 28, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

Copy link

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 prevents duplicate workflow execution on tag push by removing the tag trigger from the CI workflow and shifting the Docker build to the release workflow. Key changes include:

  • Removal of the tag trigger from .github/workflows/ci.yml to avoid duplicate runs.
  • Addition of a new Docker Build & Push job with enhanced permission settings in .github/workflows/release.yml.
  • Adjustment of event conditions for the docker job to focus only on pushes to master, develop, and feature/docker branches.

Reviewed Changes

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

File Description
.github/workflows/release.yml Added Docker build job and updated permissions/metadata
.github/workflows/ci.yml Removed tag triggers & release job to avoid duplicates

kjanat and others added 2 commits May 29, 2025 01:11
Added permission to add pull-request comments
Change how BUILD_TIME is derived

Co-authored-by: Copilot <[email protected]>
@kjanat kjanat closed this Nov 6, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[BUG] Release workflow isn't triggered by CI workflow, but two release processes start simultaneously

2 participants