You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Extract helpers (ssh, httphelper, dnshelper) into /v2 modules (#1864)
* extract ssh/httphelper/dnshelper into their own /v2 modules
Second tier (helpers) of the v2 modularization, on top of core. Each helper gets its own module (github.com/gruntwork-io/terratest/modules/<name>/v2) with go.mod seeded to root versions, imports rewritten to /v2, and a root replace + go.work use line. The helpers depend only on core/v2. Same pattern as the core extraction.
* tidy helper go.mods to their real dependency sets
The initial extraction seeded each helper with the root dependency graph, but go mod tidy could not prune it because the cross-module core/v2 pseudo-version is unresolvable outside the workspace. Regenerating each helper go.mod with a throwaway replace so tidy can resolve core, then dropping the replace, shrinks them to their actual deps (ssh 11, httphelper 6, dnshelper 13 requires) with a real go.sum, matching core's shape. Also reconcile the runbook: submodule go.mods do carry a sibling require at the local zero placeholder that go.work resolves; only the real-version pin waits for release-prep.
* keep core untouched and drop the inert dnshelper root replace
Review follow-ups: (1) go work sync had bumped modules/core's x/sys and left its go.sum incomplete, breaking core's standalone GOWORK=off build; revert core/go.mod+go.sum to main so the helpers PR does not modify the already-merged core module (ssh legitimately needs the newer x/sys; the workspace resolves the max). (2) Root replaced dnshelper/v2 without requiring it (dnshelper is test-only, not imported by root); drop the inert replace so root replaces match its requires.
0 commit comments