Merge pull request #69742 from apelisse/fix-diff-error

Rename KUBERNETES_EXTERNAL_DIFF to KUBECTL_EXTERNAL_DIFF
This commit is contained in:
k8s-ci-robot 2018-10-13 09:54:52 -07:00 committed by GitHub
commit 2129bc9f85
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 8 additions and 12 deletions

View File

@ -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
} }

View File

@ -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,

View File

@ -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