这是indexloc提供的服务,不要输入任何密码
Skip to content

Conversation

Copy link
Contributor

Copilot AI commented Oct 24, 2025

Problem

The release workflow was failing with the error:

Error: Unable to process file command 'output' successfully.
Error: Invalid value. Matching delimiter not found 'EOF'

This occurred in the step that reads the commit history and sets it as the release body.

Root Cause

The heredoc syntax used to capture multiline output had two issues:

  1. Improper closing delimiter: Used echo EOF without quotes, which GitHub Actions' output parser didn't recognize as a proper closing delimiter
  2. Potential content collision: Using "EOF" as a static delimiter could fail if the commit history content contains "EOF" on its own line

Solution

Updated the heredoc syntax in .github/workflows/release.yml (lines 76-84) to use proper GitHub Actions multiline output format with a unique delimiter:

Before:

{
  echo "RELEASE_BODY<<EOF"
  cat ./chaiNNer/history.txt
  echo EOF
} >> $GITHUB_OUTPUT

After:

delimiter="ghadelimiter_$(uuidgen)"
echo "RELEASE_BODY<<${delimiter}" >> $GITHUB_OUTPUT
cat ./chaiNNer/history.txt >> $GITHUB_OUTPUT
echo "${delimiter}" >> $GITHUB_OUTPUT

Changes

  • Removed the braces wrapper and changed to sequential writes to $GITHUB_OUTPUT
  • Added quotes around the closing delimiter
  • Generated a unique delimiter using uuidgen to prevent collision with content

This ensures the closing delimiter is properly recognized by GitHub Actions and won't conflict with any content in the commit history, making the workflow more robust.

Testing

  • ✅ YAML syntax validated with yamllint
  • ✅ Tested heredoc format with edge cases (content containing "EOF")
  • ✅ Code review passed with no issues
  • ✅ Security scan passed (0 alerts)
Original prompt

This section details on the original issue you should resolve

<issue_title>Workflow still failing</issue_title>
<issue_description>Run # Use heredoc to properly handle multiline content
Error: Unable to process file command 'output' successfully.
Error: Invalid value. Matching delimiter not found 'EOF'

Perhaps this isn't the best way to do it, and we should consider a different way </issue_description>

Comments on the Issue (you are @copilot in this section)


💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.

Copilot AI and others added 2 commits October 24, 2025 17:41
Co-authored-by: joeyballentine <34788790+joeyballentine@users.noreply.github.com>
Co-authored-by: joeyballentine <34788790+joeyballentine@users.noreply.github.com>
Copilot AI changed the title [WIP] Fix workflow failure due to heredoc usage Fix GitHub Actions heredoc syntax error in release workflow Oct 24, 2025
Copilot finished work on behalf of joeyballentine October 24, 2025 17:46
Copilot AI requested a review from joeyballentine October 24, 2025 17:46
@joeyballentine joeyballentine marked this pull request as ready for review October 24, 2025 17:50
@joeyballentine joeyballentine merged commit 0350b16 into main Oct 24, 2025
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.

Workflow still failing

2 participants