Merge pull request #69742 from apelisse/fix-diff-error
Rename KUBERNETES_EXTERNAL_DIFF to KUBECTL_EXTERNAL_DIFF
This commit is contained in:
commit
2129bc9f85
@ -49,7 +49,7 @@ var (
|
|||||||
|
|
||||||
Output is always YAML.
|
Output is always YAML.
|
||||||
|
|
||||||
KUBERNETES_EXTERNAL_DIFF environment variable can be used to select your own
|
KUBECTL_EXTERNAL_DIFF environment variable can be used to select your own
|
||||||
diff command. By default, the "diff" command available in your path will be
|
diff command. By default, the "diff" command available in your path will be
|
||||||
run with "-u" (unicode) and "-N" (treat new files as empty) options.`))
|
run with "-u" (unicode) and "-N" (treat new files as empty) options.`))
|
||||||
diffExample = templates.Examples(i18n.T(`
|
diffExample = templates.Examples(i18n.T(`
|
||||||
@ -97,7 +97,7 @@ func NewCmdDiff(f cmdutil.Factory, streams genericclioptions.IOStreams) *cobra.C
|
|||||||
}
|
}
|
||||||
|
|
||||||
// DiffProgram finds and run the diff program. The value of
|
// DiffProgram finds and run the diff program. The value of
|
||||||
// KUBERNETES_EXTERNAL_DIFF environment variable will be used a diff
|
// KUBECTL_EXTERNAL_DIFF environment variable will be used a diff
|
||||||
// program. By default, `diff(1)` will be used.
|
// program. By default, `diff(1)` will be used.
|
||||||
type DiffProgram struct {
|
type DiffProgram struct {
|
||||||
Exec exec.Interface
|
Exec exec.Interface
|
||||||
@ -106,7 +106,7 @@ type DiffProgram struct {
|
|||||||
|
|
||||||
func (d *DiffProgram) getCommand(args ...string) exec.Cmd {
|
func (d *DiffProgram) getCommand(args ...string) exec.Cmd {
|
||||||
diff := ""
|
diff := ""
|
||||||
if envDiff := os.Getenv("KUBERNETES_EXTERNAL_DIFF"); envDiff != "" {
|
if envDiff := os.Getenv("KUBECTL_EXTERNAL_DIFF"); envDiff != "" {
|
||||||
diff = envDiff
|
diff = envDiff
|
||||||
} else {
|
} else {
|
||||||
diff = "diff"
|
diff = "diff"
|
||||||
@ -122,8 +122,7 @@ func (d *DiffProgram) getCommand(args ...string) exec.Cmd {
|
|||||||
|
|
||||||
// Run runs the detected diff program. `from` and `to` are the directory to diff.
|
// Run runs the detected diff program. `from` and `to` are the directory to diff.
|
||||||
func (d *DiffProgram) Run(from, to string) error {
|
func (d *DiffProgram) Run(from, to string) error {
|
||||||
d.getCommand(from, to).Run() // Ignore diff return code
|
return d.getCommand(from, to).Run()
|
||||||
return nil
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Printer is used to print an object.
|
// Printer is used to print an object.
|
||||||
@ -397,8 +396,5 @@ func RunDiff(f cmdutil.Factory, diff *DiffProgram, options *DiffOptions) error {
|
|||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
// Error ignore on purpose. diff(1) for example, returns an error if there is any diff.
|
return differ.Run(diff)
|
||||||
_ = differ.Run(diff)
|
|
||||||
|
|
||||||
return nil
|
|
||||||
}
|
}
|
||||||
|
@ -52,7 +52,7 @@ func (f *FakeObject) Live() runtime.Object {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func TestDiffProgram(t *testing.T) {
|
func TestDiffProgram(t *testing.T) {
|
||||||
os.Setenv("KUBERNETES_EXTERNAL_DIFF", "echo")
|
os.Setenv("KUBECTL_EXTERNAL_DIFF", "echo")
|
||||||
streams, _, stdout, _ := genericclioptions.NewTestIOStreams()
|
streams, _, stdout, _ := genericclioptions.NewTestIOStreams()
|
||||||
diff := DiffProgram{
|
diff := DiffProgram{
|
||||||
IOStreams: streams,
|
IOStreams: streams,
|
||||||
|
@ -27,12 +27,12 @@ run_kubectl_diff_tests() {
|
|||||||
kube::log::status "Testing kubectl diff"
|
kube::log::status "Testing kubectl diff"
|
||||||
|
|
||||||
# Test that it works when the live object doesn't exist
|
# Test that it works when the live object doesn't exist
|
||||||
output_message=$(kubectl diff -f hack/testdata/pod.yaml)
|
output_message=$(! kubectl diff -f hack/testdata/pod.yaml)
|
||||||
kube::test::if_has_string "${output_message}" 'test-pod'
|
kube::test::if_has_string "${output_message}" 'test-pod'
|
||||||
|
|
||||||
kubectl apply -f hack/testdata/pod.yaml
|
kubectl apply -f hack/testdata/pod.yaml
|
||||||
|
|
||||||
output_message=$(kubectl diff -f hack/testdata/pod-changed.yaml)
|
output_message=$(! kubectl diff -f hack/testdata/pod-changed.yaml)
|
||||||
kube::test::if_has_string "${output_message}" 'k8s.gcr.io/pause:3.0'
|
kube::test::if_has_string "${output_message}" 'k8s.gcr.io/pause:3.0'
|
||||||
|
|
||||||
kubectl delete -f hack/testdata/pod.yaml
|
kubectl delete -f hack/testdata/pod.yaml
|
||||||
|
Loading…
Reference in New Issue
Block a user