mirror of
				https://github.com/k3s-io/kubernetes.git
				synced 2025-10-31 13:50:01 +00:00 
			
		
		
		
	There is currently a race-condition when diffing, where we get the object and then run a server-side dry-run patch and compare the two results. If something changes the object on the server between the get and the patch, the diff is going to show unrelated changes. We can now specify the exact revisionversion that we want to patch, and that will return a conflict, and we can retry multiple times to get a non-conflicting diff. Eventually (after 3 times), we diff without checking the version and throw a warning that the diff might be partially wrong.
		
			
				
	
	
		
			56 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			56 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
| load("@io_bazel_rules_go//go:def.bzl", "go_library", "go_test")
 | |
| 
 | |
| go_library(
 | |
|     name = "go_default_library",
 | |
|     srcs = ["diff.go"],
 | |
|     importpath = "k8s.io/kubernetes/pkg/kubectl/cmd/diff",
 | |
|     visibility = ["//visibility:public"],
 | |
|     deps = [
 | |
|         "//pkg/kubectl:go_default_library",
 | |
|         "//pkg/kubectl/cmd/apply:go_default_library",
 | |
|         "//pkg/kubectl/cmd/util:go_default_library",
 | |
|         "//pkg/kubectl/cmd/util/openapi:go_default_library",
 | |
|         "//pkg/kubectl/scheme:go_default_library",
 | |
|         "//pkg/kubectl/util/i18n:go_default_library",
 | |
|         "//pkg/kubectl/util/templates:go_default_library",
 | |
|         "//staging/src/k8s.io/apimachinery/pkg/api/errors:go_default_library",
 | |
|         "//staging/src/k8s.io/apimachinery/pkg/api/meta:go_default_library",
 | |
|         "//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",
 | |
|         "//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1/unstructured:go_default_library",
 | |
|         "//staging/src/k8s.io/apimachinery/pkg/runtime:go_default_library",
 | |
|         "//staging/src/k8s.io/cli-runtime/pkg/genericclioptions:go_default_library",
 | |
|         "//staging/src/k8s.io/cli-runtime/pkg/genericclioptions/resource:go_default_library",
 | |
|         "//vendor/github.com/jonboulle/clockwork:go_default_library",
 | |
|         "//vendor/github.com/spf13/cobra:go_default_library",
 | |
|         "//vendor/k8s.io/klog:go_default_library",
 | |
|         "//vendor/k8s.io/utils/exec:go_default_library",
 | |
|         "//vendor/sigs.k8s.io/yaml:go_default_library",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| go_test(
 | |
|     name = "go_default_test",
 | |
|     srcs = ["diff_test.go"],
 | |
|     embed = [":go_default_library"],
 | |
|     deps = [
 | |
|         "//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1/unstructured:go_default_library",
 | |
|         "//staging/src/k8s.io/apimachinery/pkg/runtime:go_default_library",
 | |
|         "//staging/src/k8s.io/cli-runtime/pkg/genericclioptions:go_default_library",
 | |
|         "//vendor/k8s.io/utils/exec:go_default_library",
 | |
|     ],
 | |
| )
 | |
| 
 | |
| filegroup(
 | |
|     name = "package-srcs",
 | |
|     srcs = glob(["**"]),
 | |
|     tags = ["automanaged"],
 | |
|     visibility = ["//visibility:private"],
 | |
| )
 | |
| 
 | |
| filegroup(
 | |
|     name = "all-srcs",
 | |
|     srcs = [":package-srcs"],
 | |
|     tags = ["automanaged"],
 | |
|     visibility = ["//visibility:public"],
 | |
| )
 |