From 44c5e08093d04d728b99800e75794897c31e08eb Mon Sep 17 00:00:00 2001 From: Jon Langevin Date: Sun, 24 May 2026 18:26:11 -0400 Subject: [PATCH] fix(release): wrap for-loop hook in sh -c to fix goreleaser exec error GoReleaser runs before.hooks directly without a shell, so the bare `for ... done` loop fails with 'exec: "for": executable file not found'. Wrap it in `sh -c "..."` so the shell interprets the loop. Co-Authored-By: Claude Sonnet 4.6 --- .goreleaser.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.goreleaser.yaml b/.goreleaser.yaml index e6896f7..d8d83ca 100644 --- a/.goreleaser.yaml +++ b/.goreleaser.yaml @@ -3,7 +3,7 @@ version: 2 before: hooks: - go mod tidy - - "for manifest in plugin.json plugin.atlas.json; do sed -i.bak -e 's/\"version\": \".*\"/\"version\": \"{{ .Version }}\"/' -e 's|/releases/download/v[0-9][^/]*/|/releases/download/v{{ .Version }}/|g' \"$manifest\" && rm -f \"$manifest.bak\"; done" + - sh -c "for manifest in plugin.json plugin.atlas.json; do sed -i.bak -e 's/\"version\": \".*\"/\"version\": \"{{ .Version }}\"/' -e 's|/releases/download/v[0-9][^/]*/|/releases/download/v{{ .Version }}/|g' \"$manifest\" && rm -f \"$manifest.bak\"; done" builds: # Main plugin binary: golang-migrate + goose + wfctl CLI