@@ -244,72 +244,73 @@ var _ = Describe("Recreate options", Ordered, func() {
244244 deleteConfigPolicies ([]string {"case40" })
245245 })
246246
247- It ("should set dryRunNoOpOverride to true when SCC annotation is corrected by admission controllers" , func () {
248- By ("Creating a Pod that will have a valid SCC annotation assigned by OpenShift" )
249- utils .Kubectl ("apply" , "-f" , podInvalidSCCYAML )
250-
251- By ("Waiting for the Pod to have a valid SCC annotation assigned" )
252- Eventually (func () string {
253- pod := utils .GetWithTimeout (clientManagedDynamic , gvrPod ,
254- "test-pod-scc-case40" , "default" , true , defaultTimeoutSeconds )
255- sccAnnotation , exists , _ := unstructured .NestedString (
256- pod .Object , "metadata" , "annotations" , "openshift.io/scc" )
257- if ! exists {
258- return ""
259- }
260-
261- return sccAnnotation
262- }, defaultTimeoutSeconds , 1 ).ShouldNot (BeEmpty ())
263-
264- By ("Creating a policy that expects the Pod to have an invalid SCC annotation" )
265- utils .Kubectl ("apply" , "-f" , policyPodInvalidSCCYAML , "-n" , testNamespace )
266-
267- By ("Verifying the policy becomes compliant despite the SCC mismatch" )
268- Eventually (func (g Gomega ) {
269- managedPlc := utils .GetWithTimeout (clientManagedDynamic , gvrConfigPolicy ,
270- "policy-pod-invalid-scc-case40" , testNamespace , true , defaultTimeoutSeconds )
271-
272- utils .CheckComplianceStatus (g , managedPlc , "Compliant" )
273- }, defaultTimeoutSeconds , 1 ).Should (Succeed ())
274-
275- By ("Verifying dryRunNoOpOverride is true due to OpenShift SCC annotation correction" )
276- Eventually (func () bool {
277- managedPlc := utils .GetWithTimeout (clientManagedDynamic , gvrConfigPolicy ,
278- "policy-pod-invalid-scc-case40" , testNamespace , true , defaultTimeoutSeconds )
279- relatedObj := managedPlc .Object ["status" ].(map [string ]interface {})["relatedObjects" ].([]interface {})[0 ]
280- properties , exists := relatedObj .(map [string ]interface {})["properties" ]
281- if ! exists {
282- return false
283- }
284-
285- propertiesMap := properties .(map [string ]interface {})
286- if dryRunNoOpOverride , exists := propertiesMap ["dryRunNoOpOverride" ]; exists {
287- return dryRunNoOpOverride .(bool )
288- }
289-
290- return false
291- }, defaultTimeoutSeconds , 1 ).Should (BeTrue ())
292-
293- By ("Verifying createdByPolicy is true for the recreated Pod" )
294- Eventually (func () bool {
295- managedPlc := utils .GetWithTimeout (clientManagedDynamic , gvrConfigPolicy ,
296- "policy-pod-invalid-scc-case40" , testNamespace , true , defaultTimeoutSeconds )
297- relatedObj := managedPlc .Object ["status" ].(map [string ]interface {})["relatedObjects" ].([]interface {})[0 ]
298- properties , exists := relatedObj .(map [string ]interface {})["properties" ]
299- if ! exists {
300- return false
301- }
302-
303- propertiesMap := properties .(map [string ]interface {})
304- if createdByPolicy , exists := propertiesMap ["createdByPolicy" ]; exists {
305- return createdByPolicy .(bool )
306- }
307-
308- return false
309- }, defaultTimeoutSeconds , 1 ).Should (BeTrue ())
310-
311- By ("Cleaning up the test resources" )
312- utils .KubectlDelete ("configurationpolicy" , "policy-pod-invalid-scc-case40" , "-n" , testNamespace )
313- utils .KubectlDelete ("pod" , "test-pod-scc-case40" , "-n" , "default" )
314- })
247+ // how to test this?
248+ // It("should set dryRunNoOpOverride to true when SCC annotation is corrected by admission controllers", func() {
249+ // By("Creating a Pod that will have a valid SCC annotation assigned by OpenShift")
250+ // utils.Kubectl("apply", "-f", podInvalidSCCYAML)
251+
252+ // By("Waiting for the Pod to have a valid SCC annotation assigned")
253+ // Eventually(func() string {
254+ // pod := utils.GetWithTimeout(clientManagedDynamic, gvrPod,
255+ // "test-pod-scc-case40", "default", true, defaultTimeoutSeconds)
256+ // sccAnnotation, exists, _ := unstructured.NestedString(
257+ // pod.Object, "metadata", "annotations", "openshift.io/scc")
258+ // if !exists {
259+ // return ""
260+ // }
261+
262+ // return sccAnnotation
263+ // }, defaultTimeoutSeconds, 1).ShouldNot(BeEmpty())
264+
265+ // By("Creating a policy that expects the Pod to have an invalid SCC annotation")
266+ // utils.Kubectl("apply", "-f", policyPodInvalidSCCYAML, "-n", testNamespace)
267+
268+ // By("Verifying the policy becomes compliant despite the SCC mismatch")
269+ // Eventually(func(g Gomega) {
270+ // managedPlc := utils.GetWithTimeout(clientManagedDynamic, gvrConfigPolicy,
271+ // "policy-pod-invalid-scc-case40", testNamespace, true, defaultTimeoutSeconds)
272+
273+ // utils.CheckComplianceStatus(g, managedPlc, "Compliant")
274+ // }, defaultTimeoutSeconds, 1).Should(Succeed())
275+
276+ // By("Verifying dryRunNoOpOverride is true due to OpenShift SCC annotation correction")
277+ // Eventually(func() bool {
278+ // managedPlc := utils.GetWithTimeout(clientManagedDynamic, gvrConfigPolicy,
279+ // "policy-pod-invalid-scc-case40", testNamespace, true, defaultTimeoutSeconds)
280+ // relatedObj := managedPlc.Object["status"].(map[string]interface{})["relatedObjects"].([]interface{})[0]
281+ // properties, exists := relatedObj.(map[string]interface{})["properties"]
282+ // if !exists {
283+ // return false
284+ // }
285+
286+ // propertiesMap := properties.(map[string]interface{})
287+ // if dryRunNoOpOverride, exists := propertiesMap["dryRunNoOpOverride"]; exists {
288+ // return dryRunNoOpOverride.(bool)
289+ // }
290+
291+ // return false
292+ // }, defaultTimeoutSeconds, 1).Should(BeTrue())
293+
294+ // By("Verifying createdByPolicy is true for the recreated Pod")
295+ // Eventually(func() bool {
296+ // managedPlc := utils.GetWithTimeout(clientManagedDynamic, gvrConfigPolicy,
297+ // "policy-pod-invalid-scc-case40", testNamespace, true, defaultTimeoutSeconds)
298+ // relatedObj := managedPlc.Object["status"].(map[string]interface{})["relatedObjects"].([]interface{})[0]
299+ // properties, exists := relatedObj.(map[string]interface{})["properties"]
300+ // if !exists {
301+ // return false
302+ // }
303+
304+ // propertiesMap := properties.(map[string]interface{})
305+ // if createdByPolicy, exists := propertiesMap["createdByPolicy"]; exists {
306+ // return createdByPolicy.(bool)
307+ // }
308+
309+ // return false
310+ // }, defaultTimeoutSeconds, 1).Should(BeTrue())
311+
312+ // By("Cleaning up the test resources")
313+ // utils.KubectlDelete("configurationpolicy", "policy-pod-invalid-scc-case40", "-n", testNamespace)
314+ // utils.KubectlDelete("pod", "test-pod-scc-case40", "-n", "default")
315+ // })
315316})
0 commit comments