ci(verify-nix): Only build changed plugins #40
No reviewers
Labels
No labels
automerge
bug
dependencies
duplicate
enhancement
help wanted
invalid
migrations
question
wontfix
No milestone
No project
No assignees
2 participants
Notifications
Due date
No due date set.
Reference
Personal/woodpecker-plugins!40
Loading…
Reference in a new issue
No description provided.
Delete branch "refactor/verify-nix"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Review Summary
The PR introduces a valuable optimization to only build changed Nix plugins instead of all plugins on every run. The approach is sound: detect changed files via
CI_PIPELINE_FILES, classify changes as either shared infrastructure (triggering full build) or plugin-specific (building only affected plugins).However, there's a critical bug in the shell script where
$$is used instead of$for parameter expansion (lines 70-71). This will cause plugin name extraction to fail completely, as$$expands to the shell's PID rather than performing the intended string manipulation.Other observations:
*🤖 Review by opencode (opencode/nemotron-3-ultra-free) — verdict: changes
Code review findings from opencode.
@ -32,0 +67,4 @@case " $plugins " in*" $plugin "*) ;;*) plugins="$plugins $plugin" ;;esacThis is not correct, in woodpecker ${} will be replaced by the woodpecker preprocessor, while $${} must be used for shell variables
@ -32,0 +68,4 @@*" $plugin "*) ;;*) plugins="$plugins $plugin" ;;esac;;View command line instructions
Checkout
From your project repository, check out a new branch and test the changes.Merge
Merge the changes and update on Forgejo.Warning: The "Autodetect manual merge" setting is not enabled for this repository, you will have to mark this pull request as manually merged afterwards.