Skip to content

fix: test release in one job and wf#12

Merged
grota merged 1 commit intomainfrom
release_in_one_job
Mar 20, 2026
Merged

fix: test release in one job and wf#12
grota merged 1 commit intomainfrom
release_in_one_job

Conversation

@grota
Copy link
Copy Markdown
Member

@grota grota commented Mar 20, 2026

PR Type

Enhancement, Bug fix


Description

  • Merged release and binary upload into a single workflow job

  • Removed separate release.yml workflow file

  • Added debug step and conditional GoReleaser execution after release-please

  • Added include-component-in-tag: false to release-please config


Diagram Walkthrough

flowchart LR
  A["Push to main"] --> B["release-please-action"]
  B -- "release_created=true" --> C["Checkout code"]
  C --> D["Set up Go"]
  D --> E["Fetch tags"]
  E --> F["GoReleaser (build & upload binaries)"]
  B -- "release_created=false" --> G["Skip binary upload"]
Loading

File Walkthrough

Relevant files
Enhancement
release-please.yml
Merge GoReleaser steps into release-please workflow           

.github/workflows/release-please.yml

  • Added issues: write permission
  • Added debug step to print release outputs
  • Added conditional steps for checkout, Go setup, tag fetch, and
    GoReleaser execution after release is created
  • Consolidated binary upload into the same job as release-please
+39/-1   
Miscellaneous
release.yml
Remove standalone release workflow file                                   

.github/workflows/release.yml

  • Entire file removed; its functionality is now handled inside
    release-please.yml
+0/-34   
Configuration changes
release-please-config.json
Exclude component name from release tags                                 

release-please-config.json

  • Added include-component-in-tag: false to prevent component name from
    being included in the release tag
+1/-0     

@grota grota merged commit d19e183 into main Mar 20, 2026
4 checks passed
@grota grota deleted the release_in_one_job branch March 20, 2026 14:48
@sparkfabrik-ai-bot
Copy link
Copy Markdown

PR Reviewer Guide 🔍

Here are some key observations to aid the review process:

⏱️ Estimated effort to review: 2 🔵🔵⚪⚪⚪
🧪 No relevant tests
🔒 No security concerns identified
⚡ Recommended focus areas for review

Invalid Versions

The workflow references actions/checkout@v6 and actions/setup-go@v6, but the latest stable versions are v4 and v5 respectively. Using non-existent versions will cause the workflow to fail. Similarly, go-version: '1.25.6' does not exist (latest Go is around 1.22.x); this will cause the Go setup step to fail.

  uses: actions/checkout@v6
  with:
    fetch-depth: 0

- name: Set up Go
  if: ${{ steps.release.outputs.release_created }}
  uses: actions/setup-go@v6
  with:
    go-version: '1.25.6'
    cache: true
Secret Exposure

The debug step prints release outputs (tag_name, version, release_created) to the workflow logs. While these are not secrets, care should be taken that no sensitive outputs are inadvertently logged. More importantly, verify this debug step should not be removed before merging to production, as it may expose internal release metadata publicly in the workflow logs.

- name: Debug release outputs
  run: |
    echo "release_created=${{ steps.release.outputs.release_created }}"
    echo "tag_name=${{ steps.release.outputs.tag_name }}"
    echo "version=${{ steps.release.outputs.version }}"

@sparkfabrik-ai-bot
Copy link
Copy Markdown

PR Code Suggestions ✨

Explore these optional code suggestions:

CategorySuggestion                                                                                                                                    Impact
General
Conditionally run debug step on release only

The debug step runs unconditionally on every push to main, even when no release is
created. This adds unnecessary noise to workflow logs. Add the same condition used
by other steps to only run this when a release is created.

.github/workflows/release-please.yml [26-31]

 - name: Debug release outputs
+  if: ${{ steps.release.outputs.release_created }}
   run: |
     echo "release_created=${{ steps.release.outputs.release_created }}"
     echo "tag_name=${{ steps.release.outputs.tag_name }}"
     echo "version=${{ steps.release.outputs.version }}"
Suggestion importance[1-10]: 5

__

Why: The debug step runs unconditionally on every push to main, adding noise to logs when no release is created. Adding if: ${{ steps.release.outputs.release_created }} would make it consistent with other steps, though this is a minor quality improvement.

Low

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant