Skip to content

Conversation

@zhming0
Copy link
Contributor

@zhming0 zhming0 commented Oct 20, 2025

Description

We have false negative Vendored plugin path "..." must be a directory within the checked-out repository error, when a checkout global hook or plugin hook recreated the checkout directory, and as part the process if the hook inject some plugins/hooks into the directory.

Closes #3530

Context

PS-1302

Changes

Refresh e.checkoutRoot after all checkout behavior.

Testing

  • Tests have run locally (with go test ./...). Buildkite employees may check this if the pipeline has run automatically.
  • Code is formatted (with go fmt ./...)

The QA is mostly relying on local testing. It highlight the need of comprehensive integration test suite.

Disclosures / Credits

I am human

@zhming0 zhming0 requested review from a team October 20, 2025 23:46
Comment on lines +315 to +323
// After everything, we need to refresh checkout root.
// This is because checkout hook might re-create the checkout root folder entirely, deprecating e.checkoutRoot.
if err := e.refreshCheckoutRoot(); err != nil {
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is pretty much the actual change.

All other diff are just moving codes around for better readability.

@DrJosh9000 DrJosh9000 self-requested a review October 21, 2025 00:20
Copy link
Contributor

@DrJosh9000 DrJosh9000 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Makes sense

@zhming0 zhming0 enabled auto-merge October 21, 2025 23:37
@zhming0 zhming0 merged commit efcc53a into main Oct 21, 2025
1 check passed
@zhming0 zhming0 deleted the ming/ps-1302 branch October 21, 2025 23:45
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.

Vendored plugin path cannot be found: no such file or directory

3 participants