bugfix: do not output logs in vcluster connect if --print is set #2014
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.
What issue type does this pull request address? (keep at least one, remove the others)
/kind bugfix
What does this pull request do? Which issues does it resolve? (use
resolves #<issue_number>
if possible)resolves ENG-4270
Fix replaces the
Log
if--print
flag is set. This new Log instance will log all non-error logs toio.Discard
. Also, added two e2e tests:vcluster connect -n vcluster --print vcluster
and writes it to temporary file, and then useskubectl --kubeconfig=<temporary-file> get pods -A
to check if outputed kubeconfig can be used to connect to virtual cluster.vcluster connect -n vcluster --print NOT_EXISTING_CLUSTER_NAME
still outputs error.Please provide a short message that should be published in the vcluster release notes
Fixed an issue where
vcluster connect --print
outputs invalid kubeconfig (it included log)What else do we need to know?
I initially tried to construct
cobra.Command
inside the e2e test (as it is done here, but I couldn't direct the output of thecmd.Execute()
to the temporary kubeconfig file (even usingcmd.SetOut(kubeCfgFile)
). I believe reason for that is that we write toos.Stdout
directly here: https://github.com/hidalgopl/vcluster/blob/fix-vcluster-connect-with-print/pkg/cli/connect_helm.go#L154 (so we don't take into account theoutWriter
fromcobra.Command
.