Repository navigation
[ci] Clear stale git submodule trees in Windows runner cleanup - #5748
Merged
HereThereBeDragons merged 3 commits intoJun 10, 2026
Merged
Conversation
Contributor
Author
|
@amd-justchen please let me know if htis is a good location for this or you would prefer something different? (new file/rename to general windows cleanup etc) |
Contributor
Author
|
Test run on rocm-libraries using therock pin from this branch here (+ changes to just run the windows tests): |
Contributor
Author
|
run is happy and fixes the problem |
amd-justchen
approved these changes
Jun 10, 2026
amd-justchen
left a comment
Contributor
There was a problem hiding this comment.
Thank you for the fix!
HereThereBeDragons
deleted the
users/lpromber/windows_cleanup_add_git_deinit
branch
June 10, 2026 17:04
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Non-ephemeral Windows GPU runners are shared across super-repos whose checkouts pin different submodule commits.
git reset --hard(run byactions/checkout) does not clear nested submodule working trees, so a newer nested submodule left on disk by a prior job can remain under an older superproject whose.gitmoduleslacks its URL.actions/checkoutthen runsgit submodule foreach --recursiveduring its auth setup/teardown, descends into that stale tree, and aborts.To fix this:
Add a step to the shared pre-job cleanup script that empties the top-level submodule working trees left by the prior job. Submodule paths are read with
git config -f .gitmodulesand the dirs removed withRemove-Item.git submodule deinitis unusable here: a prior job can leave the workspace partially corrupted (submodule URL in.git/configbut.git/modules/<name>missing), making deinit abort withcould not lock config file .... Physical removal is independent of.git/moduleshealth. Runs beforeactions/checkout.Cache-safe: keeps
.git/modulesobjects and touches no untracked or ignored files, so ccache and downloaded deps are preserved.Fixes #5742