WARNING: Using insecure TLS client config. Setting this option is not supported! Login successful. You have access to 70 projects, the list has been suppressed. You can list all projects with 'oc projects' Using project "default". Execute maistra tests scripts/runtests.sh OSSM Operator version is 2.5.0 Output dir: /go/src/maistra-test-tool/tests/result-20240312210552 Executing tests against SMCP version 2.4 Resetting cluster by deleting namespaces used in the test suite Output dir: /go/src/maistra-test-tool/tests/result-20240312210552/v2.4 ====== Executing tests in group 'interop' against SMCP v2.4 test_helper_setup.go:64: Creating namespaces: [istio-system bookinfo foo bar legacy mesh-external] === RUN TestSMCPMultiple test.go:114: This test is being skipped because it is not part of the "interop" test group --- SKIP: TestSMCPMultiple (0.00s) PASS ok github.com/maistra/maistra-test-tool/pkg/tests/non-dependant 1.920s test_helper_setup.go:64: Creating namespaces: [istio-system bookinfo foo bar legacy mesh-external] === RUN TestIstiodPodFailsAfterRestarts test.go:114: This test is being skipped because it is not part of the "interop" test group --- SKIP: TestIstiodPodFailsAfterRestarts (0.00s) === RUN TestDeployOnInfraNodes test.go:114: This test is being skipped because it is not part of the "interop" test group --- SKIP: TestDeployOnInfraNodes (0.00s) === RUN TestExcludeCniFromNode test.go:114: This test is being skipped because it is not part of the "interop" test group --- SKIP: TestExcludeCniFromNode (0.00s) === RUN TestDiscoverySelectors test.go:114: This test is being skipped because it is not part of the "interop" test group --- SKIP: TestDiscoverySelectors (0.00s) === RUN TestInitContainerNotRemovedDuringInjection test.go:114: This test is being skipped because it is not part of the "interop" test group --- SKIP: TestInitContainerNotRemovedDuringInjection (0.00s) === RUN TestIOR test.go:114: This test is being skipped because it is not part of the "interop" test group --- SKIP: TestIOR (0.00s) === RUN TestOperatorCanUpdatePrometheusConfigMap test.go:114: This test is being skipped because it is not part of the "interop" test group --- SKIP: TestOperatorCanUpdatePrometheusConfigMap (0.00s) === RUN TestRateLimiting test.go:114: This test is being skipped because it is not part of the "interop" test group --- SKIP: TestRateLimiting (0.00s) === RUN TestRoutePreventAdditionalIngress test.go:114: This test is being skipped because it is not part of the "interop" test group --- SKIP: TestRoutePreventAdditionalIngress (0.00s) === RUN TestSMCPAddons test.go:114: This test is being skipped because it is not part of the "interop" test group --- SKIP: TestSMCPAddons (0.00s) === RUN TestSMCPAnnotations test.go:114: This test is being skipped because it is not part of the "interop" test group --- SKIP: TestSMCPAnnotations (0.00s) === RUN TestMustGather test.go:114: This test is being skipped because it is not part of the "interop" test group --- SKIP: TestMustGather (0.00s) === RUN TestTLSVersionSMCP smcp_tls_ssl_test.go:25: This test checks if the SMCP updated the tls.minProtocolVersion to TLSv1_0, TLSv1_1, and tls.maxProtocolVersion to TLSv1_3. smcp_tls_ssl_test.go:34: smcp_tls_ssl_test.go:34: STEP 1: Apply default SMCP and SMMR manifests smcp_tls_ssl_test.go:34: Wait for condition condition=Ready on smcp istio-system/basic... smcp_tls_ssl_test.go:34: FAILURE: Command failed: oc wait -n istio-system smcp/basic --for condition=Ready --timeout 10s error: timed out waiting for the condition on servicemeshcontrolplanes/basic error: exit status 1 smcp_tls_ssl_test.go:34: Wait for condition condition=Ready on smcp istio-system/basic... smcp_tls_ssl_test.go:34: FAILURE: Command failed: oc wait -n istio-system smcp/basic --for condition=Ready --timeout 10s error: timed out waiting for the condition on servicemeshcontrolplanes/basic error: exit status 1 smcp_tls_ssl_test.go:34: Wait for condition condition=Ready on smcp istio-system/basic... smcp_tls_ssl_test.go:34: FAILURE: Command failed: oc wait -n istio-system smcp/basic --for condition=Ready --timeout 10s error: timed out waiting for the condition on servicemeshcontrolplanes/basic error: exit status 1 smcp_tls_ssl_test.go:34: Wait for condition condition=Ready on smcp istio-system/basic... smcp_tls_ssl_test.go:34: FAILURE: Command failed: oc wait -n istio-system smcp/basic --for condition=Ready --timeout 10s error: timed out waiting for the condition on servicemeshcontrolplanes/basic error: exit status 1 smcp_tls_ssl_test.go:34: Wait for condition condition=Ready on smcp istio-system/basic... smcp_tls_ssl_test.go:34: SUCCESS: Condition condition=Ready met by smcp istio-system/basic smcp_tls_ssl_test.go:34: Wait for smmr/default to be ready in namespace istio-system === RUN TestTLSVersionSMCP/minVersion_TLSv1_0 smcp_tls_ssl_test.go:37: smcp_tls_ssl_test.go:37: STEP 1: Update SMCP spec.security.controlPlane.tls.minProtocolVersion: TLSv1_0 smcp_tls_ssl_test.go:39: Wait for condition condition=Ready on smcp istio-system/basic... smcp_tls_ssl_test.go:39: SUCCESS: Condition condition=Ready met by smcp istio-system/basic subtest.go:25: subtest.go:32: Subtest completed in 9.87s (excluding cleanup) --- PASS: TestTLSVersionSMCP/minVersion_TLSv1_0 (9.87s) === RUN TestTLSVersionSMCP/minVersion_TLSv1_1 smcp_tls_ssl_test.go:43: smcp_tls_ssl_test.go:43: STEP 1: Check to see if the SMCP minProtocolVersion is TLSv1_1 smcp_tls_ssl_test.go:45: Wait for condition condition=Ready on smcp istio-system/basic... smcp_tls_ssl_test.go:45: FAILURE: Command failed: oc wait -n istio-system smcp/basic --for condition=Ready --timeout 10s error: timed out waiting for the condition on servicemeshcontrolplanes/basic error: exit status 1 smcp_tls_ssl_test.go:45: Wait for condition condition=Ready on smcp istio-system/basic... smcp_tls_ssl_test.go:45: SUCCESS: Condition condition=Ready met by smcp istio-system/basic subtest.go:25: subtest.go:32: Subtest completed in 10.99s (excluding cleanup) --- PASS: TestTLSVersionSMCP/minVersion_TLSv1_1 (10.99s) === RUN TestTLSVersionSMCP/maxVersion_TLSv1_3 smcp_tls_ssl_test.go:49: smcp_tls_ssl_test.go:49: STEP 1: Check to see if the SMCP maxProtocolVersion is TLSv1_3 smcp_tls_ssl_test.go:51: Wait for condition condition=Ready on smcp istio-system/basic... smcp_tls_ssl_test.go:51: FAILURE: Command failed: oc wait -n istio-system smcp/basic --for condition=Ready --timeout 10s error: timed out waiting for the condition on servicemeshcontrolplanes/basic error: exit status 1 smcp_tls_ssl_test.go:51: Wait for condition condition=Ready on smcp istio-system/basic... smcp_tls_ssl_test.go:51: SUCCESS: Condition condition=Ready met by smcp istio-system/basic subtest.go:25: subtest.go:32: Subtest completed in 10.87s (excluding cleanup) --- PASS: TestTLSVersionSMCP/maxVersion_TLSv1_3 (10.87s) test.go:77: test.go:84: Test completed in 76.87s (excluding cleanup) smcp_tls_ssl_test.go:26: smcp_tls_ssl_test.go:26: Performing cleanup smcp_tls_ssl_test.go:31: Wait for condition condition=Ready on smcp istio-system/basic... smcp_tls_ssl_test.go:31: FAILURE: Command failed: oc wait -n istio-system smcp/basic --for condition=Ready --timeout 10s error: timed out waiting for the condition on servicemeshcontrolplanes/basic error: exit status 1 smcp_tls_ssl_test.go:31: Wait for condition condition=Ready on smcp istio-system/basic... smcp_tls_ssl_test.go:31: SUCCESS: Condition condition=Ready met by smcp istio-system/basic smcp_tls_ssl_test.go:26: Cleanup completed in 10.95s --- PASS: TestTLSVersionSMCP (87.82s) === RUN TestSMMRAutoCreationAndDeletion test.go:114: This test is being skipped because it is not part of the "interop" test group --- SKIP: TestSMMRAutoCreationAndDeletion (0.00s) === RUN TestSMMReconciliation test.go:114: This test is being skipped because it is not part of the "interop" test group --- SKIP: TestSMMReconciliation (0.00s) === RUN TestSmoke smoke_test.go:46: Smoke Test for SMCP: deploy, upgrade, bookinfo and uninstall smoke_test.go:56: Deleting namespaces: [istio-system] smoke_test.go:56: Creating namespaces: [istio-system] === RUN TestSmoke/upgrade_v2.3_to_v2.4 smoke_test.go:59: This test checks whether SMCP becomes ready after it's upgraded from v2.3 to v2.4 and bookinfo is still working after the upgrade and also test a clean installation of the target SMCP smoke_test.go:65: smoke_test.go:65: STEP 1: Install SMCP v2.3 and verify it becomes ready smoke_test.go:183: smoke_test.go:183: STEP 2: Install SMCP smoke_test.go:185: Wait for condition condition=Ready on smcp istio-system/basic... smoke_test.go:185: FAILURE: Command failed: oc wait -n istio-system smcp/basic --for condition=Ready --timeout 10s error: timed out waiting for the condition on servicemeshcontrolplanes/basic error: exit status 1 smoke_test.go:185: Wait for condition condition=Ready on smcp istio-system/basic... smoke_test.go:185: FAILURE: Command failed: oc wait -n istio-system smcp/basic --for condition=Ready --timeout 10s error: timed out waiting for the condition on servicemeshcontrolplanes/basic error: exit status 1 smoke_test.go:185: Wait for condition condition=Ready on smcp istio-system/basic... smoke_test.go:185: SUCCESS: Condition condition=Ready met by smcp istio-system/basic smoke_test.go:187: smoke_test.go:187: STEP 3: Check SMCP is Ready smoke_test.go:188: Wait for condition condition=Ready on smcp istio-system/basic... smoke_test.go:188: SUCCESS: Condition condition=Ready met by smcp istio-system/basic smoke_test.go:68: smoke_test.go:68: STEP 4: Install bookinfo pods and sleep pod smoke_test.go:69: Install app "bookinfo" in namespace "bookinfo" smoke_test.go:69: Create Bookinfo Gateway smoke_test.go:69: Create Bookinfo Destination Rules (all) smoke_test.go:69: Create Bookinfo Deployments smoke_test.go:69: Install app "sleep" in namespace "bookinfo" smoke_test.go:69: Wait for app bookinfo/bookinfo to be ready smoke_test.go:69: Wait for app bookinfo/sleep to be ready smoke_test.go:71: smoke_test.go:71: STEP 5: Check if bookinfo traffic flows through the Proxy smoke_test.go:137: SUCCESS: ProductPage returns 200 OK smoke_test.go:137: SUCCESS: HTTP header 'server: istio-envoy' is present in the response smoke_test.go:137: SUCCESS: HTTP header 'x-envoy-decorator-operation' is present in the response smoke_test.go:74: smoke_test.go:74: STEP 6: Upgrade SMCP from v2.3 to v2.4 smoke_test.go:183: smoke_test.go:183: STEP 7: Install SMCP smoke_test.go:185: Wait for condition condition=Ready on smcp istio-system/basic... smoke_test.go:185: FAILURE: Command failed: oc wait -n istio-system smcp/basic --for condition=Ready --timeout 10s error: timed out waiting for the condition on servicemeshcontrolplanes/basic error: exit status 1 smoke_test.go:185: Wait for condition condition=Ready on smcp istio-system/basic... smoke_test.go:185: FAILURE: Command failed: oc wait -n istio-system smcp/basic --for condition=Ready --timeout 10s error: timed out waiting for the condition on servicemeshcontrolplanes/basic error: exit status 1 smoke_test.go:185: Wait for condition condition=Ready on smcp istio-system/basic... smoke_test.go:185: SUCCESS: Condition condition=Ready met by smcp istio-system/basic smoke_test.go:187: smoke_test.go:187: STEP 8: Check SMCP is Ready smoke_test.go:188: Wait for condition condition=Ready on smcp istio-system/basic... smoke_test.go:188: SUCCESS: Condition condition=Ready met by smcp istio-system/basic smoke_test.go:77: smoke_test.go:77: STEP 9: Check if bookinfo productpage is running through the Proxy after the upgrade smoke_test.go:137: SUCCESS: ProductPage returns 200 OK smoke_test.go:137: SUCCESS: HTTP header 'server: istio-envoy' is present in the response smoke_test.go:137: SUCCESS: HTTP header 'x-envoy-decorator-operation' is present in the response smoke_test.go:80: smoke_test.go:80: STEP 10: Delete Bookinfo pods to force the update of the sidecar smoke_test.go:125: smoke_test.go:125: STEP 11: Verify if all the routes are created smoke_test.go:192: Related issue: https://issues.redhat.com/browse/OSSM-4069 smoke_test.go:194: SUCCESS: Route grafana is created smoke_test.go:194: SUCCESS: Route istio-ingressgateway is created smoke_test.go:194: SUCCESS: Route jaeger is created smoke_test.go:194: SUCCESS: Route kiali is created smoke_test.go:194: SUCCESS: Route prometheus is created smoke_test.go:128: smoke_test.go:128: STEP 12: Check if bookinfo traffic flows through the Proxy smoke_test.go:137: SUCCESS: ProductPage returns 200 OK smoke_test.go:137: SUCCESS: HTTP header 'server: istio-envoy' is present in the response smoke_test.go:137: SUCCESS: HTTP header 'x-envoy-decorator-operation' is present in the response smoke_test.go:131: smoke_test.go:131: STEP 13: verify proxy startup time. Expected to be less than 10 seconds smoke_test.go:132: Jira related: https://issues.redhat.com/browse/OSSM-3586 smoke_test.go:153: Extracting proxy startup time and last transition time for all the pods in the namespace subtest.go:25: subtest.go:32: Subtest completed in 106.64s (excluding cleanup) smoke_test.go:60: smoke_test.go:60: Performing cleanup smoke_test.go:61: Uninstalling Bookinfo from namespace "bookinfo" smoke_test.go:61: Deleting resources from namespace bookinfo smoke_test.go:61: Deleting resources from namespace bookinfo smoke_test.go:61: Deleting resources from namespace bookinfo smoke_test.go:61: Deleting resources from namespace bookinfo smoke_test.go:62: Deleting namespaces: [istio-system] smoke_test.go:62: Creating namespaces: [istio-system] smoke_test.go:60: Cleanup completed in 42.01s --- PASS: TestSmoke/upgrade_v2.3_to_v2.4 (148.65s) === RUN TestSmoke/install_smcp_v2.4 smoke_test.go:87: This test checks whether SMCP v2.4 install the SMCP version smoke_test.go:92: smoke_test.go:92: STEP 1: Install SMCP v2.4 smoke_test.go:183: smoke_test.go:183: STEP 2: Install SMCP smoke_test.go:185: Wait for condition condition=Ready on smcp istio-system/basic... smoke_test.go:185: FAILURE: Command failed: oc wait -n istio-system smcp/basic --for condition=Ready --timeout 10s error: timed out waiting for the condition on servicemeshcontrolplanes/basic error: exit status 1 smoke_test.go:185: Wait for condition condition=Ready on smcp istio-system/basic... smoke_test.go:185: FAILURE: Command failed: oc wait -n istio-system smcp/basic --for condition=Ready --timeout 10s error: timed out waiting for the condition on servicemeshcontrolplanes/basic error: exit status 1 smoke_test.go:185: Wait for condition condition=Ready on smcp istio-system/basic... smoke_test.go:185: SUCCESS: Condition condition=Ready met by smcp istio-system/basic smoke_test.go:187: smoke_test.go:187: STEP 3: Check SMCP is Ready smoke_test.go:188: Wait for condition condition=Ready on smcp istio-system/basic... smoke_test.go:188: SUCCESS: Condition condition=Ready met by smcp istio-system/basic smoke_test.go:95: smoke_test.go:95: STEP 4: Install bookinfo pods and sleep pod smoke_test.go:96: Install app "bookinfo" in namespace "bookinfo" smoke_test.go:96: Create Bookinfo Gateway smoke_test.go:96: Create Bookinfo Destination Rules (all) smoke_test.go:96: Create Bookinfo Deployments smoke_test.go:96: Install app "sleep" in namespace "bookinfo" smoke_test.go:96: Wait for app bookinfo/bookinfo to be ready smoke_test.go:96: Wait for app bookinfo/sleep to be ready smoke_test.go:125: smoke_test.go:125: STEP 5: Verify if all the routes are created smoke_test.go:192: Related issue: https://issues.redhat.com/browse/OSSM-4069 smoke_test.go:194: SUCCESS: Route grafana is created smoke_test.go:194: SUCCESS: Route istio-ingressgateway is created smoke_test.go:194: SUCCESS: Route jaeger is created smoke_test.go:194: FAILURE: Still waiting for route kiali to be created in namespace; expected to find the string 'kiali' in the output, but it wasn't found smoke_test.go:194: SUCCESS: Route prometheus is created smoke_test.go:193: --- Attempt 1/60 failed. Retrying... smoke_test.go:194: SUCCESS: Route grafana is created smoke_test.go:194: SUCCESS: Route istio-ingressgateway is created smoke_test.go:194: SUCCESS: Route jaeger is created smoke_test.go:194: FAILURE: Still waiting for route kiali to be created in namespace; expected to find the string 'kiali' in the output, but it wasn't found smoke_test.go:194: SUCCESS: Route prometheus is created smoke_test.go:193: --- Attempt 2/60 failed. Retrying... smoke_test.go:194: SUCCESS: Route grafana is created smoke_test.go:194: SUCCESS: Route istio-ingressgateway is created smoke_test.go:194: SUCCESS: Route jaeger is created smoke_test.go:194: FAILURE: Still waiting for route kiali to be created in namespace; expected to find the string 'kiali' in the output, but it wasn't found smoke_test.go:194: SUCCESS: Route prometheus is created smoke_test.go:193: --- Attempt 3/60 failed. Retrying... smoke_test.go:194: SUCCESS: Route grafana is created smoke_test.go:194: SUCCESS: Route istio-ingressgateway is created smoke_test.go:194: SUCCESS: Route jaeger is created smoke_test.go:194: FAILURE: Still waiting for route kiali to be created in namespace; expected to find the string 'kiali' in the output, but it wasn't found smoke_test.go:194: SUCCESS: Route prometheus is created smoke_test.go:193: --- Attempt 4/60 failed. Retrying... smoke_test.go:194: SUCCESS: Route grafana is created smoke_test.go:194: SUCCESS: Route istio-ingressgateway is created smoke_test.go:194: SUCCESS: Route jaeger is created smoke_test.go:194: FAILURE: Still waiting for route kiali to be created in namespace; expected to find the string 'kiali' in the output, but it wasn't found smoke_test.go:194: SUCCESS: Route prometheus is created smoke_test.go:193: --- Attempt 5/60 failed. Retrying... smoke_test.go:194: SUCCESS: Route grafana is created smoke_test.go:194: SUCCESS: Route istio-ingressgateway is created smoke_test.go:194: SUCCESS: Route jaeger is created smoke_test.go:194: FAILURE: Still waiting for route kiali to be created in namespace; expected to find the string 'kiali' in the output, but it wasn't found smoke_test.go:194: SUCCESS: Route prometheus is created smoke_test.go:193: --- Attempt 6/60 failed. Retrying... smoke_test.go:194: SUCCESS: Route grafana is created smoke_test.go:194: SUCCESS: Route istio-ingressgateway is created smoke_test.go:194: SUCCESS: Route jaeger is created smoke_test.go:194: FAILURE: Still waiting for route kiali to be created in namespace; expected to find the string 'kiali' in the output, but it wasn't found smoke_test.go:194: SUCCESS: Route prometheus is created smoke_test.go:193: --- Attempt 7/60 failed. Retrying... smoke_test.go:194: SUCCESS: Route grafana is created smoke_test.go:194: SUCCESS: Route istio-ingressgateway is created smoke_test.go:194: SUCCESS: Route jaeger is created smoke_test.go:194: FAILURE: Still waiting for route kiali to be created in namespace; expected to find the string 'kiali' in the output, but it wasn't found smoke_test.go:194: SUCCESS: Route prometheus is created smoke_test.go:193: --- Attempt 8/60 failed. Retrying... smoke_test.go:194: SUCCESS: Route grafana is created smoke_test.go:194: SUCCESS: Route istio-ingressgateway is created smoke_test.go:194: SUCCESS: Route jaeger is created smoke_test.go:194: FAILURE: Still waiting for route kiali to be created in namespace; expected to find the string 'kiali' in the output, but it wasn't found smoke_test.go:194: SUCCESS: Route prometheus is created smoke_test.go:193: --- Attempt 9/60 failed. Retrying... smoke_test.go:194: SUCCESS: Route grafana is created smoke_test.go:194: SUCCESS: Route istio-ingressgateway is created smoke_test.go:194: SUCCESS: Route jaeger is created smoke_test.go:194: FAILURE: Still waiting for route kiali to be created in namespace; expected to find the string 'kiali' in the output, but it wasn't found smoke_test.go:194: SUCCESS: Route prometheus is created smoke_test.go:193: --- Attempt 10/60 failed. Retrying... smoke_test.go:194: SUCCESS: Route grafana is created smoke_test.go:194: SUCCESS: Route istio-ingressgateway is created smoke_test.go:194: SUCCESS: Route jaeger is created smoke_test.go:194: FAILURE: Still waiting for route kiali to be created in namespace; expected to find the string 'kiali' in the output, but it wasn't found smoke_test.go:194: SUCCESS: Route prometheus is created smoke_test.go:193: --- Attempt 11/60 failed. Retrying... smoke_test.go:194: SUCCESS: Route grafana is created smoke_test.go:194: SUCCESS: Route istio-ingressgateway is created smoke_test.go:194: SUCCESS: Route jaeger is created smoke_test.go:194: FAILURE: Still waiting for route kiali to be created in namespace; expected to find the string 'kiali' in the output, but it wasn't found smoke_test.go:194: SUCCESS: Route prometheus is created smoke_test.go:193: --- Attempt 12/60 failed. Retrying... smoke_test.go:194: SUCCESS: Route grafana is created smoke_test.go:194: SUCCESS: Route istio-ingressgateway is created smoke_test.go:194: SUCCESS: Route jaeger is created smoke_test.go:194: FAILURE: Still waiting for route kiali to be created in namespace; expected to find the string 'kiali' in the output, but it wasn't found smoke_test.go:194: SUCCESS: Route prometheus is created smoke_test.go:193: --- Attempt 13/60 failed. Retrying... smoke_test.go:194: SUCCESS: Route grafana is created smoke_test.go:194: SUCCESS: Route istio-ingressgateway is created smoke_test.go:194: SUCCESS: Route jaeger is created smoke_test.go:194: FAILURE: Still waiting for route kiali to be created in namespace; expected to find the string 'kiali' in the output, but it wasn't found smoke_test.go:194: SUCCESS: Route prometheus is created smoke_test.go:193: --- Attempt 14/60 failed. Retrying... smoke_test.go:194: SUCCESS: Route grafana is created smoke_test.go:194: SUCCESS: Route istio-ingressgateway is created smoke_test.go:194: SUCCESS: Route jaeger is created smoke_test.go:194: FAILURE: Still waiting for route kiali to be created in namespace; expected to find the string 'kiali' in the output, but it wasn't found smoke_test.go:194: SUCCESS: Route prometheus is created smoke_test.go:193: --- Attempt 15/60 failed. Retrying... smoke_test.go:194: SUCCESS: Route grafana is created smoke_test.go:194: SUCCESS: Route istio-ingressgateway is created smoke_test.go:194: SUCCESS: Route jaeger is created smoke_test.go:194: SUCCESS: Route kiali is created smoke_test.go:194: SUCCESS: Route prometheus is created smoke_test.go:193: --- Attempt 16/60 successful; total time: 17.12s smoke_test.go:128: smoke_test.go:128: STEP 6: Check if bookinfo traffic flows through the Proxy smoke_test.go:137: SUCCESS: ProductPage returns 200 OK smoke_test.go:137: SUCCESS: HTTP header 'server: istio-envoy' is present in the response smoke_test.go:137: SUCCESS: HTTP header 'x-envoy-decorator-operation' is present in the response smoke_test.go:131: smoke_test.go:131: STEP 7: verify proxy startup time. Expected to be less than 10 seconds smoke_test.go:132: Jira related: https://issues.redhat.com/browse/OSSM-3586 smoke_test.go:153: Extracting proxy startup time and last transition time for all the pods in the namespace subtest.go:25: subtest.go:32: Subtest completed in 47.69s (excluding cleanup) smoke_test.go:88: smoke_test.go:88: Performing cleanup smoke_test.go:89: Uninstalling Bookinfo from namespace "bookinfo" smoke_test.go:89: Deleting resources from namespace bookinfo smoke_test.go:89: Deleting resources from namespace bookinfo smoke_test.go:89: Deleting resources from namespace bookinfo smoke_test.go:89: Deleting resources from namespace bookinfo smoke_test.go:88: Cleanup completed in 2.10s --- PASS: TestSmoke/install_smcp_v2.4 (49.79s) === RUN TestSmoke/delete_smcp_v2.4 smoke_test.go:102: This test checks whether SMCP v2.4 deletion deletes all the resources smoke_test.go:107: smoke_test.go:107: STEP 1: Delete SMCP and SMMR in namespace istio-system smoke_test.go:108: Deleting resources from namespace istio-system setup.go:122: Deleting resources from namespace istio-system smoke_test.go:110: smoke_test.go:110: STEP 2: verify SMCP resources are deleted smoke_test.go:112: FAILURE: Still waiting for resources to be deleted from namespace; expected to find the string 'No resources found in' in the output, but it wasn't found smoke_test.go:111: --- Attempt 1/60 failed. Retrying... smoke_test.go:112: FAILURE: Still waiting for resources to be deleted from namespace; expected to find the string 'No resources found in' in the output, but it wasn't found smoke_test.go:111: --- Attempt 2/60 failed. Retrying... smoke_test.go:112: FAILURE: Still waiting for resources to be deleted from namespace; expected to find the string 'No resources found in' in the output, but it wasn't found smoke_test.go:111: --- Attempt 3/60 failed. Retrying... smoke_test.go:112: FAILURE: Still waiting for resources to be deleted from namespace; expected to find the string 'No resources found in' in the output, but it wasn't found smoke_test.go:111: --- Attempt 4/60 failed. Retrying... smoke_test.go:112: FAILURE: Still waiting for resources to be deleted from namespace; expected to find the string 'No resources found in' in the output, but it wasn't found smoke_test.go:111: --- Attempt 5/60 failed. Retrying... smoke_test.go:112: FAILURE: Still waiting for resources to be deleted from namespace; expected to find the string 'No resources found in' in the output, but it wasn't found smoke_test.go:111: --- Attempt 6/60 failed. Retrying... smoke_test.go:112: FAILURE: Still waiting for resources to be deleted from namespace; expected to find the string 'No resources found in' in the output, but it wasn't found smoke_test.go:111: --- Attempt 7/60 failed. Retrying... smoke_test.go:112: FAILURE: Still waiting for resources to be deleted from namespace; expected to find the string 'No resources found in' in the output, but it wasn't found smoke_test.go:111: --- Attempt 8/60 failed. Retrying... smoke_test.go:112: FAILURE: Still waiting for resources to be deleted from namespace; expected to find the string 'No resources found in' in the output, but it wasn't found smoke_test.go:111: --- Attempt 9/60 failed. Retrying... smoke_test.go:112: FAILURE: Still waiting for resources to be deleted from namespace; expected to find the string 'No resources found in' in the output, but it wasn't found smoke_test.go:111: --- Attempt 10/60 failed. Retrying... smoke_test.go:112: FAILURE: Still waiting for resources to be deleted from namespace; expected to find the string 'No resources found in' in the output, but it wasn't found smoke_test.go:111: --- Attempt 11/60 failed. Retrying... smoke_test.go:112: FAILURE: Still waiting for resources to be deleted from namespace; expected to find the string 'No resources found in' in the output, but it wasn't found smoke_test.go:111: --- Attempt 12/60 failed. Retrying... smoke_test.go:112: SUCCESS: SMCP resources are deleted smoke_test.go:111: --- Attempt 13/60 successful; total time: 14.15s subtest.go:25: subtest.go:32: Subtest completed in 16.53s (excluding cleanup) smoke_test.go:103: smoke_test.go:103: Performing cleanup smoke_test.go:104: Deleting namespaces: [istio-system] smoke_test.go:104: Creating namespaces: [istio-system] smoke_test.go:103: Cleanup completed in 22.52s --- PASS: TestSmoke/delete_smcp_v2.4 (39.05s) test.go:77: test.go:84: Test completed in 325.51s (excluding cleanup) smoke_test.go:49: smoke_test.go:49: Performing cleanup smoke_test.go:50: Deleting namespaces: [istio-system] smoke_test.go:50: Creating namespaces: [istio-system] smoke_test.go:49: Cleanup completed in 6.11s --- PASS: TestSmoke (331.62s) === RUN TestSSL testssl_test.go:46: testssl_test.go:46: STEP 1: Apply default SMCP and SMMR manifests testssl_test.go:46: Wait for condition condition=Ready on smcp istio-system/basic... testssl_test.go:46: FAILURE: Command failed: oc wait -n istio-system smcp/basic --for condition=Ready --timeout 10s error: timed out waiting for the condition on servicemeshcontrolplanes/basic error: exit status 1 testssl_test.go:46: Wait for condition condition=Ready on smcp istio-system/basic... testssl_test.go:46: FAILURE: Command failed: oc wait -n istio-system smcp/basic --for condition=Ready --timeout 10s error: timed out waiting for the condition on servicemeshcontrolplanes/basic error: exit status 1 testssl_test.go:46: Wait for condition condition=Ready on smcp istio-system/basic... testssl_test.go:46: SUCCESS: Condition condition=Ready met by smcp istio-system/basic testssl_test.go:46: Wait for smmr/default to be ready in namespace istio-system testssl_test.go:48: testssl_test.go:48: STEP 2: Patch SMCP to enable mTLS in dataPlane and controlPlane and set min/maxProtocolVersion, cipherSuites, and ecdhCurves testssl_test.go:65: Wait for condition condition=Ready on smcp istio-system/basic... testssl_test.go:65: SUCCESS: Condition condition=Ready met by smcp istio-system/basic testssl_test.go:67: testssl_test.go:67: STEP 3: Install bookinfo with mTLS and testssl pod testssl_test.go:69: Install app "bookinfo" in namespace "bookinfo" testssl_test.go:69: Create Bookinfo Gateway testssl_test.go:69: Create Bookinfo Destination Rules (all) testssl_test.go:69: Create Bookinfo Deployments testssl_test.go:69: Wait for app bookinfo/bookinfo to be ready testssl_test.go:72: testssl_test.go:72: STEP 4: Check testssl.sh results testssl_test.go:78: SUCCESS: Received the TLSv1.2 needed in the testssl.sh results testssl_test.go:78: SUCCESS: Results received the correct SHA256 testssl_test.go:78: SUCCESS: Results included: P-256 test.go:77: test.go:84: Test completed in 49.18s (excluding cleanup) testssl_test.go:32: testssl_test.go:32: Performing cleanup testssl_test.go:42: Uninstalling Bookinfo from namespace "bookinfo" testssl_test.go:42: Deleting resources from namespace bookinfo testssl_test.go:42: Deleting resources from namespace bookinfo testssl_test.go:42: Deleting resources from namespace bookinfo testssl_test.go:43: Deleting resources from namespace bookinfo testssl_test.go:32: Cleanup completed in 2.33s --- PASS: TestSSL (51.51s) PASS ok github.com/maistra/maistra-test-tool/pkg/tests/ossm 471.368s test_helper_setup.go:64: Creating namespaces: [istio-system bookinfo foo bar legacy mesh-external] === RUN TestClusterWideMode test.go:114: This test is being skipped because it is not part of the "interop" test group --- SKIP: TestClusterWideMode (0.00s) === RUN TestOperatorCanReconcileSMCPWhenIstiodOffline test.go:114: This test is being skipped because it is not part of the "interop" test group --- SKIP: TestOperatorCanReconcileSMCPWhenIstiodOffline (0.00s) === RUN TestOperatorPodHonorsReadinessProbe test.go:114: This test is being skipped because it is not part of the "interop" test group --- SKIP: TestOperatorPodHonorsReadinessProbe (0.00s) PASS ok github.com/maistra/maistra-test-tool/pkg/tests/ossm/operator 0.383s === RUN TestMultiClusterFederationFailover test.go:114: This test is being skipped because it is not part of the "interop" test group --- SKIP: TestMultiClusterFederationFailover (0.00s) === RUN TestFederation test.go:114: This test is being skipped because it is not part of the "interop" test group --- SKIP: TestFederation (0.00s) === RUN TestFederationDifferentCerts test.go:114: This test is being skipped because it is not part of the "interop" test group --- SKIP: TestFederationDifferentCerts (0.00s) PASS ok github.com/maistra/maistra-test-tool/pkg/tests/ossm-federation 0.003s test_helper_setup.go:64: Creating namespaces: [istio-system bookinfo foo bar legacy mesh-external] === RUN TestThreeScaleWasmPlugin test.go:114: This test is being skipped because it is not part of the "interop" test group --- SKIP: TestThreeScaleWasmPlugin (0.00s) PASS ok github.com/maistra/maistra-test-tool/pkg/tests/tasks/extensions 0.361s test_helper_setup.go:64: Creating namespaces: [istio-system bookinfo foo bar legacy mesh-external] === RUN TestCustomPrometheus test.go:114: This test is being skipped because it is not part of the "interop" test group --- SKIP: TestCustomPrometheus (0.00s) === RUN TestFederatedOpenShiftMonitoring test.go:114: This test is being skipped because it is not part of the "interop" test group --- SKIP: TestFederatedOpenShiftMonitoring (0.00s) === RUN TestOpenShiftMonitoring test.go:114: This test is being skipped because it is not part of the "interop" test group --- SKIP: TestOpenShiftMonitoring (0.00s) PASS ok github.com/maistra/maistra-test-tool/pkg/tests/tasks/observability 0.387s test_helper_setup.go:64: Creating namespaces: [istio-system bookinfo foo bar legacy mesh-external] === RUN TestAuthPolicy auth_test.go:40: This test validates authentication policies. auth_test.go:41: Doc reference: https://istio.io/latest/docs/tasks/security/authentication/authn-policy/ auth_test.go:47: auth_test.go:47: STEP 1: Apply default SMCP and SMMR manifests auth_test.go:47: Wait for condition condition=Ready on smcp istio-system/basic... auth_test.go:47: FAILURE: Command failed: oc wait -n istio-system smcp/basic --for condition=Ready --timeout 10s error: timed out waiting for the condition on servicemeshcontrolplanes/basic error: exit status 1 auth_test.go:47: Wait for condition condition=Ready on smcp istio-system/basic... auth_test.go:47: SUCCESS: Condition condition=Ready met by smcp istio-system/basic auth_test.go:47: Wait for smmr/default to be ready in namespace istio-system auth_test.go:49: auth_test.go:49: STEP 2: Install httpbin and sleep in multiple namespaces auth_test.go:50: Install app "httpbin" in namespace "foo" auth_test.go:50: Install app "httpbin" in namespace "bar" auth_test.go:50: Install app "httpbin" in namespace "legacy" auth_test.go:50: Install app "sleep" in namespace "foo" auth_test.go:50: Install app "sleep" in namespace "bar" auth_test.go:50: Install app "sleep" in namespace "legacy" auth_test.go:50: Wait for app foo/httpbin to be ready auth_test.go:50: Wait for app bar/httpbin to be ready auth_test.go:50: Wait for app legacy/httpbin to be ready auth_test.go:50: Wait for app foo/sleep to be ready auth_test.go:50: Wait for app bar/sleep to be ready auth_test.go:50: Wait for app legacy/sleep to be ready auth_test.go:61: auth_test.go:61: STEP 3: Check connectivity from namespaces foo, bar, and legacy to namespaces foo and bar sleep.go:98: SUCCESS: Got expected "200" sleep.go:98: SUCCESS: Got expected "200" sleep.go:98: SUCCESS: Got expected "200" sleep.go:98: SUCCESS: Got expected "200" sleep.go:98: SUCCESS: Got expected "200" sleep.go:98: SUCCESS: Got expected "200" === RUN TestAuthPolicy/enable_auto_mTLS auth_test.go:71: auth_test.go:71: STEP 1: Check if mTLS is enabled in foo auth_test.go:72: SUCCESS: mTLS is enabled in namespace foo (X-Forwarded-Client-Cert header is present) auth_test.go:77: auth_test.go:77: STEP 2: Check that mTLS is NOT enabled in legacy auth_test.go:78: SUCCESS: mTLS is not enabled in namespace legacy (X-Forwarded-Client-Cert header is not present) subtest.go:25: subtest.go:32: Subtest completed in 0.77s (excluding cleanup) --- PASS: TestAuthPolicy/enable_auto_mTLS (0.77s) === RUN TestAuthPolicy/enable_global_mTLS_STRICT_mode auth_test.go:85: auth_test.go:85: STEP 1: Enable mTLS STRICT mode globally auth_test.go:90: auth_test.go:90: STEP 2: Check whether requests from legacy namespace to foo and bar namespace return 000 placeholder sleep.go:98: SUCCESS: Got expected "000" sleep.go:98: SUCCESS: Got expected "000" subtest.go:25: subtest.go:32: Subtest completed in 1.07s (excluding cleanup) auth_test.go:87: auth_test.go:87: Performing cleanup auth_test.go:88: Deleting resources from namespace istio-system auth_test.go:87: Cleanup completed in 0.14s --- PASS: TestAuthPolicy/enable_global_mTLS_STRICT_mode (1.21s) === RUN TestAuthPolicy/namespace_policy_mtls auth_test.go:100: auth_test.go:100: STEP 1: Enable mutual TLS per namespace auth_test.go:106: auth_test.go:106: STEP 2: Check whether requests succeed except from sleep namespace to foo namespace sleep.go:98: SUCCESS: Got expected "200" sleep.go:98: SUCCESS: Got expected "200" sleep.go:98: SUCCESS: Got expected "200" sleep.go:98: SUCCESS: Got expected "200" sleep.go:98: SUCCESS: Got expected "CURL_FAILED" sleep.go:98: SUCCESS: Got expected "200" subtest.go:25: subtest.go:32: Subtest completed in 2.68s (excluding cleanup) auth_test.go:102: auth_test.go:102: Performing cleanup auth_test.go:103: Deleting resources from namespace foo auth_test.go:102: Cleanup completed in 0.13s --- PASS: TestAuthPolicy/namespace_policy_mtls (2.81s) === RUN TestAuthPolicy/workload_policy_mtls auth_test.go:122: auth_test.go:122: STEP 1: Enable mutual TLS per workload auth_test.go:128: auth_test.go:128: STEP 2: Check whether request failed from legacy namespace to bar namespace sleep.go:98: SUCCESS: Got expected "CURL_FAILED" auth_test.go:133: auth_test.go:133: STEP 3: Refine mutual TLS per port auth_test.go:136: auth_test.go:136: STEP 4: Check whether request succeed from legacy namespace to bar namespace sleep.go:98: SUCCESS: Got expected "200" subtest.go:25: subtest.go:32: Subtest completed in 1.49s (excluding cleanup) auth_test.go:124: auth_test.go:124: Performing cleanup auth_test.go:125: Deleting resources from namespace bar auth_test.go:124: Cleanup completed in 0.17s --- PASS: TestAuthPolicy/workload_policy_mtls (1.66s) === RUN TestAuthPolicy/policy_precedence_mtls auth_test.go:143: auth_test.go:143: STEP 1: Overwrite foo namespace policy by a workload policy auth_test.go:149: auth_test.go:149: STEP 2: Check whether request succeed legacy namespace to foo namespace sleep.go:98: SUCCESS: Got expected "200" subtest.go:25: subtest.go:32: Subtest completed in 0.74s (excluding cleanup) auth_test.go:145: auth_test.go:145: Performing cleanup auth_test.go:146: Deleting resources from namespace foo auth_test.go:145: Cleanup completed in 0.17s --- PASS: TestAuthPolicy/policy_precedence_mtls (0.91s) === RUN TestAuthPolicy/end-user_JWT auth_test.go:159: End-user authentication auth_test.go:161: auth_test.go:161: STEP 1: Apply httpbin gateway auth_test.go:164: auth_test.go:164: STEP 2: Check httpbin request is successful auth_test.go:225: SUCCESS: received expected status code 200 auth_test.go:169: auth_test.go:169: STEP 3: Apply a JWT policy auth_test.go:175: auth_test.go:175: STEP 4: Check whether request without token returns 200 auth_test.go:225: SUCCESS: received expected status code 200 auth_test.go:180: auth_test.go:180: STEP 5: Check whether request with an invalid token returns 401 auth_test.go:225: FAILURE: expected status code 401 but got 200 OK auth_test.go:181: --- Attempt 1/60 failed. Retrying... auth_test.go:225: FAILURE: expected status code 401 but got 200 OK auth_test.go:181: --- Attempt 2/60 failed. Retrying... auth_test.go:225: SUCCESS: received expected status code 401 auth_test.go:181: --- Attempt 3/60 successful; total time: 2.04s auth_test.go:185: auth_test.go:185: STEP 6: Check whether request with a valid token returns 200 auth_test.go:225: SUCCESS: received expected status code 200 subtest.go:25: subtest.go:32: Subtest completed in 3.82s (excluding cleanup) auth_test.go:171: auth_test.go:171: Performing cleanup auth_test.go:172: Deleting resources from namespace istio-system auth_test.go:171: Cleanup completed in 0.14s --- PASS: TestAuthPolicy/end-user_JWT (3.96s) === RUN TestAuthPolicy/end-user_require_JWT auth_test.go:196: Require a valid token auth_test.go:225: FAILURE: expected status code 403 but got 200 OK auth_test.go:202: --- Attempt 1/60 failed. Retrying... auth_test.go:225: SUCCESS: received expected status code 403 auth_test.go:202: --- Attempt 2/60 successful; total time: 1.03s subtest.go:25: subtest.go:32: Subtest completed in 1.34s (excluding cleanup) auth_test.go:198: auth_test.go:198: Performing cleanup auth_test.go:199: Deleting resources from namespace istio-system auth_test.go:198: Cleanup completed in 0.14s --- PASS: TestAuthPolicy/end-user_require_JWT (1.48s) === RUN TestAuthPolicy/end-user_require_JWT_per_path auth_test.go:208: Require valid tokens per-path auth_test.go:225: SUCCESS: received expected status code 403 auth_test.go:225: SUCCESS: received expected status code 200 subtest.go:25: subtest.go:32: Subtest completed in 0.34s (excluding cleanup) auth_test.go:210: auth_test.go:210: Performing cleanup auth_test.go:211: Deleting resources from namespace istio-system auth_test.go:210: Cleanup completed in 0.14s --- PASS: TestAuthPolicy/end-user_require_JWT_per_path (0.48s) test.go:77: test.go:84: Test completed in 41.55s (excluding cleanup) auth_test.go:43: auth_test.go:43: Performing cleanup auth_test.go:44: Deleting namespaces: [foo bar legacy] auth_test.go:44: Creating namespaces: [foo bar legacy] auth_test.go:43: Cleanup completed in 20.30s --- PASS: TestAuthPolicy (61.85s) === RUN TestMTlsMigration mtls_migration_test.go:37: mtls_migration_test.go:37: STEP 1: Apply default SMCP and SMMR manifests mtls_migration_test.go:37: Wait for condition condition=Ready on smcp istio-system/basic... mtls_migration_test.go:37: SUCCESS: Condition condition=Ready met by smcp istio-system/basic mtls_migration_test.go:37: Wait for smmr/default to be ready in namespace istio-system mtls_migration_test.go:39: mtls_migration_test.go:39: STEP 2: Install httpbin and sleep in multiple namespaces mtls_migration_test.go:40: Install app "httpbin" in namespace "foo" mtls_migration_test.go:40: Install app "httpbin" in namespace "bar" mtls_migration_test.go:40: Install app "sleep" in namespace "foo" mtls_migration_test.go:40: Install app "sleep" in namespace "bar" mtls_migration_test.go:40: Install app "sleep" in namespace "legacy" mtls_migration_test.go:40: Wait for app foo/httpbin to be ready mtls_migration_test.go:40: Wait for app bar/httpbin to be ready mtls_migration_test.go:40: Wait for app foo/sleep to be ready mtls_migration_test.go:40: Wait for app bar/sleep to be ready mtls_migration_test.go:40: Wait for app legacy/sleep to be ready mtls_migration_test.go:50: mtls_migration_test.go:50: STEP 3: Check connectivity from namespaces foo, bar, and legacy to namespace foo and bar sleep.go:98: SUCCESS: Got expected "200" sleep.go:98: SUCCESS: Got expected "200" sleep.go:98: SUCCESS: Got expected "200" sleep.go:98: SUCCESS: Got expected "200" sleep.go:98: SUCCESS: Got expected "200" sleep.go:98: SUCCESS: Got expected "200" === RUN TestMTlsMigration/mTLS_enabled_in_foo mtls_migration_test.go:60: mtls_migration_test.go:60: STEP 1: Apply strict mTLS in namespace foo mtls_migration_test.go:63: mtls_migration_test.go:63: STEP 2: Check connectivity from namespaces foo, bar, and legacy to namespace foo and bar (expect failure only from legacy to foo) sleep.go:98: SUCCESS: Got expected "200" sleep.go:98: SUCCESS: Got expected "200" sleep.go:98: SUCCESS: Got expected "200" sleep.go:98: SUCCESS: Got expected "200" sleep.go:98: SUCCESS: Got expected "CURL_FAILED" sleep.go:98: SUCCESS: Got expected "200" subtest.go:25: subtest.go:32: Subtest completed in 2.75s (excluding cleanup) --- PASS: TestMTlsMigration/mTLS_enabled_in_foo (2.75s) === RUN TestMTlsMigration/mTLS_enabled_globally mtls_migration_test.go:79: mtls_migration_test.go:79: STEP 1: Apply strict mTLS for the entire mesh mtls_migration_test.go:85: mtls_migration_test.go:85: STEP 2: Check connectivity from namespaces foo, bar, and legacy to namespace foo and bar (expect failure from legacy) sleep.go:98: SUCCESS: Got expected "200" sleep.go:98: SUCCESS: Got expected "200" sleep.go:98: SUCCESS: Got expected "200" sleep.go:98: SUCCESS: Got expected "200" sleep.go:98: SUCCESS: Got expected "CURL_FAILED" sleep.go:98: SUCCESS: Got expected "CURL_FAILED" subtest.go:25: subtest.go:32: Subtest completed in 2.73s (excluding cleanup) mtls_migration_test.go:81: mtls_migration_test.go:81: Performing cleanup mtls_migration_test.go:82: Deleting resources from namespace istio-system mtls_migration_test.go:81: Cleanup completed in 0.13s --- PASS: TestMTlsMigration/mTLS_enabled_globally (2.86s) test.go:77: test.go:84: Test completed in 20.98s (excluding cleanup) mtls_migration_test.go:33: mtls_migration_test.go:33: Performing cleanup mtls_migration_test.go:34: Deleting namespaces: [foo bar legacy] mtls_migration_test.go:34: Creating namespaces: [foo bar legacy] mtls_migration_test.go:33: Cleanup completed in 19.98s --- PASS: TestMTlsMigration (40.96s) PASS ok github.com/maistra/maistra-test-tool/pkg/tests/tasks/security/authentication 103.182s test_helper_setup.go:64: Creating namespaces: [istio-system bookinfo foo bar legacy mesh-external] === RUN TestAuthorizationDenyAllow deny_test.go:35: This test validates authorization policies with a deny action deny_test.go:37: deny_test.go:37: STEP 1: Apply default SMCP and SMMR manifests deny_test.go:37: Wait for condition condition=Ready on smcp istio-system/basic... deny_test.go:37: SUCCESS: Condition condition=Ready met by smcp istio-system/basic deny_test.go:37: Wait for smmr/default to be ready in namespace istio-system deny_test.go:39: deny_test.go:39: STEP 2: Install httpbin and sleep deny_test.go:40: Install app "httpbin" in namespace "foo" deny_test.go:40: Install app "sleep" in namespace "foo" deny_test.go:40: Wait for app foo/httpbin to be ready deny_test.go:40: Wait for app foo/sleep to be ready deny_test.go:42: deny_test.go:42: STEP 3: Check if httpbin returns 200 OK when no authorization policies are in place sleep.go:98: SUCCESS: Got expected "200" === RUN TestAuthorizationDenyAllow/explicitly_deny_request deny_test.go:49: deny_test.go:49: STEP 1: Apply policy that denies all GET requests to httpbin deny_test.go:52: deny_test.go:52: STEP 2: Verify that GET request is denied sleep.go:98: SUCCESS: Got expected "403" deny_test.go:55: deny_test.go:55: STEP 3: Verify that POST request is allowed sleep.go:98: SUCCESS: Got expected "200" subtest.go:25: subtest.go:32: Subtest completed in 1.17s (excluding cleanup) deny_test.go:46: deny_test.go:46: Performing cleanup deny_test.go:47: Deleting resources from namespace foo deny_test.go:46: Cleanup completed in 0.13s --- PASS: TestAuthorizationDenyAllow/explicitly_deny_request (1.30s) === RUN TestAuthorizationDenyAllow/deny_request_header deny_test.go:63: deny_test.go:63: STEP 1: Apply policy that denies GET requests unless the HTTP header 'x-token: admin' is present deny_test.go:66: deny_test.go:66: STEP 2: Verify that GET request with HTTP header 'x-token: admin' is allowed sleep.go:98: SUCCESS: Got expected "200" deny_test.go:69: deny_test.go:69: STEP 3: Verify that GET request with HTTP header 'x-token: guest' is denied sleep.go:98: SUCCESS: Got expected "403" subtest.go:25: subtest.go:32: Subtest completed in 1.13s (excluding cleanup) deny_test.go:60: deny_test.go:60: Performing cleanup deny_test.go:61: Deleting resources from namespace foo deny_test.go:60: Cleanup completed in 0.14s --- PASS: TestAuthorizationDenyAllow/deny_request_header (1.27s) === RUN TestAuthorizationDenyAllow/allow_request_path deny_test.go:78: deny_test.go:78: STEP 1: Apply policy that denies GET requests unless the HTTP header 'x-token: admin' is present deny_test.go:81: deny_test.go:81: STEP 2: Apply policy that allows requests with the path '/ip' deny_test.go:84: deny_test.go:84: STEP 3: Verify that GET request with the HTTP header 'x-token: guest' at path '/ip' is denied sleep.go:98: SUCCESS: Got expected "403" deny_test.go:87: deny_test.go:87: STEP 4: Verify that GET request with HTTP header 'x-token: admin' at path '/ip' is allowed sleep.go:98: SUCCESS: Got expected "200" deny_test.go:90: deny_test.go:90: STEP 5: Verify that GET request with HTTP header 'x-token: admin' at path '/get' is denied sleep.go:98: SUCCESS: Got expected "403" subtest.go:25: subtest.go:32: Subtest completed in 1.83s (excluding cleanup) deny_test.go:74: deny_test.go:74: Performing cleanup deny_test.go:75: Deleting resources from namespace foo deny_test.go:76: Deleting resources from namespace foo deny_test.go:74: Cleanup completed in 0.27s --- PASS: TestAuthorizationDenyAllow/allow_request_path (2.10s) test.go:77: test.go:84: Test completed in 17.23s (excluding cleanup) deny_test.go:31: deny_test.go:31: Performing cleanup deny_test.go:32: Deleting namespaces: [foo] deny_test.go:32: Creating namespaces: [foo] deny_test.go:31: Cleanup completed in 19.08s --- PASS: TestAuthorizationDenyAllow (36.31s) === RUN TestEnvoyExtAuthzHttpExtensionProvider ext_auth_test.go:33: This test validates authorization policies with a JWT Token ext_auth_test.go:37: ext_auth_test.go:37: STEP 1: Apply default SMCP and SMMR manifests ext_auth_test.go:37: Wait for condition condition=Ready on smcp istio-system/basic... ext_auth_test.go:37: SUCCESS: Condition condition=Ready met by smcp istio-system/basic ext_auth_test.go:37: Wait for smmr/default to be ready in namespace istio-system ext_auth_test.go:39: ext_auth_test.go:39: STEP 2: Install httpbin and sleep ext_auth_test.go:40: Install app "httpbin" in namespace "foo" ext_auth_test.go:40: Install app "sleep" in namespace "foo" ext_auth_test.go:40: Wait for app foo/httpbin to be ready ext_auth_test.go:40: Wait for app foo/sleep to be ready ext_auth_test.go:45: ext_auth_test.go:45: STEP 3: Check if httpbin returns 200 OK when no authorization policies are in place sleep.go:98: SUCCESS: Got expected "200" ext_auth_test.go:48: ext_auth_test.go:48: STEP 4: Deploy the External Authorizer and Verify the sample external authorizer is up and running ext_auth_test.go:56: ext_auth_test.go:56: STEP 5: Set envoyExtAuthzHttp extension provider in SMCP ext_auth_test.go:121: ext_auth_test.go:121: STEP 6: Deploy the external authorization in the Authorization policy ext_auth_test.go:127: ext_auth_test.go:127: STEP 7: Verify a request to path /headers with header x-ext-authz: deny is denied by the sample ext_authz server: sleep.go:98: FAILURE: Expect "403", but got a different response; expected to find the string '403' in the output, but it wasn't found sleep.go:98: --- Attempt 1/60 failed. Retrying... sleep.go:98: SUCCESS: Got expected "403" sleep.go:98: --- Attempt 2/60 successful; total time: 1.83s ext_auth_test.go:130: ext_auth_test.go:130: STEP 8: Verify a request to path /headers with header x-ext-authz: allow is allowed by the sample ext_authz server sleep.go:98: SUCCESS: Got expected "200" ext_auth_test.go:133: ext_auth_test.go:133: STEP 9: Verify a request to path /ip is allowed and does not trigger the external authorization sleep.go:98: SUCCESS: Got expected "200" test.go:77: test.go:84: Test completed in 21.01s (excluding cleanup) ext_auth_test.go:122: ext_auth_test.go:122: Performing cleanup ext_auth_test.go:123: Deleting resources from namespace foo ext_auth_test.go:122: Cleanup completed in 0.14s ext_auth_test.go:115: ext_auth_test.go:115: Performing cleanup ext_auth_test.go:115: Cleanup completed in 0.20s ext_auth_test.go:50: ext_auth_test.go:50: Performing cleanup ext_auth_test.go:51: Deleting resources from namespace foo ext_auth_test.go:50: Cleanup completed in 0.19s ext_auth_test.go:41: ext_auth_test.go:41: Performing cleanup ext_auth_test.go:42: Deleting resources from namespace foo ext_auth_test.go:42: Deleting resources from namespace foo ext_auth_test.go:41: Cleanup completed in 0.63s --- PASS: TestEnvoyExtAuthzHttpExtensionProvider (22.16s) === RUN TestEnvoyExtAuthzGrpcExtensionProvider ext_auth_test.go:143: This test validates authorization policies with a JWT Token ext_auth_test.go:147: ext_auth_test.go:147: STEP 1: Apply default SMCP and SMMR manifests ext_auth_test.go:147: Wait for condition condition=Ready on smcp istio-system/basic... ext_auth_test.go:147: SUCCESS: Condition condition=Ready met by smcp istio-system/basic ext_auth_test.go:147: Wait for smmr/default to be ready in namespace istio-system ext_auth_test.go:149: ext_auth_test.go:149: STEP 2: Install httpbin and sleep ext_auth_test.go:150: Install app "httpbin" in namespace "foo" ext_auth_test.go:150: Install app "sleep" in namespace "foo" ext_auth_test.go:150: Wait for app foo/httpbin to be ready ext_auth_test.go:150: Wait for app foo/sleep to be ready ext_auth_test.go:155: ext_auth_test.go:155: STEP 3: Check if httpbin returns 200 OK when no authorization policies are in place sleep.go:98: SUCCESS: Got expected "200" ext_auth_test.go:158: ext_auth_test.go:158: STEP 4: Deploy the External Authorizer and Verify the sample external authorizer is up and running ext_auth_test.go:166: ext_auth_test.go:166: STEP 5: Set envoyExtAuthzgRPC extension provider in SMCP ext_auth_test.go:203: ext_auth_test.go:203: STEP 6: Deploy the external authorization in the Authorization policy ext_auth_test.go:209: ext_auth_test.go:209: STEP 7: Verify a request to path /headers with header x-ext-authz: deny is denied by the sample ext_authz server: sleep.go:98: SUCCESS: Got expected "403" ext_auth_test.go:212: ext_auth_test.go:212: STEP 8: Verify a request to path /headers with header x-ext-authz: allow is allowed by the sample ext_authz server sleep.go:98: SUCCESS: Got expected "200" ext_auth_test.go:215: ext_auth_test.go:215: STEP 9: Verify a request to path /ip is allowed and does not trigger the external authorization sleep.go:98: SUCCESS: Got expected "200" test.go:77: test.go:84: Test completed in 20.68s (excluding cleanup) ext_auth_test.go:204: ext_auth_test.go:204: Performing cleanup ext_auth_test.go:205: Deleting resources from namespace foo ext_auth_test.go:204: Cleanup completed in 0.13s ext_auth_test.go:197: ext_auth_test.go:197: Performing cleanup ext_auth_test.go:197: Cleanup completed in 0.17s ext_auth_test.go:160: ext_auth_test.go:160: Performing cleanup ext_auth_test.go:161: Deleting resources from namespace foo ext_auth_test.go:160: Cleanup completed in 0.19s ext_auth_test.go:151: ext_auth_test.go:151: Performing cleanup ext_auth_test.go:152: Deleting resources from namespace foo ext_auth_test.go:152: Deleting resources from namespace foo ext_auth_test.go:151: Cleanup completed in 0.57s --- PASS: TestEnvoyExtAuthzGrpcExtensionProvider (21.74s) === RUN TestAuthorizationHTTPTraffic http_test.go:42: This test validates authorization policies for HTTP traffic. http_test.go:43: Doc reference: https://istio.io/v1.14/docs/tasks/security/authorization/authz-http/ http_test.go:45: http_test.go:45: STEP 1: Apply default SMCP and SMMR manifests http_test.go:45: Wait for condition condition=Ready on smcp istio-system/basic... http_test.go:45: FAILURE: Command failed: oc wait -n istio-system smcp/basic --for condition=Ready --timeout 10s error: timed out waiting for the condition on servicemeshcontrolplanes/basic error: exit status 1 http_test.go:45: Wait for condition condition=Ready on smcp istio-system/basic... http_test.go:45: SUCCESS: Condition condition=Ready met by smcp istio-system/basic http_test.go:45: Wait for smmr/default to be ready in namespace istio-system http_test.go:47: http_test.go:47: STEP 2: Enable Service Mesh Control Plane mTLS http_test.go:53: http_test.go:53: STEP 3: Install bookinfo with mTLS http_test.go:54: Install app "bookinfo" in namespace "bookinfo" http_test.go:54: Create Bookinfo Gateway http_test.go:54: Create Bookinfo Destination Rules (all) http_test.go:54: Create Bookinfo Deployments http_test.go:54: Wait for app bookinfo/bookinfo to be ready http_test.go:55: Wait for condition condition=Ready on smcp istio-system/basic... http_test.go:55: SUCCESS: Condition condition=Ready met by smcp istio-system/basic === RUN TestAuthorizationHTTPTraffic/deny_all_http_traffic_to_bookinfo http_test.go:63: http_test.go:63: STEP 1: Apply policy that denies all HTTP requests to bookinfo workloads http_test.go:66: http_test.go:66: STEP 2: Verify that GET request is denied http_test.go:68: FAILURE: expected to find the string 'RBAC: access denied' in the response, but it wasn't found http_test.go:67: --- Attempt 1/60 failed. Retrying... http_test.go:68: SUCCESS: string 'RBAC: access denied' found in response http_test.go:67: --- Attempt 2/60 successful; total time: 1.52s subtest.go:25: subtest.go:32: Subtest completed in 1.82s (excluding cleanup) http_test.go:60: http_test.go:60: Performing cleanup http_test.go:61: Deleting resources from namespace bookinfo http_test.go:60: Cleanup completed in 0.13s --- PASS: TestAuthorizationHTTPTraffic/deny_all_http_traffic_to_bookinfo (1.95s) === RUN TestAuthorizationHTTPTraffic/only_allow_HTTP_GET_request_to_the_productpage_workload http_test.go:81: http_test.go:81: STEP 1: Apply policies that allow access with GET method to the productpage workload and deny requests to other workloads http_test.go:85: http_test.go:85: STEP 2: Verify that GET request to the productpage is allowed and fetching other services is denied http_test.go:87: FAILURE: expected to find the string 'Error fetching product details' in the response, but it wasn't found http_test.go:87: FAILURE: expected to find the string 'Error fetching product reviews' in the response, but it wasn't found http_test.go:86: --- Attempt 1/60 failed. Retrying... http_test.go:87: FAILURE: expected to find the string 'Error fetching product details' in the response, but it wasn't found http_test.go:87: SUCCESS: string 'Error fetching product reviews' found in response http_test.go:86: --- Attempt 2/60 failed. Retrying... http_test.go:87: SUCCESS: string 'Error fetching product details' found in response http_test.go:87: SUCCESS: string 'Error fetching product reviews' found in response http_test.go:86: --- Attempt 3/60 successful; total time: 2.11s subtest.go:25: subtest.go:32: Subtest completed in 2.76s (excluding cleanup) http_test.go:77: http_test.go:77: Performing cleanup http_test.go:78: Deleting resources from namespace bookinfo http_test.go:79: Deleting resources from namespace bookinfo http_test.go:77: Cleanup completed in 0.27s --- PASS: TestAuthorizationHTTPTraffic/only_allow_HTTP_GET_request_to_the_productpage_workload (3.03s) === RUN TestAuthorizationHTTPTraffic/allow_HTTP_GET_requests_to_all_bookinfo_workloads http_test.go:104: http_test.go:104: STEP 1: Apply policies that allow HTTP GET requests to all bookinfo workloads http_test.go:111: http_test.go:111: STEP 2: Verify that GET requests are allowed to all bookinfo workloads http_test.go:113: SUCCESS: string 'RBAC: access denied' not found in response http_test.go:113: SUCCESS: string 'Error fetching product details' not found in response http_test.go:113: SUCCESS: string 'Error fetching product reviews' not found in response http_test.go:113: SUCCESS: string 'Ratings service currently unavailable' not found in response subtest.go:25: subtest.go:32: Subtest completed in 1.99s (excluding cleanup) http_test.go:97: http_test.go:97: Performing cleanup http_test.go:98: Deleting resources from namespace bookinfo http_test.go:99: Deleting resources from namespace bookinfo http_test.go:100: Deleting resources from namespace bookinfo http_test.go:101: Deleting resources from namespace bookinfo http_test.go:102: Deleting resources from namespace bookinfo http_test.go:97: Cleanup completed in 0.68s --- PASS: TestAuthorizationHTTPTraffic/allow_HTTP_GET_requests_to_all_bookinfo_workloads (2.67s) test.go:77: test.go:84: Test completed in 29.95s (excluding cleanup) http_test.go:33: http_test.go:33: Performing cleanup http_test.go:38: Deleting namespaces: [bookinfo] http_test.go:38: Creating namespaces: [bookinfo] http_test.go:39: Wait for condition condition=Ready on smcp istio-system/basic... http_test.go:39: SUCCESS: Condition condition=Ready met by smcp istio-system/basic http_test.go:33: Cleanup completed in 17.16s --- PASS: TestAuthorizationHTTPTraffic (47.11s) === RUN TestAuthorizationJWT jwt_test.go:35: This test validates authorization policies with JWT Token jwt_test.go:37: jwt_test.go:37: STEP 1: Apply default SMCP and SMMR manifests jwt_test.go:37: Wait for condition condition=Ready on smcp istio-system/basic... jwt_test.go:37: SUCCESS: Condition condition=Ready met by smcp istio-system/basic jwt_test.go:37: Wait for smmr/default to be ready in namespace istio-system jwt_test.go:39: jwt_test.go:39: STEP 2: Install httpbin and sleep jwt_test.go:40: Install app "httpbin" in namespace "foo" jwt_test.go:40: Install app "sleep" in namespace "foo" jwt_test.go:40: Wait for app foo/httpbin to be ready jwt_test.go:40: Wait for app foo/sleep to be ready jwt_test.go:42: jwt_test.go:42: STEP 3: Check if httpbin returns 200 OK when no authorization policies are in place sleep.go:98: SUCCESS: Got expected "200" === RUN TestAuthorizationJWT/Allow_requests_with_valid_JWT_and_list-typed_claims jwt_test.go:59: jwt_test.go:59: STEP 1: Verify that a request with an invalid JWT is denied sleep.go:98: FAILURE: Expect "401", but got a different response; expected to find the string '401' in the output, but it wasn't found sleep.go:98: --- Attempt 1/60 failed. Retrying... sleep.go:98: SUCCESS: Got expected "401" sleep.go:98: --- Attempt 2/60 successful; total time: 1.82s jwt_test.go:62: jwt_test.go:62: STEP 2: Verify that a request without a JWT is allowed because there is no authorization policy sleep.go:98: SUCCESS: Got expected "200" subtest.go:25: subtest.go:32: Subtest completed in 2.23s (excluding cleanup) --- PASS: TestAuthorizationJWT/Allow_requests_with_valid_JWT_and_list-typed_claims (2.23s) === RUN TestAuthorizationJWT/Security_authorization_allow_JWT_requestPrincipal jwt_test.go:71: jwt_test.go:71: STEP 1: Verify that a request with a valid JWT is allowed sleep.go:98: SUCCESS: Got expected "200" jwt_test.go:74: jwt_test.go:74: STEP 2: Verify request without a JWT is denied sleep.go:98: FAILURE: Expect "403", but got a different response; expected to find the string '403' in the output, but it wasn't found sleep.go:98: --- Attempt 1/60 failed. Retrying... sleep.go:98: SUCCESS: Got expected "403" sleep.go:98: --- Attempt 2/60 successful; total time: 1.80s subtest.go:25: subtest.go:32: Subtest completed in 2.56s (excluding cleanup) jwt_test.go:67: jwt_test.go:67: Performing cleanup jwt_test.go:68: Deleting resources from namespace foo jwt_test.go:67: Cleanup completed in 0.15s --- PASS: TestAuthorizationJWT/Security_authorization_allow_JWT_requestPrincipal (2.71s) === RUN TestAuthorizationJWT/Security_authorization_allow_JWT_claims_group jwt_test.go:83: jwt_test.go:83: STEP 1: Verify that a request with the JWT that includes group1 in the groups claim is allowed sleep.go:98: SUCCESS: Got expected "200" jwt_test.go:86: jwt_test.go:86: STEP 2: Verify that a request with a JWT, which does not have the groups claim is rejected sleep.go:98: FAILURE: Expect "403", but got a different response; expected to find the string '403' in the output, but it wasn't found sleep.go:98: --- Attempt 1/60 failed. Retrying... sleep.go:98: SUCCESS: Got expected "403" sleep.go:98: --- Attempt 2/60 successful; total time: 1.82s subtest.go:25: subtest.go:32: Subtest completed in 2.52s (excluding cleanup) jwt_test.go:79: jwt_test.go:79: Performing cleanup jwt_test.go:80: Deleting resources from namespace foo jwt_test.go:79: Cleanup completed in 0.13s --- PASS: TestAuthorizationJWT/Security_authorization_allow_JWT_claims_group (2.65s) test.go:77: test.go:84: Test completed in 20.62s (excluding cleanup) jwt_test.go:53: jwt_test.go:53: Performing cleanup jwt_test.go:54: Deleting resources from namespace foo jwt_test.go:53: Cleanup completed in 0.15s jwt_test.go:31: jwt_test.go:31: Performing cleanup jwt_test.go:32: Deleting namespaces: [foo] jwt_test.go:32: Creating namespaces: [foo] jwt_test.go:31: Cleanup completed in 19.89s --- PASS: TestAuthorizationJWT (40.66s) === RUN TestAuthorizationTCPTraffic tcp_test.go:36: This test validates authorization policies for TCP traffic. tcp_test.go:37: Doc reference: https://istio.io/latest/docs/tasks/security/authorization/authz-tcp/ tcp_test.go:39: tcp_test.go:39: STEP 1: Apply default SMCP and SMMR manifests tcp_test.go:39: Wait for condition condition=Ready on smcp istio-system/basic... tcp_test.go:39: SUCCESS: Condition condition=Ready met by smcp istio-system/basic tcp_test.go:39: Wait for smmr/default to be ready in namespace istio-system tcp_test.go:41: tcp_test.go:41: STEP 2: Install sleep and echo tcp_test.go:42: Install app "sleep" in namespace "foo" tcp_test.go:42: Install app "echo" in namespace "foo" tcp_test.go:42: Wait for app foo/sleep to be ready tcp_test.go:42: Wait for app foo/echo to be ready tcp_test.go:44: tcp_test.go:44: STEP 3: Verify sleep to echo TCP connections tcp_test.go:87: SUCCESS: Got expected hello message on port 9000 tcp_test.go:87: SUCCESS: Got expected hello message on port 9001 === RUN TestAuthorizationTCPTraffic/TCP_invalid_policy tcp_test.go:52: tcp_test.go:52: STEP 1: Apply an invalid policy to allow requests to port 9000 and add an HTTP GET field tcp_test.go:55: tcp_test.go:55: STEP 2: Check whether the requests to port 9000 and 9001 are denied tcp_test.go:98: SUCCESS: Got expected connection rejected on port 9000 tcp_test.go:98: SUCCESS: Got expected connection rejected on port 9001 subtest.go:25: subtest.go:32: Subtest completed in 1.14s (excluding cleanup) tcp_test.go:49: tcp_test.go:49: Performing cleanup tcp_test.go:50: Deleting resources from namespace foo tcp_test.go:49: Cleanup completed in 0.14s --- PASS: TestAuthorizationTCPTraffic/TCP_invalid_policy (1.28s) === RUN TestAuthorizationTCPTraffic/TCP_deny_policy tcp_test.go:64: tcp_test.go:64: STEP 1: Apply a policy to deny tcp requests to port 9000 tcp_test.go:67: tcp_test.go:67: STEP 2: Check whether the request to port 9000 is denied and request to port 9001 is accepted tcp_test.go:98: SUCCESS: Got expected connection rejected on port 9000 tcp_test.go:87: SUCCESS: Got expected hello message on port 9001 subtest.go:25: subtest.go:32: Subtest completed in 1.14s (excluding cleanup) tcp_test.go:61: tcp_test.go:61: Performing cleanup tcp_test.go:62: Deleting resources from namespace foo tcp_test.go:61: Cleanup completed in 0.14s --- PASS: TestAuthorizationTCPTraffic/TCP_deny_policy (1.28s) === RUN TestAuthorizationTCPTraffic/TCP_ALLOW_policy tcp_test.go:76: tcp_test.go:76: STEP 1: Apply a policy to allow tcp requests to port 9000 and 9001 tcp_test.go:79: tcp_test.go:79: STEP 2: Check whether the requests to port 9000 and 9001 are accepted tcp_test.go:87: SUCCESS: Got expected hello message on port 9000 tcp_test.go:87: SUCCESS: Got expected hello message on port 9001 subtest.go:25: subtest.go:32: Subtest completed in 1.14s (excluding cleanup) tcp_test.go:73: tcp_test.go:73: Performing cleanup tcp_test.go:74: Deleting resources from namespace foo tcp_test.go:73: Cleanup completed in 0.13s --- PASS: TestAuthorizationTCPTraffic/TCP_ALLOW_policy (1.28s) test.go:77: test.go:84: Test completed in 17.69s (excluding cleanup) tcp_test.go:32: tcp_test.go:32: Performing cleanup tcp_test.go:33: Deleting namespaces: [foo] tcp_test.go:33: Creating namespaces: [foo] tcp_test.go:32: Cleanup completed in 13.00s --- PASS: TestAuthorizationTCPTraffic (30.69s) === RUN TestTrustDomainMigration trust_domain_test.go:35: This test verifies trust domain migration trust_domain_test.go:36: Doc reference: https://istio.io/latest/docs/tasks/security/authorization/authz-td-migration/ trust_domain_test.go:48: trust_domain_test.go:48: STEP 1: Apply default SMCP and SMMR manifests trust_domain_test.go:48: Wait for condition condition=Ready on smcp istio-system/basic... trust_domain_test.go:48: SUCCESS: Condition condition=Ready met by smcp istio-system/basic trust_domain_test.go:48: Wait for smmr/default to be ready in namespace istio-system trust_domain_test.go:50: trust_domain_test.go:50: STEP 2: Apply old-td trust domain trust_domain_test.go:91: Configure spec.security.trust.domain to "old-td" and alias "" trust_domain_test.go:107: Wait for condition condition=Ready on smcp istio-system/basic... trust_domain_test.go:107: FAILURE: Command failed: oc wait -n istio-system smcp/basic --for condition=Ready --timeout 10s error: timed out waiting for the condition on servicemeshcontrolplanes/basic error: exit status 1 trust_domain_test.go:107: Wait for condition condition=Ready on smcp istio-system/basic... trust_domain_test.go:107: SUCCESS: Condition condition=Ready met by smcp istio-system/basic trust_domain_test.go:53: trust_domain_test.go:53: STEP 3: Install httpbin and sleep in multiple namespaces trust_domain_test.go:54: Install app "httpbin" in namespace "foo" trust_domain_test.go:54: Install app "sleep" in namespace "foo" trust_domain_test.go:54: Install app "sleep" in namespace "bar" trust_domain_test.go:54: Wait for app foo/httpbin to be ready trust_domain_test.go:54: Wait for app foo/sleep to be ready trust_domain_test.go:54: Wait for app bar/sleep to be ready trust_domain_test.go:59: trust_domain_test.go:59: STEP 4: Apply trust domain policy to foo namespace === RUN TestTrustDomainMigration/Case_1:_Verifying_policy_works trust_domain_test.go:63: trust_domain_test.go:63: STEP 1: Check whether requests to foo namespace return 403 to foo namespace and 200 to bar namespace sleep.go:98: SUCCESS: Got expected "403" sleep.go:98: SUCCESS: Got expected "200" subtest.go:25: subtest.go:32: Subtest completed in 0.84s (excluding cleanup) --- PASS: TestTrustDomainMigration/Case_1:_Verifying_policy_works (0.84s) === RUN TestTrustDomainMigration/Case_2:_Migrate_trust_domain_without_trust_domain_aliases trust_domain_test.go:69: trust_domain_test.go:69: STEP 1: Apply new-td trust domain trust_domain_test.go:91: Configure spec.security.trust.domain to "new-td" and alias "" trust_domain_test.go:107: Wait for condition condition=Ready on smcp istio-system/basic... trust_domain_test.go:107: SUCCESS: Condition condition=Ready met by smcp istio-system/basic trust_domain_test.go:73: trust_domain_test.go:73: STEP 2: Check whether requests to foo namespace return 403 to foo and bar namespaces sleep.go:98: SUCCESS: Got expected "403" sleep.go:98: SUCCESS: Got expected "403" subtest.go:25: subtest.go:32: Subtest completed in 18.50s (excluding cleanup) --- PASS: TestTrustDomainMigration/Case_2:_Migrate_trust_domain_without_trust_domain_aliases (18.50s) === RUN TestTrustDomainMigration/Case_3:_Migrate_trust_domain_with_trust_domain_aliases trust_domain_test.go:79: trust_domain_test.go:79: STEP 1: Apply new-td trust domain with alias old-td trust_domain_test.go:91: Configure spec.security.trust.domain to "new-td" and alias "old-td" trust_domain_test.go:107: Wait for condition condition=Ready on smcp istio-system/basic... trust_domain_test.go:107: SUCCESS: Condition condition=Ready met by smcp istio-system/basic trust_domain_test.go:83: trust_domain_test.go:83: STEP 2: Check whether requests to foo namespace return 403 to foo and 200 to bar namespaces sleep.go:98: SUCCESS: Got expected "403" sleep.go:98: SUCCESS: Got expected "200" subtest.go:25: subtest.go:32: Subtest completed in 25.04s (excluding cleanup) --- PASS: TestTrustDomainMigration/Case_3:_Migrate_trust_domain_with_trust_domain_aliases (25.04s) test.go:77: test.go:84: Test completed in 68.06s (excluding cleanup) trust_domain_test.go:38: trust_domain_test.go:38: Performing cleanup trust_domain_test.go:39: Deleting resources from namespace foo trust_domain_test.go:42: Deleting resources from namespace foo trust_domain_test.go:42: Deleting resources from namespace foo trust_domain_test.go:42: Deleting resources from namespace bar trust_domain_test.go:38: Cleanup completed in 1.25s --- PASS: TestTrustDomainMigration (69.31s) PASS ok github.com/maistra/maistra-test-tool/pkg/tests/tasks/security/authorization 268.366s test_helper_setup.go:64: Creating namespaces: [istio-system bookinfo foo bar legacy mesh-external] === RUN TestAlpnFilterDisabledForNonIstioMtls test.go:114: This test is being skipped because it is not part of the "interop" test group --- SKIP: TestAlpnFilterDisabledForNonIstioMtls (0.00s) === RUN TestExternalCertificate external_ca_test.go:48: external_ca_test.go:48: STEP 1: Uninstall existing SMCP external_ca_test.go:49: Deleting namespaces: [istio-system] external_ca_test.go:49: Creating namespaces: [istio-system] external_ca_test.go:51: external_ca_test.go:51: STEP 2: Create cacerts secret external_ca_test.go:60: external_ca_test.go:60: STEP 3: Apply SMCP to configure certificate authority to use cacerts secret external_ca_test.go:62: Wait for condition condition=Ready on smcp istio-system/basic... external_ca_test.go:62: SUCCESS: Condition condition=Ready met by smcp istio-system/basic external_ca_test.go:64: external_ca_test.go:64: STEP 4: Install bookinfo external_ca_test.go:65: Install app "bookinfo" in namespace "bookinfo" external_ca_test.go:65: Create Bookinfo Gateway external_ca_test.go:65: Create Bookinfo Destination Rules (all) external_ca_test.go:65: Create Bookinfo Deployments external_ca_test.go:65: Wait for app bookinfo/bookinfo to be ready external_ca_test.go:67: external_ca_test.go:67: STEP 5: Wait for response from productpage app external_ca_test.go:69: SUCCESS: received expected status code 200 external_ca_test.go:74: external_ca_test.go:74: STEP 6: Retrieve certificates from bookinfo details service external_ca_test.go:86: SUCCESS: The cert-chain certificates are present in the certificates sent by the tested service external_ca_test.go:90: SUCCESS: Certificate trust chain successfully verified test.go:77: test.go:84: Test completed in 97.09s (excluding cleanup) external_ca_test.go:37: external_ca_test.go:37: Performing cleanup external_ca_test.go:38: Recreate namespace bookinfo external_ca_test.go:39: Deleting namespaces: [bookinfo istio-system] external_ca_test.go:39: Creating namespaces: [bookinfo istio-system] external_ca_test.go:37: Cleanup completed in 15.35s --- PASS: TestExternalCertificate (112.44s) PASS ok github.com/maistra/maistra-test-tool/pkg/tests/tasks/security/certificate 112.801s test_helper_setup.go:64: Creating namespaces: [istio-system bookinfo foo bar legacy mesh-external] === RUN TestIstioCsr test.go:114: This test is being skipped because it is not part of the "interop" test group --- SKIP: TestIstioCsr (0.00s) === RUN TestPluginCaCert test.go:114: This test is being skipped because it is not part of the "interop" test group --- SKIP: TestPluginCaCert (0.00s) PASS ok github.com/maistra/maistra-test-tool/pkg/tests/tasks/security/certmanager 0.351s test_helper_setup.go:64: Creating namespaces: [istio-system bookinfo foo bar legacy mesh-external] === RUN TestCircuitBreaking circuit_breaking_test.go:37: This test checks whether the circuit breaker functions correctly. Check documentation: https://istio.io/latest/docs/tasks/traffic-management/circuit-breaking/ circuit_breaking_test.go:44: circuit_breaking_test.go:44: STEP 1: Apply default SMCP and SMMR manifests circuit_breaking_test.go:44: Wait for condition condition=Ready on smcp istio-system/basic... circuit_breaking_test.go:44: FAILURE: Command failed: oc wait -n istio-system smcp/basic --for condition=Ready --timeout 10s error: timed out waiting for the condition on servicemeshcontrolplanes/basic error: exit status 1 circuit_breaking_test.go:44: Wait for condition condition=Ready on smcp istio-system/basic... circuit_breaking_test.go:44: FAILURE: Command failed: oc wait -n istio-system smcp/basic --for condition=Ready --timeout 10s error: timed out waiting for the condition on servicemeshcontrolplanes/basic error: exit status 1 circuit_breaking_test.go:44: Wait for condition condition=Ready on smcp istio-system/basic... circuit_breaking_test.go:44: SUCCESS: Condition condition=Ready met by smcp istio-system/basic circuit_breaking_test.go:44: Wait for smmr/default to be ready in namespace istio-system circuit_breaking_test.go:46: circuit_breaking_test.go:46: STEP 2: Install httpbin and fortio circuit_breaking_test.go:47: Install app "httpbin" in namespace "bookinfo" circuit_breaking_test.go:47: Install app "fortio" in namespace "bookinfo" circuit_breaking_test.go:47: Wait for app bookinfo/httpbin to be ready circuit_breaking_test.go:47: Wait for app bookinfo/fortio to be ready circuit_breaking_test.go:49: circuit_breaking_test.go:49: STEP 3: Configure circuit breaker destination rule circuit_breaking_test.go:52: circuit_breaking_test.go:52: STEP 4: Verify connection with curl: expect 200 OK circuit_breaking_test.go:55: SUCCESS: Got expected 200 OK response from httpbin circuit_breaking_test.go:66: circuit_breaking_test.go:66: STEP 5: Trip the circuit breaker by sending 50 requests to httpbin with 2 connections circuit_breaking_test.go:67: We expect request with response code 503 circuit_breaking_test.go:79: Success rate 200: 28% circuit_breaking_test.go:80: Success rate 503: 72% circuit_breaking_test.go:85: circuit_breaking_test.go:85: STEP 6: Validate the circuit breaker is tripped by checking the istio-proxy log circuit_breaking_test.go:86: Verify istio-proxy pilot-agent stats, expected upstream_rq_pending_overflow value to be more than zero circuit_breaking_test.go:122: SUCCESS: Found Upstream_rq_pending_overflow : 36 test.go:77: test.go:84: Test completed in 29.70s (excluding cleanup) circuit_breaking_test.go:40: circuit_breaking_test.go:40: Performing cleanup circuit_breaking_test.go:41: Deleting namespaces: [bookinfo] circuit_breaking_test.go:41: Creating namespaces: [bookinfo] circuit_breaking_test.go:40: Cleanup completed in 19.28s --- PASS: TestCircuitBreaking (48.98s) === RUN TestFaultInjection fault_injection_test.go:50: fault_injection_test.go:50: STEP 1: Apply default SMCP and SMMR manifests fault_injection_test.go:50: Wait for condition condition=Ready on smcp istio-system/basic... fault_injection_test.go:50: SUCCESS: Condition condition=Ready met by smcp istio-system/basic fault_injection_test.go:50: Wait for smmr/default to be ready in namespace istio-system fault_injection_test.go:52: fault_injection_test.go:52: STEP 2: Install Bookinfo fault_injection_test.go:53: Install app "bookinfo" in namespace "bookinfo" fault_injection_test.go:53: Create Bookinfo Gateway fault_injection_test.go:53: Create Bookinfo Destination Rules (all) fault_injection_test.go:53: Create Bookinfo Deployments fault_injection_test.go:53: Wait for app bookinfo/bookinfo to be ready fault_injection_test.go:55: Logging into bookinfo as "jason" === RUN TestFaultInjection/ratings-fault-delay fault_injection_test.go:63: fault_injection_test.go:63: STEP 1: check if productpage shows 'error fetching product reviews' due to delay injection fault_injection_test.go:65: FAILURE: expected request duration to be between 4s and 14s, but was 186ms fault_injection_test.go:65: SUCCESS: productpage shows 'error fetching product reviews', which is expected fault_injection_test.go:64: --- Attempt 1/60 failed. Retrying... fault_injection_test.go:65: SUCCESS: request completed in 6.045s, which is within the expected range 4s - 14s fault_injection_test.go:65: SUCCESS: productpage shows 'error fetching product reviews', which is expected fault_injection_test.go:64: --- Attempt 2/60 successful; total time: 7.49s subtest.go:25: subtest.go:32: Subtest completed in 7.81s (excluding cleanup) --- PASS: TestFaultInjection/ratings-fault-delay (7.81s) === RUN TestFaultInjection/ratings-fault-abort fault_injection_test.go:82: fault_injection_test.go:82: STEP 1: check if productpage shows ratings service as unavailable due to abort injection fault_injection_test.go:84: SUCCESS: productpage shows 'ratings service is currently unavailable' as expected subtest.go:25: subtest.go:32: Subtest completed in 0.63s (excluding cleanup) --- PASS: TestFaultInjection/ratings-fault-abort (0.63s) test.go:77: test.go:84: Test completed in 23.23s (excluding cleanup) fault_injection_test.go:45: fault_injection_test.go:45: Performing cleanup fault_injection_test.go:46: Deleting namespaces: [bookinfo] fault_injection_test.go:46: Creating namespaces: [bookinfo] fault_injection_test.go:45: Cleanup completed in 13.92s --- PASS: TestFaultInjection (37.16s) === RUN TestRequestRouting request_routing_test.go:41: request_routing_test.go:41: STEP 1: Apply default SMCP and SMMR manifests request_routing_test.go:41: Wait for condition condition=Ready on smcp istio-system/basic... request_routing_test.go:41: SUCCESS: Condition condition=Ready met by smcp istio-system/basic request_routing_test.go:41: Wait for smmr/default to be ready in namespace istio-system request_routing_test.go:43: request_routing_test.go:43: STEP 2: Install Bookinfo request_routing_test.go:44: Install app "bookinfo" in namespace "bookinfo" request_routing_test.go:44: Create Bookinfo Gateway request_routing_test.go:44: Create Bookinfo Destination Rules (all) request_routing_test.go:44: Create Bookinfo Deployments request_routing_test.go:44: Wait for app bookinfo/bookinfo to be ready request_routing_test.go:47: Logging into bookinfo as "jason" === RUN TestRequestRouting/not-logged-in
Summary: Wikipedia Summary: The Comedy of Errors is one of William Shakespeare's early plays. It is his shortest and one of his most farcical comedies, with a major part of the humour coming from slapstick and mistaken identity, in addition to puns and word play.
An extremely entertaining play by Shakespeare. The slapstick humour is refreshing!
Reviewer1
Absolutely fun and entertaining. The play lacks thematic depth when compared to other plays by Shakespeare.
Reviewer2
Summary: Wikipedia Summary: The Comedy of Errors is one of William Shakespeare's early plays. It is his shortest and one of his most farcical comedies, with a major part of the humour coming from slapstick and mistaken identity, in addition to puns and word play.
An extremely entertaining play by Shakespeare. The slapstick humour is refreshing!
Reviewer1
Absolutely fun and entertaining. The play lacks thematic depth when compared to other plays by Shakespeare.
Reviewer2
Summary: Wikipedia Summary: The Comedy of Errors is one of William Shakespeare's early plays. It is his shortest and one of his most farcical comedies, with a major part of the humour coming from slapstick and mistaken identity, in addition to puns and word play.
An extremely entertaining play by Shakespeare. The slapstick humour is refreshing!
Reviewer1
Absolutely fun and entertaining. The play lacks thematic depth when compared to other plays by Shakespeare.
Reviewer2