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
{{ message }}
Repository navigation
Extract the kpt CLI into it's own go module - #4811
Exactly as the title says, moved all the CLI related code into it's own module in cli/, leaving the main "library" part as the root module.
Had to do some auxiliary moving around to avoid weird circular and cross-dependencies. Renamed commands/ to cli/. All of the make targets and workflows should be working. I also redid the api make targets to match Porch and the new cli ones.
The live E2E filters in .github/workflows/live-e2e.yml:43-44 and .github/workflows/e2eEnvironment.yml:43-44 still match commands/live/** and commands/pkg/**. After this move, changes confined to cli/live/** or cli/pkg/** skip both cluster test suites while their gates report success. Update both filters to the relocated paths and include cli/go.mod and cli/go.sum so CLI dependency changes also trigger validation.
Apply build dependency replacements in cli/go.mod
e2e/live/end-to-end-test.sh:202
With -b, lines 195–197 still append the dependency replacements to the root go.mod, but this build now uses cli/go.mod as the main module. Go ignores replacements in dependency modules, so the cloned cli-utils and kyaml HEAD checkouts are not used despite the success message. Write the replacements into cli/go.mod and adjust their relative paths for the extra directory level.
work is phony, so every repeated make work runs go work init again. go work init fails when go.work already exists, making the documented setup command non-idempotent; use go work use for an existing workspace or guard the init.
It needs a coordinated homebrew-core PR to build the cli/ submodule, switch ldflags to -X main.version, and teach livecheck the cli/v* stream. Flagging so it isn't missed. likely belongs with the release-automation work in #4827.
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
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.
Exactly as the title says, moved all the CLI related code into it's own module in
cli/, leaving the main "library" part as the root module.Had to do some auxiliary moving around to avoid weird circular and cross-dependencies. Renamed
commands/tocli/. All of the make targets and workflows should be working. I also redid the api make targets to match Porch and the new cli ones.Related to #4647 and closes #4554
Obsoletes #4739 by moving all of the third-party code into their respective folders.
For reviewers: You can go through commit-by-commit to avoid big diffs as I tried to logically separate the migration steps as much as possible.
I have used AI in the PR: