Change:
and server-side dry-run are being promoted to stable features in 1.18. Conformance should ensure that cloud providers support these features. As a user, I expect to work, which requires that cloud providers for cloud default webhooks. Conformance would generally avoid cloud-specific issues like this one: This suggestion is from /area conformance
/sig testing /sig architecture
/wg apply
There are some good references for conformance tests in the conformance meeting notes:
once merges, we need to promote the e2e test to conformance in a follow up PR, in accordance to this doc: It seems like we meet the conformance test requirements. Here's the process specifically, which includes sig-arch and a review board group:

Discussion:
proper information. release: v1.9 file: test/e2e/kubectl/kubectl.go <ins> - testname: Kubectl, diff Deployment codename: '[sig-cli] Kubectl client Kubectl diff should check if kubectl diff finds a difference for Deployments [Conformance]' description: Create a Deployment with httpd image. Declare the same Deployment with a different image, busybox. Diff of live Deployment with declared Deployment MUST include the difference between live and declared image. release: v1.19 file: test/e2e/kubectl/kubectl.go </ins> - testname: Kubectl, create service, replication controller codename: '[sig-cli] Kubectl client Kubectl expose should create services for rc  [Conformance]' description: Create a Pod running agnhost listening to port 6379. Using kubectl

with one container running the specified image. release: v1.9 file: test/e2e/kubectl/kubectl.go <ins> - testname: Kubectl, server-side dry-run Pod codename: '[sig-cli] Kubectl client Kubectl server-side dry-run should check if kubectl can dry-run update Pods [Conformance]' description: The command 'kubectl run' must create a pod with the specified image name. After, the command 'kubectl replace --dry-run=server' should update the Pod with the new image name and server-side dry-run enabled. The image name must not change. release: v1.19 file: test/e2e/kubectl/kubectl.go </ins> - testname: Kubectl, version codename: '[sig-cli] Kubectl client Kubectl version should check is all data is printed  [Conformance]'

ginkgo.Describe("Kubectl diff", func() { /* <del> Release : v1.18 </del> <ins> Release : v1.19 </ins> Testname: Kubectl, diff Deployment Description: Create a Deployment with httpd image. Declare the same Deployment with a different image, busybox. Diff of live Deployment with declared Deployment MUST include the difference between live and declared image. */ <del> ginkgo.It("should find diff in Deployment", func() { </del> <ins> framework.ConformanceIt("should check if kubectl diff finds a difference for Deployments", func() { </ins> ginkgo.By("create deployment with httpd image") deployment := commonutils.SubstituteImageName(string(readTestFileOrDie(httpdDeployment3Filename))) framework.RunKubectlOrDieInput(ns, deployment, "create", "-f", "-")

ginkgo.Describe("Kubectl server-side dry-run", func() { /* <del> Release : v1.18 </del> <ins> Release : v1.19 </ins> Testname: Kubectl, server-side dry-run Pod Description: The command 'kubectl run' must create a pod with the specified image name. After, the command 'kubectl replace --dry-run=server' should update the Pod with the new image name and server-side dry-run enabled. The image name must not change. */ <del> ginkgo.It("should dry-run update the Pod", func() { </del> <ins> framework.ConformanceIt("should check if kubectl can dry-run update Pods", func() { </ins> ginkgo.By("running the image " + httpdImage) podName := "e2e-test-httpd-pod" nsFlag := fmt.Sprintf("--namespace=%v", ns)