Skip to content

fix(renovate): validate multiple preset files without multiline step output - #3

Merged
setchy merged 1 commit into
mainfrom
fix/renovate-config-validator
Oct 8, 2026
Merged

setchy merged 1 commit into
mainfrom
fix/renovate-config-validator

Conversation

@setchy

@setchy setchy commented Oct 8, 2026

Copy link
Copy Markdown
Member

Problem

The validator workflow failed on PR #2 (which runs the workflow from main):

##[error]Unable to process file command 'output' successfully.
##[error]Invalid format './renovate-config.json'

The "Determine files to validate" step wrote a newline-separated list to $GITHUB_OUTPUT with echo "files=...". GitHub's file-command format rejects multi-line values written that way — it only accepts the heredoc delimiter form.

Fix

Fold file detection and validation into a single step, passing the file list directly as command arguments. No step output, so no multiline format issue. The auto-detection behaviour is unchanged:

  • explicit files input → use it
  • repository has renovate.json* / .renovaterc* → validate those
  • otherwise (preset repo) → validate all root *.json

Verification

Simulated the exact step logic locally under bash:

  • preset-repo auto-detect → validates ./default.json (only preset on main)
  • multi-file → Config validated successfully against 2 file(s) (exit 0)

Ordering

Unblocks #2. Should merge before (or with) #2. Draft pending review.

…output

The file-detection step wrote a newline-separated list to GITHUB_OUTPUT via 'echo files=...', which GitHub rejects for multi-line values. Fold detection and validation into a single step so the file list is passed as command arguments.
@setchy
setchy marked this pull request as ready for review October 8, 2026 14:28
@setchy
setchy merged commit a9ec610 into main Oct 8, 2026
1 check passed
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.

1 participant