STEP-RUN-KUTTL-E2E-TESTS Logging in as kubeadmin user WARNING: Using insecure TLS client config. Setting this option is not supported! Login successful. You have access to 73 projects, the list has been suppressed. You can list all projects with 'oc projects' Using project "default". Welcome! See 'oc help' to get started. make: Entering directory '/kuttl-e2e/gitops-operator' Running GitOps Operator E2E tests... . ./test.sh all =========================== ==== RUNNING ALL TESTS ==== =========================== Running parallel test suite 2024/05/27 16:48:18 kutt-test config testdirs is overridden with args: [ /kuttl-e2e/gitops-operator/tests/parallel ] === RUN kuttl harness.go:462: starting setup harness.go:252: running tests using configured kubeconfig. harness.go:275: Successful connection to cluster at: https://api.psi-as1-414.ocp-gitops-qe.com:6443 harness.go:360: running tests harness.go:73: going to run test suite with timeout of 720 seconds for each step harness.go:372: testsuite: /kuttl-e2e/gitops-operator/tests/parallel has 78 tests === RUN kuttl/harness === RUN kuttl/harness/1-001_alpha_to_beta_dex_conversion === PAUSE kuttl/harness/1-001_alpha_to_beta_dex_conversion === RUN kuttl/harness/1-002_alpha_to_beta_keycloak_conversion === PAUSE kuttl/harness/1-002_alpha_to_beta_keycloak_conversion === RUN kuttl/harness/1-003_alpha_to_beta_sso_conflict_conversion === PAUSE kuttl/harness/1-003_alpha_to_beta_sso_conflict_conversion === RUN kuttl/harness/1-003_validate_console_link === PAUSE kuttl/harness/1-003_validate_console_link === RUN kuttl/harness/1-004_beta_to_alpha_conversion === PAUSE kuttl/harness/1-004_beta_to_alpha_conversion === RUN kuttl/harness/1-007_validate_namespace_scoped_install === PAUSE kuttl/harness/1-007_validate_namespace_scoped_install === RUN kuttl/harness/1-008_validate-custom-argocd-namespace === PAUSE kuttl/harness/1-008_validate-custom-argocd-namespace === RUN kuttl/harness/1-009_validate-manage-other-namespace === PAUSE kuttl/harness/1-009_validate-manage-other-namespace === RUN kuttl/harness/1-012_validate-managed-by-chain === PAUSE kuttl/harness/1-012_validate-managed-by-chain === RUN kuttl/harness/1-019_validate_volume_mounts === PAUSE kuttl/harness/1-019_validate_volume_mounts === RUN kuttl/harness/1-021_validate_rolebindings === PAUSE kuttl/harness/1-021_validate_rolebindings === RUN kuttl/harness/1-023_validate_repo_server_tls === PAUSE kuttl/harness/1-023_validate_repo_server_tls === RUN kuttl/harness/1-025-validate-managed-by-change === PAUSE kuttl/harness/1-025-validate-managed-by-change === RUN kuttl/harness/1-029_validate_tls_secret_no_scale === PAUSE kuttl/harness/1-029_validate_tls_secret_no_scale === RUN kuttl/harness/1-030_validate_reencrypt === PAUSE kuttl/harness/1-030_validate_reencrypt === RUN kuttl/harness/1-032_validate_dynamic_scaling === PAUSE kuttl/harness/1-032_validate_dynamic_scaling === RUN kuttl/harness/1-032_validate_resource_inclusions === PAUSE kuttl/harness/1-032_validate_resource_inclusions === RUN kuttl/harness/1-033_validate_applicationset_tls_scm_volume_mount === PAUSE kuttl/harness/1-033_validate_applicationset_tls_scm_volume_mount === RUN kuttl/harness/1-033_validate_resource_exclusions === PAUSE kuttl/harness/1-033_validate_resource_exclusions === RUN kuttl/harness/1-034_validate_webhook_notifications === PAUSE kuttl/harness/1-034_validate_webhook_notifications === RUN kuttl/harness/1-036_validate_keycloak_resource_reqs === PAUSE kuttl/harness/1-036_validate_keycloak_resource_reqs === RUN kuttl/harness/1-037_validate_argocd_setting_replicas === PAUSE kuttl/harness/1-037_validate_argocd_setting_replicas === RUN kuttl/harness/1-038_validate_productized_images === PAUSE kuttl/harness/1-038_validate_productized_images === RUN kuttl/harness/1-039_validate_fix_argocd-tls-certs-cm === PAUSE kuttl/harness/1-039_validate_fix_argocd-tls-certs-cm === RUN kuttl/harness/1-043_validate_log_level_format === PAUSE kuttl/harness/1-043_validate_log_level_format === RUN kuttl/harness/1-044_validate_resource_limit_changes === PAUSE kuttl/harness/1-044_validate_resource_limit_changes === RUN kuttl/harness/1-045_validate_repo_exec_timeout === PAUSE kuttl/harness/1-045_validate_repo_exec_timeout === RUN kuttl/harness/1-047_validate_custom_env === PAUSE kuttl/harness/1-047_validate_custom_env === RUN kuttl/harness/1-048_validate_controller_sharding === PAUSE kuttl/harness/1-048_validate_controller_sharding === RUN kuttl/harness/1-049_validate_parallelism_limit === PAUSE kuttl/harness/1-049_validate_parallelism_limit === RUN kuttl/harness/1-050_validate_sso === PAUSE kuttl/harness/1-050_validate_sso === RUN kuttl/harness/1-051-validate_csv_permissions === PAUSE kuttl/harness/1-051-validate_csv_permissions === RUN kuttl/harness/1-052_validate_rolebinding_number === PAUSE kuttl/harness/1-052_validate_rolebinding_number === RUN kuttl/harness/1-053_validate_cluster_admin_rbac === PAUSE kuttl/harness/1-053_validate_cluster_admin_rbac === RUN kuttl/harness/1-054_validate_deploymentconfig === PAUSE kuttl/harness/1-054_validate_deploymentconfig === RUN kuttl/harness/1-055_drop_resource_customizations === PAUSE kuttl/harness/1-055_drop_resource_customizations === RUN kuttl/harness/1-055_validate_notification_controller === PAUSE kuttl/harness/1-055_validate_notification_controller === RUN kuttl/harness/1-057_validate_notifications === PAUSE kuttl/harness/1-057_validate_notifications === RUN kuttl/harness/1-058_validate_prometheus_rule === PAUSE kuttl/harness/1-058_validate_prometheus_rule === RUN kuttl/harness/1-061_validate_resource_tracking_method === PAUSE kuttl/harness/1-061_validate_resource_tracking_method === RUN kuttl/harness/1-062_validate_extra_config === PAUSE kuttl/harness/1-062_validate_extra_config === RUN kuttl/harness/1-063_validate_dex_liveness_probe === PAUSE kuttl/harness/1-063_validate_dex_liveness_probe === RUN kuttl/harness/1-063_validate_statefulset_restart === PAUSE kuttl/harness/1-063_validate_statefulset_restart === RUN kuttl/harness/1-064_validate_security_contexts === PAUSE kuttl/harness/1-064_validate_security_contexts === RUN kuttl/harness/1-065_validate_redis_ha_anti_affinity === PAUSE kuttl/harness/1-065_validate_redis_ha_anti_affinity === RUN kuttl/harness/1-066_validate_redis_secure_comm_no_autotls_no_ha === PAUSE kuttl/harness/1-066_validate_redis_secure_comm_no_autotls_no_ha === RUN kuttl/harness/1-067_validate_redis_secure_comm_no_autotls_ha === PAUSE kuttl/harness/1-067_validate_redis_secure_comm_no_autotls_ha === RUN kuttl/harness/1-068_validate_redis_secure_comm_autotls_no_ha === PAUSE kuttl/harness/1-068_validate_redis_secure_comm_autotls_no_ha === RUN kuttl/harness/1-069_validate_redis_secure_comm_autotls_ha === PAUSE kuttl/harness/1-069_validate_redis_secure_comm_autotls_ha === RUN kuttl/harness/1-070_validate_config_management_plugin === PAUSE kuttl/harness/1-070_validate_config_management_plugin === RUN kuttl/harness/1-071_validate_SCC_HA === PAUSE kuttl/harness/1-071_validate_SCC_HA === RUN kuttl/harness/1-072_validate_liveness_probe_removed === PAUSE kuttl/harness/1-072_validate_liveness_probe_removed === RUN kuttl/harness/1-073_validate_rhsso === PAUSE kuttl/harness/1-073_validate_rhsso === RUN kuttl/harness/1-074_validate_terminating_namespace_block === PAUSE kuttl/harness/1-074_validate_terminating_namespace_block === RUN kuttl/harness/1-075_validate_dex_anyuid === PAUSE kuttl/harness/1-075_validate_dex_anyuid === RUN kuttl/harness/1-077_validate_disable_dex_removed === PAUSE kuttl/harness/1-077_validate_disable_dex_removed === RUN kuttl/harness/1-079_validate_vars_for_notificaitons === PAUSE kuttl/harness/1-079_validate_vars_for_notificaitons === RUN kuttl/harness/1-080_validate_regex_support_argocd_rbac === PAUSE kuttl/harness/1-080_validate_regex_support_argocd_rbac === RUN kuttl/harness/1-081_validate_applicationset_deployment === PAUSE kuttl/harness/1-081_validate_applicationset_deployment === RUN kuttl/harness/1-082_validate_node_placement === PAUSE kuttl/harness/1-082_validate_node_placement === RUN kuttl/harness/1-083_validate_kustomize_namereference === PAUSE kuttl/harness/1-083_validate_kustomize_namereference === RUN kuttl/harness/1-083_validate_resource_customization_subkeys === PAUSE kuttl/harness/1-083_validate_resource_customization_subkeys === RUN kuttl/harness/1-084_validate_status_host_ingress === PAUSE kuttl/harness/1-084_validate_status_host_ingress === RUN kuttl/harness/1-086_validate_applicationset_extra_command_args === PAUSE kuttl/harness/1-086_validate_applicationset_extra_command_args === RUN kuttl/harness/1-087_validate_repo_server_settings === PAUSE kuttl/harness/1-087_validate_repo_server_settings === RUN kuttl/harness/1-088_validate_applicationset_add_env_vars === PAUSE kuttl/harness/1-088_validate_applicationset_add_env_vars === RUN kuttl/harness/1-089_validate_extra_repo_commands_args === PAUSE kuttl/harness/1-089_validate_extra_repo_commands_args === RUN kuttl/harness/1-090_validate_permissions === PAUSE kuttl/harness/1-090_validate_permissions === RUN kuttl/harness/1-091_argocd_app_validate-applicationset-status === PAUSE kuttl/harness/1-091_argocd_app_validate-applicationset-status === RUN kuttl/harness/1-092_validate_workload_status_monitoring_alert === PAUSE kuttl/harness/1-092_validate_workload_status_monitoring_alert === RUN kuttl/harness/1-095_validate_dex_clientsecret === PAUSE kuttl/harness/1-095_validate_dex_clientsecret === RUN kuttl/harness/1-096-validate_home_env_argocd_controller === PAUSE kuttl/harness/1-096-validate_home_env_argocd_controller === RUN kuttl/harness/1-098_validate_dex_clientsecret_deprecated === PAUSE kuttl/harness/1-098_validate_dex_clientsecret_deprecated === RUN kuttl/harness/1-099_validate_server_autoscale === PAUSE kuttl/harness/1-099_validate_server_autoscale === RUN kuttl/harness/1-100_validate_rollouts_resources_creation === PAUSE kuttl/harness/1-100_validate_rollouts_resources_creation === RUN kuttl/harness/1-101_validate_rollout_policyrules === PAUSE kuttl/harness/1-101_validate_rollout_policyrules === RUN kuttl/harness/1-102_validate_handle_terminating_namespaces === PAUSE kuttl/harness/1-102_validate_handle_terminating_namespaces === RUN kuttl/harness/1-103_argocd_alpha_to_beta_conversion === PAUSE kuttl/harness/1-103_argocd_alpha_to_beta_conversion === CONT kuttl/harness/1-001_alpha_to_beta_dex_conversion === CONT kuttl/harness/1-065_validate_redis_ha_anti_affinity === CONT kuttl/harness/1-038_validate_productized_images === CONT kuttl/harness/1-037_validate_argocd_setting_replicas === CONT kuttl/harness/1-023_validate_repo_server_tls === CONT kuttl/harness/1-065_validate_redis_ha_anti_affinity logger.go:42: 16:48:18 | 1-065_validate_redis_ha_anti_affinity | Creating namespace: kuttl-test-communal-beetle === CONT kuttl/harness/1-038_validate_productized_images logger.go:42: 16:48:18 | 1-038_validate_productized_images | Creating namespace: kuttl-test-above-eft === CONT kuttl/harness/1-001_alpha_to_beta_dex_conversion logger.go:42: 16:48:18 | 1-001_alpha_to_beta_dex_conversion | Creating namespace: kuttl-test-enhanced-oyster === CONT kuttl/harness/1-065_validate_redis_ha_anti_affinity logger.go:42: 16:48:18 | 1-065_validate_redis_ha_anti_affinity/1-install | starting test step 1-install === CONT kuttl/harness/1-038_validate_productized_images logger.go:42: 16:48:18 | 1-038_validate_productized_images/1-install | starting test step 1-install === CONT kuttl/harness/1-001_alpha_to_beta_dex_conversion logger.go:42: 16:48:18 | 1-001_alpha_to_beta_dex_conversion/1-argocd-dex | starting test step 1-argocd-dex === CONT kuttl/harness/1-023_validate_repo_server_tls logger.go:42: 16:48:18 | 1-023_validate_repo_server_tls | Creating namespace: kuttl-test-better-gibbon logger.go:42: 16:48:18 | 1-023_validate_repo_server_tls/1-install | starting test step 1-install === CONT kuttl/harness/1-037_validate_argocd_setting_replicas logger.go:42: 16:48:18 | 1-037_validate_argocd_setting_replicas | Creating namespace: kuttl-test-warm-kiwi === CONT kuttl/harness/1-065_validate_redis_ha_anti_affinity logger.go:42: 16:48:18 | 1-065_validate_redis_ha_anti_affinity/1-install | ArgoCD:kuttl-test-communal-beetle/argocd created logger.go:42: 16:48:18 | 1-065_validate_redis_ha_anti_affinity/1-install | test step completed 1-install logger.go:42: 16:48:18 | 1-065_validate_redis_ha_anti_affinity/2- | starting test step 2- === CONT kuttl/harness/1-037_validate_argocd_setting_replicas logger.go:42: 16:48:18 | 1-037_validate_argocd_setting_replicas/1-install | starting test step 1-install === CONT kuttl/harness/1-023_validate_repo_server_tls logger.go:42: 16:48:18 | 1-023_validate_repo_server_tls/1-install | Namespace:/test-1-23-custom created === CONT kuttl/harness/1-038_validate_productized_images logger.go:42: 16:48:18 | 1-038_validate_productized_images/1-install | ArgoCD:kuttl-test-above-eft/argocd created === CONT kuttl/harness/1-037_validate_argocd_setting_replicas logger.go:42: 16:48:18 | 1-037_validate_argocd_setting_replicas/1-install | ArgoCD:kuttl-test-warm-kiwi/argocd created === CONT kuttl/harness/1-023_validate_repo_server_tls logger.go:42: 16:48:18 | 1-023_validate_repo_server_tls/1-install | ArgoCD:test-1-23-custom/argocd created === CONT kuttl/harness/1-001_alpha_to_beta_dex_conversion logger.go:42: 16:48:18 | 1-001_alpha_to_beta_dex_conversion/1-argocd-dex | ArgoCD:kuttl-test-enhanced-oyster/argocd created === CONT kuttl/harness/1-023_validate_repo_server_tls logger.go:42: 16:48:33 | 1-023_validate_repo_server_tls/1-install | test step completed 1-install logger.go:42: 16:48:33 | 1-023_validate_repo_server_tls/2-change-argocd | starting test step 2-change-argocd logger.go:42: 16:48:33 | 1-023_validate_repo_server_tls/2-change-argocd | ArgoCD:test-1-23-custom/argocd updated logger.go:42: 16:48:34 | 1-023_validate_repo_server_tls/2-change-argocd | test step completed 2-change-argocd logger.go:42: 16:48:34 | 1-023_validate_repo_server_tls/4-install-app | starting test step 4-install-app logger.go:42: 16:48:34 | 1-023_validate_repo_server_tls/4-install-app | Application:test-1-23-custom/guestbook created === CONT kuttl/harness/1-001_alpha_to_beta_dex_conversion logger.go:42: 16:48:34 | 1-001_alpha_to_beta_dex_conversion/1-argocd-dex | test step completed 1-argocd-dex logger.go:42: 16:48:34 | 1-001_alpha_to_beta_dex_conversion/2-delete | starting test step 2-delete logger.go:42: 16:48:35 | 1-001_alpha_to_beta_dex_conversion/2-delete | test step completed 2-delete logger.go:42: 16:48:35 | 1-001_alpha_to_beta_dex_conversion | skipping kubernetes event logging logger.go:42: 16:48:35 | 1-001_alpha_to_beta_dex_conversion | Deleting namespace: kuttl-test-enhanced-oyster === CONT kuttl/harness/1-038_validate_productized_images logger.go:42: 16:48:35 | 1-038_validate_productized_images/1-install | test step completed 1-install logger.go:42: 16:48:35 | 1-038_validate_productized_images/2-check-images | starting test step 2-check-images logger.go:42: 16:48:35 | 1-038_validate_productized_images/2-check-images | running command: [sh -c for wl in deployment/argocd-server deployment/argocd-repo-server statefulset/argocd-application-controller; do image=$(oc -n $NAMESPACE get ${wl} -o jsonpath='{.spec.template.spec.containers[0].image}' | awk -F'@' '{print $1}') if test "$image" != "registry.redhat.io/openshift-gitops-1/argocd-rhel8"; then echo "Non-productized image in workload $wl detected." exit 1 fi done ] logger.go:42: 16:48:36 | 1-038_validate_productized_images/2-check-images | test step completed 2-check-images logger.go:42: 16:48:36 | 1-038_validate_productized_images | skipping kubernetes event logging logger.go:42: 16:48:37 | 1-038_validate_productized_images | Deleting namespace: kuttl-test-above-eft === CONT kuttl/harness/1-083_validate_resource_customization_subkeys logger.go:42: 16:48:41 | 1-083_validate_resource_customization_subkeys | Creating namespace: kuttl-test-safe-reindeer logger.go:42: 16:48:41 | 1-083_validate_resource_customization_subkeys/1-argocd-with-resource-customization-subkeys | starting test step 1-argocd-with-resource-customization-subkeys logger.go:42: 16:48:41 | 1-083_validate_resource_customization_subkeys/1-argocd-with-resource-customization-subkeys | ArgoCD:kuttl-test-safe-reindeer/example-argocd created === CONT kuttl/harness/1-103_argocd_alpha_to_beta_conversion logger.go:42: 16:48:43 | 1-103_argocd_alpha_to_beta_conversion | Creating namespace: kuttl-test-more-termite logger.go:42: 16:48:43 | 1-103_argocd_alpha_to_beta_conversion/1-alpha_argocd | starting test step 1-alpha_argocd logger.go:42: 16:48:43 | 1-103_argocd_alpha_to_beta_conversion/1-alpha_argocd | ArgoCD:kuttl-test-more-termite/argocd created === CONT kuttl/harness/1-023_validate_repo_server_tls logger.go:42: 16:48:49 | 1-023_validate_repo_server_tls/4-install-app | test step completed 4-install-app logger.go:42: 16:48:49 | 1-023_validate_repo_server_tls/99-delete | starting test step 99-delete === CONT kuttl/harness/1-037_validate_argocd_setting_replicas logger.go:42: 16:48:52 | 1-037_validate_argocd_setting_replicas/1-install | test step completed 1-install logger.go:42: 16:48:52 | 1-037_validate_argocd_setting_replicas/2-scale_out_server | starting test step 2-scale_out_server logger.go:42: 16:48:52 | 1-037_validate_argocd_setting_replicas/2-scale_out_server | running command: [sh -c oc patch argocd argocd \ -n $NAMESPACE \ --type='json' \ -p='[{"op": "replace", "path": "/spec/server/replicas", "value": 3 }]' exit 0 ] logger.go:42: 16:48:52 | 1-037_validate_argocd_setting_replicas/2-scale_out_server | argocd.argoproj.io/argocd patched logger.go:42: 16:48:52 | 1-037_validate_argocd_setting_replicas/2-scale_out_server | test step completed 2-scale_out_server logger.go:42: 16:48:52 | 1-037_validate_argocd_setting_replicas/3-scale_out_repo | starting test step 3-scale_out_repo logger.go:42: 16:48:52 | 1-037_validate_argocd_setting_replicas/3-scale_out_repo | running command: [sh -c oc patch argocd argocd \ -n $NAMESPACE \ --type='json' \ -p='[{"op": "replace", "path": "/spec/repo/replicas", "value": 3 }]' exit 0 ] logger.go:42: 16:48:52 | 1-037_validate_argocd_setting_replicas/3-scale_out_repo | argocd.argoproj.io/argocd patched logger.go:42: 16:48:52 | 1-037_validate_argocd_setting_replicas/3-scale_out_repo | test step completed 3-scale_out_repo logger.go:42: 16:48:52 | 1-037_validate_argocd_setting_replicas/4- | starting test step 4- === CONT kuttl/harness/1-103_argocd_alpha_to_beta_conversion logger.go:42: 16:48:55 | 1-103_argocd_alpha_to_beta_conversion/1-alpha_argocd | test step completed 1-alpha_argocd logger.go:42: 16:48:55 | 1-103_argocd_alpha_to_beta_conversion/2-delete | starting test step 2-delete logger.go:42: 16:48:55 | 1-103_argocd_alpha_to_beta_conversion/2-delete | test step completed 2-delete logger.go:42: 16:48:55 | 1-103_argocd_alpha_to_beta_conversion | skipping kubernetes event logging logger.go:42: 16:48:55 | 1-103_argocd_alpha_to_beta_conversion | Deleting namespace: kuttl-test-more-termite === CONT kuttl/harness/1-023_validate_repo_server_tls logger.go:42: 16:49:01 | 1-023_validate_repo_server_tls/99-delete | test step completed 99-delete logger.go:42: 16:49:01 | 1-023_validate_repo_server_tls | skipping kubernetes event logging === CONT kuttl/harness/1-102_validate_handle_terminating_namespaces === CONT kuttl/harness/1-023_validate_repo_server_tls logger.go:42: 16:49:01 | 1-023_validate_repo_server_tls | Deleting namespace: kuttl-test-better-gibbon === CONT kuttl/harness/1-102_validate_handle_terminating_namespaces logger.go:42: 16:49:01 | 1-102_validate_handle_terminating_namespaces | Creating namespace: kuttl-test-welcome-emu logger.go:42: 16:49:01 | 1-102_validate_handle_terminating_namespaces/1-install | starting test step 1-install logger.go:42: 16:49:02 | 1-102_validate_handle_terminating_namespaces/1-install | Namespace:/gitops-service-argocd created logger.go:42: 16:49:02 | 1-102_validate_handle_terminating_namespaces/1-install | test step completed 1-install logger.go:42: 16:49:02 | 1-102_validate_handle_terminating_namespaces/2-install | starting test step 2-install logger.go:42: 16:49:02 | 1-102_validate_handle_terminating_namespaces/2-install | ArgoCD:gitops-service-argocd/gitops-service-argocd created logger.go:42: 16:49:02 | 1-102_validate_handle_terminating_namespaces/2-install | Namespace:/jane created logger.go:42: 16:49:02 | 1-102_validate_handle_terminating_namespaces/2-install | ConfigMap:jane/my-config-map-2 created === CONT kuttl/harness/1-101_validate_rollout_policyrules logger.go:42: 16:49:07 | 1-101_validate_rollout_policyrules | Creating namespace: kuttl-test-novel-owl logger.go:42: 16:49:07 | 1-101_validate_rollout_policyrules/1-install-rolloutmanager | starting test step 1-install-rolloutmanager logger.go:42: 16:49:07 | 1-101_validate_rollout_policyrules/1-install-rolloutmanager | RolloutManager:kuttl-test-novel-owl/example-rollout-manager created logger.go:42: 16:49:07 | 1-101_validate_rollout_policyrules/1-install-rolloutmanager | test step completed 1-install-rolloutmanager logger.go:42: 16:49:07 | 1-101_validate_rollout_policyrules | skipping kubernetes event logging logger.go:42: 16:49:07 | 1-101_validate_rollout_policyrules | Deleting namespace: kuttl-test-novel-owl === CONT kuttl/harness/1-083_validate_resource_customization_subkeys logger.go:42: 16:49:13 | 1-083_validate_resource_customization_subkeys/1-argocd-with-resource-customization-subkeys | test step completed 1-argocd-with-resource-customization-subkeys logger.go:42: 16:49:13 | 1-083_validate_resource_customization_subkeys | skipping kubernetes event logging logger.go:42: 16:49:13 | 1-083_validate_resource_customization_subkeys | Deleting namespace: kuttl-test-safe-reindeer === CONT kuttl/harness/1-100_validate_rollouts_resources_creation logger.go:42: 16:49:13 | 1-100_validate_rollouts_resources_creation | Creating namespace: kuttl-test-known-gibbon logger.go:42: 16:49:13 | 1-100_validate_rollouts_resources_creation/1-install-rolloutmanager | starting test step 1-install-rolloutmanager logger.go:42: 16:49:13 | 1-100_validate_rollouts_resources_creation/1-install-rolloutmanager | RolloutManager:kuttl-test-known-gibbon/example-rollout-manager created === CONT kuttl/harness/1-102_validate_handle_terminating_namespaces logger.go:42: 16:49:13 | 1-102_validate_handle_terminating_namespaces/2-install | test step completed 2-install logger.go:42: 16:49:13 | 1-102_validate_handle_terminating_namespaces/3-delete-ns | starting test step 3-delete-ns logger.go:42: 16:49:13 | 1-102_validate_handle_terminating_namespaces/3-delete-ns | running command: [kubectl delete ns jane] logger.go:42: 16:49:14 | 1-102_validate_handle_terminating_namespaces/3-delete-ns | namespace "jane" deleted === CONT kuttl/harness/1-099_validate_server_autoscale logger.go:42: 16:49:19 | 1-099_validate_server_autoscale | Creating namespace: kuttl-test-vocal-locust logger.go:42: 16:49:19 | 1-099_validate_server_autoscale/1-install | starting test step 1-install logger.go:42: 16:49:19 | 1-099_validate_server_autoscale/1-install | ArgoCD:kuttl-test-vocal-locust/example-argocd created === CONT kuttl/harness/1-037_validate_argocd_setting_replicas logger.go:42: 16:49:24 | 1-037_validate_argocd_setting_replicas/4- | test step completed 4- logger.go:42: 16:49:24 | 1-037_validate_argocd_setting_replicas/5-scale_in_server | starting test step 5-scale_in_server logger.go:42: 16:49:24 | 1-037_validate_argocd_setting_replicas/5-scale_in_server | running command: [sh -c oc patch argocd argocd \ -n $NAMESPACE \ --type='json' \ -p='[{"op": "replace", "path": "/spec/server/replicas", "value": 1 }]' exit 0 ] logger.go:42: 16:49:24 | 1-037_validate_argocd_setting_replicas/5-scale_in_server | argocd.argoproj.io/argocd patched logger.go:42: 16:49:24 | 1-037_validate_argocd_setting_replicas/5-scale_in_server | test step completed 5-scale_in_server logger.go:42: 16:49:24 | 1-037_validate_argocd_setting_replicas/6-scale_in_repo | starting test step 6-scale_in_repo logger.go:42: 16:49:24 | 1-037_validate_argocd_setting_replicas/6-scale_in_repo | running command: [sh -c oc patch argocd argocd \ -n $NAMESPACE \ --type='json' \ -p='[{"op": "replace", "path": "/spec/repo/replicas", "value": 1 }]' exit 0 ] logger.go:42: 16:49:24 | 1-037_validate_argocd_setting_replicas/6-scale_in_repo | argocd.argoproj.io/argocd patched logger.go:42: 16:49:24 | 1-037_validate_argocd_setting_replicas/6-scale_in_repo | test step completed 6-scale_in_repo logger.go:42: 16:49:24 | 1-037_validate_argocd_setting_replicas/7- | starting test step 7- logger.go:42: 16:49:26 | 1-037_validate_argocd_setting_replicas/7- | test step completed 7- logger.go:42: 16:49:26 | 1-037_validate_argocd_setting_replicas | skipping kubernetes event logging logger.go:42: 16:49:26 | 1-037_validate_argocd_setting_replicas | Deleting namespace: kuttl-test-warm-kiwi === CONT kuttl/harness/1-098_validate_dex_clientsecret_deprecated logger.go:42: 16:49:32 | 1-098_validate_dex_clientsecret_deprecated | Creating namespace: kuttl-test-bold-mayfly logger.go:42: 16:49:32 | 1-098_validate_dex_clientsecret_deprecated/1-install | starting test step 1-install logger.go:42: 16:49:32 | 1-098_validate_dex_clientsecret_deprecated/1-install | ArgoCD:kuttl-test-bold-mayfly/example-argocd created === CONT kuttl/harness/1-100_validate_rollouts_resources_creation logger.go:42: 16:49:39 | 1-100_validate_rollouts_resources_creation/1-install-rolloutmanager | test step completed 1-install-rolloutmanager logger.go:42: 16:49:39 | 1-100_validate_rollouts_resources_creation/2- | starting test step 2- logger.go:42: 16:49:39 | 1-100_validate_rollouts_resources_creation/2- | test step completed 2- logger.go:42: 16:49:39 | 1-100_validate_rollouts_resources_creation | skipping kubernetes event logging logger.go:42: 16:49:39 | 1-100_validate_rollouts_resources_creation | Deleting namespace: kuttl-test-known-gibbon === CONT kuttl/harness/1-102_validate_handle_terminating_namespaces logger.go:42: 16:49:43 | 1-102_validate_handle_terminating_namespaces/3-delete-ns | test step completed 3-delete-ns logger.go:42: 16:49:43 | 1-102_validate_handle_terminating_namespaces/4-create-ns | starting test step 4-create-ns logger.go:42: 16:49:44 | 1-102_validate_handle_terminating_namespaces/4-create-ns | Namespace:/john created logger.go:42: 16:49:44 | 1-102_validate_handle_terminating_namespaces/4-create-ns | test step completed 4-create-ns logger.go:42: 16:49:44 | 1-102_validate_handle_terminating_namespaces/5-create-app | starting test step 5-create-app logger.go:42: 16:49:44 | 1-102_validate_handle_terminating_namespaces/5-create-app | Application:gitops-service-argocd/my-app created === CONT kuttl/harness/1-096-validate_home_env_argocd_controller logger.go:42: 16:49:45 | 1-096-validate_home_env_argocd_controller | Creating namespace: kuttl-test-eternal-mite logger.go:42: 16:49:45 | 1-096-validate_home_env_argocd_controller/1- | starting test step 1- logger.go:42: 16:49:45 | 1-096-validate_home_env_argocd_controller/1- | test step completed 1- logger.go:42: 16:49:45 | 1-096-validate_home_env_argocd_controller | skipping kubernetes event logging logger.go:42: 16:49:45 | 1-096-validate_home_env_argocd_controller | Deleting namespace: kuttl-test-eternal-mite === CONT kuttl/harness/1-102_validate_handle_terminating_namespaces logger.go:42: 16:49:47 | 1-102_validate_handle_terminating_namespaces/5-create-app | test step completed 5-create-app logger.go:42: 16:49:47 | 1-102_validate_handle_terminating_namespaces/99-delete | starting test step 99-delete === CONT kuttl/harness/1-095_validate_dex_clientsecret logger.go:42: 16:49:51 | 1-095_validate_dex_clientsecret | Creating namespace: kuttl-test-nice-ferret logger.go:42: 16:49:51 | 1-095_validate_dex_clientsecret/1-install | starting test step 1-install logger.go:42: 16:49:51 | 1-095_validate_dex_clientsecret/1-install | ArgoCD:kuttl-test-nice-ferret/example-argocd created === CONT kuttl/harness/1-099_validate_server_autoscale logger.go:42: 16:49:51 | 1-099_validate_server_autoscale/1-install | test step completed 1-install logger.go:42: 16:49:51 | 1-099_validate_server_autoscale/2-enable-server-autoscale | starting test step 2-enable-server-autoscale logger.go:42: 16:49:51 | 1-099_validate_server_autoscale/2-enable-server-autoscale | ArgoCD:kuttl-test-vocal-locust/example-argocd updated logger.go:42: 16:49:51 | 1-099_validate_server_autoscale/2-enable-server-autoscale | test step completed 2-enable-server-autoscale logger.go:42: 16:49:51 | 1-099_validate_server_autoscale/3-check-server-replicas | starting test step 3-check-server-replicas logger.go:42: 16:49:51 | 1-099_validate_server_autoscale/3-check-server-replicas | running command: [sh -c sleep 45] === CONT kuttl/harness/1-102_validate_handle_terminating_namespaces logger.go:42: 16:49:59 | 1-102_validate_handle_terminating_namespaces/99-delete | running command: [sh -c oc patch cm/my-config-map-2 -n jane --type json --patch='[ { "op": "remove", "path": "/metadata/finalizers" }]'] ] logger.go:42: 16:49:59 | 1-102_validate_handle_terminating_namespaces/99-delete | configmap/my-config-map-2 patched logger.go:42: 16:49:59 | 1-102_validate_handle_terminating_namespaces/99-delete | test step completed 99-delete logger.go:42: 16:49:59 | 1-102_validate_handle_terminating_namespaces | skipping kubernetes event logging logger.go:42: 16:49:59 | 1-102_validate_handle_terminating_namespaces | Deleting namespace: kuttl-test-welcome-emu === CONT kuttl/harness/1-098_validate_dex_clientsecret_deprecated logger.go:42: 16:50:04 | 1-098_validate_dex_clientsecret_deprecated/1-install | test step completed 1-install logger.go:42: 16:50:04 | 1-098_validate_dex_clientsecret_deprecated/2-verify-clientsecret | starting test step 2-verify-clientsecret logger.go:42: 16:50:04 | 1-098_validate_dex_clientsecret_deprecated/2-verify-clientsecret | running command: [sh -c # This test validates the Dex Client Secret copied by the operator from dex serviceaccount token secret in to argocd-secret. # To verify the behavior we should first get the token secret name of the dex service account. secret=$(oc get -n $NAMESPACE sa example-argocd-argocd-dex-server -o json | jq -r '.secrets' | grep token | sed 's/ "name": "//g' | sed 's/"//g') # Extract the clientSecret expectedClientSecret=$(oc get secret $secret -n $NAMESPACE -o json | jq -r '.data.token') # actualClientSecret is the value of the secret in argocd-secret where argocd-operator should copy the secret from actualClientSecret=$(oc get secret argocd-secret -o json -n $NAMESPACE | jq -r '.data."oidc.dex.clientSecret"') # Verify if [[ ${expectedClientSecret} != ${actualClientSecret} ]]; then echo "Error: Dex Client Secret for OIDC is not valid" exit 1 fi ] === CONT kuttl/harness/1-092_validate_workload_status_monitoring_alert logger.go:42: 16:50:05 | 1-092_validate_workload_status_monitoring_alert | Creating namespace: kuttl-test-primary-kitten logger.go:42: 16:50:05 | 1-092_validate_workload_status_monitoring_alert/1-install | starting test step 1-install logger.go:42: 16:50:05 | 1-092_validate_workload_status_monitoring_alert/1-install | ArgoCD:kuttl-test-primary-kitten/argocd created === CONT kuttl/harness/1-098_validate_dex_clientsecret_deprecated logger.go:42: 16:50:06 | 1-098_validate_dex_clientsecret_deprecated/2-verify-clientsecret | test step completed 2-verify-clientsecret logger.go:42: 16:50:06 | 1-098_validate_dex_clientsecret_deprecated | skipping kubernetes event logging logger.go:42: 16:50:06 | 1-098_validate_dex_clientsecret_deprecated | Deleting namespace: kuttl-test-bold-mayfly === CONT kuttl/harness/1-091_argocd_app_validate-applicationset-status logger.go:42: 16:50:11 | 1-091_argocd_app_validate-applicationset-status | Creating namespace: kuttl-test-awake-skink logger.go:42: 16:50:12 | 1-091_argocd_app_validate-applicationset-status/1-install | starting test step 1-install logger.go:42: 16:50:12 | 1-091_argocd_app_validate-applicationset-status/1-install | ArgoCD:kuttl-test-awake-skink/example-argocd created logger.go:42: 16:50:13 | 1-091_argocd_app_validate-applicationset-status/1-install | test step completed 1-install logger.go:42: 16:50:13 | 1-091_argocd_app_validate-applicationset-status/2-enable-appset | starting test step 2-enable-appset logger.go:42: 16:50:13 | 1-091_argocd_app_validate-applicationset-status/2-enable-appset | ArgoCD:kuttl-test-awake-skink/example-argocd updated logger.go:42: 16:50:17 | 1-091_argocd_app_validate-applicationset-status/2-enable-appset | test step completed 2-enable-appset logger.go:42: 16:50:17 | 1-091_argocd_app_validate-applicationset-status/3-change-appset-image | starting test step 3-change-appset-image logger.go:42: 16:50:17 | 1-091_argocd_app_validate-applicationset-status/3-change-appset-image | ArgoCD:kuttl-test-awake-skink/example-argocd updated logger.go:42: 16:50:17 | 1-091_argocd_app_validate-applicationset-status/3-change-appset-image | test step completed 3-change-appset-image logger.go:42: 16:50:17 | 1-091_argocd_app_validate-applicationset-status/4-delete-exisiting-deployment | starting test step 4-delete-exisiting-deployment logger.go:42: 16:50:17 | 1-091_argocd_app_validate-applicationset-status/4-delete-exisiting-deployment | running command: [kubectl delete deployment example-argocd-applicationset-controller -n kuttl-test-awake-skink] logger.go:42: 16:50:17 | 1-091_argocd_app_validate-applicationset-status/4-delete-exisiting-deployment | deployment.apps "example-argocd-applicationset-controller" deleted logger.go:42: 16:50:18 | 1-091_argocd_app_validate-applicationset-status/4-delete-exisiting-deployment | test step completed 4-delete-exisiting-deployment logger.go:42: 16:50:18 | 1-091_argocd_app_validate-applicationset-status | skipping kubernetes event logging logger.go:42: 16:50:18 | 1-091_argocd_app_validate-applicationset-status | Deleting namespace: kuttl-test-awake-skink === CONT kuttl/harness/1-095_validate_dex_clientsecret logger.go:42: 16:50:23 | 1-095_validate_dex_clientsecret/1-install | test step completed 1-install logger.go:42: 16:50:23 | 1-095_validate_dex_clientsecret/2-check-clientSecret-cm | starting test step 2-check-clientSecret-cm logger.go:42: 16:50:23 | 1-095_validate_dex_clientsecret/2-check-clientSecret-cm | running command: [sh -c clientSecret=$(oc get configmap argocd-cm -n $NAMESPACE -o jsonpath='{.data.dex\.config}' | grep clientSecret | awk -F' ' '{print $2}') if test "$clientSecret" != "\$oidc.dex.clientSecret"; then echo "Client secret exposed!" exit 1 fi exit 0 ] logger.go:42: 16:50:23 | 1-095_validate_dex_clientsecret/2-check-clientSecret-cm | test step completed 2-check-clientSecret-cm logger.go:42: 16:50:23 | 1-095_validate_dex_clientsecret/3-verify-clientsecret-secret | starting test step 3-verify-clientsecret-secret logger.go:42: 16:50:23 | 1-095_validate_dex_clientsecret/3-verify-clientsecret-secret | running command: [sh -c # This test validates the Dex Client Secret copied by the operator from dex serviceaccount token secret in to argocd-secret. # To verify the behavior we should first get the token secret name of the dex service account. secret=$(oc get -n $NAMESPACE sa example-argocd-argocd-dex-server -o json | jq -r '.secrets[] | select(.name | contains("token")) | .name') # Extract the clientSecret expectedClientSecret=$(oc get secret $secret -n $NAMESPACE -o json | jq -r '.data.token') # actualClientSecret is the value of the secret in argocd-secret where argocd-operator should copy the secret from actualClientSecret=$(oc get secret argocd-secret -o json -n $NAMESPACE | jq -r '.data."oidc.dex.clientSecret"') # Verify if [[ $expectedClientSecret != $actualClientSecret ]]; then echo "Error: Dex Client Secret for OIDC is not valid" exit 1 fi ] === CONT kuttl/harness/1-090_validate_permissions logger.go:42: 16:50:25 | 1-090_validate_permissions | Creating namespace: kuttl-test-causal-monkey logger.go:42: 16:50:25 | 1-090_validate_permissions/1- | starting test step 1- === CONT kuttl/harness/1-095_validate_dex_clientsecret logger.go:42: 16:50:25 | 1-095_validate_dex_clientsecret/3-verify-clientsecret-secret | test step completed 3-verify-clientsecret-secret logger.go:42: 16:50:25 | 1-095_validate_dex_clientsecret | skipping kubernetes event logging logger.go:42: 16:50:25 | 1-095_validate_dex_clientsecret | Deleting namespace: kuttl-test-nice-ferret === CONT kuttl/harness/1-089_validate_extra_repo_commands_args logger.go:42: 16:50:31 | 1-089_validate_extra_repo_commands_args | Creating namespace: kuttl-test-dashing-boa logger.go:42: 16:50:31 | 1-089_validate_extra_repo_commands_args/1-basic-argocd-install | starting test step 1-basic-argocd-install logger.go:42: 16:50:31 | 1-089_validate_extra_repo_commands_args/1-basic-argocd-install | Namespace:/test-1-89-repo-extra-command created logger.go:42: 16:50:31 | 1-089_validate_extra_repo_commands_args/1-basic-argocd-install | ArgoCD:test-1-89-repo-extra-command/example-argocd created === CONT kuttl/harness/1-099_validate_server_autoscale logger.go:42: 16:50:36 | 1-099_validate_server_autoscale/3-check-server-replicas | running command: [sh -c set -e serverReplicas=$(kubectl get -n $NAMESPACE deployment/example-argocd-server -o jsonpath='{.spec.replicas}') if [ "$serverReplicas" -ge 4 ] && [ "$serverReplicas" -le 7 ]; then echo "server replica count matches expectation" exit 0 fi exit 1 done ] logger.go:42: 16:50:37 | 1-099_validate_server_autoscale/3-check-server-replicas | server replica count matches expectation logger.go:42: 16:50:37 | 1-099_validate_server_autoscale/3-check-server-replicas | test step completed 3-check-server-replicas logger.go:42: 16:50:37 | 1-099_validate_server_autoscale/4-update-hpa | starting test step 4-update-hpa logger.go:42: 16:50:37 | 1-099_validate_server_autoscale/4-update-hpa | ArgoCD:kuttl-test-vocal-locust/example-argocd updated === CONT kuttl/harness/1-092_validate_workload_status_monitoring_alert logger.go:42: 16:50:37 | 1-092_validate_workload_status_monitoring_alert/1-install | test step completed 1-install logger.go:42: 16:50:37 | 1-092_validate_workload_status_monitoring_alert/2-verify-alert | starting test step 2-verify-alert logger.go:42: 16:50:37 | 1-092_validate_workload_status_monitoring_alert/2-verify-alert | running command: [sh -c sleep 7m] === CONT kuttl/harness/1-099_validate_server_autoscale logger.go:42: 16:50:38 | 1-099_validate_server_autoscale/4-update-hpa | test step completed 4-update-hpa logger.go:42: 16:50:38 | 1-099_validate_server_autoscale | skipping kubernetes event logging logger.go:42: 16:50:38 | 1-099_validate_server_autoscale | Deleting namespace: kuttl-test-vocal-locust === CONT kuttl/harness/1-088_validate_applicationset_add_env_vars logger.go:42: 16:50:44 | 1-088_validate_applicationset_add_env_vars | Creating namespace: kuttl-test-game-bird logger.go:42: 16:50:44 | 1-088_validate_applicationset_add_env_vars/1-basic-argocd-install | starting test step 1-basic-argocd-install logger.go:42: 16:50:44 | 1-088_validate_applicationset_add_env_vars/1-basic-argocd-install | ArgoCD:kuttl-test-game-bird/example-argocd created === CONT kuttl/harness/1-089_validate_extra_repo_commands_args logger.go:42: 16:51:03 | 1-089_validate_extra_repo_commands_args/1-basic-argocd-install | test step completed 1-basic-argocd-install logger.go:42: 16:51:03 | 1-089_validate_extra_repo_commands_args/2-add-extraRepoCommandArgs | starting test step 2-add-extraRepoCommandArgs logger.go:42: 16:51:03 | 1-089_validate_extra_repo_commands_args/2-add-extraRepoCommandArgs | ArgoCD:test-1-89-repo-extra-command/example-argocd updated logger.go:42: 16:51:04 | 1-089_validate_extra_repo_commands_args/2-add-extraRepoCommandArgs | test step completed 2-add-extraRepoCommandArgs logger.go:42: 16:51:04 | 1-089_validate_extra_repo_commands_args/99-delete | starting test step 99-delete logger.go:42: 16:51:16 | 1-089_validate_extra_repo_commands_args/99-delete | test step completed 99-delete logger.go:42: 16:51:16 | 1-089_validate_extra_repo_commands_args | skipping kubernetes event logging logger.go:42: 16:51:16 | 1-089_validate_extra_repo_commands_args | Deleting namespace: kuttl-test-dashing-boa === CONT kuttl/harness/1-088_validate_applicationset_add_env_vars logger.go:42: 16:51:16 | 1-088_validate_applicationset_add_env_vars/1-basic-argocd-install | test step completed 1-basic-argocd-install logger.go:42: 16:51:16 | 1-088_validate_applicationset_add_env_vars/2-add-env-vars | starting test step 2-add-env-vars logger.go:42: 16:51:16 | 1-088_validate_applicationset_add_env_vars/2-add-env-vars | ArgoCD:kuttl-test-game-bird/example-argocd updated logger.go:42: 16:51:17 | 1-088_validate_applicationset_add_env_vars/2-add-env-vars | test step completed 2-add-env-vars logger.go:42: 16:51:17 | 1-088_validate_applicationset_add_env_vars | skipping kubernetes event logging logger.go:42: 16:51:17 | 1-088_validate_applicationset_add_env_vars | Deleting namespace: kuttl-test-game-bird === CONT kuttl/harness/1-087_validate_repo_server_settings logger.go:42: 16:51:22 | 1-087_validate_repo_server_settings | Creating namespace: kuttl-test-concrete-fox logger.go:42: 16:51:22 | 1-087_validate_repo_server_settings/1-install | starting test step 1-install logger.go:42: 16:51:22 | 1-087_validate_repo_server_settings/1-install | ArgoCD:kuttl-test-concrete-fox/example-argocd created === CONT kuttl/harness/1-086_validate_applicationset_extra_command_args logger.go:42: 16:51:24 | 1-086_validate_applicationset_extra_command_args | Creating namespace: kuttl-test-ample-katydid logger.go:42: 16:51:24 | 1-086_validate_applicationset_extra_command_args/1-basic-argocd-install | starting test step 1-basic-argocd-install logger.go:42: 16:51:24 | 1-086_validate_applicationset_extra_command_args/1-basic-argocd-install | Namespace:/test-1-86-appsets-extra-command created logger.go:42: 16:51:24 | 1-086_validate_applicationset_extra_command_args/1-basic-argocd-install | ArgoCD:test-1-86-appsets-extra-command/example-argocd created logger.go:42: 16:51:37 | 1-086_validate_applicationset_extra_command_args/1-basic-argocd-install | test step completed 1-basic-argocd-install logger.go:42: 16:51:37 | 1-086_validate_applicationset_extra_command_args/2-add-extraCommandArgs | starting test step 2-add-extraCommandArgs logger.go:42: 16:51:37 | 1-086_validate_applicationset_extra_command_args/2-add-extraCommandArgs | ArgoCD:test-1-86-appsets-extra-command/example-argocd updated logger.go:42: 16:51:38 | 1-086_validate_applicationset_extra_command_args/2-add-extraCommandArgs | test step completed 2-add-extraCommandArgs logger.go:42: 16:51:38 | 1-086_validate_applicationset_extra_command_args/99-delete | starting test step 99-delete logger.go:42: 16:51:50 | 1-086_validate_applicationset_extra_command_args/99-delete | test step completed 99-delete logger.go:42: 16:51:50 | 1-086_validate_applicationset_extra_command_args | skipping kubernetes event logging logger.go:42: 16:51:50 | 1-086_validate_applicationset_extra_command_args | Deleting namespace: kuttl-test-ample-katydid === CONT kuttl/harness/1-087_validate_repo_server_settings logger.go:42: 16:51:53 | 1-087_validate_repo_server_settings/1-install | test step completed 1-install logger.go:42: 16:51:53 | 1-087_validate_repo_server_settings/2-modify-argocd | starting test step 2-modify-argocd logger.go:42: 16:51:54 | 1-087_validate_repo_server_settings/2-modify-argocd | ArgoCD:kuttl-test-concrete-fox/example-argocd updated logger.go:42: 16:51:55 | 1-087_validate_repo_server_settings/2-modify-argocd | test step completed 2-modify-argocd logger.go:42: 16:51:55 | 1-087_validate_repo_server_settings/4-modify-serviceaccount | starting test step 4-modify-serviceaccount logger.go:42: 16:51:55 | 1-087_validate_repo_server_settings/4-modify-serviceaccount | ServiceAccount:kuttl-test-concrete-fox/modified-default created logger.go:42: 16:51:55 | 1-087_validate_repo_server_settings/4-modify-serviceaccount | ArgoCD:kuttl-test-concrete-fox/example-argocd updated === CONT kuttl/harness/1-084_validate_status_host_ingress logger.go:42: 16:51:55 | 1-084_validate_status_host_ingress | Creating namespace: kuttl-test-moving-octopus logger.go:42: 16:51:55 | 1-084_validate_status_host_ingress/1-argocd-ingress | starting test step 1-argocd-ingress logger.go:42: 16:51:56 | 1-084_validate_status_host_ingress/1-argocd-ingress | ArgoCD:kuttl-test-moving-octopus/example-argocd created === CONT kuttl/harness/1-087_validate_repo_server_settings logger.go:42: 16:51:56 | 1-087_validate_repo_server_settings/4-modify-serviceaccount | test step completed 4-modify-serviceaccount logger.go:42: 16:51:56 | 1-087_validate_repo_server_settings/5-reset-repo-settings | starting test step 5-reset-repo-settings logger.go:42: 16:51:56 | 1-087_validate_repo_server_settings/5-reset-repo-settings | ArgoCD:kuttl-test-concrete-fox/example-argocd updated logger.go:42: 16:51:58 | 1-087_validate_repo_server_settings/5-reset-repo-settings | test step completed 5-reset-repo-settings logger.go:42: 16:51:58 | 1-087_validate_repo_server_settings | skipping kubernetes event logging logger.go:42: 16:51:58 | 1-087_validate_repo_server_settings | Deleting namespace: kuttl-test-concrete-fox === CONT kuttl/harness/1-053_validate_cluster_admin_rbac logger.go:42: 16:52:04 | 1-053_validate_cluster_admin_rbac | Creating namespace: kuttl-test-grown-calf logger.go:42: 16:52:04 | 1-053_validate_cluster_admin_rbac/1- | starting test step 1- logger.go:42: 16:52:04 | 1-053_validate_cluster_admin_rbac/1- | test step completed 1- logger.go:42: 16:52:04 | 1-053_validate_cluster_admin_rbac/2- | starting test step 2- logger.go:42: 16:52:04 | 1-053_validate_cluster_admin_rbac/2- | test step completed 2- logger.go:42: 16:52:04 | 1-053_validate_cluster_admin_rbac | skipping kubernetes event logging logger.go:42: 16:52:04 | 1-053_validate_cluster_admin_rbac | Deleting namespace: kuttl-test-grown-calf === CONT kuttl/harness/1-064_validate_security_contexts logger.go:42: 16:52:10 | 1-064_validate_security_contexts | Creating namespace: kuttl-test-trusted-redbird logger.go:42: 16:52:10 | 1-064_validate_security_contexts/1-install | starting test step 1-install logger.go:42: 16:52:10 | 1-064_validate_security_contexts/1-install | ArgoCD:kuttl-test-trusted-redbird/argocd created logger.go:42: 16:52:11 | 1-064_validate_security_contexts/1-install | test step completed 1-install logger.go:42: 16:52:11 | 1-064_validate_security_contexts/2-check-controller-manager | starting test step 2-check-controller-manager logger.go:42: 16:52:11 | 1-064_validate_security_contexts/2-check-controller-manager | running command: [sh -c set -eo pipefail ocp_major_version=$(oc version -o json | jq -r '.openshiftVersion' | cut -d'.' -f 1) ocp_minor_version=$(oc version -o json | jq -r '.openshiftVersion' | cut -d'.' -f 2) security_context=$(oc get deployment/openshift-gitops-operator-controller-manager -n openshift-operators -o jsonpath='{.spec.template.spec.containers[].securityContext}') expected_security_context='{"allowPrivilegeEscalation":false,"capabilities":{"drop":["ALL"]},"readOnlyRootFilesystem":true,"runAsNonRoot":true}' if [ "${ocp_major_version}" -eq 4 ] && [ "${ocp_minor_version}" -ge 12 ]; then if [ "${security_context}" = "${expected_security_context}" ]; then exit 0 else echo "Error: deployment/openshift-gitops-operator-controller-manager container's security context is wrong" exit 1 fi else echo "Info: This test is only applicable to OCP version 4.12 and higher." exit 0 fi ] logger.go:42: 16:52:12 | 1-064_validate_security_contexts/2-check-controller-manager | test step completed 2-check-controller-manager logger.go:42: 16:52:12 | 1-064_validate_security_contexts | skipping kubernetes event logging logger.go:42: 16:52:13 | 1-064_validate_security_contexts | Deleting namespace: kuttl-test-trusted-redbird === CONT kuttl/harness/1-063_validate_statefulset_restart logger.go:42: 16:52:18 | 1-063_validate_statefulset_restart | Creating namespace: kuttl-test-maximum-rattler logger.go:42: 16:52:18 | 1-063_validate_statefulset_restart/1-install | starting test step 1-install logger.go:42: 16:52:18 | 1-063_validate_statefulset_restart/1-install | ArgoCD:kuttl-test-maximum-rattler/example-argocd created === CONT kuttl/harness/1-084_validate_status_host_ingress logger.go:42: 16:52:28 | 1-084_validate_status_host_ingress/1-argocd-ingress | test step completed 1-argocd-ingress logger.go:42: 16:52:28 | 1-084_validate_status_host_ingress/2- | starting test step 2- logger.go:42: 16:52:28 | 1-084_validate_status_host_ingress/2- | test step completed 2- logger.go:42: 16:52:28 | 1-084_validate_status_host_ingress | skipping kubernetes event logging logger.go:42: 16:52:28 | 1-084_validate_status_host_ingress | Deleting namespace: kuttl-test-moving-octopus === CONT kuttl/harness/1-063_validate_dex_liveness_probe logger.go:42: 16:52:34 | 1-063_validate_dex_liveness_probe | Creating namespace: kuttl-test-usable-seasnail logger.go:42: 16:52:34 | 1-063_validate_dex_liveness_probe/1- | starting test step 1- logger.go:42: 16:52:34 | 1-063_validate_dex_liveness_probe/1- | test step completed 1- logger.go:42: 16:52:34 | 1-063_validate_dex_liveness_probe | skipping kubernetes event logging logger.go:42: 16:52:34 | 1-063_validate_dex_liveness_probe | Deleting namespace: kuttl-test-usable-seasnail === CONT kuttl/harness/1-062_validate_extra_config logger.go:42: 16:52:40 | 1-062_validate_extra_config | Creating namespace: kuttl-test-cuddly-muskox logger.go:42: 16:52:40 | 1-062_validate_extra_config/1-argocd-with-extraconfig | starting test step 1-argocd-with-extraconfig logger.go:42: 16:52:40 | 1-062_validate_extra_config/1-argocd-with-extraconfig | ArgoCD:kuttl-test-cuddly-muskox/example-argocd created === CONT kuttl/harness/1-063_validate_statefulset_restart logger.go:42: 16:52:50 | 1-063_validate_statefulset_restart/1-install | test step completed 1-install logger.go:42: 16:52:50 | 1-063_validate_statefulset_restart/2-change_to_invalid_image | starting test step 2-change_to_invalid_image logger.go:42: 16:52:50 | 1-063_validate_statefulset_restart/2-change_to_invalid_image | running command: [sh -c set -e oc patch statefulset/example-argocd-application-controller \ -n $NAMESPACE \ --type "json" \ -p '[{"op":"replace","path":"/spec/template/spec/containers/0/image","value":"invalid_image"}]' sleep 10 ] logger.go:42: 16:52:51 | 1-063_validate_statefulset_restart/2-change_to_invalid_image | statefulset.apps/example-argocd-application-controller patched logger.go:42: 16:53:03 | 1-063_validate_statefulset_restart/2-change_to_invalid_image | test step completed 2-change_to_invalid_image logger.go:42: 16:53:03 | 1-063_validate_statefulset_restart/3-check_image_after_change | starting test step 3-check_image_after_change logger.go:42: 16:53:03 | 1-063_validate_statefulset_restart/3-check_image_after_change | running command: [sh -c set -e image=$(oc get statefulset/example-argocd-application-controller -o jsonpath='{.spec.template.spec.containers[].image}' -n $NAMESPACE) if test "${image}" == "invalid_image"; then echo "The application-controller statefulset is using 'invalid_image'" exit 1 fi exit 0 ] logger.go:42: 16:53:03 | 1-063_validate_statefulset_restart/3-check_image_after_change | test step completed 3-check_image_after_change logger.go:42: 16:53:03 | 1-063_validate_statefulset_restart | skipping kubernetes event logging logger.go:42: 16:53:03 | 1-063_validate_statefulset_restart | Deleting namespace: kuttl-test-maximum-rattler === CONT kuttl/harness/1-061_validate_resource_tracking_method logger.go:42: 16:53:09 | 1-061_validate_resource_tracking_method | Creating namespace: kuttl-test-patient-polliwog logger.go:42: 16:53:09 | 1-061_validate_resource_tracking_method/1-install | starting test step 1-install logger.go:42: 16:53:09 | 1-061_validate_resource_tracking_method/1-install | ArgoCD:kuttl-test-patient-polliwog/argocd created === CONT kuttl/harness/1-062_validate_extra_config logger.go:42: 16:53:12 | 1-062_validate_extra_config/1-argocd-with-extraconfig | test step completed 1-argocd-with-extraconfig logger.go:42: 16:53:12 | 1-062_validate_extra_config/2-argocd-with-firstclass-and-extraconfig copy | starting test step 2-argocd-with-firstclass-and-extraconfig copy logger.go:42: 16:53:12 | 1-062_validate_extra_config/2-argocd-with-firstclass-and-extraconfig copy | ArgoCD:kuttl-test-cuddly-muskox/example-argocd updated logger.go:42: 16:53:12 | 1-062_validate_extra_config/2-argocd-with-firstclass-and-extraconfig copy | test step completed 2-argocd-with-firstclass-and-extraconfig copy logger.go:42: 16:53:12 | 1-062_validate_extra_config/3-update-configmap | starting test step 3-update-configmap logger.go:42: 16:53:12 | 1-062_validate_extra_config/3-update-configmap | ConfigMap:kuttl-test-cuddly-muskox/argocd-cm updated logger.go:42: 16:53:12 | 1-062_validate_extra_config/3-update-configmap | test step completed 3-update-configmap logger.go:42: 16:53:12 | 1-062_validate_extra_config/4-create-dex-without-extraconfig | starting test step 4-create-dex-without-extraconfig logger.go:42: 16:53:12 | 1-062_validate_extra_config/4-create-dex-without-extraconfig | ArgoCD:kuttl-test-cuddly-muskox/example-argocd updated logger.go:42: 16:53:13 | 1-062_validate_extra_config/4-create-dex-without-extraconfig | test step completed 4-create-dex-without-extraconfig logger.go:42: 16:53:13 | 1-062_validate_extra_config/5-override-dex-using-extraconfig | starting test step 5-override-dex-using-extraconfig logger.go:42: 16:53:13 | 1-062_validate_extra_config/5-override-dex-using-extraconfig | ArgoCD:kuttl-test-cuddly-muskox/example-argocd updated logger.go:42: 16:53:14 | 1-062_validate_extra_config/5-override-dex-using-extraconfig | test step completed 5-override-dex-using-extraconfig logger.go:42: 16:53:14 | 1-062_validate_extra_config | skipping kubernetes event logging logger.go:42: 16:53:14 | 1-062_validate_extra_config | Deleting namespace: kuttl-test-cuddly-muskox === CONT kuttl/harness/1-058_validate_prometheus_rule logger.go:42: 16:53:21 | 1-058_validate_prometheus_rule | Creating namespace: kuttl-test-relieved-kitten logger.go:42: 16:53:21 | 1-058_validate_prometheus_rule/1-install | starting test step 1-install logger.go:42: 16:53:21 | 1-058_validate_prometheus_rule/1-install | ArgoCD:kuttl-test-relieved-kitten/example-argocd created === CONT kuttl/harness/1-061_validate_resource_tracking_method logger.go:42: 16:53:41 | 1-061_validate_resource_tracking_method/1-install | test step completed 1-install logger.go:42: 16:53:41 | 1-061_validate_resource_tracking_method/2-patch_cm_annotation | starting test step 2-patch_cm_annotation logger.go:42: 16:53:41 | 1-061_validate_resource_tracking_method/2-patch_cm_annotation | running command: [sh -c set -e oc patch argocds.argoproj.io argocd --type=merge -p '{"spec":{"resourceTrackingMethod":"annotation"}}' -n $NAMESPACE ] logger.go:42: 16:53:42 | 1-061_validate_resource_tracking_method/2-patch_cm_annotation | argocd.argoproj.io/argocd patched logger.go:42: 16:53:42 | 1-061_validate_resource_tracking_method/2-patch_cm_annotation | test step completed 2-patch_cm_annotation logger.go:42: 16:53:42 | 1-061_validate_resource_tracking_method/3-patch_cm_annotation_label | starting test step 3-patch_cm_annotation_label logger.go:42: 16:53:42 | 1-061_validate_resource_tracking_method/3-patch_cm_annotation_label | running command: [sh -c set -e oc patch argocds.argoproj.io argocd --type=merge -p '{"spec":{"resourceTrackingMethod":"annotation+label"}}' -n $NAMESPACE ] logger.go:42: 16:53:43 | 1-061_validate_resource_tracking_method/3-patch_cm_annotation_label | argocd.argoproj.io/argocd patched logger.go:42: 16:53:44 | 1-061_validate_resource_tracking_method/3-patch_cm_annotation_label | test step completed 3-patch_cm_annotation_label logger.go:42: 16:53:44 | 1-061_validate_resource_tracking_method/4-patch_cm_invalid_method | starting test step 4-patch_cm_invalid_method logger.go:42: 16:53:44 | 1-061_validate_resource_tracking_method/4-patch_cm_invalid_method | running command: [sh -c set -e oc patch argocds.argoproj.io argocd --type=merge -p '{"spec":{"resourceTrackingMethod":"invalid_method"}}' -n $NAMESPACE ] logger.go:42: 16:53:44 | 1-061_validate_resource_tracking_method/4-patch_cm_invalid_method | argocd.argoproj.io/argocd patched logger.go:42: 16:53:45 | 1-061_validate_resource_tracking_method/4-patch_cm_invalid_method | test step completed 4-patch_cm_invalid_method logger.go:42: 16:53:45 | 1-061_validate_resource_tracking_method | skipping kubernetes event logging logger.go:42: 16:53:45 | 1-061_validate_resource_tracking_method | Deleting namespace: kuttl-test-patient-polliwog === CONT kuttl/harness/1-057_validate_notifications logger.go:42: 16:53:51 | 1-057_validate_notifications | Creating namespace: kuttl-test-present-tiger logger.go:42: 16:53:51 | 1-057_validate_notifications/1-install | starting test step 1-install logger.go:42: 16:53:51 | 1-057_validate_notifications/1-install | ArgoCD:kuttl-test-present-tiger/argocd created logger.go:42: 16:53:51 | 1-057_validate_notifications/1-install | Service:kuttl-test-present-tiger/smtp4dev created logger.go:42: 16:53:52 | 1-057_validate_notifications/1-install | Deployment:kuttl-test-present-tiger/smtp4dev created === CONT kuttl/harness/1-058_validate_prometheus_rule logger.go:42: 16:53:53 | 1-058_validate_prometheus_rule/1-install | test step completed 1-install logger.go:42: 16:53:53 | 1-058_validate_prometheus_rule/2-wait | starting test step 2-wait logger.go:42: 16:53:53 | 1-058_validate_prometheus_rule/2-wait | running command: [sh -c function wait_until_pods_running() { echo -n "Waiting until all pods in namespace $1 are up" for i in {1..150}; do # timeout after 5 minutes local pods="$(oc get pods --no-headers -n $1 2>/dev/null)" # All pods must be running local not_running=$(echo "${pods}" | grep -v Running | grep -v Completed | wc -l) if [[ -n "${pods}" && ${not_running} -eq 0 ]]; then local all_ready=1 while read pod ; do local status=(`echo -n ${pod} | cut -f2 -d' ' | tr '/' ' '`) # All containers must be ready [[ -z ${status[0]} ]] && all_ready=0 && break [[ -z ${status[1]} ]] && all_ready=0 && break [[ ${status[0]} -lt 1 ]] && all_ready=0 && break [[ ${status[1]} -lt 1 ]] && all_ready=0 && break [[ ${status[0]} -ne ${status[1]} ]] && all_ready=0 && break done <<< $(echo "${pods}" | grep -v Completed) if (( all_ready )); then echo -e "\nAll pods are up:\n${pods}" return 0 fi fi echo -n "." sleep 2 done echo -e "\n\nERROR: timeout waiting for pods to come up\n${pods}" return 1 } wait_until_pods_running $NAMESPACE ] logger.go:42: 16:53:54 | 1-058_validate_prometheus_rule/2-wait | Waiting until all pods in namespace kuttl-test-relieved-kitten are up logger.go:42: 16:53:54 | 1-058_validate_prometheus_rule/2-wait | All pods are up: logger.go:42: 16:53:54 | 1-058_validate_prometheus_rule/2-wait | example-argocd-application-controller-0 1/1 Running 0 32s logger.go:42: 16:53:54 | 1-058_validate_prometheus_rule/2-wait | example-argocd-redis-67f575d9c8-r7zfp 1/1 Running 0 32s logger.go:42: 16:53:54 | 1-058_validate_prometheus_rule/2-wait | example-argocd-repo-server-75cd455b8b-f4m2j 1/1 Running 0 32s logger.go:42: 16:53:54 | 1-058_validate_prometheus_rule/2-wait | example-argocd-server-5495f44ffb-rvhw4 1/1 Running 0 32s logger.go:42: 16:53:54 | 1-058_validate_prometheus_rule/2-wait | test step completed 2-wait logger.go:42: 16:53:54 | 1-058_validate_prometheus_rule/3-create_application | starting test step 3-create_application logger.go:42: 16:53:54 | 1-058_validate_prometheus_rule/3-create_application | running command: [sh -c set -e cat << EOF | oc apply -f - apiVersion: argoproj.io/v1alpha1 kind: Application metadata: name: test-1-58-custom namespace: ${NAMESPACE} spec: project: default source: repoURL: https://github.com/jaideepr97/gitops-examples path: bgd-k8s targetRevision: "HEAD" destination: server: "https://kubernetes.default.svc" namespace: ${NAMESPACE} syncPolicy: automated: {} EOF ] logger.go:42: 16:53:56 | 1-058_validate_prometheus_rule/3-create_application | application.argoproj.io/test-1-58-custom created logger.go:42: 16:53:57 | 1-058_validate_prometheus_rule/3-create_application | test step completed 3-create_application logger.go:42: 16:53:57 | 1-058_validate_prometheus_rule | skipping kubernetes event logging logger.go:42: 16:53:57 | 1-058_validate_prometheus_rule | Deleting namespace: kuttl-test-relieved-kitten === CONT kuttl/harness/1-055_validate_notification_controller logger.go:42: 16:54:03 | 1-055_validate_notification_controller | Ignoring errors.yaml as it does not match file name regexp: ^(\d+)-(?:[^\.]+)(?:\.yaml)?$ logger.go:42: 16:54:03 | 1-055_validate_notification_controller | Creating namespace: kuttl-test-classic-skunk logger.go:42: 16:54:03 | 1-055_validate_notification_controller/1-install | starting test step 1-install logger.go:42: 16:54:03 | 1-055_validate_notification_controller/1-install | ArgoCD:kuttl-test-classic-skunk/example-argocd created === CONT kuttl/harness/1-057_validate_notifications logger.go:42: 16:54:23 | 1-057_validate_notifications/1-install | test step completed 1-install logger.go:42: 16:54:23 | 1-057_validate_notifications/2-update-notifications-cm | starting test step 2-update-notifications-cm logger.go:42: 16:54:23 | 1-057_validate_notifications/2-update-notifications-cm | running command: [sh -c sleep 15] === CONT kuttl/harness/1-055_validate_notification_controller logger.go:42: 16:54:35 | 1-055_validate_notification_controller/1-install | test step completed 1-install logger.go:42: 16:54:35 | 1-055_validate_notification_controller/2-enable_notification | starting test step 2-enable_notification logger.go:42: 16:54:35 | 1-055_validate_notification_controller/2-enable_notification | ArgoCD:kuttl-test-classic-skunk/example-argocd updated === CONT kuttl/harness/1-057_validate_notifications logger.go:42: 16:54:38 | 1-057_validate_notifications/2-update-notifications-cm | running command: [sh -c set -e kubectl patch cm argocd-notifications-cm -n $NAMESPACE --type merge -p '{"data": {"service.email.gmail": "{host: smtp4dev, port: 2525, from: fake@email.com }" }}' ] logger.go:42: 16:54:39 | 1-057_validate_notifications/2-update-notifications-cm | configmap/argocd-notifications-cm patched logger.go:42: 16:54:39 | 1-057_validate_notifications/2-update-notifications-cm | running command: [sh -c sleep 5] === CONT kuttl/harness/1-055_validate_notification_controller logger.go:42: 16:54:39 | 1-055_validate_notification_controller/2-enable_notification | test step completed 2-enable_notification logger.go:42: 16:54:39 | 1-055_validate_notification_controller/3-disable_notification | starting test step 3-disable_notification logger.go:42: 16:54:39 | 1-055_validate_notification_controller/3-disable_notification | ArgoCD:kuttl-test-classic-skunk/example-argocd updated logger.go:42: 16:54:39 | 1-055_validate_notification_controller/3-disable_notification | test step completed 3-disable_notification logger.go:42: 16:54:39 | 1-055_validate_notification_controller/4-check | starting test step 4-check logger.go:42: 16:54:39 | 1-055_validate_notification_controller/4-check | test step completed 4-check logger.go:42: 16:54:39 | 1-055_validate_notification_controller | skipping kubernetes event logging logger.go:42: 16:54:39 | 1-055_validate_notification_controller | Deleting namespace: kuttl-test-classic-skunk === CONT kuttl/harness/1-057_validate_notifications logger.go:42: 16:54:44 | 1-057_validate_notifications/2-update-notifications-cm | test step completed 2-update-notifications-cm logger.go:42: 16:54:44 | 1-057_validate_notifications/3-create-app | starting test step 3-create-app logger.go:42: 16:54:44 | 1-057_validate_notifications/3-create-app | running command: [sh -c set -e cat << EOF | oc apply -f - apiVersion: argoproj.io/v1alpha1 kind: Application metadata: name: my-app-3 namespace: $NAMESPACE annotations: "notifications.argoproj.io/subscribe.on-created.gmail": "jdfake@email.com" spec: destination: namespace: $NAMESPACE server: https://kubernetes.default.svc project: default source: repoURL: https://github.com/redhat-developer/gitops-operator path: test/examples/nginx targetRevision: HEAD EOF ] === CONT kuttl/harness/1-055_drop_resource_customizations logger.go:42: 16:54:45 | 1-055_drop_resource_customizations | Creating namespace: kuttl-test-strong-ladybird logger.go:42: 16:54:45 | 1-055_drop_resource_customizations/1-alpha-argocd | starting test step 1-alpha-argocd logger.go:42: 16:54:45 | 1-055_drop_resource_customizations/1-alpha-argocd | ArgoCD:kuttl-test-strong-ladybird/argocd created === CONT kuttl/harness/1-057_validate_notifications logger.go:42: 16:54:45 | 1-057_validate_notifications/3-create-app | application.argoproj.io/my-app-3 created logger.go:42: 16:54:45 | 1-057_validate_notifications/3-create-app | running command: [sh -c sleep 5] logger.go:42: 16:54:50 | 1-057_validate_notifications/3-create-app | test step completed 3-create-app logger.go:42: 16:54:50 | 1-057_validate_notifications/4-delete-app | starting test step 4-delete-app logger.go:42: 16:54:50 | 1-057_validate_notifications/4-delete-app | running command: [sh -c set -e kubectl delete -n $NAMESPACE application.argoproj.io my-app-3 ] logger.go:42: 16:54:51 | 1-057_validate_notifications/4-delete-app | application.argoproj.io "my-app-3" deleted logger.go:42: 16:54:51 | 1-057_validate_notifications/4-delete-app | running command: [sh -c sleep 5] logger.go:42: 16:54:56 | 1-057_validate_notifications/4-delete-app | test step completed 4-delete-app logger.go:42: 16:54:56 | 1-057_validate_notifications/5-verify-email | starting test step 5-verify-email logger.go:42: 16:54:56 | 1-057_validate_notifications/5-verify-email | running command: [sh -c set -e smtp4dev_pod=$(kubectl get pod -l=app=smtp4dev -o NAME -n $NAMESPACE) exit_code=$(kubectl -n $NAMESPACE exec --stdin "${smtp4dev_pod}" -- /bin/bash \ -c 'if [[ $(grep -rnw /tmp -e "Subject: Application my-app-3 has been created.") ]]; then exit 0; else exit 1; fi') if [[ $exit_code -eq 0 ]]; then exit 0 else exit 1 fi ] logger.go:42: 16:54:57 | 1-057_validate_notifications/5-verify-email | test step completed 5-verify-email logger.go:42: 16:54:57 | 1-057_validate_notifications | skipping kubernetes event logging logger.go:42: 16:54:57 | 1-057_validate_notifications | Deleting namespace: kuttl-test-present-tiger === CONT kuttl/harness/1-055_drop_resource_customizations logger.go:42: 16:54:58 | 1-055_drop_resource_customizations/1-alpha-argocd | test step completed 1-alpha-argocd logger.go:42: 16:54:58 | 1-055_drop_resource_customizations/2- | starting test step 2- logger.go:42: 16:54:58 | 1-055_drop_resource_customizations/2- | test step completed 2- logger.go:42: 16:54:58 | 1-055_drop_resource_customizations | skipping kubernetes event logging logger.go:42: 16:54:58 | 1-055_drop_resource_customizations | Deleting namespace: kuttl-test-strong-ladybird === CONT kuttl/harness/1-054_validate_deploymentconfig logger.go:42: 16:55:03 | 1-054_validate_deploymentconfig | Creating namespace: kuttl-test-key-teal logger.go:42: 16:55:03 | 1-054_validate_deploymentconfig/1-install | starting test step 1-install logger.go:42: 16:55:03 | 1-054_validate_deploymentconfig/1-install | ArgoCD:kuttl-test-key-teal/argocd created === CONT kuttl/harness/1-032_validate_resource_inclusions logger.go:42: 16:55:04 | 1-032_validate_resource_inclusions | Creating namespace: kuttl-test-primary-crow logger.go:42: 16:55:04 | 1-032_validate_resource_inclusions/1-install | starting test step 1-install logger.go:42: 16:55:04 | 1-032_validate_resource_inclusions/1-install | ArgoCD:kuttl-test-primary-crow/argocd created === CONT kuttl/harness/1-054_validate_deploymentconfig logger.go:42: 16:55:35 | 1-054_validate_deploymentconfig/1-install | test step completed 1-install logger.go:42: 16:55:35 | 1-054_validate_deploymentconfig/2-install-deploymentconfig | starting test step 2-install-deploymentconfig logger.go:42: 16:55:35 | 1-054_validate_deploymentconfig/2-install-deploymentconfig | running command: [sh -c set -eo pipefail # Install ArgoCD Application with 2 replicas cat << EOF | oc apply -f - apiVersion: argoproj.io/v1alpha1 kind: Application metadata: name: app-deploymentconfig namespace: ${NAMESPACE} spec: project: default source: repoURL: https://github.com/redhat-developer/gitops-operator path: test/examples/deploymentconfig-example targetRevision: "HEAD" destination: server: https://kubernetes.default.svc namespace: ${NAMESPACE} syncPolicy: automated: {} EOF # Give some time to Application before asserting sleep 10 exit 0 ] === CONT kuttl/harness/1-032_validate_resource_inclusions logger.go:42: 16:55:36 | 1-032_validate_resource_inclusions/1-install | test step completed 1-install logger.go:42: 16:55:36 | 1-032_validate_resource_inclusions/2-add_resource_inclusions | starting test step 2-add_resource_inclusions logger.go:42: 16:55:36 | 1-032_validate_resource_inclusions/2-add_resource_inclusions | ArgoCD:kuttl-test-primary-crow/argocd updated === CONT kuttl/harness/1-054_validate_deploymentconfig logger.go:42: 16:55:36 | 1-054_validate_deploymentconfig/2-install-deploymentconfig | application.argoproj.io/app-deploymentconfig created === CONT kuttl/harness/1-032_validate_resource_inclusions logger.go:42: 16:55:37 | 1-032_validate_resource_inclusions/2-add_resource_inclusions | test step completed 2-add_resource_inclusions logger.go:42: 16:55:37 | 1-032_validate_resource_inclusions | skipping kubernetes event logging logger.go:42: 16:55:38 | 1-032_validate_resource_inclusions | Deleting namespace: kuttl-test-primary-crow === CONT kuttl/harness/1-036_validate_keycloak_resource_reqs logger.go:42: 16:55:43 | 1-036_validate_keycloak_resource_reqs | Creating namespace: kuttl-test-skilled-aardvark logger.go:42: 16:55:43 | 1-036_validate_keycloak_resource_reqs/1-install | starting test step 1-install logger.go:42: 16:55:43 | 1-036_validate_keycloak_resource_reqs/1-install | ArgoCD:kuttl-test-skilled-aardvark/argocd created === CONT kuttl/harness/1-054_validate_deploymentconfig logger.go:42: 16:55:46 | 1-054_validate_deploymentconfig/2-install-deploymentconfig | test step completed 2-install-deploymentconfig logger.go:42: 16:55:46 | 1-054_validate_deploymentconfig/3- | starting test step 3- logger.go:42: 16:55:55 | 1-054_validate_deploymentconfig/3- | test step completed 3- logger.go:42: 16:55:55 | 1-054_validate_deploymentconfig/4-scaledown-deploymentconfig | starting test step 4-scaledown-deploymentconfig logger.go:42: 16:55:55 | 1-054_validate_deploymentconfig/4-scaledown-deploymentconfig | Application:kuttl-test-key-teal/app-deploymentconfig updated logger.go:42: 16:55:56 | 1-054_validate_deploymentconfig/4-scaledown-deploymentconfig | test step completed 4-scaledown-deploymentconfig logger.go:42: 16:55:56 | 1-054_validate_deploymentconfig | skipping kubernetes event logging logger.go:42: 16:55:56 | 1-054_validate_deploymentconfig | Deleting namespace: kuttl-test-key-teal === CONT kuttl/harness/1-036_validate_keycloak_resource_reqs logger.go:42: 16:56:15 | 1-036_validate_keycloak_resource_reqs/1-install | test step completed 1-install logger.go:42: 16:56:15 | 1-036_validate_keycloak_resource_reqs/2-update-sso-keycloak-provider | starting test step 2-update-sso-keycloak-provider logger.go:42: 16:56:15 | 1-036_validate_keycloak_resource_reqs/2-update-sso-keycloak-provider | running command: [sh -c oc patch -n $NAMESPACE argocd/argocd --type='json' -p='[{"op": "add", "path": "/spec/sso", "value": {"provider": "keycloak"}}]' ] logger.go:42: 16:56:15 | 1-036_validate_keycloak_resource_reqs/2-update-sso-keycloak-provider | argocd.argoproj.io/argocd patched === CONT kuttl/harness/1-034_validate_webhook_notifications logger.go:42: 16:56:41 | 1-034_validate_webhook_notifications | Creating namespace: kuttl-test-simple-toucan logger.go:42: 16:56:41 | 1-034_validate_webhook_notifications/0-setup-webhook-server | starting test step 0-setup-webhook-server logger.go:42: 16:56:41 | 1-034_validate_webhook_notifications/0-setup-webhook-server | Service:kuttl-test-simple-toucan/webhook created logger.go:42: 16:56:41 | 1-034_validate_webhook_notifications/0-setup-webhook-server | Deployment:kuttl-test-simple-toucan/webhook created logger.go:42: 16:56:41 | 1-034_validate_webhook_notifications/0-setup-webhook-server | ConfigMap:kuttl-test-simple-toucan/webhook-config created logger.go:42: 16:56:41 | 1-034_validate_webhook_notifications/0-setup-webhook-server | Secret:kuttl-test-simple-toucan/webhook-tls created logger.go:42: 16:56:48 | 1-034_validate_webhook_notifications/0-setup-webhook-server | test step completed 0-setup-webhook-server logger.go:42: 16:56:48 | 1-034_validate_webhook_notifications/1-install-argocd | starting test step 1-install-argocd logger.go:42: 16:56:49 | 1-034_validate_webhook_notifications/1-install-argocd | ArgoCD:kuttl-test-simple-toucan/argocd created logger.go:42: 16:57:21 | 1-034_validate_webhook_notifications/1-install-argocd | test step completed 1-install-argocd logger.go:42: 16:57:21 | 1-034_validate_webhook_notifications/2-update-notifications-cm | starting test step 2-update-notifications-cm logger.go:42: 16:57:21 | 1-034_validate_webhook_notifications/2-update-notifications-cm | ConfigMap:kuttl-test-simple-toucan/argocd-notifications-cm updated logger.go:42: 16:57:21 | 1-034_validate_webhook_notifications/2-update-notifications-cm | test step completed 2-update-notifications-cm logger.go:42: 16:57:21 | 1-034_validate_webhook_notifications/3-sleep | starting test step 3-sleep logger.go:42: 16:57:21 | 1-034_validate_webhook_notifications/3-sleep | running command: [sh -c sleep 20] === CONT kuttl/harness/1-065_validate_redis_ha_anti_affinity logger.go:42: 16:57:22 | 1-065_validate_redis_ha_anti_affinity/2- | test step completed 2- logger.go:42: 16:57:22 | 1-065_validate_redis_ha_anti_affinity | skipping kubernetes event logging logger.go:42: 16:57:22 | 1-065_validate_redis_ha_anti_affinity | Deleting namespace: kuttl-test-communal-beetle === CONT kuttl/harness/1-092_validate_workload_status_monitoring_alert logger.go:42: 16:57:37 | 1-092_validate_workload_status_monitoring_alert/2-verify-alert | running command: [sh -c set -eo pipefail cleanup() { rm alerts.json } trap cleanup INT TERM EXIT jq '.data.alerts' <<< "$(oc -n openshift-monitoring exec -c prometheus prometheus-k8s-0 -- curl -s 'http://localhost:9090/api/v1/alerts')" > alerts.json result=$(jq --arg NAMESPACE "$NAMESPACE" ' .[] | select( .labels.deployment == "argocd-applicationset-controller" and .labels.namespace == $NAMESPACE and .labels.alertname == "ApplicationSetControllerNotReady" and .state == "firing")' alerts.json) [[ -n "$result" ]] && exit 0 || exit 1 ] logger.go:42: 16:57:38 | 1-092_validate_workload_status_monitoring_alert/2-verify-alert | test step completed 2-verify-alert logger.go:42: 16:57:38 | 1-092_validate_workload_status_monitoring_alert/3-disable-monitoring | starting test step 3-disable-monitoring logger.go:42: 16:57:38 | 1-092_validate_workload_status_monitoring_alert/3-disable-monitoring | ArgoCD:kuttl-test-primary-kitten/argocd updated logger.go:42: 16:57:39 | 1-092_validate_workload_status_monitoring_alert/3-disable-monitoring | test step completed 3-disable-monitoring logger.go:42: 16:57:39 | 1-092_validate_workload_status_monitoring_alert | skipping kubernetes event logging logger.go:42: 16:57:39 | 1-092_validate_workload_status_monitoring_alert | Deleting namespace: kuttl-test-primary-kitten === CONT kuttl/harness/1-034_validate_webhook_notifications logger.go:42: 16:57:41 | 1-034_validate_webhook_notifications/3-sleep | test step completed 3-sleep logger.go:42: 16:57:41 | 1-034_validate_webhook_notifications/4-create-app | starting test step 4-create-app logger.go:42: 16:57:41 | 1-034_validate_webhook_notifications/4-create-app | running command: [sh -c set -e cat << EOF | kubectl apply -f - apiVersion: argoproj.io/v1alpha1 kind: Application metadata: name: my-app-3 namespace: $NAMESPACE annotations: "notifications.argoproj.io/subscribe.test-on-created.test-webhook": "" spec: destination: namespace: $NAMESPACE server: https://kubernetes.default.svc project: default source: repoURL: https://github.com/redhat-developer/gitops-operator path: test/examples/nginx targetRevision: HEAD EOF ] logger.go:42: 16:57:43 | 1-034_validate_webhook_notifications/4-create-app | application.argoproj.io/my-app-3 created logger.go:42: 16:57:43 | 1-034_validate_webhook_notifications/4-create-app | running command: [sh -c sleep 5] === CONT kuttl/harness/1-033_validate_resource_exclusions logger.go:42: 16:57:45 | 1-033_validate_resource_exclusions | Creating namespace: kuttl-test-stable-malamute logger.go:42: 16:57:45 | 1-033_validate_resource_exclusions/1-install | starting test step 1-install logger.go:42: 16:57:45 | 1-033_validate_resource_exclusions/1-install | ArgoCD:kuttl-test-stable-malamute/argocd created === CONT kuttl/harness/1-034_validate_webhook_notifications logger.go:42: 16:57:48 | 1-034_validate_webhook_notifications/4-create-app | test step completed 4-create-app logger.go:42: 16:57:48 | 1-034_validate_webhook_notifications/5-verify-webhook-notification | starting test step 5-verify-webhook-notification logger.go:42: 16:57:48 | 1-034_validate_webhook_notifications/5-verify-webhook-notification | running command: [sh -c #!/bin/bash kubectl -n $NAMESPACE logs deployment.apps/argocd-notifications-controller | grep "x509" PREV_CMD=$? if [ $PREV_CMD -eq 1 ]; then exit 0 else exit 1 fi ] logger.go:42: 16:57:49 | 1-034_validate_webhook_notifications/5-verify-webhook-notification | running command: [sh -c #!/bin/bash kubectl -n $NAMESPACE logs deployment.apps/webhook | grep '{"created":"my-app-3"}' PREV_CMD=$? if [ $PREV_CMD -eq 0 ]; then exit 0 else exit 1 fi ] logger.go:42: 16:57:49 | 1-034_validate_webhook_notifications/5-verify-webhook-notification | [webhook] 2024/05/27 16:57:43 [8a8fac] executing /usr/bin/date (/usr/bin/date) with arguments ["/usr/bin/date"] and environment [PAYLOAD={"created":"my-app-3"}] using /var/webhook as cwd logger.go:42: 16:57:49 | 1-034_validate_webhook_notifications/5-verify-webhook-notification | test step completed 5-verify-webhook-notification logger.go:42: 16:57:49 | 1-034_validate_webhook_notifications | skipping kubernetes event logging logger.go:42: 16:57:49 | 1-034_validate_webhook_notifications | Deleting namespace: kuttl-test-simple-toucan === CONT kuttl/harness/1-033_validate_applicationset_tls_scm_volume_mount logger.go:42: 16:57:55 | 1-033_validate_applicationset_tls_scm_volume_mount | Creating namespace: kuttl-test-factual-boxer logger.go:42: 16:57:55 | 1-033_validate_applicationset_tls_scm_volume_mount/1-install | starting test step 1-install logger.go:42: 16:57:55 | 1-033_validate_applicationset_tls_scm_volume_mount/1-install | Namespace:/test-1-32-appsets-scm-tls-mount created logger.go:42: 16:57:56 | 1-033_validate_applicationset_tls_scm_volume_mount/1-install | ConfigMap:test-1-32-appsets-scm-tls-mount/test-1-32-appsets-scm-tls-cm created logger.go:42: 16:57:56 | 1-033_validate_applicationset_tls_scm_volume_mount/1-install | ArgoCD:test-1-32-appsets-scm-tls-mount/argocd created === CONT kuttl/harness/1-073_validate_rhsso logger.go:42: 16:58:07 | 1-073_validate_rhsso | Creating namespace: kuttl-test-possible-worm logger.go:42: 16:58:07 | 1-073_validate_rhsso/1-argocd-rhsso | starting test step 1-argocd-rhsso logger.go:42: 16:58:07 | 1-073_validate_rhsso/1-argocd-rhsso | ArgoCD:kuttl-test-possible-worm/example-argocd-keycloak created === CONT kuttl/harness/1-033_validate_resource_exclusions logger.go:42: 16:58:18 | 1-033_validate_resource_exclusions/1-install | test step completed 1-install logger.go:42: 16:58:18 | 1-033_validate_resource_exclusions/2-add_resource_exclusions | starting test step 2-add_resource_exclusions logger.go:42: 16:58:18 | 1-033_validate_resource_exclusions/2-add_resource_exclusions | ArgoCD:kuttl-test-stable-malamute/argocd updated logger.go:42: 16:58:19 | 1-033_validate_resource_exclusions/2-add_resource_exclusions | test step completed 2-add_resource_exclusions logger.go:42: 16:58:19 | 1-033_validate_resource_exclusions | skipping kubernetes event logging logger.go:42: 16:58:19 | 1-033_validate_resource_exclusions | Deleting namespace: kuttl-test-stable-malamute === CONT kuttl/harness/1-083_validate_kustomize_namereference logger.go:42: 16:58:25 | 1-083_validate_kustomize_namereference | Creating namespace: kuttl-test-glowing-rabbit logger.go:42: 16:58:25 | 1-083_validate_kustomize_namereference/1-install | starting test step 1-install logger.go:42: 16:58:25 | 1-083_validate_kustomize_namereference/1-install | Namespace:/namespace-gitops-2038 created logger.go:42: 16:58:25 | 1-083_validate_kustomize_namereference/1-install | ArgoCD:namespace-gitops-2038/argocd created === CONT kuttl/harness/1-033_validate_applicationset_tls_scm_volume_mount logger.go:42: 16:58:28 | 1-033_validate_applicationset_tls_scm_volume_mount/1-install | test step completed 1-install logger.go:42: 16:58:28 | 1-033_validate_applicationset_tls_scm_volume_mount | skipping kubernetes event logging logger.go:42: 16:58:28 | 1-033_validate_applicationset_tls_scm_volume_mount | Deleting namespace: kuttl-test-factual-boxer === CONT kuttl/harness/1-036_validate_keycloak_resource_reqs logger.go:42: 16:58:30 | 1-036_validate_keycloak_resource_reqs/2-update-sso-keycloak-provider | test step completed 2-update-sso-keycloak-provider logger.go:42: 16:58:30 | 1-036_validate_keycloak_resource_reqs/3-check-resources | starting test step 3-check-resources logger.go:42: 16:58:30 | 1-036_validate_keycloak_resource_reqs/3-check-resources | running command: [sh -c resources=$(oc get -n $NAMESPACE pod/keycloak-1-deploy -o jsonpath='{.spec.containers[0].resources}') if [[ -n ${resources} ]]; then if [[ "${resources}" != '{"limits":{"cpu":"500m","memory":"512Mi"},"requests":{"cpu":"250m","memory":"256Mi"}}' ]]; then echo "resources spec for pod/keycloak-1-deploy are incorrect" echo "${resources}" exit 1 fi else echo "resources spec not found in pod/keycloak-1-deploy" exit 1 fi ] logger.go:42: 16:58:31 | 1-036_validate_keycloak_resource_reqs/3-check-resources | test step completed 3-check-resources logger.go:42: 16:58:31 | 1-036_validate_keycloak_resource_reqs | skipping kubernetes event logging logger.go:42: 16:58:31 | 1-036_validate_keycloak_resource_reqs | Deleting namespace: kuttl-test-skilled-aardvark === CONT kuttl/harness/1-082_validate_node_placement logger.go:42: 16:58:33 | 1-082_validate_node_placement | Creating namespace: kuttl-test-evident-falcon logger.go:42: 16:58:33 | 1-082_validate_node_placement/1-default-node-selector | starting test step 1-default-node-selector logger.go:42: 16:58:33 | 1-082_validate_node_placement/1-default-node-selector | ArgoCD:kuttl-test-evident-falcon/example-argocd created logger.go:42: 16:58:35 | 1-082_validate_node_placement/1-default-node-selector | test step completed 1-default-node-selector logger.go:42: 16:58:35 | 1-082_validate_node_placement/2-custom-node-placement | starting test step 2-custom-node-placement logger.go:42: 16:58:35 | 1-082_validate_node_placement/2-custom-node-placement | ArgoCD:kuttl-test-evident-falcon/example-argocd updated logger.go:42: 16:58:36 | 1-082_validate_node_placement/2-custom-node-placement | test step completed 2-custom-node-placement logger.go:42: 16:58:36 | 1-082_validate_node_placement/3-node-placement-with-toleration | starting test step 3-node-placement-with-toleration logger.go:42: 16:58:36 | 1-082_validate_node_placement/3-node-placement-with-toleration | ArgoCD:kuttl-test-evident-falcon/example-argocd updated logger.go:42: 16:58:37 | 1-082_validate_node_placement/3-node-placement-with-toleration | test step completed 3-node-placement-with-toleration logger.go:42: 16:58:37 | 1-082_validate_node_placement | skipping kubernetes event logging === CONT kuttl/harness/1-081_validate_applicationset_deployment === CONT kuttl/harness/1-082_validate_node_placement logger.go:42: 16:58:37 | 1-082_validate_node_placement | Deleting namespace: kuttl-test-evident-falcon === CONT kuttl/harness/1-081_validate_applicationset_deployment logger.go:42: 16:58:37 | 1-081_validate_applicationset_deployment | Creating namespace: kuttl-test-brave-reindeer logger.go:42: 16:58:37 | 1-081_validate_applicationset_deployment/1- | starting test step 1- logger.go:42: 16:58:37 | 1-081_validate_applicationset_deployment/1- | test step completed 1- logger.go:42: 16:58:37 | 1-081_validate_applicationset_deployment | skipping kubernetes event logging logger.go:42: 16:58:37 | 1-081_validate_applicationset_deployment | Deleting namespace: kuttl-test-brave-reindeer === CONT kuttl/harness/1-080_validate_regex_support_argocd_rbac logger.go:42: 16:58:43 | 1-080_validate_regex_support_argocd_rbac | Creating namespace: kuttl-test-joint-mollusk === CONT kuttl/harness/1-079_validate_vars_for_notificaitons === CONT kuttl/harness/1-080_validate_regex_support_argocd_rbac logger.go:42: 16:58:43 | 1-080_validate_regex_support_argocd_rbac/1-install | starting test step 1-install === CONT kuttl/harness/1-079_validate_vars_for_notificaitons logger.go:42: 16:58:43 | 1-079_validate_vars_for_notificaitons | Creating namespace: kuttl-test-fair-parakeet logger.go:42: 16:58:43 | 1-079_validate_vars_for_notificaitons/1-install | starting test step 1-install === CONT kuttl/harness/1-080_validate_regex_support_argocd_rbac logger.go:42: 16:58:43 | 1-080_validate_regex_support_argocd_rbac/1-install | ArgoCD:kuttl-test-joint-mollusk/example-argocd created === CONT kuttl/harness/1-079_validate_vars_for_notificaitons logger.go:42: 16:58:43 | 1-079_validate_vars_for_notificaitons/1-install | ArgoCD:kuttl-test-fair-parakeet/example-argocd created === CONT kuttl/harness/1-080_validate_regex_support_argocd_rbac logger.go:42: 16:58:57 | 1-080_validate_regex_support_argocd_rbac/1-install | test step completed 1-install logger.go:42: 16:58:57 | 1-080_validate_regex_support_argocd_rbac/2-modify-argocd | starting test step 2-modify-argocd logger.go:42: 16:58:57 | 1-080_validate_regex_support_argocd_rbac/2-modify-argocd | ArgoCD:kuttl-test-joint-mollusk/example-argocd updated === CONT kuttl/harness/1-083_validate_kustomize_namereference logger.go:42: 16:58:58 | 1-083_validate_kustomize_namereference/1-install | test step completed 1-install logger.go:42: 16:58:58 | 1-083_validate_kustomize_namereference/2-install-kustomize-app | starting test step 2-install-kustomize-app logger.go:42: 16:58:58 | 1-083_validate_kustomize_namereference/2-install-kustomize-app | Application:namespace-gitops-2038/app-kustomize created === CONT kuttl/harness/1-080_validate_regex_support_argocd_rbac logger.go:42: 16:58:58 | 1-080_validate_regex_support_argocd_rbac/2-modify-argocd | test step completed 2-modify-argocd logger.go:42: 16:58:58 | 1-080_validate_regex_support_argocd_rbac/3-try-modify | starting test step 3-try-modify logger.go:42: 16:58:58 | 1-080_validate_regex_support_argocd_rbac/3-try-modify | ConfigMap:kuttl-test-joint-mollusk/argocd-rbac-cm updated logger.go:42: 16:58:59 | 1-080_validate_regex_support_argocd_rbac/3-try-modify | test step completed 3-try-modify logger.go:42: 16:58:59 | 1-080_validate_regex_support_argocd_rbac/4-modify-argocd | starting test step 4-modify-argocd logger.go:42: 16:58:59 | 1-080_validate_regex_support_argocd_rbac/4-modify-argocd | ArgoCD:kuttl-test-joint-mollusk/example-argocd updated === CONT kuttl/harness/1-083_validate_kustomize_namereference logger.go:42: 16:59:00 | 1-083_validate_kustomize_namereference/2-install-kustomize-app | test step completed 2-install-kustomize-app logger.go:42: 16:59:00 | 1-083_validate_kustomize_namereference/99-delete | starting test step 99-delete === CONT kuttl/harness/1-080_validate_regex_support_argocd_rbac logger.go:42: 16:59:00 | 1-080_validate_regex_support_argocd_rbac/4-modify-argocd | test step completed 4-modify-argocd logger.go:42: 16:59:00 | 1-080_validate_regex_support_argocd_rbac | skipping kubernetes event logging logger.go:42: 16:59:00 | 1-080_validate_regex_support_argocd_rbac | Deleting namespace: kuttl-test-joint-mollusk === CONT kuttl/harness/1-077_validate_disable_dex_removed logger.go:42: 16:59:07 | 1-077_validate_disable_dex_removed | Creating namespace: kuttl-test-saved-tortoise logger.go:42: 16:59:07 | 1-077_validate_disable_dex_removed/1-check_disable_dex_removed | starting test step 1-check_disable_dex_removed logger.go:42: 16:59:07 | 1-077_validate_disable_dex_removed/1-check_disable_dex_removed | running command: [sh -c set -e operator_name_version=$(oc get subscription/openshift-gitops-operator -n openshift-operators -o jsonpath='{.status.installedCSV}') if [ "$(oc get csv/"${operator_name_version}" -n openshift-operators -o jsonpath='{.spec.install.spec.deployments[].spec.template.spec.containers[].env}' | grep DISABLE_DEX)" != '' ]; then echo "DISABLE_DEX env var is still present in the operator CSV." exit 1 fi ] logger.go:42: 16:59:07 | 1-077_validate_disable_dex_removed/1-check_disable_dex_removed | test step completed 1-check_disable_dex_removed logger.go:42: 16:59:07 | 1-077_validate_disable_dex_removed | skipping kubernetes event logging logger.go:42: 16:59:07 | 1-077_validate_disable_dex_removed | Deleting namespace: kuttl-test-saved-tortoise === CONT kuttl/harness/1-083_validate_kustomize_namereference logger.go:42: 16:59:12 | 1-083_validate_kustomize_namereference/99-delete | test step completed 99-delete logger.go:42: 16:59:12 | 1-083_validate_kustomize_namereference | skipping kubernetes event logging logger.go:42: 16:59:12 | 1-083_validate_kustomize_namereference | Deleting namespace: kuttl-test-glowing-rabbit === CONT kuttl/harness/1-075_validate_dex_anyuid logger.go:42: 16:59:13 | 1-075_validate_dex_anyuid | Creating namespace: kuttl-test-humane-snail logger.go:42: 16:59:13 | 1-075_validate_dex_anyuid/1-install | starting test step 1-install logger.go:42: 16:59:13 | 1-075_validate_dex_anyuid/1-install | ArgoCD:kuttl-test-humane-snail/argocd created === CONT kuttl/harness/1-079_validate_vars_for_notificaitons logger.go:42: 16:59:16 | 1-079_validate_vars_for_notificaitons/1-install | test step completed 1-install logger.go:42: 16:59:16 | 1-079_validate_vars_for_notificaitons/2-modify-argocd | starting test step 2-modify-argocd logger.go:42: 16:59:16 | 1-079_validate_vars_for_notificaitons/2-modify-argocd | ArgoCD:kuttl-test-fair-parakeet/example-argocd updated === CONT kuttl/harness/1-074_validate_terminating_namespace_block logger.go:42: 16:59:18 | 1-074_validate_terminating_namespace_block | Creating namespace: kuttl-test-allowed-aardvark logger.go:42: 16:59:18 | 1-074_validate_terminating_namespace_block/1-install | starting test step 1-install logger.go:42: 16:59:18 | 1-074_validate_terminating_namespace_block/1-install | Namespace:/gitops-2242-ns-main created logger.go:42: 16:59:18 | 1-074_validate_terminating_namespace_block/1-install | ArgoCD:gitops-2242-ns-main/gitops-2242-argocd created logger.go:42: 16:59:18 | 1-074_validate_terminating_namespace_block/1-install | RoleBinding:gitops-2242-ns-main/grant-argocd created logger.go:42: 16:59:18 | 1-074_validate_terminating_namespace_block/1-install | test step completed 1-install logger.go:42: 16:59:18 | 1-074_validate_terminating_namespace_block/2-managed-ns-cm | starting test step 2-managed-ns-cm logger.go:42: 16:59:18 | 1-074_validate_terminating_namespace_block/2-managed-ns-cm | Namespace:/gitops-2242-ns-first created logger.go:42: 16:59:18 | 1-074_validate_terminating_namespace_block/2-managed-ns-cm | ConfigMap:gitops-2242-ns-first/my-config-map-2 created logger.go:42: 16:59:18 | 1-074_validate_terminating_namespace_block/2-managed-ns-cm | test step completed 2-managed-ns-cm logger.go:42: 16:59:18 | 1-074_validate_terminating_namespace_block/3-delete-ns | starting test step 3-delete-ns logger.go:42: 16:59:18 | 1-074_validate_terminating_namespace_block/3-delete-ns | running command: [sh -c set -e oc delete ns gitops-2242-ns-first --wait=false exit 0 ] logger.go:42: 16:59:18 | 1-074_validate_terminating_namespace_block/3-delete-ns | namespace "gitops-2242-ns-first" deleted logger.go:42: 16:59:18 | 1-074_validate_terminating_namespace_block/3-delete-ns | test step completed 3-delete-ns logger.go:42: 16:59:18 | 1-074_validate_terminating_namespace_block/4-create-ns | starting test step 4-create-ns logger.go:42: 16:59:18 | 1-074_validate_terminating_namespace_block/4-create-ns | Namespace:/gitops-2242-ns-second created logger.go:42: 16:59:20 | 1-074_validate_terminating_namespace_block/4-create-ns | test step completed 4-create-ns logger.go:42: 16:59:20 | 1-074_validate_terminating_namespace_block/99-cleanup | starting test step 99-cleanup logger.go:42: 16:59:20 | 1-074_validate_terminating_namespace_block/99-cleanup | running command: [sh -c set -e # Removing finalizer from cm oc patch cm/my-config-map-2 -n gitops-2242-ns-first --type json --patch='[ { "op": "remove", "path": "/metadata/finalizers" } ]' # Deleting namespaces oc delete ns gitops-2242-ns-first --wait=false oc delete ns gitops-2242-ns-second --wait=false oc delete ns gitops-2242-ns-main --wait=false exit 0 ] logger.go:42: 16:59:20 | 1-074_validate_terminating_namespace_block/99-cleanup | configmap/my-config-map-2 patched logger.go:42: 16:59:20 | 1-074_validate_terminating_namespace_block/99-cleanup | namespace "gitops-2242-ns-first" deleted === CONT kuttl/harness/1-079_validate_vars_for_notificaitons logger.go:42: 16:59:20 | 1-079_validate_vars_for_notificaitons/2-modify-argocd | test step completed 2-modify-argocd logger.go:42: 16:59:20 | 1-079_validate_vars_for_notificaitons | skipping kubernetes event logging logger.go:42: 16:59:20 | 1-079_validate_vars_for_notificaitons | Deleting namespace: kuttl-test-fair-parakeet === CONT kuttl/harness/1-074_validate_terminating_namespace_block logger.go:42: 16:59:21 | 1-074_validate_terminating_namespace_block/99-cleanup | namespace "gitops-2242-ns-second" deleted logger.go:42: 16:59:21 | 1-074_validate_terminating_namespace_block/99-cleanup | namespace "gitops-2242-ns-main" deleted logger.go:42: 16:59:21 | 1-074_validate_terminating_namespace_block/99-cleanup | test step completed 99-cleanup logger.go:42: 16:59:21 | 1-074_validate_terminating_namespace_block | skipping kubernetes event logging logger.go:42: 16:59:21 | 1-074_validate_terminating_namespace_block | Deleting namespace: kuttl-test-allowed-aardvark === CONT kuttl/harness/1-069_validate_redis_secure_comm_autotls_ha logger.go:42: 16:59:26 | 1-069_validate_redis_secure_comm_autotls_ha | Creating namespace: kuttl-test-absolute-raccoon logger.go:42: 16:59:27 | 1-069_validate_redis_secure_comm_autotls_ha/1-install | starting test step 1-install logger.go:42: 16:59:27 | 1-069_validate_redis_secure_comm_autotls_ha/1-install | ArgoCD:kuttl-test-absolute-raccoon/argocd created === CONT kuttl/harness/1-072_validate_liveness_probe_removed logger.go:42: 16:59:27 | 1-072_validate_liveness_probe_removed | Creating namespace: kuttl-test-epic-flea logger.go:42: 16:59:27 | 1-072_validate_liveness_probe_removed/1-install | starting test step 1-install logger.go:42: 16:59:27 | 1-072_validate_liveness_probe_removed/1-install | ArgoCD:kuttl-test-epic-flea/argocd created === CONT kuttl/harness/1-075_validate_dex_anyuid logger.go:42: 16:59:46 | 1-075_validate_dex_anyuid/1-install | test step completed 1-install logger.go:42: 16:59:46 | 1-075_validate_dex_anyuid/2-change_dex_scc_to_anyuid | starting test step 2-change_dex_scc_to_anyuid logger.go:42: 16:59:46 | 1-075_validate_dex_anyuid/2-change_dex_scc_to_anyuid | running command: [sh -c set -e oc adm policy add-scc-to-user anyuid -z argocd-argocd-dex-server -n $NAMESPACE ] logger.go:42: 16:59:46 | 1-075_validate_dex_anyuid/2-change_dex_scc_to_anyuid | clusterrole.rbac.authorization.k8s.io/system:openshift:scc:anyuid added: "argocd-argocd-dex-server" logger.go:42: 16:59:46 | 1-075_validate_dex_anyuid/2-change_dex_scc_to_anyuid | test step completed 2-change_dex_scc_to_anyuid logger.go:42: 16:59:46 | 1-075_validate_dex_anyuid/3-restart_dex_pod | starting test step 3-restart_dex_pod logger.go:42: 16:59:46 | 1-075_validate_dex_anyuid/3-restart_dex_pod | running command: [sh -c set -e oc rollout restart deployment/argocd-dex-server -n $NAMESPACE ] logger.go:42: 16:59:46 | 1-075_validate_dex_anyuid/3-restart_dex_pod | deployment.apps/argocd-dex-server restarted logger.go:42: 16:59:51 | 1-075_validate_dex_anyuid/3-restart_dex_pod | test step completed 3-restart_dex_pod logger.go:42: 16:59:51 | 1-075_validate_dex_anyuid | skipping kubernetes event logging logger.go:42: 16:59:51 | 1-075_validate_dex_anyuid | Deleting namespace: kuttl-test-humane-snail === CONT kuttl/harness/1-071_validate_SCC_HA logger.go:42: 16:59:57 | 1-071_validate_SCC_HA | Creating namespace: kuttl-test-certain-rat logger.go:42: 16:59:57 | 1-071_validate_SCC_HA/1-create-scc | starting test step 1-create-scc logger.go:42: 16:59:57 | 1-071_validate_SCC_HA/1-create-scc | SecurityContextConstraints:/restricted-dropcaps created logger.go:42: 16:59:57 | 1-071_validate_SCC_HA/1-create-scc | test step completed 1-create-scc logger.go:42: 16:59:57 | 1-071_validate_SCC_HA/2-create-argocd | starting test step 2-create-argocd logger.go:42: 16:59:58 | 1-071_validate_SCC_HA/2-create-argocd | ArgoCD:kuttl-test-certain-rat/argocd created === CONT kuttl/harness/1-072_validate_liveness_probe_removed logger.go:42: 17:00:00 | 1-072_validate_liveness_probe_removed/1-install | test step completed 1-install logger.go:42: 17:00:00 | 1-072_validate_liveness_probe_removed/2-check_liveness_probe_removed | starting test step 2-check_liveness_probe_removed logger.go:42: 17:00:00 | 1-072_validate_liveness_probe_removed/2-check_liveness_probe_removed | running command: [sh -c set -e if ! test -z $(oc get statefulset.apps/argocd-application-controller -n $NAMESPACE -o jsonpath='{.spec.template.spec.containers[].livenessProbe}'); then echo "livenessProbe should not exist on statefulset.apps/argocd-application-controller." exit 1 fi ] logger.go:42: 17:00:00 | 1-072_validate_liveness_probe_removed/2-check_liveness_probe_removed | test step completed 2-check_liveness_probe_removed logger.go:42: 17:00:00 | 1-072_validate_liveness_probe_removed | skipping kubernetes event logging logger.go:42: 17:00:00 | 1-072_validate_liveness_probe_removed | Deleting namespace: kuttl-test-epic-flea === CONT kuttl/harness/1-070_validate_config_management_plugin logger.go:42: 17:00:07 | 1-070_validate_config_management_plugin | Creating namespace: kuttl-test-arriving-squid logger.go:42: 17:00:07 | 1-070_validate_config_management_plugin/1-install | starting test step 1-install logger.go:42: 17:00:07 | 1-070_validate_config_management_plugin/1-install | Namespace:/argocd created logger.go:42: 17:00:07 | 1-070_validate_config_management_plugin/1-install | ConfigMap:argocd/cmp-plugin created logger.go:42: 17:00:07 | 1-070_validate_config_management_plugin/1-install | ArgoCD:argocd/argocd created === CONT kuttl/harness/1-073_validate_rhsso logger.go:42: 17:00:22 | 1-073_validate_rhsso/1-argocd-rhsso | test step completed 1-argocd-rhsso logger.go:42: 17:00:22 | 1-073_validate_rhsso/2-sleep | starting test step 2-sleep logger.go:42: 17:00:22 | 1-073_validate_rhsso/2-sleep | running command: [sh -c sleep 60] === CONT kuttl/harness/1-071_validate_SCC_HA logger.go:42: 17:00:30 | 1-071_validate_SCC_HA/2-create-argocd | test step completed 2-create-argocd logger.go:42: 17:00:30 | 1-071_validate_SCC_HA/3-modify-argocd | starting test step 3-modify-argocd logger.go:42: 17:00:30 | 1-071_validate_SCC_HA/3-modify-argocd | ArgoCD:kuttl-test-certain-rat/argocd updated === CONT kuttl/harness/1-070_validate_config_management_plugin logger.go:42: 17:00:39 | 1-070_validate_config_management_plugin/1-install | test step completed 1-install logger.go:42: 17:00:39 | 1-070_validate_config_management_plugin/2-create-app | starting test step 2-create-app logger.go:42: 17:00:39 | 1-070_validate_config_management_plugin/2-create-app | Application:argocd/guestbook created logger.go:42: 17:00:41 | 1-070_validate_config_management_plugin/2-create-app | test step completed 2-create-app logger.go:42: 17:00:41 | 1-070_validate_config_management_plugin/99-delete | starting test step 99-delete logger.go:42: 17:01:18 | 1-070_validate_config_management_plugin/99-delete | test step completed 99-delete logger.go:42: 17:01:18 | 1-070_validate_config_management_plugin | skipping kubernetes event logging logger.go:42: 17:01:19 | 1-070_validate_config_management_plugin | Deleting namespace: kuttl-test-arriving-squid === CONT kuttl/harness/1-073_validate_rhsso logger.go:42: 17:01:22 | 1-073_validate_rhsso/2-sleep | test step completed 2-sleep logger.go:42: 17:01:22 | 1-073_validate_rhsso/3-verify-oidc | starting test step 3-verify-oidc logger.go:42: 17:01:22 | 1-073_validate_rhsso/3-verify-oidc | running command: [sh -c issuer=$(kubectl get configmap argocd-cm -o jsonpath='{.data.oidc\.config}' -n $NAMESPACE | grep issuer | awk -F' ' '{print $2}') keycloakRoute=$(kubectl get route keycloak -n $NAMESPACE -o jsonpath='{.spec.host}') if [[ "${issuer}" == "https://${keycloakRoute}/auth/realms/argocd" ]]; then echo "issuer matched" else echo "issuer mismatched" echo "${issuer} not equals ${keycloakRoute}/auth/realms/argocd" exit 1 fi ] logger.go:42: 17:01:23 | 1-073_validate_rhsso/3-verify-oidc | issuer matched logger.go:42: 17:01:23 | 1-073_validate_rhsso/3-verify-oidc | running command: [sh -c clientid=$(kubectl get configmap argocd-cm -o jsonpath='{.data.oidc\.config}' -n $NAMESPACE | grep clientid | awk -F' ' '{print $2}') name=$(kubectl get configmap argocd-cm -o jsonpath='{.data.oidc\.config}' -n $NAMESPACE | grep name | awk -F' ' '{print $2}') rootCA=$(kubectl get configmap argocd-cm -o jsonpath='{.data.oidc\.config}' -n $NAMESPACE | grep rootca | awk -F' ' '{print $2}') if [[ "${clientid}" == "argocd" && "${name}" == "Keycloak" && "${rootCA}" == "'---BEGIN---END---'" ]]; then echo "oidc name, clientid and rootCA matched" else echo "oidc name, clientid or rootCA mismatched" echo "${clientid}, ${name} and ${rootCA}" exit 1 fi ] logger.go:42: 17:01:24 | 1-073_validate_rhsso/3-verify-oidc | oidc name, clientid and rootCA matched logger.go:42: 17:01:24 | 1-073_validate_rhsso/3-verify-oidc | test step completed 3-verify-oidc logger.go:42: 17:01:24 | 1-073_validate_rhsso/4-verifyRealmCreation | starting test step 4-verifyRealmCreation logger.go:42: 17:01:24 | 1-073_validate_rhsso/4-verifyRealmCreation | running command: [sh -c # Set the needed parameter for the authorization KEYCLOAK_URL=$(oc get route keycloak -n $NAMESPACE -o jsonpath='{.spec.host}') tenant=argocd USER=$(oc get secret keycloak-secret -n $NAMESPACE -o jsonpath='{.data.SSO_USERNAME}' | base64 --decode) PASSWORD=$(oc get secret keycloak-secret -n $NAMESPACE -o jsonpath='{.data.SSO_PASSWORD}' | base64 --decode) GRANT_TYPE=password CLIENT_ID=admin-cli # Execute the CURL command to request the access-token access_token=$(curl -d "client_id=$CLIENT_ID" -d "username=$USER" -d "password=$PASSWORD" -d "grant_type=$GRANT_TYPE" "https://$KEYCLOAK_URL/auth/realms/master/protocol/openid-connect/token" -k | sed -n 's|.*"access_token":"\([^"]*\)".*|\1|p') # Execute the CURL command to verify the realm and client creation clientFound=$(curl -H "Content-Type: application/json" -H "Authorization: bearer $access_token" "https://$KEYCLOAK_URL/auth/admin/realms/$tenant/clients" -k | grep '"clientId":"argocd"') if ! [ "$clientFound" = "" ]; then echo "argocd realm and client creation verified" else echo "argocd client not found" exit 1 fi # Verify OpenShift-v4 IdP creation IdPFound=$(curl -H "Content-Type: application/json" -H "Authorization: bearer $access_token" "https://$KEYCLOAK_URL/auth/admin/realms/$tenant/identity-provider/instances" -k | grep -i OpenShift-v4) if ! [ "$IdPFound" = "" ]; then echo "OpenShift-v4 IdP creation verified" else echo "OpenShift-v4 IdP not found" exit 1 fi # Verify OpenShift-v4 IdP creation syncModeVerified=$(curl -H "Content-Type: application/json" -H "Authorization: bearer $access_token" "https://$KEYCLOAK_URL/auth/admin/realms/$tenant/identity-provider/instances" -k | grep -i '"syncMode":"FORCE"') if ! [ "$syncModeVerified" = "" ]; then echo "syncMode set to Force, verified" else echo "syncMode not set to Force" exit 1 fi ] === CONT kuttl/harness/1-067_validate_redis_secure_comm_no_autotls_ha logger.go:42: 17:01:24 | 1-067_validate_redis_secure_comm_no_autotls_ha | Creating namespace: kuttl-test-massive-akita logger.go:42: 17:01:24 | 1-067_validate_redis_secure_comm_no_autotls_ha/1-install | starting test step 1-install logger.go:42: 17:01:25 | 1-067_validate_redis_secure_comm_no_autotls_ha/1-install | ArgoCD:kuttl-test-massive-akita/argocd created === CONT kuttl/harness/1-073_validate_rhsso logger.go:42: 17:01:26 | 1-073_validate_rhsso/4-verifyRealmCreation | % Total % Received % Xferd Average Speed Time Time Time Current logger.go:42: 17:01:26 | 1-073_validate_rhsso/4-verifyRealmCreation | Dload Upload Total Spent Left Speed logger.go:42: 17:01:26 | 1-073_validate_rhsso/4-verifyRealmCreation | 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 100 2137 100 2062 100 75 17041 619 --:--:-- --:--:-- --:--:-- 17516 100 2137 100 2062 100 75 17041 619 --:--:-- --:--:-- --:--:-- 17516 logger.go:42: 17:01:26 | 1-073_validate_rhsso/4-verifyRealmCreation | % Total % Received % Xferd Average Speed Time Time Time Current logger.go:42: 17:01:26 | 1-073_validate_rhsso/4-verifyRealmCreation | Dload Upload Total Spent Left Speed logger.go:42: 17:01:26 | 1-073_validate_rhsso/4-verifyRealmCreation | 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 100 6412 100 6412 0 0 19140 0 --:--:-- --:--:-- --:--:-- 19140 logger.go:42: 17:01:26 | 1-073_validate_rhsso/4-verifyRealmCreation | argocd realm and client creation verified logger.go:42: 17:01:26 | 1-073_validate_rhsso/4-verifyRealmCreation | % Total % Received % Xferd Average Speed Time Time Time Current logger.go:42: 17:01:26 | 1-073_validate_rhsso/4-verifyRealmCreation | Dload Upload Total Spent Left Speed logger.go:42: 17:01:26 | 1-073_validate_rhsso/4-verifyRealmCreation | 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 100 556 100 556 0 0 9114 0 --:--:-- --:--:-- --:--:-- 9114 logger.go:42: 17:01:26 | 1-073_validate_rhsso/4-verifyRealmCreation | OpenShift-v4 IdP creation verified logger.go:42: 17:01:26 | 1-073_validate_rhsso/4-verifyRealmCreation | % Total % Received % Xferd Average Speed Time Time Time Current logger.go:42: 17:01:26 | 1-073_validate_rhsso/4-verifyRealmCreation | Dload Upload Total Spent Left Speed logger.go:42: 17:01:26 | 1-073_validate_rhsso/4-verifyRealmCreation | 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 100 556 100 556 0 0 10296 0 --:--:-- --:--:-- --:--:-- 10490 logger.go:42: 17:01:26 | 1-073_validate_rhsso/4-verifyRealmCreation | syncMode set to Force, verified logger.go:42: 17:01:26 | 1-073_validate_rhsso/4-verifyRealmCreation | test step completed 4-verifyRealmCreation logger.go:42: 17:01:26 | 1-073_validate_rhsso/99-delete | starting test step 99-delete logger.go:42: 17:01:26 | 1-073_validate_rhsso/99-delete | running command: [oc delete argocd example-argocd-keycloak -n kuttl-test-possible-worm] logger.go:42: 17:01:27 | 1-073_validate_rhsso/99-delete | argocd.argoproj.io "example-argocd-keycloak" deleted logger.go:42: 17:01:27 | 1-073_validate_rhsso/99-delete | test step completed 99-delete logger.go:42: 17:01:27 | 1-073_validate_rhsso | skipping kubernetes event logging logger.go:42: 17:01:27 | 1-073_validate_rhsso | Deleting namespace: kuttl-test-possible-worm === CONT kuttl/harness/1-068_validate_redis_secure_comm_autotls_no_ha logger.go:42: 17:01:33 | 1-068_validate_redis_secure_comm_autotls_no_ha | Creating namespace: kuttl-test-trusty-slug logger.go:42: 17:01:33 | 1-068_validate_redis_secure_comm_autotls_no_ha/1-install | starting test step 1-install logger.go:42: 17:01:33 | 1-068_validate_redis_secure_comm_autotls_no_ha/1-install | ArgoCD:kuttl-test-trusty-slug/argocd created logger.go:42: 17:01:45 | 1-068_validate_redis_secure_comm_autotls_no_ha/1-install | test step completed 1-install logger.go:42: 17:01:45 | 1-068_validate_redis_secure_comm_autotls_no_ha/2-enable_autotls | starting test step 2-enable_autotls logger.go:42: 17:01:45 | 1-068_validate_redis_secure_comm_autotls_no_ha/2-enable_autotls | running command: [sh -c set -e oc patch argocds.argoproj.io argocd --type=merge -p '{"spec":{"redis":{"autotls":"openshift"}}}' -n $NAMESPACE ] logger.go:42: 17:01:46 | 1-068_validate_redis_secure_comm_autotls_no_ha/2-enable_autotls | argocd.argoproj.io/argocd patched logger.go:42: 17:01:46 | 1-068_validate_redis_secure_comm_autotls_no_ha/2-enable_autotls | test step completed 2-enable_autotls logger.go:42: 17:01:46 | 1-068_validate_redis_secure_comm_autotls_no_ha/3-check_secret | starting test step 3-check_secret logger.go:42: 17:01:46 | 1-068_validate_redis_secure_comm_autotls_no_ha/3-check_secret | running command: [sh -c set -e secret_type="$(oc get secrets argocd-operator-redis-tls -n $NAMESPACE --template '{{.type}}')" secret_len="$(oc get secrets argocd-operator-redis-tls -n $NAMESPACE --template '{{len .data}}')" expected_secret_type="kubernetes.io/tls" expected_secret_len=2 if test ${secret_type} != ${expected_secret_type}; then echo "argocd-operator-redis-tls secret type is ${secret_type} and should be ${expected_secret_type}" exit 1 fi if test ${secret_len} != ${expected_secret_len}; then echo "argocd-operator-redis-tls secret length is ${secret_len} and should be ${expected_secret_len}" exit 1 fi ] logger.go:42: 17:01:47 | 1-068_validate_redis_secure_comm_autotls_no_ha/3-check_secret | test step completed 3-check_secret logger.go:42: 17:01:47 | 1-068_validate_redis_secure_comm_autotls_no_ha/4- | starting test step 4- logger.go:42: 17:02:17 | 1-068_validate_redis_secure_comm_autotls_no_ha/4- | test step completed 4- logger.go:42: 17:02:17 | 1-068_validate_redis_secure_comm_autotls_no_ha/5-check_crt_files | starting test step 5-check_crt_files logger.go:42: 17:02:17 | 1-068_validate_redis_secure_comm_autotls_no_ha/5-check_crt_files | running command: [sh -c set -e oc exec -i $(oc get pod -l app.kubernetes.io/name=argocd-server -n $NAMESPACE -o=NAME) -n $NAMESPACE -- ls /app/config/server/tls/redis/tls.crt oc exec -i $(oc get pod -l app.kubernetes.io/name=argocd-repo-server -n $NAMESPACE -o=NAME) -n $NAMESPACE -- ls /app/config/reposerver/tls/redis/tls.crt oc exec -i $(oc get pod -l app.kubernetes.io/name=argocd-redis -n $NAMESPACE -o=NAME) -n $NAMESPACE -- ls /app/config/redis/tls/tls.crt oc exec -i $(oc get pod -l app.kubernetes.io/name=argocd-application-controller -n $NAMESPACE -o=NAME) -n $NAMESPACE -- ls /app/config/controller/tls/redis/tls.crt ] logger.go:42: 17:02:18 | 1-068_validate_redis_secure_comm_autotls_no_ha/5-check_crt_files | /app/config/server/tls/redis/tls.crt logger.go:42: 17:02:19 | 1-068_validate_redis_secure_comm_autotls_no_ha/5-check_crt_files | Defaulted container "argocd-repo-server" out of: argocd-repo-server, copyutil (init) logger.go:42: 17:02:19 | 1-068_validate_redis_secure_comm_autotls_no_ha/5-check_crt_files | /app/config/reposerver/tls/redis/tls.crt logger.go:42: 17:02:20 | 1-068_validate_redis_secure_comm_autotls_no_ha/5-check_crt_files | /app/config/redis/tls/tls.crt logger.go:42: 17:02:21 | 1-068_validate_redis_secure_comm_autotls_no_ha/5-check_crt_files | /app/config/controller/tls/redis/tls.crt logger.go:42: 17:02:21 | 1-068_validate_redis_secure_comm_autotls_no_ha/5-check_crt_files | test step completed 5-check_crt_files logger.go:42: 17:02:21 | 1-068_validate_redis_secure_comm_autotls_no_ha | skipping kubernetes event logging logger.go:42: 17:02:21 | 1-068_validate_redis_secure_comm_autotls_no_ha | Deleting namespace: kuttl-test-trusty-slug === CONT kuttl/harness/1-090_validate_permissions logger.go:42: 17:02:25 | 1-090_validate_permissions/1- | test step failed 1- case.go:364: failed in step 1- case.go:366: --- ClusterServiceVersion:openshift-operators/openshift-gitops-operator.v1.11.5 +++ ClusterServiceVersion:openshift-operators/openshift-gitops-operator.v1.11.5 @@ -1,9 +1,430 @@ apiVersion: operators.coreos.com/v1alpha1 kind: ClusterServiceVersion metadata: + annotations: + alm-examples: |- + [ + { + "apiVersion": "argoproj.io/v1alpha1", + "kind": "AppProject", + "metadata": { + "name": "example" + }, + "spec": null + }, + { + "apiVersion": "argoproj.io/v1alpha1", + "kind": "Application", + "metadata": { + "name": "example" + }, + "spec": null + }, + { + "apiVersion": "argoproj.io/v1alpha1", + "kind": "ApplicationSet", + "metadata": { + "name": "example" + }, + "spec": null + }, + { + "apiVersion": "argoproj.io/v1alpha1", + "kind": "ArgoCD", + "metadata": { + "name": "argocd" + }, + "spec": { + "controller": { + "resources": { + "limits": { + "cpu": "2000m", + "memory": "2048Mi" + }, + "requests": { + "cpu": "250m", + "memory": "1024Mi" + } + } + }, + "ha": { + "enabled": false, + "resources": { + "limits": { + "cpu": "500m", + "memory": "256Mi" + }, + "requests": { + "cpu": "250m", + "memory": "128Mi" + } + } + }, + "rbac": { + "defaultPolicy": "", + "policy": "g, system:cluster-admins, role:admin\n", + "scopes": "[groups]" + }, + "redis": { + "resources": { + "limits": { + "cpu": "500m", + "memory": "256Mi" + }, + "requests": { + "cpu": "250m", + "memory": "128Mi" + } + } + }, + "repo": { + "resources": { + "limits": { + "cpu": "1000m", + "memory": "1024Mi" + }, + "requests": { + "cpu": "250m", + "memory": "256Mi" + } + } + }, + "resourceExclusions": "- apiGroups:\n - tekton.dev\n clusters:\n - '*'\n kinds:\n - TaskRun\n - PipelineRun \n", + "server": { + "resources": { + "limits": { + "cpu": "500m", + "memory": "256Mi" + }, + "requests": { + "cpu": "125m", + "memory": "128Mi" + } + }, + "route": { + "enabled": true + } + }, + "sso": { + "dex": { + "openShiftOAuth": true, + "resources": { + "limits": { + "cpu": "500m", + "memory": "256Mi" + }, + "requests": { + "cpu": "250m", + "memory": "128Mi" + } + } + }, + "provider": "dex" + } + } + }, + { + "apiVersion": "pipelines.openshift.io/v1alpha1", + "kind": "GitopsService", + "metadata": { + "name": "gitopsservice-sample" + }, + "spec": null + } + ] + capabilities: Deep Insights + console.openshift.io/plugins: '["gitops-plugin"]' + containerImage: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:b065691bb456763ddce85770c917ee6548137a9f687dd3c5e64ae31770383967 + description: Enables teams to adopt GitOps principles for managing cluster configurations + and application delivery across hybrid multi-cluster Kubernetes environments. + features.operators.openshift.io/disconnected: "true" + features.operators.openshift.io/fips-compliant: "false" + features.operators.openshift.io/proxy-aware: "true" + features.operators.openshift.io/tls-profiles: "false" + features.operators.openshift.io/token-auth-aws: "false" + features.operators.openshift.io/token-auth-azure: "false" + features.operators.openshift.io/token-auth-gcp: "false" + olm.operatorGroup: global-operators + olm.operatorNamespace: openshift-operators + olm.skipRange: "" + olm.targetNamespaces: "" + operatorframework.io/cluster-monitoring: "true" + operatorframework.io/properties: '{"properties":[{"type":"olm.gvk","value":{"group":"argoproj.io","kind":"AnalysisRun","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"argoproj.io","kind":"AnalysisTemplate","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"argoproj.io","kind":"AppProject","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"argoproj.io","kind":"Application","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"argoproj.io","kind":"ApplicationSet","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"argoproj.io","kind":"ArgoCD","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"argoproj.io","kind":"ArgoCD","version":"v1beta1"}},{"type":"olm.gvk","value":{"group":"argoproj.io","kind":"ClusterAnalysisTemplate","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"argoproj.io","kind":"Experiment","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"argoproj.io","kind":"Rollout","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"argoproj.io","kind":"RolloutManager","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"pipelines.openshift.io","kind":"GitopsService","version":"v1alpha1"}},{"type":"olm.package","value":{"packageName":"openshift-gitops-operator","version":"1.11.5"}}]}' + operatorframework.io/suggested-namespace: openshift-gitops-operator + operators.openshift.io/infrastructure-features: '["disconnected"]' + operators.openshift.io/valid-subscription: '["OpenShift Container Platform", "OpenShift + Platform Plus"]' + operators.operatorframework.io/builder: operator-sdk-v1.10.0+git + operators.operatorframework.io/internal-objects: '["gitopsservices.pipelines.openshift.io"]' + operators.operatorframework.io/project_layout: go.kubebuilder.io/v3 + repository: https://github.com/redhat-developer/gitops-operator + support: Red Hat + labels: + operatorframework.io/arch.amd64: supported + operatorframework.io/arch.arm64: supported + operatorframework.io/arch.ppc64le: supported + operatorframework.io/arch.s390x: supported + operatorframework.io/os.linux: supported + operators.coreos.com/openshift-gitops-operator.openshift-operators: "" + managedFields: + - apiVersion: operators.coreos.com/v1alpha1 + fieldsType: FieldsV1 + fieldsV1: + f:metadata: + f:annotations: + .: {} + f:alm-examples: {} + f:capabilities: {} + f:console.openshift.io/plugins: {} + f:containerImage: {} + f:description: {} + f:features.operators.openshift.io/disconnected: {} + f:features.operators.openshift.io/fips-compliant: {} + f:features.operators.openshift.io/proxy-aware: {} + f:features.operators.openshift.io/tls-profiles: {} + f:features.operators.openshift.io/token-auth-aws: {} + f:features.operators.openshift.io/token-auth-azure: {} + f:features.operators.openshift.io/token-auth-gcp: {} + f:olm.skipRange: {} + f:operatorframework.io/cluster-monitoring: {} + f:operatorframework.io/properties: {} + f:operatorframework.io/suggested-namespace: {} + f:operators.openshift.io/infrastructure-features: {} + f:operators.openshift.io/valid-subscription: {} + f:operators.operatorframework.io/builder: {} + f:operators.operatorframework.io/internal-objects: {} + f:operators.operatorframework.io/project_layout: {} + f:repository: {} + f:support: {} + f:labels: + .: {} + f:operatorframework.io/arch.amd64: {} + f:operatorframework.io/arch.arm64: {} + f:operatorframework.io/arch.ppc64le: {} + f:operatorframework.io/arch.s390x: {} + f:operatorframework.io/os.linux: {} + f:spec: + .: {} + f:apiservicedefinitions: {} + f:cleanup: + .: {} + f:enabled: {} + f:customresourcedefinitions: + .: {} + f:owned: {} + f:description: {} + f:displayName: {} + f:icon: {} + f:install: + .: {} + f:spec: + .: {} + f:clusterPermissions: {} + f:deployments: {} + f:permissions: {} + f:strategy: {} + f:installModes: {} + f:keywords: {} + f:links: {} + f:maintainers: {} + f:maturity: {} + f:provider: + .: {} + f:name: {} + f:relatedImages: {} + f:replaces: {} + f:version: {} + f:webhookdefinitions: {} + manager: catalog + operation: Update + time: "2024-05-27T16:40:57Z" + - apiVersion: operators.coreos.com/v1alpha1 + fieldsType: FieldsV1 + fieldsV1: + f:metadata: + f:annotations: + f:olm.operatorGroup: {} + f:olm.operatorNamespace: {} + f:olm.targetNamespaces: {} + manager: olm + operation: Update + time: "2024-05-27T16:40:57Z" + - apiVersion: operators.coreos.com/v1alpha1 + fieldsType: FieldsV1 + fieldsV1: + f:metadata: + f:labels: + f:operators.coreos.com/openshift-gitops-operator.openshift-operators: {} + manager: Go-http-client + operation: Update + time: "2024-05-27T16:41:21Z" + - apiVersion: operators.coreos.com/v1alpha1 + fieldsType: FieldsV1 + fieldsV1: + f:status: + .: {} + f:certsLastUpdated: {} + f:certsRotateAt: {} + f:cleanup: {} + f:conditions: {} + f:lastTransitionTime: {} + f:lastUpdateTime: {} + f:message: {} + f:phase: {} + f:reason: {} + f:requirementStatus: {} + manager: olm + operation: Update + subresource: status + time: "2024-05-27T16:41:23Z" name: openshift-gitops-operator.v1.11.5 namespace: openshift-operators spec: + apiservicedefinitions: {} + cleanup: + enabled: false + customresourcedefinitions: + owned: + - description: An AnalysisRun is an instantiation of an AnalysisTemplate. AnalysisRuns + are like Jobs in that they eventually complete. + displayName: AnalysisRun + kind: AnalysisRun + name: analysisruns.argoproj.io + version: v1alpha1 + - description: An AnalysisTemplate is a template spec which defines how to perform + a canary analysis, such as the metrics, its frequency, and the values which + are considered successful or failed. + displayName: AnalysisTemplate + kind: AnalysisTemplate + name: analysistemplates.argoproj.io + version: v1alpha1 + - description: An Application is a group of Kubernetes resources as defined by + a manifest. + displayName: Application + kind: Application + name: applications.argoproj.io + version: v1alpha1 + - description: ApplicationSet is the representation of an ApplicationSet controller + deployment. + displayName: ApplicationSet + kind: ApplicationSet + name: applicationsets.argoproj.io + version: v1alpha1 + - description: An AppProject is a logical grouping of Argo CD Applications. + displayName: AppProject + kind: AppProject + name: appprojects.argoproj.io + version: v1alpha1 + - kind: ArgoCD + name: argocds.argoproj.io + version: v1alpha1 + - description: Argo CD is the representation of an Argo CD deployment. + displayName: Argo CD + kind: ArgoCD + name: argocds.argoproj.io + resources: + - kind: ArgoCD + name: "" + version: v1beta1 + - kind: ConfigMap + name: "" + version: v1 + - kind: CronJob + name: "" + version: v1 + - kind: Deployment + name: "" + version: v1 + - kind: Ingress + name: "" + version: v1 + - kind: Job + name: "" + version: v1 + - kind: PersistentVolumeClaim + name: "" + version: v1 + - kind: Pod + name: "" + version: v1 + - kind: Prometheus + name: "" + version: v1 + - kind: ReplicaSet + name: "" + version: v1 + - kind: Route + name: "" + version: v1 + - kind: Secret + name: "" + version: v1 + - kind: Service + name: "" + version: v1 + - kind: ServiceMonitor + name: "" + version: v1 + - kind: StatefulSet + name: "" + version: v1 + version: v1beta1 + - description: A ClusterAnalysisTemplate is like an AnalysisTemplate,but it is + not limited to its namespace. It can be used by any Rollout throughout the + cluster. + displayName: ClusterAnalysisTemplate + kind: ClusterAnalysisTemplate + name: clusteranalysistemplates.argoproj.io + version: v1alpha1 + - description: An Experiment is limited run of one or more ReplicaSets for the + purposes of analysis. Experiments typically run for a pre-determined duration, + but can also run indefinitely until stopped. + displayName: Experiment + kind: Experiment + name: experiments.argoproj.io + version: v1alpha1 + - description: GitopsService is the Schema for the gitopsservices API + displayName: Gitops Service + kind: GitopsService + name: gitopsservices.pipelines.openshift.io + version: v1alpha1 + - description: A controller for managing Argo Rollouts + displayName: RolloutManager + kind: RolloutManager + name: rolloutmanagers.argoproj.io + version: v1alpha1 + - kind: Rollout + name: rollouts.argoproj.io + version: v1alpha1 + description: "Red Hat OpenShift GitOps is a declarative continuous delivery platform + based on [Argo CD](https://argoproj.github.io/argo-cd/). It enables teams to adopt + GitOps principles for managing cluster configurations and automating secure and + repeatable application delivery across hybrid multi-cluster Kubernetes environments. + Following GitOps and infrastructure as code principles, you can store the configuration + of clusters and applications in Git repositories and use Git workflows to roll + them out to the target clusters.\n\n## Features\n* Automated install and upgrades + of Argo CD\n* Manual and automated configuration sync from Git repositories to + target OpenShift and Kubernetes clusters\n* Support for the Helm and Kustomize + templating tools\n* Configuration drift detection and visualization on live clusters\n* + Audit trails of rollouts to the clusters\n* Monitoring and logging integration + with OpenShift\n* Automated GitOps bootstrapping using Tekton and Argo CD with + [GitOps Application Manager CLI](https://github.com/redhat-developer/kam)\n\n## + Components\n* Argo CD 2.9.15\n* GitOps Application Manager CLI ([download](https://github.com/redhat-developer/kam/releases))\n\n## + How to Install \nAfter installing the OpenShift GitOps operator, an instance of + Argo CD is installed in the `openshift-gitops` namespace which has sufficent privileges + for managing cluster configurations. You can create additional Argo CD instances + using the `ArgoCD` custom resource within the desired namespaces.\n```yaml\napiVersion: + argoproj.io/v1alpha1\nkind: ArgoCD\nmetadata:\n name: argocd\nspec:\n server:\n + \ route:\n enabled: true\n```\n\nOpenShift GitOps is a layered product + on top of OpenShift that enables teams to adopt GitOps principles for managing + cluster configurations and automating secure and repeatable application delivery + across hybrid multi-cluster Kubernetes environments. OpenShift GitOps is built + around Argo CD as the core upstream project and assists customers to establish + an end-to-end application delivery workflow on GitOps principles.\n" + displayName: Red Hat OpenShift GitOps + icon: + - base64data: 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 + mediatype: image/png install: spec: clusterPermissions: @@ -250,6 +671,18 @@ - argoproj.io resources: - rollouts + verbs: + - create + - delete + - get + - list + - patch + - update + - watch + - apiGroups: + - argoproj.io + resources: + - rollouts - rollouts/finalizers - rollouts/scale - rollouts/status @@ -263,6 +696,20 @@ - update - watch - apiGroups: + - argoproj.io + resources: + - rollouts/finalizers + verbs: + - update + - apiGroups: + - argoproj.io + resources: + - rollouts/status + verbs: + - get + - patch + - update + - apiGroups: - autoscaling resources: - horizontalpodautoscalers @@ -614,4 +1061,715 @@ - subjectaccessreviews verbs: - create + serviceAccountName: openshift-gitops-operator-controller-manager + deployments: + - name: openshift-gitops-operator-controller-manager + spec: + replicas: 1 + selector: + matchLabels: + control-plane: gitops-operator + strategy: {} + template: + metadata: + creationTimestamp: null + labels: + control-plane: gitops-operator + spec: + containers: + - args: + - --health-probe-bind-address=:8081 + - --metrics-bind-address=127.0.0.1:8080 + - --leader-elect + command: + - /usr/local/bin/manager + env: + - name: ARGOCD_CLUSTER_CONFIG_NAMESPACES + value: openshift-gitops + - name: OPERATOR_NAME + value: gitops-operator + - name: RELATED_IMAGE_ARGOCD_DEX_IMAGE + value: registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:57eb61c6526caf5d71c5c3ff2dc189d2c39791e1cd50633cd8636f60bf068524 + - name: ARGOCD_DEX_IMAGE + value: registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:57eb61c6526caf5d71c5c3ff2dc189d2c39791e1cd50633cd8636f60bf068524 + - name: RELATED_IMAGE_ARGOCD_KEYCLOAK_IMAGE + value: registry.redhat.io/rh-sso-7/sso76-openshift-rhel8@sha256:ec9f60018694dcc5d431ba47d5536b761b71cb3f66684978fe6bb74c157679ac + - name: ARGOCD_KEYCLOAK_IMAGE + value: registry.redhat.io/rh-sso-7/sso76-openshift-rhel8@sha256:ec9f60018694dcc5d431ba47d5536b761b71cb3f66684978fe6bb74c157679ac + - name: RELATED_IMAGE_BACKEND_IMAGE + value: registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:f0defae99e528b6b42fff97ec3d51a04c1b3b59e2c7b0aefc7ababd4c86ab99e + - name: BACKEND_IMAGE + value: registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:f0defae99e528b6b42fff97ec3d51a04c1b3b59e2c7b0aefc7ababd4c86ab99e + - name: RELATED_IMAGE_ARGOCD_IMAGE + value: registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:25b5f3e1cacec7d92a713a2e5f63868a223e5422efa9d609d94229c50a94fd60 + - name: ARGOCD_IMAGE + value: registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:25b5f3e1cacec7d92a713a2e5f63868a223e5422efa9d609d94229c50a94fd60 + - name: ARGOCD_REPOSERVER_IMAGE + value: registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:25b5f3e1cacec7d92a713a2e5f63868a223e5422efa9d609d94229c50a94fd60 + - name: RELATED_IMAGE_ARGOCD_REDIS_IMAGE + value: registry.redhat.io/rhel8/redis-6@sha256:edbd40185ed8c20ee61ebdf9f2e1e1d7594598fceff963b4dee3201472d6deda + - name: ARGOCD_REDIS_IMAGE + value: registry.redhat.io/rhel8/redis-6@sha256:edbd40185ed8c20ee61ebdf9f2e1e1d7594598fceff963b4dee3201472d6deda + - name: ARGOCD_REDIS_HA_IMAGE + value: registry.redhat.io/rhel8/redis-6@sha256:edbd40185ed8c20ee61ebdf9f2e1e1d7594598fceff963b4dee3201472d6deda + - name: RELATED_IMAGE_ARGOCD_REDIS_HA_PROXY_IMAGE + value: registry.redhat.io/openshift4/ose-haproxy-router@sha256:edf7ce748b703e195220b7bd7b42fa2caa4cdfd96840445e096036a0d85f1ff2 + - name: ARGOCD_REDIS_HA_PROXY_IMAGE + value: registry.redhat.io/openshift4/ose-haproxy-router@sha256:edf7ce748b703e195220b7bd7b42fa2caa4cdfd96840445e096036a0d85f1ff2 + - name: RELATED_IMAGE_GITOPS_CONSOLE_PLUGIN_IMAGE + value: registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:4c8baf9babb83b1269af0f93f392ad76df9abe22757183f125bd33f28ca49377 + - name: GITOPS_CONSOLE_PLUGIN_IMAGE + value: registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:4c8baf9babb83b1269af0f93f392ad76df9abe22757183f125bd33f28ca49377 + - name: RELATED_IMAGE_KAM_IMAGE + value: registry.redhat.io/openshift-gitops-1/kam-delivery-rhel8@sha256:e1066315858056bdf5eca641ba26a7ed38bfc420eb843ca1e0334d6769a85268 + - name: KAM_IMAGE + value: registry.redhat.io/openshift-gitops-1/kam-delivery-rhel8@sha256:e1066315858056bdf5eca641ba26a7ed38bfc420eb843ca1e0334d6769a85268 + - name: RELATED_IMAGE_ARGO_ROLLOUTS_IMAGE + value: registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:5cb593d8cd293e27d43d6a4c06a8ddb79b4988c6de9a8ebf3839135a15813551 + - name: ARGO_ROLLOUTS_IMAGE + value: registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:5cb593d8cd293e27d43d6a4c06a8ddb79b4988c6de9a8ebf3839135a15813551 + - name: RELATED_IMAGE_MUST_GATHER_IMAGE + value: registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:2298b6bd82d6e8df7c2325edcb53462b290979623195d78245b154c7153eaa07 + - name: ENABLE_CONVERSION_WEBHOOK + value: "true" + - name: RELATED_IMAGE_KUBE_RBAC_PROXY_IMAGE + value: registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:da5d5061dbc2ec5082cf14b6c600fb5400b83cf91d7ccebfa80680a238d275db + image: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:b065691bb456763ddce85770c917ee6548137a9f687dd3c5e64ae31770383967 + livenessProbe: + httpGet: + path: /healthz + port: 8081 + initialDelaySeconds: 15 + periodSeconds: 20 + name: manager + ports: + - containerPort: 9443 + name: webhook-server + protocol: TCP + readinessProbe: + httpGet: + path: /readyz + port: 8081 + initialDelaySeconds: 5 + periodSeconds: 10 + resources: {} + securityContext: + allowPrivilegeEscalation: false + capabilities: + drop: + - ALL + readOnlyRootFilesystem: true + runAsNonRoot: true + - args: + - --secure-listen-address=0.0.0.0:8443 + - --upstream=http://127.0.0.1:8080 + - --tls-cert-file=/etc/tls/private/tls.crt + - --tls-private-key-file=/etc/tls/private/tls.key + - --logtostderr=true + - --allow-paths=/metrics + - --http2-disable + image: registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:d35dff5d59e748ef0404e7e76b0237ea96b2bb19b86fa04a3a34df7a379277b2 + name: kube-rbac-proxy + ports: + - containerPort: 8443 + name: metrics + protocol: TCP + resources: + limits: + cpu: 500m + memory: 128Mi + requests: + cpu: 1m + memory: 15Mi + securityContext: + allowPrivilegeEscalation: false + capabilities: + drop: + - ALL + volumeMounts: + - mountPath: /etc/tls/private + name: kube-rbac-proxy-tls + readOnly: true + securityContext: + runAsNonRoot: true + serviceAccountName: openshift-gitops-operator-controller-manager + terminationGracePeriodSeconds: 10 + volumes: + - name: kube-rbac-proxy-tls + secret: + secretName: kube-rbac-proxy-tls + permissions: + - rules: + - apiGroups: + - "" + resources: + - configmaps + verbs: + - get + - list + - watch + - create + - update + - patch + - delete + - apiGroups: + - coordination.k8s.io + resources: + - leases + verbs: + - get + - list + - watch + - create + - update + - patch + - delete + - apiGroups: + - "" + resources: + - events + verbs: + - create + - patch + serviceAccountName: openshift-gitops-operator-controller-manager + strategy: deployment + installModes: + - supported: false + type: OwnNamespace + - supported: false + type: SingleNamespace + - supported: false + type: MultiNamespace + - supported: true + type: AllNamespaces + keywords: + - devtools + - gitops + - pipelines + links: + - name: Release Notes + url: https://docs.openshift.com/container-platform/4.10/cicd/gitops/gitops-release-notes.html + - name: Day 1 Operations + url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day1 + - name: Day 2 Operations + url: https://github.com/redhat-developer/kam/tree/master/docs/journey/day2 + maintainers: + - email: team-gitops@redhat.com + name: OpenShift GitOps Team + maturity: GA + provider: + name: Red Hat Inc + relatedImages: + - image: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:b065691bb456763ddce85770c917ee6548137a9f687dd3c5e64ae31770383967 + name: gitops-rhel8-operator-b065691bb456763ddce85770c917ee6548137a9f687dd3c5e64ae31770383967-annotation + - image: registry.redhat.io/openshift-gitops-1/gitops-rhel8-operator@sha256:b065691bb456763ddce85770c917ee6548137a9f687dd3c5e64ae31770383967 + name: manager + - image: registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:d35dff5d59e748ef0404e7e76b0237ea96b2bb19b86fa04a3a34df7a379277b2 + name: kube-rbac-proxy + - image: registry.redhat.io/openshift-gitops-1/dex-rhel8@sha256:57eb61c6526caf5d71c5c3ff2dc189d2c39791e1cd50633cd8636f60bf068524 + name: argocd_dex_image + - image: registry.redhat.io/rh-sso-7/sso76-openshift-rhel8@sha256:ec9f60018694dcc5d431ba47d5536b761b71cb3f66684978fe6bb74c157679ac + name: argocd_keycloak_image + - image: registry.redhat.io/openshift-gitops-1/gitops-rhel8@sha256:f0defae99e528b6b42fff97ec3d51a04c1b3b59e2c7b0aefc7ababd4c86ab99e + name: backend_image + - image: registry.redhat.io/openshift-gitops-1/argocd-rhel8@sha256:25b5f3e1cacec7d92a713a2e5f63868a223e5422efa9d609d94229c50a94fd60 + name: argocd_image + - image: registry.redhat.io/rhel8/redis-6@sha256:edbd40185ed8c20ee61ebdf9f2e1e1d7594598fceff963b4dee3201472d6deda + name: argocd_redis_image + - image: registry.redhat.io/openshift4/ose-haproxy-router@sha256:edf7ce748b703e195220b7bd7b42fa2caa4cdfd96840445e096036a0d85f1ff2 + name: argocd_redis_ha_proxy_image + - image: registry.redhat.io/openshift-gitops-1/console-plugin-rhel8@sha256:4c8baf9babb83b1269af0f93f392ad76df9abe22757183f125bd33f28ca49377 + name: gitops_console_plugin_image + - image: registry.redhat.io/openshift-gitops-1/kam-delivery-rhel8@sha256:e1066315858056bdf5eca641ba26a7ed38bfc420eb843ca1e0334d6769a85268 + name: kam_image + - image: registry.redhat.io/openshift-gitops-1/argo-rollouts-rhel8@sha256:5cb593d8cd293e27d43d6a4c06a8ddb79b4988c6de9a8ebf3839135a15813551 + name: argo_rollouts_image + - image: registry.redhat.io/openshift-gitops-1/must-gather-rhel8@sha256:2298b6bd82d6e8df7c2325edcb53462b290979623195d78245b154c7153eaa07 + name: must_gather_image + - image: registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:da5d5061dbc2ec5082cf14b6c600fb5400b83cf91d7ccebfa80680a238d275db + name: kube_rbac_proxy_image + replaces: openshift-gitops-operator.v1.11.4 + version: 1.11.5 + webhookdefinitions: + - admissionReviewVersions: + - v1alpha1 + - v1beta1 + containerPort: 443 + conversionCRDs: + - argocds.argoproj.io + deploymentName: openshift-gitops-operator-controller-manager + generateName: cargocds.kb.io + sideEffects: None + targetPort: 9443 + type: ConversionWebhook + webhookPath: /convert +status: + certsLastUpdated: "2024-05-27T16:41:05Z" + certsRotateAt: "2026-05-26T16:41:05Z" + cleanup: {} + conditions: + - lastTransitionTime: "2024-05-27T16:40:57Z" + lastUpdateTime: "2024-05-27T16:40:57Z" + message: requirements not yet checked + phase: Pending + reason: RequirementsUnknown + - lastTransitionTime: "2024-05-27T16:40:57Z" + lastUpdateTime: "2024-05-27T16:40:57Z" + message: one or more requirements couldn't be found + phase: Pending + reason: RequirementsNotMet + - lastTransitionTime: "2024-05-27T16:41:04Z" + lastUpdateTime: "2024-05-27T16:41:04Z" + message: all requirements found, attempting install + phase: InstallReady + reason: AllRequirementsMet + - lastTransitionTime: "2024-05-27T16:41:05Z" + lastUpdateTime: "2024-05-27T16:41:05Z" + message: waiting for install components to report healthy + phase: Installing + reason: InstallSucceeded + - lastTransitionTime: "2024-05-27T16:41:05Z" + lastUpdateTime: "2024-05-27T16:41:05Z" + message: 'installing: waiting for deployment openshift-gitops-operator-controller-manager + to become ready: deployment "openshift-gitops-operator-controller-manager" not + available: Deployment does not have minimum availability.' + phase: Installing + reason: InstallWaiting + - lastTransitionTime: "2024-05-27T16:41:11Z" + lastUpdateTime: "2024-05-27T16:41:11Z" + message: calculated deployment install is bad + phase: Pending + reason: NeedsReinstall + - lastTransitionTime: "2024-05-27T16:41:11Z" + lastUpdateTime: "2024-05-27T16:41:11Z" + message: all requirements found, attempting install + phase: InstallReady + reason: AllRequirementsMet + - lastTransitionTime: "2024-05-27T16:41:11Z" + lastUpdateTime: "2024-05-27T16:41:11Z" + message: waiting for install components to report healthy + phase: Installing + reason: InstallSucceeded + - lastTransitionTime: "2024-05-27T16:41:11Z" + lastUpdateTime: "2024-05-27T16:41:12Z" + message: 'installing: waiting for deployment openshift-gitops-operator-controller-manager + to become ready: deployment "openshift-gitops-operator-controller-manager" not + available: Deployment does not have minimum availability.' + phase: Installing + reason: InstallWaiting + - lastTransitionTime: "2024-05-27T16:41:15Z" + lastUpdateTime: "2024-05-27T16:41:15Z" + message: install strategy completed with no errors + phase: Succeeded + reason: InstallSucceeded + - lastTransitionTime: "2024-05-27T16:41:20Z" + lastUpdateTime: "2024-05-27T16:41:20Z" + message: calculated deployment install is bad + phase: Pending + reason: NeedsReinstall + - lastTransitionTime: "2024-05-27T16:41:20Z" + lastUpdateTime: "2024-05-27T16:41:20Z" + message: all requirements found, attempting install + phase: InstallReady + reason: AllRequirementsMet + - lastTransitionTime: "2024-05-27T16:41:22Z" + lastUpdateTime: "2024-05-27T16:41:22Z" + message: waiting for install components to report healthy + phase: Installing + reason: InstallSucceeded + - lastTransitionTime: "2024-05-27T16:41:23Z" + lastUpdateTime: "2024-05-27T16:41:23Z" + message: install strategy completed with no errors + phase: Succeeded + reason: InstallSucceeded + lastTransitionTime: "2024-05-27T16:41:23Z" + lastUpdateTime: "2024-05-27T16:41:23Z" + message: install strategy completed with no errors + phase: Succeeded + reason: InstallSucceeded + requirementStatus: + - group: apiextensions.k8s.io + kind: CustomResourceDefinition + message: CRD is present and Established condition is true + name: analysisruns.argoproj.io + status: Present + uuid: b3025f8c-5e68-413d-b15e-8e19c030d178 + version: v1 + - group: apiextensions.k8s.io + kind: CustomResourceDefinition + message: CRD is present and Established condition is true + name: analysistemplates.argoproj.io + status: Present + uuid: fce9b331-4edd-48b8-9b7e-e4207ea64a42 + version: v1 + - group: apiextensions.k8s.io + kind: CustomResourceDefinition + message: CRD is present and Established condition is true + name: applications.argoproj.io + status: Present + uuid: e0ec9938-e5a8-49fb-afd7-4fad4a9c7778 + version: v1 + - group: apiextensions.k8s.io + kind: CustomResourceDefinition + message: CRD is present and Established condition is true + name: applicationsets.argoproj.io + status: Present + uuid: a4489b40-a6b4-4e39-ac68-064356790bc9 + version: v1 + - group: apiextensions.k8s.io + kind: CustomResourceDefinition + message: CRD is present and Established condition is true + name: appprojects.argoproj.io + status: Present + uuid: 6581fc81-b719-4b31-8abe-c9f832fb38f7 + version: v1 + - group: apiextensions.k8s.io + kind: CustomResourceDefinition + message: CRD is present and Established condition is true + name: argocds.argoproj.io + status: Present + uuid: 85f155a9-d556-4adc-b0c6-288f2dc178c0 + version: v1 + - group: apiextensions.k8s.io + kind: CustomResourceDefinition + message: CRD is present and Established condition is true + name: clusteranalysistemplates.argoproj.io + status: Present + uuid: 17f830fa-e61a-4299-a3ec-836a2efcd4a6 + version: v1 + - group: apiextensions.k8s.io + kind: CustomResourceDefinition + message: CRD is present and Established condition is true + name: experiments.argoproj.io + status: Present + uuid: 8babbb66-bfc2-436e-9218-ba7930477225 + version: v1 + - group: apiextensions.k8s.io + kind: CustomResourceDefinition + message: CRD is present and Established condition is true + name: gitopsservices.pipelines.openshift.io + status: Present + uuid: 22c2a1d7-a639-47e7-a299-2c4c8cedc5a5 + version: v1 + - group: apiextensions.k8s.io + kind: CustomResourceDefinition + message: CRD is present and Established condition is true + name: rolloutmanagers.argoproj.io + status: Present + uuid: 30b3e7fe-4456-4a47-916a-e420dc440376 + version: v1 + - group: apiextensions.k8s.io + kind: CustomResourceDefinition + message: CRD is present and Established condition is true + name: rollouts.argoproj.io + status: Present + uuid: 81081009-77b5-4160-ba2c-2039004e5902 + version: v1 + - dependents: + - group: rbac.authorization.k8s.io + kind: PolicyRule + message: namespaced rule:{"verbs":["get","list","watch","create","update","patch","delete"],"apiGroups":[""],"resources":["configmaps"]} + status: Satisfied + version: v1 + - group: rbac.authorization.k8s.io + kind: PolicyRule + message: namespaced rule:{"verbs":["get","list","watch","create","update","patch","delete"],"apiGroups":["coordination.k8s.io"],"resources":["leases"]} + status: Satisfied + version: v1 + - group: rbac.authorization.k8s.io + kind: PolicyRule + message: namespaced rule:{"verbs":["create","patch"],"apiGroups":[""],"resources":["events"]} + status: Satisfied + version: v1 + - group: rbac.authorization.k8s.io + kind: PolicyRule + message: cluster rule:{"verbs":["create","delete","get","list","patch","update","watch"],"apiGroups":[""],"resources":["configmaps","endpoints","events","namespaces","pods","secrets","serviceaccounts","services","services/finalizers"]} + status: Satisfied + version: v1 + - group: rbac.authorization.k8s.io + kind: PolicyRule + message: cluster rule:{"verbs":["create","delete","get","list","patch","update","watch"],"apiGroups":[""],"resources":["configmaps","endpoints","events","persistentvolumeclaims","pods","secrets","serviceaccounts","services","services/finalizers"]} + status: Satisfied + version: v1 + - group: rbac.authorization.k8s.io + kind: PolicyRule + message: cluster rule:{"verbs":["get","list","watch"],"apiGroups":[""],"resources":["deployments"]} + status: Satisfied + version: v1 + - group: rbac.authorization.k8s.io + kind: PolicyRule + message: cluster rule:{"verbs":["create","delete","get","list","update","watch"],"apiGroups":[""],"resources":["namespaces","resourcequotas"]} + status: Satisfied + version: v1 + - group: rbac.authorization.k8s.io + kind: PolicyRule + message: cluster rule:{"verbs":["create"],"apiGroups":[""],"resources":["pods/eviction"]} + status: Satisfied + version: v1 + - group: rbac.authorization.k8s.io + kind: PolicyRule + message: cluster rule:{"verbs":["get"],"apiGroups":[""],"resources":["pods/log"]} + status: Satisfied + version: v1 + - group: rbac.authorization.k8s.io + kind: PolicyRule + message: cluster rule:{"verbs":["get","list","watch"],"apiGroups":[""],"resources":["podtemplates"]} + status: Satisfied + version: v1 + - group: rbac.authorization.k8s.io + kind: PolicyRule + message: cluster rule:{"verbs":["get","list","patch","update","watch"],"apiGroups":["appmesh.k8s.aws"],"resources":["virtualnodes","virtualrouters"]} + status: Satisfied + version: v1 + - group: rbac.authorization.k8s.io + kind: PolicyRule + message: cluster rule:{"verbs":["get","list","watch"],"apiGroups":["appmesh.k8s.aws"],"resources":["virtualservices"]} + status: Satisfied + version: v1 + - group: rbac.authorization.k8s.io + kind: PolicyRule + message: cluster rule:{"verbs":["create","delete","get","list","patch","update","watch"],"apiGroups":["apps"],"resources":["daemonsets","deployments","replicasets","statefulsets"]} + status: Satisfied + version: v1 + - group: rbac.authorization.k8s.io + kind: PolicyRule + message: cluster rule:{"verbs":["create","delete","get","list","patch","update","watch"],"apiGroups":["apps"],"resources":["deployments","podtemplates","replicasets"]} + status: Satisfied + version: v1 + - group: rbac.authorization.k8s.io + kind: PolicyRule + message: cluster rule:{"verbs":["update"],"apiGroups":["apps"],"resources":["deployments/finalizers"]} + status: Satisfied + version: v1 + - group: rbac.authorization.k8s.io + kind: PolicyRule + message: cluster rule:{"verbs":["update"],"apiGroups":["apps"],"resources":["deployments/finalizers"],"resourceNames":["gitops-operator"]} + status: Satisfied + version: v1 + - group: rbac.authorization.k8s.io + kind: PolicyRule + message: cluster rule:{"verbs":["create","delete","get","list","patch","update","watch"],"apiGroups":["apps.openshift.io"],"resources":["*"]} + status: Satisfied + version: v1 + - group: rbac.authorization.k8s.io + kind: PolicyRule + message: cluster rule:{"verbs":["create","delete","deletecollection","get","list","patch","update","watch"],"apiGroups":["argoproj.io"],"resources":["analysisruns","analysisruns/finalizers","experiments","experiments/finalizers"]} + status: Satisfied + version: v1 + - group: rbac.authorization.k8s.io + kind: PolicyRule + message: cluster rule:{"verbs":["create","delete","deletecollection","get","list","patch","update","watch"],"apiGroups":["argoproj.io"],"resources":["analysistemplates"]} + status: Satisfied + version: v1 + - group: rbac.authorization.k8s.io + kind: PolicyRule + message: cluster rule:{"verbs":["create","delete","get","list","patch","update","watch"],"apiGroups":["argoproj.io"],"resources":["applications","appprojects","argocds","argocds/finalizers","argocds/status"]} + status: Satisfied + version: v1 + - group: rbac.authorization.k8s.io + kind: PolicyRule + message: cluster rule:{"verbs":["create","delete","deletecollection","get","list","patch","update","watch"],"apiGroups":["argoproj.io"],"resources":["clusteranalysistemplates"]} + status: Satisfied + version: v1 + - group: rbac.authorization.k8s.io + kind: PolicyRule + message: cluster rule:{"verbs":["create","delete","get","list","patch","update","watch"],"apiGroups":["argoproj.io"],"resources":["rolloutmanagers"]} + status: Satisfied + version: v1 + - group: rbac.authorization.k8s.io + kind: PolicyRule + message: cluster rule:{"verbs":["update"],"apiGroups":["argoproj.io"],"resources":["rolloutmanagers/finalizers"]} + status: Satisfied + version: v1 + - group: rbac.authorization.k8s.io + kind: PolicyRule + message: cluster rule:{"verbs":["get","patch","update"],"apiGroups":["argoproj.io"],"resources":["rolloutmanagers/status"]} + status: Satisfied + version: v1 + - group: rbac.authorization.k8s.io + kind: PolicyRule + message: cluster rule:{"verbs":["create","delete","get","list","patch","update","watch"],"apiGroups":["argoproj.io"],"resources":["rollouts"]} + status: Satisfied + version: v1 + - group: rbac.authorization.k8s.io + kind: PolicyRule + message: cluster rule:{"verbs":["create","delete","deletecollection","get","list","patch","update","watch"],"apiGroups":["argoproj.io"],"resources":["rollouts","rollouts/finalizers","rollouts/scale","rollouts/status"]} + status: Satisfied + version: v1 + - group: rbac.authorization.k8s.io + kind: PolicyRule + message: cluster rule:{"verbs":["update"],"apiGroups":["argoproj.io"],"resources":["rollouts/finalizers"]} + status: Satisfied + version: v1 + - group: rbac.authorization.k8s.io + kind: PolicyRule + message: cluster rule:{"verbs":["get","patch","update"],"apiGroups":["argoproj.io"],"resources":["rollouts/status"]} + status: Satisfied + version: v1 + - group: rbac.authorization.k8s.io + kind: PolicyRule + message: cluster rule:{"verbs":["create","delete","get","list","patch","update","watch"],"apiGroups":["autoscaling"],"resources":["horizontalpodautoscalers"]} + status: Satisfied + version: v1 + - group: rbac.authorization.k8s.io + kind: PolicyRule + message: cluster rule:{"verbs":["create","delete","get","list","patch","update","watch"],"apiGroups":["batch"],"resources":["cronjobs","jobs"]} + status: Satisfied + version: v1 + - group: rbac.authorization.k8s.io + kind: PolicyRule + message: cluster rule:{"verbs":["create","delete","get","list","patch","update","watch"],"apiGroups":["batch"],"resources":["jobs"]} + status: Satisfied + version: v1 + - group: rbac.authorization.k8s.io + kind: PolicyRule + message: cluster rule:{"verbs":["get","list","watch"],"apiGroups":["config.openshift.io"],"resources":["clusterversions"]} + status: Satisfied + version: v1 + - group: rbac.authorization.k8s.io + kind: PolicyRule + message: cluster rule:{"verbs":["create","get","list","patch","update","watch"],"apiGroups":["console.openshift.io"],"resources":["consoleclidownloads"]} + status: Satisfied + version: v1 + - group: rbac.authorization.k8s.io + kind: PolicyRule + message: cluster rule:{"verbs":["create","delete","get","list","patch","update","watch"],"apiGroups":["console.openshift.io"],"resources":["consolelinks"]} + status: Satisfied + version: v1 + - group: rbac.authorization.k8s.io + kind: PolicyRule + message: cluster rule:{"verbs":["create","delete","get","list","patch","update","watch"],"apiGroups":["console.openshift.io"],"resources":["consoleplugins"]} + status: Satisfied + version: v1 + - group: rbac.authorization.k8s.io + kind: PolicyRule + message: cluster rule:{"verbs":["create","get","update"],"apiGroups":["coordination.k8s.io"],"resources":["leases"]} + status: Satisfied + version: v1 + - group: rbac.authorization.k8s.io + kind: PolicyRule + message: cluster rule:{"verbs":["get","list"],"apiGroups":["elbv2.k8s.aws"],"resources":["targetgroupbindings"]} + status: Satisfied + version: v1 + - group: rbac.authorization.k8s.io + kind: PolicyRule + message: cluster rule:{"verbs":["create","get","list","patch","watch"],"apiGroups":["extensions"],"resources":["ingresses"]} + status: Satisfied + version: v1 + - group: rbac.authorization.k8s.io + kind: PolicyRule + message: cluster rule:{"verbs":["create","delete","get","list","update","watch"],"apiGroups":["getambassador.io"],"resources":["ambassadormappings","mappings"]} + status: Satisfied + version: v1 + - group: rbac.authorization.k8s.io + kind: PolicyRule + message: cluster rule:{"verbs":["create","delete","get","list","patch","update","watch"],"apiGroups":["monitoring.coreos.com"],"resources":["prometheuses","prometheusrules","servicemonitors"]} + status: Satisfied + version: v1 + - group: rbac.authorization.k8s.io + kind: PolicyRule + message: cluster rule:{"verbs":["get","list","patch","update","watch"],"apiGroups":["networking.istio.io"],"resources":["destinationrules","virtualservices"]} + status: Satisfied + version: v1 + - group: rbac.authorization.k8s.io + kind: PolicyRule + message: cluster rule:{"verbs":["create","get","list","patch","update","watch"],"apiGroups":["networking.k8s.io"],"resources":["ingresses"]} + status: Satisfied + version: v1 + - group: rbac.authorization.k8s.io + kind: PolicyRule + message: cluster rule:{"verbs":["create","delete","get","list","patch","update","watch"],"apiGroups":["networking.k8s.io"],"resources":["ingresses","networkpolicies"]} + status: Satisfied + version: v1 + - group: rbac.authorization.k8s.io + kind: PolicyRule + message: cluster rule:{"verbs":["create","delete","get","list","patch","update","watch"],"apiGroups":["oauth.openshift.io"],"resources":["oauthclients"]} + status: Satisfied + version: v1 + - group: rbac.authorization.k8s.io + kind: PolicyRule + message: cluster rule:{"verbs":["create","get","list","watch"],"apiGroups":["operators.coreos.com"],"resources":["clusterserviceversions","operatorgroups","subscriptions"]} + status: Satisfied + version: v1 + - group: rbac.authorization.k8s.io + kind: PolicyRule + message: cluster rule:{"verbs":["create","delete","get","list","patch","update","watch"],"apiGroups":["pipelines.openshift.io"],"resources":["*"]} + status: Satisfied + version: v1 + - group: rbac.authorization.k8s.io + kind: PolicyRule + message: cluster rule:{"verbs":["create","delete","get","list","patch","update","watch"],"apiGroups":["pipelines.openshift.io"],"resources":["gitopsservices"]} + status: Satisfied + version: v1 + - group: rbac.authorization.k8s.io + kind: PolicyRule + message: cluster rule:{"verbs":["update"],"apiGroups":["pipelines.openshift.io"],"resources":["gitopsservices/finalizers"]} + status: Satisfied + version: v1 + - group: rbac.authorization.k8s.io + kind: PolicyRule + message: cluster rule:{"verbs":["get","patch","update"],"apiGroups":["pipelines.openshift.io"],"resources":["gitopsservices/status"]} + status: Satisfied + version: v1 + - group: rbac.authorization.k8s.io + kind: PolicyRule + message: cluster rule:{"verbs":["bind","create","delete","deletecollection","escalate","get","list","patch","update","watch"],"apiGroups":["rbac.authorization.k8s.io"],"resources":["*"]} + status: Satisfied + version: v1 + - group: rbac.authorization.k8s.io + kind: PolicyRule + message: cluster rule:{"verbs":["bind","create","delete","deletecollection","escalate","get","list","patch","update","watch"],"apiGroups":["rbac.authorization.k8s.io"],"resources":["clusterrolebindings","clusterroles"]} + status: Satisfied + version: v1 + - group: rbac.authorization.k8s.io + kind: PolicyRule + message: cluster rule:{"verbs":["create","delete","get","list","patch","update","watch"],"apiGroups":["rbac.authorization.k8s.io"],"resources":["rolebindings","roles"]} + status: Satisfied + version: v1 + - group: rbac.authorization.k8s.io + kind: PolicyRule + message: cluster rule:{"verbs":["create","delete","get","list","patch","update","watch"],"apiGroups":["route.openshift.io"],"resources":["*"]} + status: Satisfied + version: v1 + - group: rbac.authorization.k8s.io + kind: PolicyRule + message: cluster rule:{"verbs":["create","delete","get","list","patch","update","watch"],"apiGroups":["route.openshift.io"],"resources":["routes","routes/custom-host"]} + status: Satisfied + version: v1 + - group: rbac.authorization.k8s.io + kind: PolicyRule + message: cluster rule:{"verbs":["create","get","patch","update","watch"],"apiGroups":["split.smi-spec.io"],"resources":["trafficsplits"]} + status: Satisfied + version: v1 + - group: rbac.authorization.k8s.io + kind: PolicyRule + message: cluster rule:{"verbs":["create","delete","get","list","patch","update","watch"],"apiGroups":["template.openshift.io"],"resources":["templateconfigs","templateinstances","templates"]} + status: Satisfied + version: v1 + - group: rbac.authorization.k8s.io + kind: PolicyRule + message: cluster rule:{"verbs":["get","update","watch"],"apiGroups":["traefik.containo.us"],"resources":["traefikservices"]} + status: Satisfied + version: v1 + - group: rbac.authorization.k8s.io + kind: PolicyRule + message: cluster rule:{"verbs":["create","delete","get","list","update","watch"],"apiGroups":["x.getambassador.io"],"resources":["ambassadormappings","mappings"]} + status: Satisfied + version: v1 + - group: rbac.authorization.k8s.io + kind: PolicyRule + message: cluster rule:{"verbs":["create"],"apiGroups":["authentication.k8s.io"],"resources":["tokenreviews"]} + status: Satisfied + version: v1 + - group: rbac.authorization.k8s.io + kind: PolicyRule + message: cluster rule:{"verbs":["create"],"apiGroups":["authorization.k8s.io"],"resources":["subjectaccessreviews"]} + status: Satisfied + version: v1 + group: "" + kind: ServiceAccount + message: "" + name: openshift-gitops-operator-controller-manager + status: Present + version: v1 case.go:366: resource ClusterServiceVersion:openshift-operators/openshift-gitops-operator.v1.11.5: .spec.install.spec.clusterPermissions.rules: slice length mismatch: 54 != 57 logger.go:42: 17:02:25 | 1-090_validate_permissions | skipping kubernetes event logging logger.go:42: 17:02:25 | 1-090_validate_permissions | Deleting namespace: kuttl-test-causal-monkey === CONT kuttl/harness/1-030_validate_reencrypt logger.go:42: 17:02:27 | 1-030_validate_reencrypt | Creating namespace: kuttl-test-fond-boxer logger.go:42: 17:02:27 | 1-030_validate_reencrypt/1-install | starting test step 1-install logger.go:42: 17:02:27 | 1-030_validate_reencrypt/1-install | Namespace:/test-1-30-argo1 created logger.go:42: 17:02:27 | 1-030_validate_reencrypt/1-install | ArgoCD:test-1-30-argo1/argocd created === CONT kuttl/harness/1-032_validate_dynamic_scaling logger.go:42: 17:02:30 | 1-032_validate_dynamic_scaling | Creating namespace: kuttl-test-up-oyster logger.go:42: 17:02:30 | 1-032_validate_dynamic_scaling/1-install | starting test step 1-install logger.go:42: 17:02:30 | 1-032_validate_dynamic_scaling/1-install | running command: [sleep 30s] === CONT kuttl/harness/1-030_validate_reencrypt logger.go:42: 17:02:59 | 1-030_validate_reencrypt/1-install | test step completed 1-install logger.go:42: 17:02:59 | 1-030_validate_reencrypt/2-wait | starting test step 2-wait logger.go:42: 17:02:59 | 1-030_validate_reencrypt/2-wait | running command: [sh -c function wait_until_pods_running() { echo -n "Waiting until all pods in namespace $1 are up" for i in {1..150}; do # timeout after 5 minutes local pods="$(oc get pods --no-headers -n $1 2>/dev/null)" # All pods must be running local not_running=$(echo "${pods}" | grep -v Running | grep -v Completed | wc -l) if [[ -n "${pods}" && ${not_running} -eq 0 ]]; then local all_ready=1 while read pod ; do local status=(`echo -n ${pod} | cut -f2 -d' ' | tr '/' ' '`) # All containers must be ready [[ -z ${status[0]} ]] && all_ready=0 && break [[ -z ${status[1]} ]] && all_ready=0 && break [[ ${status[0]} -lt 1 ]] && all_ready=0 && break [[ ${status[1]} -lt 1 ]] && all_ready=0 && break [[ ${status[0]} -ne ${status[1]} ]] && all_ready=0 && break done <<< $(echo "${pods}" | grep -v Completed) if (( all_ready )); then echo -e "\nAll pods are up:\n${pods}" return 0 fi fi echo -n "." sleep 2 done echo -e "\n\nERROR: timeout waiting for pods to come up\n${pods}" return 1 } wait_until_pods_running "test-1-30-argo1" ] logger.go:42: 17:03:00 | 1-030_validate_reencrypt/2-wait | Waiting until all pods in namespace test-1-30-argo1 are up logger.go:42: 17:03:00 | 1-030_validate_reencrypt/2-wait | All pods are up: logger.go:42: 17:03:00 | 1-030_validate_reencrypt/2-wait | argocd-application-controller-0 1/1 Running 0 31s logger.go:42: 17:03:00 | 1-030_validate_reencrypt/2-wait | argocd-redis-659f477f6b-xs78p 1/1 Running 0 31s logger.go:42: 17:03:00 | 1-030_validate_reencrypt/2-wait | argocd-repo-server-c957f4-bvsdf 1/1 Running 0 31s logger.go:42: 17:03:00 | 1-030_validate_reencrypt/2-wait | argocd-server-7fdd9fb64d-rmvg2 1/1 Running 0 31s logger.go:42: 17:03:00 | 1-030_validate_reencrypt/2-wait | test step completed 2-wait logger.go:42: 17:03:00 | 1-030_validate_reencrypt/3-check-route | starting test step 3-check-route logger.go:42: 17:03:00 | 1-030_validate_reencrypt/3-check-route | running command: [sh -c routeURL=$(oc -n test-1-30-argo1 get route argocd-server -o jsonpath='{.status.ingress[0].host}') if ! curl --silent -k https://${routeURL} | grep -q "Your browser does not support JavaScript."; then echo "Route not configured properly" exit 1 fi ] logger.go:42: 17:03:00 | 1-030_validate_reencrypt/3-check-route | test step completed 3-check-route logger.go:42: 17:03:00 | 1-030_validate_reencrypt | skipping kubernetes event logging logger.go:42: 17:03:00 | 1-030_validate_reencrypt | Deleting namespace: kuttl-test-fond-boxer === CONT kuttl/harness/1-032_validate_dynamic_scaling logger.go:42: 17:03:01 | 1-032_validate_dynamic_scaling/1-install | ArgoCD:kuttl-test-up-oyster/argocd created === CONT kuttl/harness/1-066_validate_redis_secure_comm_no_autotls_no_ha logger.go:42: 17:03:06 | 1-066_validate_redis_secure_comm_no_autotls_no_ha | Creating namespace: kuttl-test-first-newt logger.go:42: 17:03:06 | 1-066_validate_redis_secure_comm_no_autotls_no_ha/1-install | starting test step 1-install logger.go:42: 17:03:06 | 1-066_validate_redis_secure_comm_no_autotls_no_ha/1-install | ArgoCD:kuttl-test-first-newt/argocd created === CONT kuttl/harness/1-032_validate_dynamic_scaling logger.go:42: 17:03:32 | 1-032_validate_dynamic_scaling/1-install | test step completed 1-install logger.go:42: 17:03:32 | 1-032_validate_dynamic_scaling/2-add-cluster-secrets | starting test step 2-add-cluster-secrets logger.go:42: 17:03:32 | 1-032_validate_dynamic_scaling/2-add-cluster-secrets | running command: [sleep 30s] === CONT kuttl/harness/1-066_validate_redis_secure_comm_no_autotls_no_ha logger.go:42: 17:03:38 | 1-066_validate_redis_secure_comm_no_autotls_no_ha/1-install | test step completed 1-install logger.go:42: 17:03:38 | 1-066_validate_redis_secure_comm_no_autotls_no_ha/2-generate_cert | starting test step 2-generate_cert logger.go:42: 17:03:38 | 1-066_validate_redis_secure_comm_no_autotls_no_ha/2-generate_cert | running command: [sh -c set -e echo -e "\n[SAN]\nsubjectAltName=DNS:argocd-redis.$NAMESPACE.svc.cluster.local\n[req]\ndistinguished_name=req" > ${PWD}/openssl_test.cnf openssl req -new -x509 -sha256 \ -subj "/C=XX/ST=XX/O=Testing/CN=redis" \ -reqexts SAN -extensions SAN \ -config ${PWD}/openssl_test.cnf \ -keyout ${PWD}/redis.key \ -out ${PWD}/redis.crt \ -newkey rsa:4096 \ -nodes \ -sha256 \ -days 10 ] logger.go:42: 17:03:38 | 1-066_validate_redis_secure_comm_no_autotls_no_ha/2-generate_cert | Generating a RSA private key logger.go:42: 17:03:39 | 1-066_validate_redis_secure_comm_no_autotls_no_ha/2-generate_cert | .............................................................................................................++++ logger.go:42: 17:03:39 | 1-066_validate_redis_secure_comm_no_autotls_no_ha/2-generate_cert | .....++++ logger.go:42: 17:03:39 | 1-066_validate_redis_secure_comm_no_autotls_no_ha/2-generate_cert | writing new private key to '/kuttl-e2e/gitops-operator/tests/parallel/1-066_validate_redis_secure_comm_no_autotls_no_ha/redis.key' logger.go:42: 17:03:39 | 1-066_validate_redis_secure_comm_no_autotls_no_ha/2-generate_cert | ----- logger.go:42: 17:03:39 | 1-066_validate_redis_secure_comm_no_autotls_no_ha/2-generate_cert | test step completed 2-generate_cert logger.go:42: 17:03:39 | 1-066_validate_redis_secure_comm_no_autotls_no_ha/3-create_secret | starting test step 3-create_secret logger.go:42: 17:03:39 | 1-066_validate_redis_secure_comm_no_autotls_no_ha/3-create_secret | running command: [sh -c set -e # clean up key, cert and config file cleanup() { rm -rf ${PWD}/redis.crt && rm -rf ${PWD}/redis.key && rm -rf ${PWD}/openssl_test.cnf } trap cleanup INT TERM EXIT oc create secret tls argocd-operator-redis-tls --key=${PWD}/redis.key --cert=${PWD}/redis.crt -n $NAMESPACE sleep 10 ] logger.go:42: 17:03:39 | 1-066_validate_redis_secure_comm_no_autotls_no_ha/3-create_secret | secret/argocd-operator-redis-tls created logger.go:42: 17:03:49 | 1-066_validate_redis_secure_comm_no_autotls_no_ha/3-create_secret | test step completed 3-create_secret logger.go:42: 17:03:49 | 1-066_validate_redis_secure_comm_no_autotls_no_ha/4-create_annotation | starting test step 4-create_annotation logger.go:42: 17:03:49 | 1-066_validate_redis_secure_comm_no_autotls_no_ha/4-create_annotation | running command: [sh -c set -e oc annotate secret argocd-operator-redis-tls argocds.argoproj.io/name=argocd -n $NAMESPACE sleep 30 ] logger.go:42: 17:03:50 | 1-066_validate_redis_secure_comm_no_autotls_no_ha/4-create_annotation | secret/argocd-operator-redis-tls annotated === CONT kuttl/harness/1-032_validate_dynamic_scaling logger.go:42: 17:04:02 | 1-032_validate_dynamic_scaling/2-add-cluster-secrets | Secret:kuttl-test-up-oyster/cluster-1 created logger.go:42: 17:04:02 | 1-032_validate_dynamic_scaling/2-add-cluster-secrets | Secret:kuttl-test-up-oyster/cluster-2 created === CONT kuttl/harness/1-066_validate_redis_secure_comm_no_autotls_no_ha logger.go:42: 17:04:20 | 1-066_validate_redis_secure_comm_no_autotls_no_ha/4-create_annotation | test step completed 4-create_annotation logger.go:42: 17:04:20 | 1-066_validate_redis_secure_comm_no_autotls_no_ha/5-check_deployments | starting test step 5-check_deployments logger.go:42: 17:04:20 | 1-066_validate_redis_secure_comm_no_autotls_no_ha/5-check_deployments | running command: [sh -c set -e if test "$(oc get deployments.apps argocd-redis -n $NAMESPACE --template '{{range .spec.template.spec.containers}}{{.args}}{{"\n"}}{{end}}')" != \ "[redis-server \ --protected-mode no \ --save \ --appendonly no \ --requirepass \$(REDIS_PASSWORD) \ --tls-port 6379 \ --port 0 \ --tls-cert-file /app/config/redis/tls/tls.crt \ --tls-key-file /app/config/redis/tls/tls.key \ --tls-auth-clients no]"; then echo "TLS .spec.template.spec.containers.args for argocd-redis deployment are wrong" exit 1 fi ] logger.go:42: 17:04:20 | 1-066_validate_redis_secure_comm_no_autotls_no_ha/5-check_deployments | running command: [sh -c set -e if test "$(oc get deployments.apps argocd-repo-server -n $NAMESPACE --template '{{range .spec.template.spec.containers}}{{.command}}{{"\n"}}{{end}}')" != \ "[uid_entrypoint.sh \ argocd-repo-server \ --redis argocd-redis.$NAMESPACE.svc.cluster.local:6379 \ --redis-use-tls \ --redis-ca-certificate /app/config/reposerver/tls/redis/tls.crt \ --loglevel info \ --logformat text]"; then echo "TLS .spec.template.spec.containers.command for argocd-repo-server deployment is wrong" exit 1 fi ] logger.go:42: 17:04:21 | 1-066_validate_redis_secure_comm_no_autotls_no_ha/5-check_deployments | running command: [sh -c set -e if test "$(oc get deployments.apps argocd-server -n $NAMESPACE --template '{{range .spec.template.spec.containers}}{{.command}}{{"\n"}}{{end}}')" != \ "[argocd-server \ --staticassets /shared/app \ --dex-server https://argocd-dex-server.$NAMESPACE.svc.cluster.local:5556 \ --repo-server argocd-repo-server.$NAMESPACE.svc.cluster.local:8081 \ --redis argocd-redis.$NAMESPACE.svc.cluster.local:6379 \ --redis-use-tls \ --redis-ca-certificate /app/config/server/tls/redis/tls.crt \ --loglevel info \ --logformat text]"; then echo "TLS .spec.template.spec.containers.command for argocd-server deployment is wrong" exit 1 fi ] logger.go:42: 17:04:21 | 1-066_validate_redis_secure_comm_no_autotls_no_ha/5-check_deployments | test step completed 5-check_deployments logger.go:42: 17:04:21 | 1-066_validate_redis_secure_comm_no_autotls_no_ha/6-check_statefulset | starting test step 6-check_statefulset logger.go:42: 17:04:21 | 1-066_validate_redis_secure_comm_no_autotls_no_ha/6-check_statefulset | running command: [sh -c set -e if test "$(oc get statefulsets.apps argocd-application-controller -n $NAMESPACE --template '{{range .spec.template.spec.containers}}{{.command}}{{"\n"}}{{end}}')" != \ "[argocd-application-controller \ --operation-processors 10 \ --redis argocd-redis.$NAMESPACE.svc.cluster.local:6379 \ --redis-use-tls \ --redis-ca-certificate /app/config/controller/tls/redis/tls.crt \ --repo-server argocd-repo-server.$NAMESPACE.svc.cluster.local:8081 \ --status-processors 20 \ --kubectl-parallelism-limit 10 \ --loglevel info \ --logformat text]"; then echo "TLS .spec.template.spec.containers.command for argocd-application-controller statefulsets is wrong" exit 1 fi ] logger.go:42: 17:04:22 | 1-066_validate_redis_secure_comm_no_autotls_no_ha/6-check_statefulset | test step completed 6-check_statefulset logger.go:42: 17:04:22 | 1-066_validate_redis_secure_comm_no_autotls_no_ha | skipping kubernetes event logging logger.go:42: 17:04:22 | 1-066_validate_redis_secure_comm_no_autotls_no_ha | Deleting namespace: kuttl-test-first-newt === CONT kuttl/harness/1-032_validate_dynamic_scaling logger.go:42: 17:04:23 | 1-032_validate_dynamic_scaling/2-add-cluster-secrets | test step completed 2-add-cluster-secrets logger.go:42: 17:04:23 | 1-032_validate_dynamic_scaling/3-cluster-secrets-exceed-maxShards | starting test step 3-cluster-secrets-exceed-maxShards logger.go:42: 17:04:23 | 1-032_validate_dynamic_scaling/3-cluster-secrets-exceed-maxShards | running command: [sleep 60s] === CONT kuttl/harness/1-008_validate-custom-argocd-namespace logger.go:42: 17:04:28 | 1-008_validate-custom-argocd-namespace | Creating namespace: kuttl-test-better-chicken logger.go:42: 17:04:28 | 1-008_validate-custom-argocd-namespace/1-install | starting test step 1-install logger.go:42: 17:04:28 | 1-008_validate-custom-argocd-namespace/1-install | Namespace:/test-1-8-custom created logger.go:42: 17:04:28 | 1-008_validate-custom-argocd-namespace/1-install | ArgoCD:test-1-8-custom/argocd created logger.go:42: 17:05:00 | 1-008_validate-custom-argocd-namespace/1-install | test step completed 1-install logger.go:42: 17:05:00 | 1-008_validate-custom-argocd-namespace/2-wait | starting test step 2-wait logger.go:42: 17:05:00 | 1-008_validate-custom-argocd-namespace/2-wait | running command: [sh -c function wait_until_pods_running() { echo -n "Waiting until all pods in namespace $1 are up" for i in {1..150}; do # timeout after 5 minutes local pods="$(oc get pods --no-headers -n $1 2>/dev/null)" # All pods must be running local not_running=$(echo "${pods}" | grep -v Running | grep -v Completed | wc -l) if [[ -n "${pods}" && ${not_running} -eq 0 ]]; then local all_ready=1 while read pod ; do local status=(`echo -n ${pod} | cut -f2 -d' ' | tr '/' ' '`) # All containers must be ready [[ -z ${status[0]} ]] && all_ready=0 && break [[ -z ${status[1]} ]] && all_ready=0 && break [[ ${status[0]} -lt 1 ]] && all_ready=0 && break [[ ${status[1]} -lt 1 ]] && all_ready=0 && break [[ ${status[0]} -ne ${status[1]} ]] && all_ready=0 && break done <<< $(echo "${pods}" | grep -v Completed) if (( all_ready )); then echo -e "\nAll pods are up:\n${pods}" return 0 fi fi echo -n "." sleep 2 done echo -e "\n\nERROR: timeout waiting for pods to come up\n${pods}" return 1 } wait_until_pods_running "test-1-8-custom" ] logger.go:42: 17:05:00 | 1-008_validate-custom-argocd-namespace/2-wait | Waiting until all pods in namespace test-1-8-custom are up logger.go:42: 17:05:00 | 1-008_validate-custom-argocd-namespace/2-wait | All pods are up: logger.go:42: 17:05:00 | 1-008_validate-custom-argocd-namespace/2-wait | argocd-application-controller-0 1/1 Running 0 31s logger.go:42: 17:05:00 | 1-008_validate-custom-argocd-namespace/2-wait | argocd-redis-659f477f6b-tr5zq 1/1 Running 0 31s logger.go:42: 17:05:00 | 1-008_validate-custom-argocd-namespace/2-wait | argocd-repo-server-56497dbbc6-244qh 1/1 Running 0 31s logger.go:42: 17:05:00 | 1-008_validate-custom-argocd-namespace/2-wait | argocd-server-7c6b6fc954-lh4zd 1/1 Running 0 31s logger.go:42: 17:05:00 | 1-008_validate-custom-argocd-namespace/2-wait | test step completed 2-wait logger.go:42: 17:05:00 | 1-008_validate-custom-argocd-namespace/3-create-app | starting test step 3-create-app logger.go:42: 17:05:00 | 1-008_validate-custom-argocd-namespace/3-create-app | Application:test-1-8-custom/validate-custom-argocd created logger.go:42: 17:05:13 | 1-008_validate-custom-argocd-namespace/3-create-app | test step completed 3-create-app logger.go:42: 17:05:13 | 1-008_validate-custom-argocd-namespace/99-delete | starting test step 99-delete === CONT kuttl/harness/1-032_validate_dynamic_scaling logger.go:42: 17:05:23 | 1-032_validate_dynamic_scaling/3-cluster-secrets-exceed-maxShards | Secret:kuttl-test-up-oyster/cluster-3 created logger.go:42: 17:05:23 | 1-032_validate_dynamic_scaling/3-cluster-secrets-exceed-maxShards | Secret:kuttl-test-up-oyster/cluster-4 created logger.go:42: 17:05:23 | 1-032_validate_dynamic_scaling/3-cluster-secrets-exceed-maxShards | Secret:kuttl-test-up-oyster/cluster-5 created logger.go:42: 17:05:23 | 1-032_validate_dynamic_scaling/3-cluster-secrets-exceed-maxShards | Secret:kuttl-test-up-oyster/cluster-6 created logger.go:42: 17:05:24 | 1-032_validate_dynamic_scaling/3-cluster-secrets-exceed-maxShards | running command: [sh -c stsReplicas=$(kubectl get sts argocd-application-controller -n $NAMESPACE -o jsonpath='{.status.replicas}') echo "$stsReplicas" if test "$stsReplicas" != "4"; then echo "FAILED! Number of replicas not equal to maxShards" exit 1 fi exit 0 ] logger.go:42: 17:05:24 | 1-032_validate_dynamic_scaling/3-cluster-secrets-exceed-maxShards | 4 === CONT kuttl/harness/1-008_validate-custom-argocd-namespace logger.go:42: 17:05:24 | 1-008_validate-custom-argocd-namespace/99-delete | test step completed 99-delete logger.go:42: 17:05:24 | 1-008_validate-custom-argocd-namespace | skipping kubernetes event logging logger.go:42: 17:05:24 | 1-008_validate-custom-argocd-namespace | Deleting namespace: kuttl-test-better-chicken === CONT kuttl/harness/1-032_validate_dynamic_scaling logger.go:42: 17:05:25 | 1-032_validate_dynamic_scaling/3-cluster-secrets-exceed-maxShards | running command: [sh -c stsReplicas=$(kubectl get sts argocd-application-controller -n $NAMESPACE -o jsonpath='{.status.replicas}') echo "$stsReplicas" if test "$stsReplicas" != "4"; then echo "FAILED! Number of replicas not equal to maxShards" exit 1 fi exit 0 ] logger.go:42: 17:05:25 | 1-032_validate_dynamic_scaling/3-cluster-secrets-exceed-maxShards | 4 logger.go:42: 17:05:26 | 1-032_validate_dynamic_scaling/3-cluster-secrets-exceed-maxShards | running command: [sh -c stsReplicas=$(kubectl get sts argocd-application-controller -n $NAMESPACE -o jsonpath='{.status.replicas}') echo "$stsReplicas" if test "$stsReplicas" != "4"; then echo "FAILED! Number of replicas not equal to maxShards" exit 1 fi exit 0 ] logger.go:42: 17:05:27 | 1-032_validate_dynamic_scaling/3-cluster-secrets-exceed-maxShards | 4 logger.go:42: 17:05:28 | 1-032_validate_dynamic_scaling/3-cluster-secrets-exceed-maxShards | running command: [sh -c stsReplicas=$(kubectl get sts argocd-application-controller -n $NAMESPACE -o jsonpath='{.status.replicas}') echo "$stsReplicas" if test "$stsReplicas" != "4"; then echo "FAILED! Number of replicas not equal to maxShards" exit 1 fi exit 0 ] logger.go:42: 17:05:28 | 1-032_validate_dynamic_scaling/3-cluster-secrets-exceed-maxShards | 4 logger.go:42: 17:05:29 | 1-032_validate_dynamic_scaling/3-cluster-secrets-exceed-maxShards | running command: [sh -c stsReplicas=$(kubectl get sts argocd-application-controller -n $NAMESPACE -o jsonpath='{.status.replicas}') echo "$stsReplicas" if test "$stsReplicas" != "4"; then echo "FAILED! Number of replicas not equal to maxShards" exit 1 fi exit 0 ] logger.go:42: 17:05:30 | 1-032_validate_dynamic_scaling/3-cluster-secrets-exceed-maxShards | 4 === CONT kuttl/harness/1-021_validate_rolebindings logger.go:42: 17:05:30 | 1-021_validate_rolebindings | Creating namespace: kuttl-test-civil-cattle logger.go:42: 17:05:30 | 1-021_validate_rolebindings/1-install | starting test step 1-install logger.go:42: 17:05:30 | 1-021_validate_rolebindings/1-install | ArgoCD:kuttl-test-civil-cattle/argocd created === CONT kuttl/harness/1-032_validate_dynamic_scaling logger.go:42: 17:05:31 | 1-032_validate_dynamic_scaling/3-cluster-secrets-exceed-maxShards | running command: [sh -c stsReplicas=$(kubectl get sts argocd-application-controller -n $NAMESPACE -o jsonpath='{.status.replicas}') echo "$stsReplicas" if test "$stsReplicas" != "4"; then echo "FAILED! Number of replicas not equal to maxShards" exit 1 fi exit 0 ] logger.go:42: 17:05:31 | 1-032_validate_dynamic_scaling/3-cluster-secrets-exceed-maxShards | 4 logger.go:42: 17:05:32 | 1-032_validate_dynamic_scaling/3-cluster-secrets-exceed-maxShards | running command: [sh -c stsReplicas=$(kubectl get sts argocd-application-controller -n $NAMESPACE -o jsonpath='{.status.replicas}') echo "$stsReplicas" if test "$stsReplicas" != "4"; then echo "FAILED! Number of replicas not equal to maxShards" exit 1 fi exit 0 ] logger.go:42: 17:05:33 | 1-032_validate_dynamic_scaling/3-cluster-secrets-exceed-maxShards | 4 logger.go:42: 17:05:34 | 1-032_validate_dynamic_scaling/3-cluster-secrets-exceed-maxShards | running command: [sh -c stsReplicas=$(kubectl get sts argocd-application-controller -n $NAMESPACE -o jsonpath='{.status.replicas}') echo "$stsReplicas" if test "$stsReplicas" != "4"; then echo "FAILED! Number of replicas not equal to maxShards" exit 1 fi exit 0 ] logger.go:42: 17:05:34 | 1-032_validate_dynamic_scaling/3-cluster-secrets-exceed-maxShards | 4 logger.go:42: 17:05:35 | 1-032_validate_dynamic_scaling/3-cluster-secrets-exceed-maxShards | running command: [sh -c stsReplicas=$(kubectl get sts argocd-application-controller -n $NAMESPACE -o jsonpath='{.status.replicas}') echo "$stsReplicas" if test "$stsReplicas" != "4"; then echo "FAILED! Number of replicas not equal to maxShards" exit 1 fi exit 0 ] logger.go:42: 17:05:36 | 1-032_validate_dynamic_scaling/3-cluster-secrets-exceed-maxShards | 4 logger.go:42: 17:05:36 | 1-032_validate_dynamic_scaling/3-cluster-secrets-exceed-maxShards | test step completed 3-cluster-secrets-exceed-maxShards logger.go:42: 17:05:36 | 1-032_validate_dynamic_scaling/4-delete-cluster-secret | starting test step 4-delete-cluster-secret logger.go:42: 17:05:36 | 1-032_validate_dynamic_scaling/4-delete-cluster-secret | running command: [sleep 60s] === CONT kuttl/harness/1-021_validate_rolebindings logger.go:42: 17:05:42 | 1-021_validate_rolebindings/1-install | test step completed 1-install logger.go:42: 17:05:42 | 1-021_validate_rolebindings | skipping kubernetes event logging logger.go:42: 17:05:42 | 1-021_validate_rolebindings | Deleting namespace: kuttl-test-civil-cattle === CONT kuttl/harness/1-019_validate_volume_mounts logger.go:42: 17:05:48 | 1-019_validate_volume_mounts | Creating namespace: kuttl-test-caring-burro logger.go:42: 17:05:48 | 1-019_validate_volume_mounts/1-install | starting test step 1-install logger.go:42: 17:05:48 | 1-019_validate_volume_mounts/1-install | ArgoCD:kuttl-test-caring-burro/argocd created logger.go:42: 17:06:20 | 1-019_validate_volume_mounts/1-install | test step completed 1-install logger.go:42: 17:06:20 | 1-019_validate_volume_mounts | skipping kubernetes event logging logger.go:42: 17:06:20 | 1-019_validate_volume_mounts | Deleting namespace: kuttl-test-caring-burro === CONT kuttl/harness/1-012_validate-managed-by-chain logger.go:42: 17:06:26 | 1-012_validate-managed-by-chain | Ignoring README.md as it does not match file name regexp: ^(\d+)-(?:[^\.]+)(?:\.yaml)?$ logger.go:42: 17:06:26 | 1-012_validate-managed-by-chain | Creating namespace: kuttl-test-capital-piglet logger.go:42: 17:06:26 | 1-012_validate-managed-by-chain/1-install | starting test step 1-install logger.go:42: 17:06:26 | 1-012_validate-managed-by-chain/1-install | Namespace:/test-1-12-custom created logger.go:42: 17:06:27 | 1-012_validate-managed-by-chain/1-install | Namespace:/test-1-12-custom2 created logger.go:42: 17:06:27 | 1-012_validate-managed-by-chain/1-install | ArgoCD:kuttl-test-capital-piglet/argocd created === CONT kuttl/harness/1-032_validate_dynamic_scaling logger.go:42: 17:06:36 | 1-032_validate_dynamic_scaling/4-delete-cluster-secret | running command: [kubectl delete Secret cluster-2 cluster-3 cluster-4 cluster-5 cluster-6 -n kuttl-test-up-oyster] logger.go:42: 17:06:36 | 1-032_validate_dynamic_scaling/4-delete-cluster-secret | secret "cluster-2" deleted logger.go:42: 17:06:36 | 1-032_validate_dynamic_scaling/4-delete-cluster-secret | secret "cluster-3" deleted logger.go:42: 17:06:36 | 1-032_validate_dynamic_scaling/4-delete-cluster-secret | secret "cluster-4" deleted logger.go:42: 17:06:36 | 1-032_validate_dynamic_scaling/4-delete-cluster-secret | secret "cluster-5" deleted logger.go:42: 17:06:36 | 1-032_validate_dynamic_scaling/4-delete-cluster-secret | secret "cluster-6" deleted logger.go:42: 17:06:36 | 1-032_validate_dynamic_scaling/4-delete-cluster-secret | running command: [sleep 30s] === CONT kuttl/harness/1-012_validate-managed-by-chain logger.go:42: 17:06:58 | 1-012_validate-managed-by-chain/1-install | test step completed 1-install logger.go:42: 17:06:58 | 1-012_validate-managed-by-chain/2-label-namespace | starting test step 2-label-namespace logger.go:42: 17:06:58 | 1-012_validate-managed-by-chain/2-label-namespace | running command: [sh -c kubectl label ns test-1-12-custom argocd.argoproj.io/managed-by=$NAMESPACE] logger.go:42: 17:06:59 | 1-012_validate-managed-by-chain/2-label-namespace | namespace/test-1-12-custom labeled logger.go:42: 17:06:59 | 1-012_validate-managed-by-chain/2-label-namespace | test step completed 2-label-namespace logger.go:42: 17:06:59 | 1-012_validate-managed-by-chain/3-check-secret | starting test step 3-check-secret logger.go:42: 17:06:59 | 1-012_validate-managed-by-chain/3-check-secret | running command: [sh -c namespaces=$(oc get secret -n $NAMESPACE argocd-default-cluster-config -o jsonpath='{.data.namespaces}' | base64 -d) if test "$namespaces" != "$NAMESPACE,test-1-12-custom"; then echo "Assertion for cluster secret failed!" exit 1 fi exit 0 ] logger.go:42: 17:06:59 | 1-012_validate-managed-by-chain/3-check-secret | test step completed 3-check-secret logger.go:42: 17:06:59 | 1-012_validate-managed-by-chain/4-create-application | starting test step 4-create-application logger.go:42: 17:06:59 | 1-012_validate-managed-by-chain/4-create-application | Application:kuttl-test-capital-piglet/test-1-12-custom created === CONT kuttl/harness/1-032_validate_dynamic_scaling logger.go:42: 17:07:06 | 1-032_validate_dynamic_scaling/4-delete-cluster-secret | test step completed 4-delete-cluster-secret logger.go:42: 17:07:06 | 1-032_validate_dynamic_scaling | skipping kubernetes event logging logger.go:42: 17:07:07 | 1-032_validate_dynamic_scaling | Deleting namespace: kuttl-test-up-oyster === CONT kuttl/harness/1-012_validate-managed-by-chain logger.go:42: 17:07:12 | 1-012_validate-managed-by-chain/4-create-application | test step completed 4-create-application logger.go:42: 17:07:12 | 1-012_validate-managed-by-chain/7-label-namespace | starting test step 7-label-namespace logger.go:42: 17:07:12 | 1-012_validate-managed-by-chain/7-label-namespace | running command: [sh -c kubectl label ns test-1-12-custom2 argocd.argoproj.io/managed-by=$NAMESPACE] logger.go:42: 17:07:12 | 1-012_validate-managed-by-chain/7-label-namespace | namespace/test-1-12-custom2 labeled === CONT kuttl/harness/1-009_validate-manage-other-namespace logger.go:42: 17:07:13 | 1-009_validate-manage-other-namespace | Ignoring README.md as it does not match file name regexp: ^(\d+)-(?:[^\.]+)(?:\.yaml)?$ logger.go:42: 17:07:13 | 1-009_validate-manage-other-namespace | Ignoring errors.yaml as it does not match file name regexp: ^(\d+)-(?:[^\.]+)(?:\.yaml)?$ logger.go:42: 17:07:13 | 1-009_validate-manage-other-namespace | Creating namespace: kuttl-test-suited-snake logger.go:42: 17:07:13 | 1-009_validate-manage-other-namespace/1-install | starting test step 1-install logger.go:42: 17:07:13 | 1-009_validate-manage-other-namespace/1-install | Namespace:/test-1-9-custom created logger.go:42: 17:07:13 | 1-009_validate-manage-other-namespace/1-install | ArgoCD:kuttl-test-suited-snake/argocd created === CONT kuttl/harness/1-012_validate-managed-by-chain logger.go:42: 17:07:13 | 1-012_validate-managed-by-chain/7-label-namespace | test step completed 7-label-namespace logger.go:42: 17:07:13 | 1-012_validate-managed-by-chain/8-create-application | starting test step 8-create-application logger.go:42: 17:07:13 | 1-012_validate-managed-by-chain/8-create-application | Application:kuttl-test-capital-piglet/test-1-12-custom2 created logger.go:42: 17:07:21 | 1-012_validate-managed-by-chain/8-create-application | test step completed 8-create-application logger.go:42: 17:07:21 | 1-012_validate-managed-by-chain/9-delete-app-and-namespace | starting test step 9-delete-app-and-namespace logger.go:42: 17:07:33 | 1-012_validate-managed-by-chain/9-delete-app-and-namespace | test step completed 9-delete-app-and-namespace logger.go:42: 17:07:33 | 1-012_validate-managed-by-chain/10-check-secret | starting test step 10-check-secret logger.go:42: 17:07:33 | 1-012_validate-managed-by-chain/10-check-secret | running command: [sh -c should="$NAMESPACE,test-1-12-custom2" namespaces=$(oc get secret -n $NAMESPACE argocd-default-cluster-config -o jsonpath='{.data.namespaces}' | base64 -d) if test "$namespaces" != "$should"; then echo "Assertion for cluster secret failed! '$namespaces' != '$should'" # 1.2.0 doesn't reconcile the cluster secret on namespace deletion if test GITOPS_TARGET_VERSION = "1.2.0"; then exit 0 else exit 1 fi fi exit 0 ] logger.go:42: 17:07:33 | 1-012_validate-managed-by-chain/10-check-secret | test step completed 10-check-secret logger.go:42: 17:07:33 | 1-012_validate-managed-by-chain/11-recreate-applications | starting test step 11-recreate-applications logger.go:42: 17:07:33 | 1-012_validate-managed-by-chain/11-recreate-applications | Namespace:/test-1-12-custom created logger.go:42: 17:07:33 | 1-012_validate-managed-by-chain/11-recreate-applications | Application:kuttl-test-capital-piglet/test-1-12-custom created logger.go:42: 17:07:33 | 1-012_validate-managed-by-chain/11-recreate-applications | Application:kuttl-test-capital-piglet/test-1-12-custom2 created logger.go:42: 17:07:34 | 1-012_validate-managed-by-chain/11-recreate-applications | test step completed 11-recreate-applications logger.go:42: 17:07:34 | 1-012_validate-managed-by-chain/99-delete | starting test step 99-delete === CONT kuttl/harness/1-009_validate-manage-other-namespace logger.go:42: 17:07:45 | 1-009_validate-manage-other-namespace/1-install | test step completed 1-install logger.go:42: 17:07:45 | 1-009_validate-manage-other-namespace/2-label-namespace | starting test step 2-label-namespace logger.go:42: 17:07:45 | 1-009_validate-manage-other-namespace/2-label-namespace | running command: [sh -c kubectl label ns test-1-9-custom argocd.argoproj.io/managed-by=$NAMESPACE] logger.go:42: 17:07:46 | 1-009_validate-manage-other-namespace/2-label-namespace | namespace/test-1-9-custom labeled logger.go:42: 17:07:46 | 1-009_validate-manage-other-namespace/2-label-namespace | test step completed 2-label-namespace logger.go:42: 17:07:46 | 1-009_validate-manage-other-namespace/3-check-secret | starting test step 3-check-secret logger.go:42: 17:07:46 | 1-009_validate-manage-other-namespace/3-check-secret | running command: [sh -c namespaces=$(oc get secret -n $NAMESPACE argocd-default-cluster-config -o jsonpath='{.data.namespaces}' | base64 -d) if test "$namespaces" != "$NAMESPACE,test-1-9-custom"; then echo "Assertion for cluster secret failed!" exit 1 fi exit 0 ] === CONT kuttl/harness/1-012_validate-managed-by-chain logger.go:42: 17:07:46 | 1-012_validate-managed-by-chain/99-delete | test step completed 99-delete logger.go:42: 17:07:46 | 1-012_validate-managed-by-chain | skipping kubernetes event logging logger.go:42: 17:07:46 | 1-012_validate-managed-by-chain | Deleting namespace: kuttl-test-capital-piglet === CONT kuttl/harness/1-009_validate-manage-other-namespace logger.go:42: 17:07:47 | 1-009_validate-manage-other-namespace/3-check-secret | test step completed 3-check-secret logger.go:42: 17:07:47 | 1-009_validate-manage-other-namespace/4-create-application | starting test step 4-create-application logger.go:42: 17:07:47 | 1-009_validate-manage-other-namespace/4-create-application | Application:kuttl-test-suited-snake/test-1-9-custom created === CONT kuttl/harness/1-029_validate_tls_secret_no_scale logger.go:42: 17:07:52 | 1-029_validate_tls_secret_no_scale | Creating namespace: kuttl-test-real-doe logger.go:42: 17:07:52 | 1-029_validate_tls_secret_no_scale/1-install | starting test step 1-install logger.go:42: 17:07:52 | 1-029_validate_tls_secret_no_scale/1-install | ArgoCD:kuttl-test-real-doe/argocd created === CONT kuttl/harness/1-009_validate-manage-other-namespace logger.go:42: 17:07:57 | 1-009_validate-manage-other-namespace/4-create-application | test step completed 4-create-application logger.go:42: 17:07:57 | 1-009_validate-manage-other-namespace/5-unlabel-namespace | starting test step 5-unlabel-namespace logger.go:42: 17:07:57 | 1-009_validate-manage-other-namespace/5-unlabel-namespace | running command: [sh -c kubectl label ns test-1-9-custom argocd.argoproj.io/managed-by-] logger.go:42: 17:07:57 | 1-009_validate-manage-other-namespace/5-unlabel-namespace | namespace/test-1-9-custom unlabeled logger.go:42: 17:07:57 | 1-009_validate-manage-other-namespace/5-unlabel-namespace | running command: [sh -c sleep 5] logger.go:42: 17:08:02 | 1-009_validate-manage-other-namespace/5-unlabel-namespace | test step completed 5-unlabel-namespace logger.go:42: 17:08:02 | 1-009_validate-manage-other-namespace/6-check-secret | starting test step 6-check-secret logger.go:42: 17:08:02 | 1-009_validate-manage-other-namespace/6-check-secret | running command: [sh -c namespaces=$(oc get secret -n $NAMESPACE argocd-default-cluster-config -o jsonpath='{.data.namespaces}' | base64 -d) if test "$namespaces" != "$NAMESPACE"; then echo "Assertion for cluster secret failed!" exit 1 fi exit 0 ] logger.go:42: 17:08:03 | 1-009_validate-manage-other-namespace/6-check-secret | test step completed 6-check-secret logger.go:42: 17:08:03 | 1-009_validate-manage-other-namespace/7-check | starting test step 7-check logger.go:42: 17:08:03 | 1-009_validate-manage-other-namespace/7-check | test step completed 7-check logger.go:42: 17:08:03 | 1-009_validate-manage-other-namespace/99-delete | starting test step 99-delete logger.go:42: 17:08:14 | 1-009_validate-manage-other-namespace/99-delete | test step completed 99-delete logger.go:42: 17:08:14 | 1-009_validate-manage-other-namespace | skipping kubernetes event logging logger.go:42: 17:08:14 | 1-009_validate-manage-other-namespace | Deleting namespace: kuttl-test-suited-snake === CONT kuttl/harness/1-048_validate_controller_sharding logger.go:42: 17:08:20 | 1-048_validate_controller_sharding | Creating namespace: kuttl-test-moral-mollusk logger.go:42: 17:08:20 | 1-048_validate_controller_sharding/1-install | starting test step 1-install logger.go:42: 17:08:20 | 1-048_validate_controller_sharding/1-install | ArgoCD:kuttl-test-moral-mollusk/argocd created === CONT kuttl/harness/1-029_validate_tls_secret_no_scale logger.go:42: 17:08:24 | 1-029_validate_tls_secret_no_scale/1-install | test step completed 1-install logger.go:42: 17:08:24 | 1-029_validate_tls_secret_no_scale/2-create-tls-secret | starting test step 2-create-tls-secret logger.go:42: 17:08:24 | 1-029_validate_tls_secret_no_scale/2-create-tls-secret | running command: [sh -c openssl req -x509 -newkey rsa:4096 -keyout /tmp/test-029-key.pem -out /tmp/test-029-cert.pem -subj '/CN=test-029-cert' -days 365 -nodes cert=$(cat /tmp/test-029-cert.pem | base64 -w 0) key=$(cat /tmp/test-029-key.pem | base64 -w 0) # Dirty hack to replace argocd-tls cat <<_EOF_ | oc replace -n $NAMESPACE secret argocd-tls -f - apiVersion: v1 kind: Secret type: kubernetes.io/tls metadata: name: argocd-tls namespace: $NAMESPACE data: tls.key: $key tls.crt: $cert _EOF_ ] logger.go:42: 17:08:24 | 1-029_validate_tls_secret_no_scale/2-create-tls-secret | Generating a RSA private key logger.go:42: 17:08:25 | 1-029_validate_tls_secret_no_scale/2-create-tls-secret | .....................++++ logger.go:42: 17:08:26 | 1-029_validate_tls_secret_no_scale/2-create-tls-secret | ................................................................................................++++ logger.go:42: 17:08:26 | 1-029_validate_tls_secret_no_scale/2-create-tls-secret | writing new private key to '/tmp/test-029-key.pem' logger.go:42: 17:08:26 | 1-029_validate_tls_secret_no_scale/2-create-tls-secret | ----- logger.go:42: 17:08:26 | 1-029_validate_tls_secret_no_scale/2-create-tls-secret | secret/argocd-tls replaced logger.go:42: 17:08:26 | 1-029_validate_tls_secret_no_scale/2-create-tls-secret | test step completed 2-create-tls-secret logger.go:42: 17:08:26 | 1-029_validate_tls_secret_no_scale/3-sleep-and-recheck | starting test step 3-sleep-and-recheck logger.go:42: 17:08:26 | 1-029_validate_tls_secret_no_scale/3-sleep-and-recheck | running command: [sh -c sleep 10] === CONT kuttl/harness/1-069_validate_redis_secure_comm_autotls_ha logger.go:42: 17:08:30 | 1-069_validate_redis_secure_comm_autotls_ha/1-install | test step completed 1-install logger.go:42: 17:08:30 | 1-069_validate_redis_secure_comm_autotls_ha/2-enable_autotls | starting test step 2-enable_autotls logger.go:42: 17:08:30 | 1-069_validate_redis_secure_comm_autotls_ha/2-enable_autotls | running command: [sh -c set -e oc patch argocds.argoproj.io argocd --type=merge -p '{"spec":{"redis":{"autotls":"openshift"}}}' -n $NAMESPACE ] logger.go:42: 17:08:31 | 1-069_validate_redis_secure_comm_autotls_ha/2-enable_autotls | argocd.argoproj.io/argocd patched logger.go:42: 17:08:31 | 1-069_validate_redis_secure_comm_autotls_ha/2-enable_autotls | test step completed 2-enable_autotls logger.go:42: 17:08:31 | 1-069_validate_redis_secure_comm_autotls_ha/3-check_secret | starting test step 3-check_secret logger.go:42: 17:08:31 | 1-069_validate_redis_secure_comm_autotls_ha/3-check_secret | running command: [sh -c set -e secret_type="$(oc get secrets argocd-operator-redis-tls -n $NAMESPACE --template '{{.type}}')" secret_len="$(oc get secrets argocd-operator-redis-tls -n $NAMESPACE --template '{{len .data}}')" expected_secret_type="kubernetes.io/tls" expected_secret_len=2 if test ${secret_type} != ${expected_secret_type}; then echo "argocd-operator-redis-tls secret type is ${secret_type} and should be ${expected_secret_type}" exit 1 fi if test ${secret_len} != ${expected_secret_len}; then echo "argocd-operator-redis-tls secret length is ${secret_len} and should be ${expected_secret_len}" exit 1 fi ] logger.go:42: 17:08:32 | 1-069_validate_redis_secure_comm_autotls_ha/3-check_secret | test step completed 3-check_secret logger.go:42: 17:08:32 | 1-069_validate_redis_secure_comm_autotls_ha | skipping kubernetes event logging logger.go:42: 17:08:32 | 1-069_validate_redis_secure_comm_autotls_ha | Deleting namespace: kuttl-test-absolute-raccoon === CONT kuttl/harness/1-029_validate_tls_secret_no_scale logger.go:42: 17:08:36 | 1-029_validate_tls_secret_no_scale/3-sleep-and-recheck | test step completed 3-sleep-and-recheck logger.go:42: 17:08:36 | 1-029_validate_tls_secret_no_scale | skipping kubernetes event logging logger.go:42: 17:08:36 | 1-029_validate_tls_secret_no_scale | Deleting namespace: kuttl-test-real-doe === CONT kuttl/harness/1-052_validate_rolebinding_number logger.go:42: 17:08:42 | 1-052_validate_rolebinding_number | Creating namespace: kuttl-test-smiling-dogfish logger.go:42: 17:08:42 | 1-052_validate_rolebinding_number/1-label_namespace | starting test step 1-label_namespace logger.go:42: 17:08:42 | 1-052_validate_rolebinding_number/1-label_namespace | running command: [sh -c oc label namespace $NAMESPACE argocd.argoproj.io/managed-by=openshift-gitops ] logger.go:42: 17:08:42 | 1-052_validate_rolebinding_number/1-label_namespace | namespace/kuttl-test-smiling-dogfish labeled logger.go:42: 17:08:42 | 1-052_validate_rolebinding_number/1-label_namespace | test step completed 1-label_namespace logger.go:42: 17:08:42 | 1-052_validate_rolebinding_number/2-check_rolebindings | starting test step 2-check_rolebindings logger.go:42: 17:08:42 | 1-052_validate_rolebinding_number/2-check_rolebindings | running command: [sh -c set -eo pipefail # Expected and Current RoleBindings expected_rb=( "openshift-gitops-argocd-application-controller" "openshift-gitops-argocd-server" ) current_rb=( $(oc get rolebindings -n "${NAMESPACE}" | awk '/gitops/ {print $1}') ) # Check that the required RoleBindings exist: for rb in "${expected_rb[@]}" do oc get rolebinding "${rb}" -n "${NAMESPACE}" > /dev/null done # Check that there are only two RoleBindings echo "Current RoleBindings: ${current_rb[*]}" [[ "${#current_rb[@]}" == "2" ]] ] logger.go:42: 17:08:44 | 1-052_validate_rolebinding_number/2-check_rolebindings | Current RoleBindings: openshift-gitops-argocd-application-controller openshift-gitops-argocd-server logger.go:42: 17:08:44 | 1-052_validate_rolebinding_number/2-check_rolebindings | test step completed 2-check_rolebindings logger.go:42: 17:08:44 | 1-052_validate_rolebinding_number | skipping kubernetes event logging logger.go:42: 17:08:44 | 1-052_validate_rolebinding_number | Deleting namespace: kuttl-test-smiling-dogfish === CONT kuttl/harness/1-051-validate_csv_permissions logger.go:42: 17:08:50 | 1-051-validate_csv_permissions | Creating namespace: kuttl-test-current-reindeer logger.go:42: 17:08:50 | 1-051-validate_csv_permissions/1-validate | starting test step 1-validate logger.go:42: 17:08:50 | 1-051-validate_csv_permissions/1-validate | running command: [sh -c set -e res=$(oc auth can-i delete resourcequotas -n openshift-gitops --as system:serviceaccount:openshift-operators:openshift-gitops-operator-controller-manager) if test "$res" != "yes"; then echo "Can't delete resourcequotas" exit 1 fi ] logger.go:42: 17:08:50 | 1-051-validate_csv_permissions/1-validate | test step completed 1-validate logger.go:42: 17:08:50 | 1-051-validate_csv_permissions | skipping kubernetes event logging logger.go:42: 17:08:50 | 1-051-validate_csv_permissions | Deleting namespace: kuttl-test-current-reindeer === CONT kuttl/harness/1-048_validate_controller_sharding logger.go:42: 17:08:52 | 1-048_validate_controller_sharding/1-install | test step completed 1-install logger.go:42: 17:08:52 | 1-048_validate_controller_sharding/2-change-sharding | starting test step 2-change-sharding logger.go:42: 17:08:52 | 1-048_validate_controller_sharding/2-change-sharding | ArgoCD:kuttl-test-moral-mollusk/argocd updated === CONT kuttl/harness/1-050_validate_sso logger.go:42: 17:08:56 | 1-050_validate_sso | Creating namespace: kuttl-test-famous-pheasant logger.go:42: 17:08:56 | 1-050_validate_sso/1-install | starting test step 1-install logger.go:42: 17:08:56 | 1-050_validate_sso/1-install | ArgoCD:kuttl-test-famous-pheasant/argocd created === CONT kuttl/harness/1-049_validate_parallelism_limit logger.go:42: 17:09:06 | 1-049_validate_parallelism_limit | Creating namespace: kuttl-test-master-silkworm logger.go:42: 17:09:06 | 1-049_validate_parallelism_limit/1-install | starting test step 1-install logger.go:42: 17:09:06 | 1-049_validate_parallelism_limit/1-install | ArgoCD:kuttl-test-master-silkworm/argocd created === CONT kuttl/harness/1-050_validate_sso logger.go:42: 17:09:08 | 1-050_validate_sso/1-install | test step completed 1-install logger.go:42: 17:09:08 | 1-050_validate_sso/2-remove-spec-sso | starting test step 2-remove-spec-sso logger.go:42: 17:09:08 | 1-050_validate_sso/2-remove-spec-sso | running command: [sh -c oc patch -n $NAMESPACE argocd/argocd --type='json' -p='[{"op": "remove", "path": "/spec/sso"}]' ] logger.go:42: 17:09:09 | 1-050_validate_sso/2-remove-spec-sso | argocd.argoproj.io/argocd patched logger.go:42: 17:09:09 | 1-050_validate_sso/2-remove-spec-sso | running command: [sh -c sleep 10] logger.go:42: 17:09:19 | 1-050_validate_sso/2-remove-spec-sso | test step completed 2-remove-spec-sso logger.go:42: 17:09:19 | 1-050_validate_sso/7-provider-keycloak-dex-spec | starting test step 7-provider-keycloak-dex-spec logger.go:42: 17:09:19 | 1-050_validate_sso/7-provider-keycloak-dex-spec | ArgoCD:kuttl-test-famous-pheasant/argocd updated logger.go:42: 17:09:19 | 1-050_validate_sso/7-provider-keycloak-dex-spec | test step completed 7-provider-keycloak-dex-spec logger.go:42: 17:09:19 | 1-050_validate_sso/8-remove-spec-dex | starting test step 8-remove-spec-dex logger.go:42: 17:09:19 | 1-050_validate_sso/8-remove-spec-dex | running command: [sh -c oc patch -n $NAMESPACE argocd/argocd --type='json' -p='[{"op": "remove", "path": "/spec/sso/dex"}]' ] logger.go:42: 17:09:19 | 1-050_validate_sso/8-remove-spec-dex | argocd.argoproj.io/argocd patched === CONT kuttl/harness/1-048_validate_controller_sharding logger.go:42: 17:09:24 | 1-048_validate_controller_sharding/2-change-sharding | test step completed 2-change-sharding logger.go:42: 17:09:24 | 1-048_validate_controller_sharding/3-check-env | starting test step 3-check-env logger.go:42: 17:09:24 | 1-048_validate_controller_sharding/3-check-env | running command: [sh -c replicas=$(oc get -n $NAMESPACE statefulset argocd-application-controller -o json \ | jq -r '.spec.template.spec.containers[0].env[]|select(.name=="ARGOCD_CONTROLLER_REPLICAS").value') if test "$replicas" != "3"; then echo "Environment ARGOCD_CONTROLLER_REPLICAS not correct. Should '3', is '$replicas'" exit 1 fi ] logger.go:42: 17:09:25 | 1-048_validate_controller_sharding/3-check-env | test step completed 3-check-env logger.go:42: 17:09:25 | 1-048_validate_controller_sharding/4-change-sharding | starting test step 4-change-sharding logger.go:42: 17:09:25 | 1-048_validate_controller_sharding/4-change-sharding | ArgoCD:kuttl-test-moral-mollusk/argocd updated logger.go:42: 17:09:27 | 1-048_validate_controller_sharding/4-change-sharding | test step completed 4-change-sharding logger.go:42: 17:09:27 | 1-048_validate_controller_sharding/5-check-env | starting test step 5-check-env logger.go:42: 17:09:27 | 1-048_validate_controller_sharding/5-check-env | running command: [sh -c # we do expect error from jq here if env is not set at all replicas=$(oc get -n $NAMESPACE statefulset argocd-application-controller -o json \ | jq -r '.spec.template.spec.containers[0].env[]|select(.name=="ARGOCD_CONTROLLER_REPLICASE").value') if test "$replicas" != ""; then echo "Environment ARGOCD_CONTROLLER_REPLICAS not correct. Should '', is '$replicas'" exit 1 fi ] logger.go:42: 17:09:27 | 1-048_validate_controller_sharding/5-check-env | test step completed 5-check-env logger.go:42: 17:09:27 | 1-048_validate_controller_sharding | skipping kubernetes event logging logger.go:42: 17:09:28 | 1-048_validate_controller_sharding | Deleting namespace: kuttl-test-moral-mollusk === CONT kuttl/harness/1-071_validate_SCC_HA logger.go:42: 17:09:33 | 1-071_validate_SCC_HA/3-modify-argocd | test step completed 3-modify-argocd logger.go:42: 17:09:33 | 1-071_validate_SCC_HA/99-delete | starting test step 99-delete logger.go:42: 17:09:33 | 1-071_validate_SCC_HA/99-delete | test step completed 99-delete logger.go:42: 17:09:33 | 1-071_validate_SCC_HA | skipping kubernetes event logging logger.go:42: 17:09:33 | 1-071_validate_SCC_HA | Deleting namespace: kuttl-test-certain-rat === CONT kuttl/harness/1-003_validate_console_link logger.go:42: 17:09:34 | 1-003_validate_console_link | Creating namespace: kuttl-test-lucky-cheetah logger.go:42: 17:09:34 | 1-003_validate_console_link/1-check-console-link | starting test step 1-check-console-link logger.go:42: 17:09:34 | 1-003_validate_console_link/1-check-console-link | test step completed 1-check-console-link logger.go:42: 17:09:34 | 1-003_validate_console_link | skipping kubernetes event logging logger.go:42: 17:09:34 | 1-003_validate_console_link | Deleting namespace: kuttl-test-lucky-cheetah === CONT kuttl/harness/1-007_validate_namespace_scoped_install logger.go:42: 17:09:39 | 1-007_validate_namespace_scoped_install | Creating namespace: kuttl-test-relevant-humpback logger.go:42: 17:09:39 | 1-007_validate_namespace_scoped_install/1-install | starting test step 1-install logger.go:42: 17:09:39 | 1-007_validate_namespace_scoped_install/1-install | ArgoCD:kuttl-test-relevant-humpback/argocd created === CONT kuttl/harness/1-004_beta_to_alpha_conversion logger.go:42: 17:10:18 | 1-004_beta_to_alpha_conversion | Creating namespace: kuttl-test-holy-iguana logger.go:42: 17:10:19 | 1-004_beta_to_alpha_conversion/1-argocd-dex | starting test step 1-argocd-dex logger.go:42: 17:10:19 | 1-004_beta_to_alpha_conversion/1-argocd-dex | ArgoCD:kuttl-test-holy-iguana/argocd created === CONT kuttl/harness/1-049_validate_parallelism_limit logger.go:42: 17:11:19 | 1-049_validate_parallelism_limit/1-install | test step completed 1-install logger.go:42: 17:11:19 | 1-049_validate_parallelism_limit/2-check-deployment | starting test step 2-check-deployment logger.go:42: 17:11:19 | 1-049_validate_parallelism_limit/2-check-deployment | running command: [sh -c set -e set -o pipefail expected=10 wlCommand=$(oc get -n $NAMESPACE statefulset/argocd-application-controller -o jsonpath='{.spec.template.spec.containers[0].command}'| jq -r '.[]' ) if ! echo "$wlCommand" | grep -qPz -- "--kubectl-parallelism-limit\\n${expected}(\$|\\n)"; then echo "Incorrect or missing --kubectl-parallelism-limit detected." echo "$wlCommand" exit 1 fi ] logger.go:42: 17:11:20 | 1-049_validate_parallelism_limit/2-check-deployment | test step completed 2-check-deployment logger.go:42: 17:11:20 | 1-049_validate_parallelism_limit/3-change-limit | starting test step 3-change-limit logger.go:42: 17:11:20 | 1-049_validate_parallelism_limit/3-change-limit | ArgoCD:kuttl-test-master-silkworm/argocd updated logger.go:42: 17:11:20 | 1-049_validate_parallelism_limit/3-change-limit | test step completed 3-change-limit logger.go:42: 17:11:20 | 1-049_validate_parallelism_limit/4-check-deployment | starting test step 4-check-deployment logger.go:42: 17:11:20 | 1-049_validate_parallelism_limit/4-check-deployment | running command: [sh -c sleep 5] logger.go:42: 17:11:25 | 1-049_validate_parallelism_limit/4-check-deployment | running command: [sh -c set -e set -o pipefail expected=20 wlCommand=$(oc get -n $NAMESPACE statefulset/argocd-application-controller -o jsonpath='{.spec.template.spec.containers[0].command}'| jq -r '.[]' ) if ! echo "$wlCommand" | grep -qPz -- "--kubectl-parallelism-limit\\n${expected}(\$|\\n)"; then echo "Incorrect or missing --kubectl-parallelism-limit detected." echo "$wlCommand" exit 1 fi ] logger.go:42: 17:11:25 | 1-049_validate_parallelism_limit/4-check-deployment | Incorrect or missing --kubectl-parallelism-limit detected. logger.go:42: 17:11:25 | 1-049_validate_parallelism_limit/4-check-deployment | argocd-application-controller logger.go:42: 17:11:25 | 1-049_validate_parallelism_limit/4-check-deployment | --operation-processors logger.go:42: 17:11:25 | 1-049_validate_parallelism_limit/4-check-deployment | 10 logger.go:42: 17:11:25 | 1-049_validate_parallelism_limit/4-check-deployment | --redis logger.go:42: 17:11:25 | 1-049_validate_parallelism_limit/4-check-deployment | argocd-redis.kuttl-test-master-silkworm.svc.cluster.local:6379 logger.go:42: 17:11:25 | 1-049_validate_parallelism_limit/4-check-deployment | --repo-server logger.go:42: 17:11:25 | 1-049_validate_parallelism_limit/4-check-deployment | argocd-repo-server.kuttl-test-master-silkworm.svc.cluster.local:8081 logger.go:42: 17:11:25 | 1-049_validate_parallelism_limit/4-check-deployment | --status-processors logger.go:42: 17:11:25 | 1-049_validate_parallelism_limit/4-check-deployment | 20 logger.go:42: 17:11:25 | 1-049_validate_parallelism_limit/4-check-deployment | --kubectl-parallelism-limit logger.go:42: 17:11:25 | 1-049_validate_parallelism_limit/4-check-deployment | 10 logger.go:42: 17:11:25 | 1-049_validate_parallelism_limit/4-check-deployment | --loglevel logger.go:42: 17:11:25 | 1-049_validate_parallelism_limit/4-check-deployment | info logger.go:42: 17:11:25 | 1-049_validate_parallelism_limit/4-check-deployment | --logformat logger.go:42: 17:11:25 | 1-049_validate_parallelism_limit/4-check-deployment | text case.go:364: failed in step 4-check-deployment case.go:366: exit status 1 logger.go:42: 17:11:25 | 1-049_validate_parallelism_limit | skipping kubernetes event logging logger.go:42: 17:11:25 | 1-049_validate_parallelism_limit | Deleting namespace: kuttl-test-master-silkworm === CONT kuttl/harness/1-050_validate_sso logger.go:42: 17:12:15 | 1-050_validate_sso/8-remove-spec-dex | test step completed 8-remove-spec-dex logger.go:42: 17:12:15 | 1-050_validate_sso | skipping kubernetes event logging logger.go:42: 17:12:15 | 1-050_validate_sso | Deleting namespace: kuttl-test-famous-pheasant === CONT kuttl/harness/1-044_validate_resource_limit_changes logger.go:42: 17:12:19 | 1-044_validate_resource_limit_changes | Creating namespace: kuttl-test-allowed-lioness logger.go:42: 17:12:19 | 1-044_validate_resource_limit_changes/1-install | starting test step 1-install logger.go:42: 17:12:19 | 1-044_validate_resource_limit_changes/1-install | ArgoCD:kuttl-test-allowed-lioness/argocd created === CONT kuttl/harness/1-047_validate_custom_env logger.go:42: 17:12:27 | 1-047_validate_custom_env | Creating namespace: kuttl-test-subtle-chamois logger.go:42: 17:12:27 | 1-047_validate_custom_env/1-install | starting test step 1-install logger.go:42: 17:12:27 | 1-047_validate_custom_env/1-install | ArgoCD:kuttl-test-subtle-chamois/argocd created === CONT kuttl/harness/1-004_beta_to_alpha_conversion logger.go:42: 17:12:45 | 1-004_beta_to_alpha_conversion/1-argocd-dex | test step completed 1-argocd-dex logger.go:42: 17:12:45 | 1-004_beta_to_alpha_conversion/2-delete | starting test step 2-delete logger.go:42: 17:12:46 | 1-004_beta_to_alpha_conversion/2-delete | test step completed 2-delete logger.go:42: 17:12:46 | 1-004_beta_to_alpha_conversion | skipping kubernetes event logging logger.go:42: 17:12:46 | 1-004_beta_to_alpha_conversion | Deleting namespace: kuttl-test-holy-iguana === CONT kuttl/harness/1-007_validate_namespace_scoped_install logger.go:42: 17:12:46 | 1-007_validate_namespace_scoped_install/1-install | test step completed 1-install logger.go:42: 17:12:46 | 1-007_validate_namespace_scoped_install/2-check-cluster-secret | starting test step 2-check-cluster-secret logger.go:42: 17:12:46 | 1-007_validate_namespace_scoped_install/2-check-cluster-secret | running command: [sh -c namespaces=$(oc get secret -n $NAMESPACE argocd-default-cluster-config -o jsonpath='{.data.namespaces}' | base64 -d) if test "$namespaces" != "$NAMESPACE"; then echo "Assertion for cluster secret failed!" exit 1 fi exit 0 ] logger.go:42: 17:12:46 | 1-007_validate_namespace_scoped_install/2-check-cluster-secret | test step completed 2-check-cluster-secret logger.go:42: 17:12:46 | 1-007_validate_namespace_scoped_install | skipping kubernetes event logging logger.go:42: 17:12:46 | 1-007_validate_namespace_scoped_install | Deleting namespace: kuttl-test-relevant-humpback === CONT kuttl/harness/1-044_validate_resource_limit_changes logger.go:42: 17:12:51 | 1-044_validate_resource_limit_changes/1-install | test step completed 1-install logger.go:42: 17:12:51 | 1-044_validate_resource_limit_changes/2-change-limits | starting test step 2-change-limits logger.go:42: 17:12:51 | 1-044_validate_resource_limit_changes/2-change-limits | ArgoCD:kuttl-test-allowed-lioness/argocd updated logger.go:42: 17:12:51 | 1-044_validate_resource_limit_changes/2-change-limits | test step completed 2-change-limits logger.go:42: 17:12:51 | 1-044_validate_resource_limit_changes/4-check-workloads | starting test step 4-check-workloads logger.go:42: 17:12:51 | 1-044_validate_resource_limit_changes/4-check-workloads | running command: [sh -c sleep 10] === CONT kuttl/harness/1-045_validate_repo_exec_timeout logger.go:42: 17:12:52 | 1-045_validate_repo_exec_timeout | Creating namespace: kuttl-test-beloved-fox logger.go:42: 17:12:52 | 1-045_validate_repo_exec_timeout/1-install | starting test step 1-install logger.go:42: 17:12:52 | 1-045_validate_repo_exec_timeout/1-install | ArgoCD:kuttl-test-beloved-fox/argocd created === CONT kuttl/harness/1-043_validate_log_level_format logger.go:42: 17:12:52 | 1-043_validate_log_level_format | Creating namespace: kuttl-test-flying-joey logger.go:42: 17:12:52 | 1-043_validate_log_level_format/1-install | starting test step 1-install logger.go:42: 17:12:52 | 1-043_validate_log_level_format/1-install | ArgoCD:kuttl-test-flying-joey/argocd created === CONT kuttl/harness/1-047_validate_custom_env logger.go:42: 17:12:59 | 1-047_validate_custom_env/1-install | test step completed 1-install logger.go:42: 17:12:59 | 1-047_validate_custom_env/2-change-env-vars | starting test step 2-change-env-vars logger.go:42: 17:12:59 | 1-047_validate_custom_env/2-change-env-vars | ArgoCD:kuttl-test-subtle-chamois/argocd updated logger.go:42: 17:12:59 | 1-047_validate_custom_env/2-change-env-vars | test step completed 2-change-env-vars logger.go:42: 17:12:59 | 1-047_validate_custom_env/3-check-workloads | starting test step 3-check-workloads logger.go:42: 17:12:59 | 1-047_validate_custom_env/3-check-workloads | running command: [sh -c sleep 10] === CONT kuttl/harness/1-044_validate_resource_limit_changes logger.go:42: 17:13:01 | 1-044_validate_resource_limit_changes/4-check-workloads | running command: [sh -c set -e set -o pipefail for wl in deployments/argocd-server deployments/argocd-repo-server statefulsets/argocd-application-controller; do res=$(oc get -n $NAMESPACE $wl -o jsonpath='{.spec.template.spec.containers[0].resources.limits.cpu}') if test "$res" != "2"; then echo "Reconciliation of resources for $wl failed: Should be 2, is '$res'" exit 1 fi done ] logger.go:42: 17:13:02 | 1-044_validate_resource_limit_changes/4-check-workloads | test step completed 4-check-workloads logger.go:42: 17:13:02 | 1-044_validate_resource_limit_changes | skipping kubernetes event logging logger.go:42: 17:13:02 | 1-044_validate_resource_limit_changes | Deleting namespace: kuttl-test-allowed-lioness === CONT kuttl/harness/1-043_validate_log_level_format logger.go:42: 17:13:06 | 1-043_validate_log_level_format/1-install | test step completed 1-install logger.go:42: 17:13:06 | 1-043_validate_log_level_format/2-change-loglevel | starting test step 2-change-loglevel logger.go:42: 17:13:06 | 1-043_validate_log_level_format/2-change-loglevel | ArgoCD:kuttl-test-flying-joey/argocd updated logger.go:42: 17:13:06 | 1-043_validate_log_level_format/2-change-loglevel | test step completed 2-change-loglevel logger.go:42: 17:13:06 | 1-043_validate_log_level_format/3-check-loglevel | starting test step 3-check-loglevel logger.go:42: 17:13:06 | 1-043_validate_log_level_format/3-check-loglevel | running command: [sh -c sleep 15] === CONT kuttl/harness/1-039_validate_fix_argocd-tls-certs-cm logger.go:42: 17:13:08 | 1-039_validate_fix_argocd-tls-certs-cm | Creating namespace: kuttl-test-close-seahorse logger.go:42: 17:13:08 | 1-039_validate_fix_argocd-tls-certs-cm/1-install | starting test step 1-install logger.go:42: 17:13:08 | 1-039_validate_fix_argocd-tls-certs-cm/1-install | ArgoCD:kuttl-test-close-seahorse/example-argocd created === CONT kuttl/harness/1-047_validate_custom_env logger.go:42: 17:13:09 | 1-047_validate_custom_env/3-check-workloads | running command: [sh -c set -e set -o pipefail for wl in deployment/argocd-server deployment/argocd-repo-server statefulset/argocd-application-controller; do val=$(oc get -n $NAMESPACE $wl -o json | jq -r '.spec.template.spec.containers[0].env[]|select(.name=="FOO").value') if test "$val" != "bar"; then echo "Environment for $wl was not set correctly." exit 1 fi done ] logger.go:42: 17:13:11 | 1-047_validate_custom_env/3-check-workloads | test step completed 3-check-workloads logger.go:42: 17:13:11 | 1-047_validate_custom_env | skipping kubernetes event logging logger.go:42: 17:13:11 | 1-047_validate_custom_env | Deleting namespace: kuttl-test-subtle-chamois === CONT kuttl/harness/1-025-validate-managed-by-change logger.go:42: 17:13:17 | 1-025-validate-managed-by-change | Creating namespace: kuttl-test-merry-ibex logger.go:42: 17:13:17 | 1-025-validate-managed-by-change/1-install | starting test step 1-install logger.go:42: 17:13:17 | 1-025-validate-managed-by-change/1-install | Namespace:/test-1-25-target created logger.go:42: 17:13:17 | 1-025-validate-managed-by-change/1-install | Namespace:/test-1-25-argo1 created logger.go:42: 17:13:17 | 1-025-validate-managed-by-change/1-install | Namespace:/test-1-25-argo2 created logger.go:42: 17:13:17 | 1-025-validate-managed-by-change/1-install | ArgoCD:test-1-25-argo1/argocd created logger.go:42: 17:13:17 | 1-025-validate-managed-by-change/1-install | ArgoCD:test-1-25-argo2/argocd created === CONT kuttl/harness/1-043_validate_log_level_format logger.go:42: 17:13:21 | 1-043_validate_log_level_format/3-check-loglevel | running command: [sh -c set -e set -o pipefail for wl in deployment/argocd-server deployment/argocd-repo-server statefulset/argocd-application-controller; do wlCommand=$(oc get -n $NAMESPACE $wl -o jsonpath='{.spec.template.spec.containers[0].command}'| jq -r '.[]' ) level="debug" format="json" if ! echo "$wlCommand" | grep -qPz -- "--loglevel\\n$level(\$|\\n)"; then echo "logLevel was not set correctly for $wl" echo "CWD: $wlCommand" exit 1 fi if ! echo "$wlCommand" | grep -qPz -- "--logformat\\n$format(\$|\\n)"; then echo "logFormat was not set correctly for $wl" echo "CWD: $wlCommand" exit 1 fi done ] logger.go:42: 17:13:22 | 1-043_validate_log_level_format/3-check-loglevel | test step completed 3-check-loglevel logger.go:42: 17:13:22 | 1-043_validate_log_level_format | skipping kubernetes event logging logger.go:42: 17:13:22 | 1-043_validate_log_level_format | Deleting namespace: kuttl-test-flying-joey === CONT kuttl/harness/1-045_validate_repo_exec_timeout logger.go:42: 17:13:23 | 1-045_validate_repo_exec_timeout/1-install | test step completed 1-install logger.go:42: 17:13:23 | 1-045_validate_repo_exec_timeout/2-change-exec-timeout | starting test step 2-change-exec-timeout logger.go:42: 17:13:24 | 1-045_validate_repo_exec_timeout/2-change-exec-timeout | ArgoCD:kuttl-test-beloved-fox/argocd updated logger.go:42: 17:13:24 | 1-045_validate_repo_exec_timeout/2-change-exec-timeout | test step completed 2-change-exec-timeout logger.go:42: 17:13:24 | 1-045_validate_repo_exec_timeout/4-check-workload-env | starting test step 4-check-workload-env logger.go:42: 17:13:24 | 1-045_validate_repo_exec_timeout/4-check-workload-env | running command: [sh -c sleep 10] === CONT kuttl/harness/1-003_alpha_to_beta_sso_conflict_conversion logger.go:42: 17:13:28 | 1-003_alpha_to_beta_sso_conflict_conversion | Creating namespace: kuttl-test-above-jaguar logger.go:42: 17:13:28 | 1-003_alpha_to_beta_sso_conflict_conversion/1-argocd-dex-keycloak-conflict | starting test step 1-argocd-dex-keycloak-conflict logger.go:42: 17:13:28 | 1-003_alpha_to_beta_sso_conflict_conversion/1-argocd-dex-keycloak-conflict | ArgoCD:kuttl-test-above-jaguar/argocd created === CONT kuttl/harness/1-067_validate_redis_secure_comm_no_autotls_ha logger.go:42: 17:13:29 | 1-067_validate_redis_secure_comm_no_autotls_ha/1-install | test step completed 1-install logger.go:42: 17:13:29 | 1-067_validate_redis_secure_comm_no_autotls_ha/2-generate_cert | starting test step 2-generate_cert logger.go:42: 17:13:29 | 1-067_validate_redis_secure_comm_no_autotls_ha/2-generate_cert | running command: [sh -c set -e echo -e "\n[SAN]\nsubjectAltName=DNS:argocd-redis.$NAMESPACE.svc.cluster.local\n[req]\ndistinguished_name=req" > ${PWD}/openssl_test.cnf openssl req -new -x509 -sha256 \ -subj "/C=XX/ST=XX/O=Testing/CN=redis" \ -reqexts SAN -extensions SAN \ -config ${PWD}/openssl_test.cnf \ -keyout ${PWD}/redis-ha.key \ -out ${PWD}/redis-ha.crt \ -newkey rsa:4096 \ -nodes \ -sha256 \ -days 10 ] logger.go:42: 17:13:29 | 1-067_validate_redis_secure_comm_no_autotls_ha/2-generate_cert | Generating a RSA private key logger.go:42: 17:13:30 | 1-067_validate_redis_secure_comm_no_autotls_ha/2-generate_cert | .................................................................................................................................................++++ logger.go:42: 17:13:32 | 1-067_validate_redis_secure_comm_no_autotls_ha/2-generate_cert | .........................................................................................................................................................++++ logger.go:42: 17:13:32 | 1-067_validate_redis_secure_comm_no_autotls_ha/2-generate_cert | writing new private key to '/kuttl-e2e/gitops-operator/tests/parallel/1-067_validate_redis_secure_comm_no_autotls_ha/redis-ha.key' logger.go:42: 17:13:32 | 1-067_validate_redis_secure_comm_no_autotls_ha/2-generate_cert | ----- logger.go:42: 17:13:32 | 1-067_validate_redis_secure_comm_no_autotls_ha/2-generate_cert | test step completed 2-generate_cert logger.go:42: 17:13:32 | 1-067_validate_redis_secure_comm_no_autotls_ha/3-create_secret | starting test step 3-create_secret logger.go:42: 17:13:32 | 1-067_validate_redis_secure_comm_no_autotls_ha/3-create_secret | running command: [sh -c set -e # clean up key and cert and config file cleanup() { rm -rf ${PWD}/redis-ha.crt && rm -rf ${PWD}/redis-ha.key && rm -rf ${PWD}/openssl_test.cnf } trap cleanup INT TERM EXIT oc create secret tls argocd-operator-redis-tls --key=${PWD}/redis-ha.key --cert=${PWD}/redis-ha.crt -n $NAMESPACE ] logger.go:42: 17:13:32 | 1-067_validate_redis_secure_comm_no_autotls_ha/3-create_secret | secret/argocd-operator-redis-tls created logger.go:42: 17:13:32 | 1-067_validate_redis_secure_comm_no_autotls_ha/3-create_secret | test step completed 3-create_secret logger.go:42: 17:13:32 | 1-067_validate_redis_secure_comm_no_autotls_ha/4-create_annotation | starting test step 4-create_annotation logger.go:42: 17:13:32 | 1-067_validate_redis_secure_comm_no_autotls_ha/4-create_annotation | running command: [sh -c set -e oc annotate secret argocd-operator-redis-tls argocds.argoproj.io/name=argocd -n $NAMESPACE ] logger.go:42: 17:13:32 | 1-067_validate_redis_secure_comm_no_autotls_ha/4-create_annotation | secret/argocd-operator-redis-tls annotated logger.go:42: 17:13:32 | 1-067_validate_redis_secure_comm_no_autotls_ha/4-create_annotation | test step completed 4-create_annotation logger.go:42: 17:13:32 | 1-067_validate_redis_secure_comm_no_autotls_ha/5-check_redis_config | starting test step 5-check_redis_config logger.go:42: 17:13:32 | 1-067_validate_redis_secure_comm_no_autotls_ha/5-check_redis_config | running command: [sh -c set -e expected_redis_config=( 'port 0' 'tls-port 6379' 'tls-cert-file /app/config/redis/tls/tls.crt' 'tls-ca-cert-file /app/config/redis/tls/tls.crt' 'tls-key-file /app/config/redis/tls/tls.key' 'tls-replication yes' 'tls-auth-clients no' ) expected_sentinel_config=( 'port 0' 'tls-port 26379' 'tls-cert-file "/app/config/redis/tls/tls.crt"' 'tls-ca-cert-file "/app/config/redis/tls/tls.crt"' 'tls-key-file "/app/config/redis/tls/tls.key"' 'tls-replication yes' 'tls-auth-clients no' ) for config in "${expected_redis_config[@]}" do oc exec -i pod/argocd-redis-ha-server-0 -n $NAMESPACE -c redis -- grep "${config}" /data/conf/redis.conf done for config in "${expected_sentinel_config[@]}" do oc exec -i pod/argocd-redis-ha-server-0 -n $NAMESPACE -c redis -- grep "${config}" /data/conf/sentinel.conf done ] logger.go:42: 17:13:33 | 1-067_validate_redis_secure_comm_no_autotls_ha/5-check_redis_config | error: unable to upgrade connection: container not found ("redis") case.go:364: failed in step 5-check_redis_config case.go:366: exit status 1 logger.go:42: 17:13:33 | 1-067_validate_redis_secure_comm_no_autotls_ha | skipping kubernetes event logging logger.go:42: 17:13:33 | 1-067_validate_redis_secure_comm_no_autotls_ha | Deleting namespace: kuttl-test-massive-akita === CONT kuttl/harness/1-045_validate_repo_exec_timeout logger.go:42: 17:13:34 | 1-045_validate_repo_exec_timeout/4-check-workload-env | running command: [sh -c timeout=$(oc get -n $NAMESPACE deployment argocd-repo-server -o json \ | jq -r '.spec.template.spec.containers[0].env[]|select(.name=="ARGOCD_EXEC_TIMEOUT").value') if test "$timeout" != "300s"; then echo "Assertion failed. Timeout should be 300, is '$timeout'" exit 1 fi ] logger.go:42: 17:13:34 | 1-045_validate_repo_exec_timeout/4-check-workload-env | test step completed 4-check-workload-env logger.go:42: 17:13:34 | 1-045_validate_repo_exec_timeout | skipping kubernetes event logging logger.go:42: 17:13:34 | 1-045_validate_repo_exec_timeout | Deleting namespace: kuttl-test-beloved-fox === CONT kuttl/harness/1-039_validate_fix_argocd-tls-certs-cm logger.go:42: 17:13:40 | 1-039_validate_fix_argocd-tls-certs-cm/1-install | test step completed 1-install logger.go:42: 17:13:40 | 1-039_validate_fix_argocd-tls-certs-cm/2-modify_configmap | starting test step 2-modify_configmap logger.go:42: 17:13:40 | 1-039_validate_fix_argocd-tls-certs-cm/2-modify_configmap | ConfigMap:kuttl-test-close-seahorse/argocd-tls-certs-cm updated logger.go:42: 17:13:40 | 1-039_validate_fix_argocd-tls-certs-cm/2-modify_configmap | test step completed 2-modify_configmap logger.go:42: 17:13:40 | 1-039_validate_fix_argocd-tls-certs-cm/3-modify_argocd_cr | starting test step 3-modify_argocd_cr logger.go:42: 17:13:40 | 1-039_validate_fix_argocd-tls-certs-cm/3-modify_argocd_cr | ArgoCD:kuttl-test-close-seahorse/example-argocd updated logger.go:42: 17:13:40 | 1-039_validate_fix_argocd-tls-certs-cm/3-modify_argocd_cr | test step completed 3-modify_argocd_cr logger.go:42: 17:13:40 | 1-039_validate_fix_argocd-tls-certs-cm/4- | starting test step 4- logger.go:42: 17:13:40 | 1-039_validate_fix_argocd-tls-certs-cm/4- | test step completed 4- logger.go:42: 17:13:40 | 1-039_validate_fix_argocd-tls-certs-cm | skipping kubernetes event logging logger.go:42: 17:13:40 | 1-039_validate_fix_argocd-tls-certs-cm | Deleting namespace: kuttl-test-close-seahorse === CONT kuttl/harness/1-002_alpha_to_beta_keycloak_conversion logger.go:42: 17:13:40 | 1-002_alpha_to_beta_keycloak_conversion | Creating namespace: kuttl-test-sharing-hedgehog logger.go:42: 17:13:40 | 1-002_alpha_to_beta_keycloak_conversion/1-argocd-keycloak | starting test step 1-argocd-keycloak logger.go:42: 17:13:40 | 1-002_alpha_to_beta_keycloak_conversion/1-argocd-keycloak | ArgoCD:kuttl-test-sharing-hedgehog/argocd created === CONT kuttl/harness/1-025-validate-managed-by-change logger.go:42: 17:13:50 | 1-025-validate-managed-by-change/1-install | test step completed 1-install logger.go:42: 17:13:50 | 1-025-validate-managed-by-change/2-install-app | starting test step 2-install-app logger.go:42: 17:13:50 | 1-025-validate-managed-by-change/2-install-app | running command: [sh -c function wait_until_pods_running() { echo -n "Waiting until all pods in namespace $1 are up" for i in {1..150}; do # timeout after 5 minutes local pods="$(oc get pods --no-headers -n $1 2>/dev/null)" # All pods must be running local not_running=$(echo "${pods}" | grep -v Running | grep -v Completed | wc -l) if [[ -n "${pods}" && ${not_running} -eq 0 ]]; then local all_ready=1 while read pod ; do local status=(`echo -n ${pod} | cut -f2 -d' ' | tr '/' ' '`) # All containers must be ready [[ -z ${status[0]} ]] && all_ready=0 && break [[ -z ${status[1]} ]] && all_ready=0 && break [[ ${status[0]} -lt 1 ]] && all_ready=0 && break [[ ${status[1]} -lt 1 ]] && all_ready=0 && break [[ ${status[0]} -ne ${status[1]} ]] && all_ready=0 && break done <<< $(echo "${pods}" | grep -v Completed) if (( all_ready )); then echo -e "\nAll pods are up:\n${pods}" return 0 fi fi echo -n "." sleep 2 done echo -e "\n\nERROR: timeout waiting for pods to come up\n${pods}" return 1 } wait_until_pods_running "test-1-25-argo1" wait_until_pods_running "test-1-25-argo2" ] logger.go:42: 17:13:51 | 1-025-validate-managed-by-change/2-install-app | Waiting until all pods in namespace test-1-25-argo1 are up logger.go:42: 17:13:51 | 1-025-validate-managed-by-change/2-install-app | All pods are up: logger.go:42: 17:13:51 | 1-025-validate-managed-by-change/2-install-app | argocd-application-controller-0 1/1 Running 0 33s logger.go:42: 17:13:51 | 1-025-validate-managed-by-change/2-install-app | argocd-redis-659f477f6b-ph9qs 1/1 Running 0 33s logger.go:42: 17:13:51 | 1-025-validate-managed-by-change/2-install-app | argocd-repo-server-6d474cff6-ddr2j 1/1 Running 0 33s logger.go:42: 17:13:51 | 1-025-validate-managed-by-change/2-install-app | argocd-server-6fbd5f77cd-f4pjq 1/1 Running 0 33s logger.go:42: 17:13:51 | 1-025-validate-managed-by-change/2-install-app | Waiting until all pods in namespace test-1-25-argo2 are up logger.go:42: 17:13:51 | 1-025-validate-managed-by-change/2-install-app | All pods are up: logger.go:42: 17:13:51 | 1-025-validate-managed-by-change/2-install-app | argocd-application-controller-0 1/1 Running 0 32s logger.go:42: 17:13:51 | 1-025-validate-managed-by-change/2-install-app | argocd-redis-659f477f6b-4j5rm 1/1 Running 0 32s logger.go:42: 17:13:51 | 1-025-validate-managed-by-change/2-install-app | argocd-repo-server-6bcc4c8b7-6fbkd 1/1 Running 0 32s logger.go:42: 17:13:51 | 1-025-validate-managed-by-change/2-install-app | argocd-server-6c875c687f-rc42x 1/1 Running 0 32s logger.go:42: 17:13:51 | 1-025-validate-managed-by-change/2-install-app | Application:test-1-25-argo1/guestbook created === CONT kuttl/harness/1-003_alpha_to_beta_sso_conflict_conversion logger.go:42: 17:14:01 | 1-003_alpha_to_beta_sso_conflict_conversion/1-argocd-dex-keycloak-conflict | test step completed 1-argocd-dex-keycloak-conflict logger.go:42: 17:14:01 | 1-003_alpha_to_beta_sso_conflict_conversion/2-delete | starting test step 2-delete logger.go:42: 17:14:01 | 1-003_alpha_to_beta_sso_conflict_conversion/2-delete | test step completed 2-delete logger.go:42: 17:14:01 | 1-003_alpha_to_beta_sso_conflict_conversion | skipping kubernetes event logging logger.go:42: 17:14:01 | 1-003_alpha_to_beta_sso_conflict_conversion | Deleting namespace: kuttl-test-above-jaguar === CONT kuttl/harness/1-025-validate-managed-by-change logger.go:42: 17:14:01 | 1-025-validate-managed-by-change/2-install-app | test step completed 2-install-app logger.go:42: 17:14:01 | 1-025-validate-managed-by-change/3-update-namespace | starting test step 3-update-namespace logger.go:42: 17:14:01 | 1-025-validate-managed-by-change/3-update-namespace | Namespace:/test-1-25-target updated logger.go:42: 17:14:02 | 1-025-validate-managed-by-change/3-update-namespace | Application:test-1-25-argo1/guestbook updated logger.go:42: 17:14:02 | 1-025-validate-managed-by-change/3-update-namespace | Application:test-1-25-argo2/guestbook created logger.go:42: 17:14:06 | 1-025-validate-managed-by-change/3-update-namespace | test step completed 3-update-namespace logger.go:42: 17:14:06 | 1-025-validate-managed-by-change/99-delete | starting test step 99-delete === CONT kuttl/harness/1-002_alpha_to_beta_keycloak_conversion logger.go:42: 17:14:13 | 1-002_alpha_to_beta_keycloak_conversion/1-argocd-keycloak | test step completed 1-argocd-keycloak logger.go:42: 17:14:13 | 1-002_alpha_to_beta_keycloak_conversion/2-delete | starting test step 2-delete logger.go:42: 17:14:13 | 1-002_alpha_to_beta_keycloak_conversion/2-delete | test step completed 2-delete logger.go:42: 17:14:13 | 1-002_alpha_to_beta_keycloak_conversion | skipping kubernetes event logging logger.go:42: 17:14:13 | 1-002_alpha_to_beta_keycloak_conversion | Deleting namespace: kuttl-test-sharing-hedgehog === CONT kuttl/harness/1-025-validate-managed-by-change logger.go:42: 17:14:18 | 1-025-validate-managed-by-change/99-delete | test step completed 99-delete logger.go:42: 17:14:18 | 1-025-validate-managed-by-change | skipping kubernetes event logging logger.go:42: 17:14:18 | 1-025-validate-managed-by-change | Deleting namespace: kuttl-test-merry-ibex === CONT kuttl harness.go:405: run tests finished harness.go:513: cleaning up harness.go:570: removing temp folder: "" --- FAIL: kuttl (1700.10s) --- FAIL: kuttl/harness (0.00s) --- PASS: kuttl/harness/1-001_alpha_to_beta_dex_conversion (22.73s) --- PASS: kuttl/harness/1-038_validate_productized_images (24.81s) --- PASS: kuttl/harness/1-103_argocd_alpha_to_beta_conversion (18.79s) --- PASS: kuttl/harness/1-023_validate_repo_server_tls (49.34s) --- PASS: kuttl/harness/1-101_validate_rollout_policyrules (5.99s) --- PASS: kuttl/harness/1-083_validate_resource_customization_subkeys (38.16s) --- PASS: kuttl/harness/1-037_validate_argocd_setting_replicas (73.91s) --- PASS: kuttl/harness/1-100_validate_rollouts_resources_creation (31.63s) --- PASS: kuttl/harness/1-096-validate_home_env_argocd_controller (5.81s) --- PASS: kuttl/harness/1-102_validate_handle_terminating_namespaces (63.38s) --- PASS: kuttl/harness/1-098_validate_dex_clientsecret_deprecated (39.72s) --- PASS: kuttl/harness/1-091_argocd_app_validate-applicationset-status (12.96s) --- PASS: kuttl/harness/1-095_validate_dex_clientsecret (40.22s) --- PASS: kuttl/harness/1-099_validate_server_autoscale (85.47s) --- PASS: kuttl/harness/1-089_validate_extra_repo_commands_args (50.87s) --- PASS: kuttl/harness/1-088_validate_applicationset_add_env_vars (39.52s) --- PASS: kuttl/harness/1-086_validate_applicationset_extra_command_args (31.74s) --- PASS: kuttl/harness/1-087_validate_repo_server_settings (42.28s) --- PASS: kuttl/harness/1-053_validate_cluster_admin_rbac (5.86s) --- PASS: kuttl/harness/1-064_validate_security_contexts (8.43s) --- PASS: kuttl/harness/1-084_validate_status_host_ingress (38.18s) --- PASS: kuttl/harness/1-063_validate_dex_liveness_probe (5.84s) --- PASS: kuttl/harness/1-063_validate_statefulset_restart (51.07s) --- PASS: kuttl/harness/1-062_validate_extra_config (41.07s) --- PASS: kuttl/harness/1-061_validate_resource_tracking_method (41.94s) --- PASS: kuttl/harness/1-058_validate_prometheus_rule (42.49s) --- PASS: kuttl/harness/1-055_validate_notification_controller (42.03s) --- PASS: kuttl/harness/1-057_validate_notifications (71.95s) --- PASS: kuttl/harness/1-055_drop_resource_customizations (18.44s) --- PASS: kuttl/harness/1-032_validate_resource_inclusions (39.85s) --- PASS: kuttl/harness/1-054_validate_deploymentconfig (97.82s) --- PASS: kuttl/harness/1-092_validate_workload_status_monitoring_alert (460.35s) --- PASS: kuttl/harness/1-034_validate_webhook_notifications (74.32s) --- PASS: kuttl/harness/1-065_validate_redis_ha_anti_affinity (589.27s) --- PASS: kuttl/harness/1-033_validate_resource_exclusions (39.92s) --- PASS: kuttl/harness/1-033_validate_applicationset_tls_scm_volume_mount (37.89s) --- PASS: kuttl/harness/1-036_validate_keycloak_resource_reqs (173.68s) --- PASS: kuttl/harness/1-081_validate_applicationset_deployment (5.81s) --- PASS: kuttl/harness/1-082_validate_node_placement (9.62s) --- PASS: kuttl/harness/1-080_validate_regex_support_argocd_rbac (23.69s) --- PASS: kuttl/harness/1-077_validate_disable_dex_removed (6.60s) --- PASS: kuttl/harness/1-083_validate_kustomize_namereference (52.38s) --- PASS: kuttl/harness/1-079_validate_vars_for_notificaitons (43.57s) --- PASS: kuttl/harness/1-074_validate_terminating_namespace_block (9.73s) --- PASS: kuttl/harness/1-075_validate_dex_anyuid (44.17s) --- PASS: kuttl/harness/1-072_validate_liveness_probe_removed (39.42s) --- PASS: kuttl/harness/1-070_validate_config_management_plugin (77.66s) --- PASS: kuttl/harness/1-073_validate_rhsso (205.75s) --- PASS: kuttl/harness/1-068_validate_redis_secure_comm_autotls_no_ha (54.47s) --- FAIL: kuttl/harness/1-090_validate_permissions (725.96s) --- PASS: kuttl/harness/1-030_validate_reencrypt (38.68s) --- PASS: kuttl/harness/1-066_validate_redis_secure_comm_no_autotls_no_ha (81.88s) --- PASS: kuttl/harness/1-008_validate-custom-argocd-namespace (62.27s) --- PASS: kuttl/harness/1-021_validate_rolebindings (17.88s) --- PASS: kuttl/harness/1-019_validate_volume_mounts (38.26s) --- PASS: kuttl/harness/1-032_validate_dynamic_scaling (282.24s) --- PASS: kuttl/harness/1-012_validate-managed-by-chain (85.93s) --- PASS: kuttl/harness/1-009_validate-manage-other-namespace (67.51s) --- PASS: kuttl/harness/1-029_validate_tls_secret_no_scale (49.72s) --- PASS: kuttl/harness/1-052_validate_rolebinding_number (7.92s) --- PASS: kuttl/harness/1-051-validate_csv_permissions (6.20s) --- PASS: kuttl/harness/1-069_validate_redis_secure_comm_autotls_ha (579.47s) --- PASS: kuttl/harness/1-048_validate_controller_sharding (73.42s) --- PASS: kuttl/harness/1-003_validate_console_link (5.82s) --- PASS: kuttl/harness/1-071_validate_SCC_HA (621.14s) --- FAIL: kuttl/harness/1-049_validate_parallelism_limit (193.23s) --- PASS: kuttl/harness/1-050_validate_sso (210.58s) --- PASS: kuttl/harness/1-004_beta_to_alpha_conversion (153.30s) --- PASS: kuttl/harness/1-007_validate_namespace_scoped_install (192.83s) --- PASS: kuttl/harness/1-044_validate_resource_limit_changes (48.80s) --- PASS: kuttl/harness/1-047_validate_custom_env (50.20s) --- PASS: kuttl/harness/1-043_validate_log_level_format (36.04s) --- PASS: kuttl/harness/1-045_validate_repo_exec_timeout (48.29s) --- PASS: kuttl/harness/1-039_validate_fix_argocd-tls-certs-cm (37.89s) --- PASS: kuttl/harness/1-003_alpha_to_beta_sso_conflict_conversion (38.62s) --- PASS: kuttl/harness/1-025-validate-managed-by-change (66.62s) --- PASS: kuttl/harness/1-002_alpha_to_beta_keycloak_conversion (82.98s) --- FAIL: kuttl/harness/1-067_validate_redis_secure_comm_no_autotls_ha (913.43s) FAIL Running sequential test suite 2024/05/27 17:16:38 kutt-test config testdirs is overridden with args: [ /kuttl-e2e/gitops-operator/tests/sequential ] === RUN kuttl harness.go:462: starting setup harness.go:252: running tests using configured kubeconfig. harness.go:275: Successful connection to cluster at: https://api.psi-as1-414.ocp-gitops-qe.com:6443 harness.go:360: running tests harness.go:73: going to run test suite with timeout of 600 seconds for each step harness.go:372: testsuite: /kuttl-e2e/gitops-operator/tests/sequential has 28 tests === RUN kuttl/harness === RUN kuttl/harness/1-001_validate_kam_service === PAUSE kuttl/harness/1-001_validate_kam_service === RUN kuttl/harness/1-002_validate_backend_service === PAUSE kuttl/harness/1-002_validate_backend_service === RUN kuttl/harness/1-004_validate_argocd_installation === PAUSE kuttl/harness/1-004_validate_argocd_installation === RUN kuttl/harness/1-005_validate_metrics === PAUSE kuttl/harness/1-005_validate_metrics === RUN kuttl/harness/1-006_validate_machine_config === PAUSE kuttl/harness/1-006_validate_machine_config === RUN kuttl/harness/1-010_validate-ootb-manage-other-namespace === PAUSE kuttl/harness/1-010_validate-ootb-manage-other-namespace === RUN kuttl/harness/1-018_validate_disable_default_instance === PAUSE kuttl/harness/1-018_validate_disable_default_instance === RUN kuttl/harness/1-020_validate_redis_ha_nonha === PAUSE kuttl/harness/1-020_validate_redis_ha_nonha === RUN kuttl/harness/1-026-validate_backend_service_permissions === PAUSE kuttl/harness/1-026-validate_backend_service_permissions === RUN kuttl/harness/1-027_validate_operand_from_git === PAUSE kuttl/harness/1-027_validate_operand_from_git === RUN kuttl/harness/1-028_validate_run_on_infra === PAUSE kuttl/harness/1-028_validate_run_on_infra === RUN kuttl/harness/1-031_validate_toolchain === PAUSE kuttl/harness/1-031_validate_toolchain === RUN kuttl/harness/1-034_validate_custom_roles === PAUSE kuttl/harness/1-034_validate_custom_roles === RUN kuttl/harness/1-035_validate_argocd_secret_repopulate === PAUSE kuttl/harness/1-035_validate_argocd_secret_repopulate === RUN kuttl/harness/1-040_validate_quoted_RBAC_group_names === PAUSE kuttl/harness/1-040_validate_quoted_RBAC_group_names === RUN kuttl/harness/1-041_validate_argocd_sync_alert === PAUSE kuttl/harness/1-041_validate_argocd_sync_alert === RUN kuttl/harness/1-042_validate_status_host === PAUSE kuttl/harness/1-042_validate_status_host === RUN kuttl/harness/1-050_validate_sso === PAUSE kuttl/harness/1-050_validate_sso === RUN kuttl/harness/1-056_validate_managed-by === PAUSE kuttl/harness/1-056_validate_managed-by === RUN kuttl/harness/1-064_validate_tcp_reset_error === PAUSE kuttl/harness/1-064_validate_tcp_reset_error === RUN kuttl/harness/1-071_validate_node_selectors === PAUSE kuttl/harness/1-071_validate_node_selectors === RUN kuttl/harness/1-078_validate_default_argocd_consoleLink === PAUSE kuttl/harness/1-078_validate_default_argocd_consoleLink === RUN kuttl/harness/1-083_validate_apps_in_any_namespace === PAUSE kuttl/harness/1-083_validate_apps_in_any_namespace === RUN kuttl/harness/1-084_validate_prune_templates === PAUSE kuttl/harness/1-084_validate_prune_templates === RUN kuttl/harness/1-085_validate_dynamic_plugin_installation === PAUSE kuttl/harness/1-085_validate_dynamic_plugin_installation === RUN kuttl/harness/1-086_validate_default_argocd_role === PAUSE kuttl/harness/1-086_validate_default_argocd_role === RUN kuttl/harness/1-104_validate_prometheus_alert === PAUSE kuttl/harness/1-104_validate_prometheus_alert === RUN kuttl/harness/1-105_validate_label_selector === PAUSE kuttl/harness/1-105_validate_label_selector === CONT kuttl/harness/1-001_validate_kam_service logger.go:42: 17:16:38 | 1-001_validate_kam_service | Creating namespace: kuttl-test-relative-quagga logger.go:42: 17:16:38 | 1-001_validate_kam_service/1-check-kam-service | starting test step 1-check-kam-service logger.go:42: 17:16:38 | 1-001_validate_kam_service/1-check-kam-service | test step completed 1-check-kam-service logger.go:42: 17:16:38 | 1-001_validate_kam_service/2-check-route | starting test step 2-check-route logger.go:42: 17:16:38 | 1-001_validate_kam_service/2-check-route | running command: [sh -c status=$(oc get -n openshift-gitops route kam -o json | jq -r .status) route_admitted=$(echo "$status" | jq -r '.ingress[0].conditions[0].type') route_status=$(echo "$status" | jq -r '.ingress[0].conditions[0].status') route_host=$(echo "$status" | jq -r '.ingress[0].host') router_name=$(echo "$status" | jq -r '.ingress[0].routerName') route_wildcard_policy=$(echo "$status" | jq -r '.ingress[0].wildcardPolicy') if test "$route_admitted" != "Admitted" -o "$route_status" != "True"; then echo "Route not ready" exit 1 fi if test "$route_host" = ""; then echo "Route has no host" exit 1 fi if test "$router_name" != "default"; then echo "Router is not default" exit 1 fi if test "$route_wildcard_policy" != "None"; then echo "Route wildcard policy is not None" exit 1 fi exit 0 ] logger.go:42: 17:16:39 | 1-001_validate_kam_service/2-check-route | test step completed 2-check-route logger.go:42: 17:16:39 | 1-001_validate_kam_service/3-check-download | starting test step 3-check-download logger.go:42: 17:16:39 | 1-001_validate_kam_service/3-check-download | running command: [sh -c set -e base_url=$(oc get -n openshift-gitops route kam -o json | jq -r '.status.ingress[0].host') curl -k --silent -o/dev/null "${base_url}/kam/kam_linux_amd64" curl -k --silent -o/dev/null "${base_url}/kam/kam_darwin_amd64" curl -k --silent -o/dev/null "${base_url}/kam/kam_windows_amd64.exe" ] logger.go:42: 17:16:40 | 1-001_validate_kam_service/3-check-download | test step completed 3-check-download logger.go:42: 17:16:40 | 1-001_validate_kam_service | skipping kubernetes event logging logger.go:42: 17:16:40 | 1-001_validate_kam_service | Deleting namespace: kuttl-test-relative-quagga === CONT kuttl/harness/1-078_validate_default_argocd_consoleLink logger.go:42: 17:16:45 | 1-078_validate_default_argocd_consoleLink | Creating namespace: kuttl-test-fair-gobbler logger.go:42: 17:16:46 | 1-078_validate_default_argocd_consoleLink/1- | starting test step 1- logger.go:42: 17:16:46 | 1-078_validate_default_argocd_consoleLink/1- | test step completed 1- logger.go:42: 17:16:46 | 1-078_validate_default_argocd_consoleLink/2-add_env | starting test step 2-add_env logger.go:42: 17:16:46 | 1-078_validate_default_argocd_consoleLink/2-add_env | running command: [sh -c oc patch -n openshift-operators subscription openshift-gitops-operator \ --type merge --patch '{"spec": {"config": {"env": [{"name": "DISABLE_DEFAULT_ARGOCD_CONSOLELINK", "value": "true"}]}}}' ] logger.go:42: 17:16:46 | 1-078_validate_default_argocd_consoleLink/2-add_env | subscription.operators.coreos.com/openshift-gitops-operator patched logger.go:42: 17:17:16 | 1-078_validate_default_argocd_consoleLink/2-add_env | test step completed 2-add_env logger.go:42: 17:17:16 | 1-078_validate_default_argocd_consoleLink/3-disable-env | starting test step 3-disable-env logger.go:42: 17:17:16 | 1-078_validate_default_argocd_consoleLink/3-disable-env | running command: [sh -c oc patch -n openshift-operators subscription openshift-gitops-operator \ --type merge --patch '{"spec": {"config": {"env": [{"name": "DISABLE_DEFAULT_ARGOCD_CONSOLELINK", "value": "false"}]}}}' ] logger.go:42: 17:17:16 | 1-078_validate_default_argocd_consoleLink/3-disable-env | subscription.operators.coreos.com/openshift-gitops-operator patched logger.go:42: 17:17:48 | 1-078_validate_default_argocd_consoleLink/3-disable-env | test step completed 3-disable-env logger.go:42: 17:17:48 | 1-078_validate_default_argocd_consoleLink/4-empty-valued-env | starting test step 4-empty-valued-env logger.go:42: 17:17:48 | 1-078_validate_default_argocd_consoleLink/4-empty-valued-env | running command: [sh -c oc patch -n openshift-operators subscription openshift-gitops-operator \ --type merge --patch '{"spec": {"config": {"env": [{"name": "DISABLE_DEFAULT_ARGOCD_CONSOLELINK", "value": ""}]}}}' ] logger.go:42: 17:17:48 | 1-078_validate_default_argocd_consoleLink/4-empty-valued-env | subscription.operators.coreos.com/openshift-gitops-operator patched logger.go:42: 17:17:48 | 1-078_validate_default_argocd_consoleLink/4-empty-valued-env | test step completed 4-empty-valued-env logger.go:42: 17:17:48 | 1-078_validate_default_argocd_consoleLink/5-remove-env | starting test step 5-remove-env logger.go:42: 17:17:48 | 1-078_validate_default_argocd_consoleLink/5-remove-env | running command: [sh -c oc -n openshift-operators patch subscription openshift-gitops-operator --type='json' -p='[{"op": "remove", "path": "/spec/config" }]' ] logger.go:42: 17:17:49 | 1-078_validate_default_argocd_consoleLink/5-remove-env | subscription.operators.coreos.com/openshift-gitops-operator patched logger.go:42: 17:17:49 | 1-078_validate_default_argocd_consoleLink/5-remove-env | test step completed 5-remove-env logger.go:42: 17:17:49 | 1-078_validate_default_argocd_consoleLink | skipping kubernetes event logging logger.go:42: 17:17:49 | 1-078_validate_default_argocd_consoleLink | Deleting namespace: kuttl-test-fair-gobbler === CONT kuttl/harness/1-105_validate_label_selector logger.go:42: 17:17:54 | 1-105_validate_label_selector | Creating namespace: kuttl-test-amazed-raccoon logger.go:42: 17:17:54 | 1-105_validate_label_selector/1-add-label-selector | starting test step 1-add-label-selector logger.go:42: 17:17:54 | 1-105_validate_label_selector/1-add-label-selector | running command: [sh -c if ! [ -z $NON_OLM ]; then oc set env deployment openshift-gitops-operator-controller-manager -n openshift-gitops-operator ARGOCD_LABEL_SELECTOR=foo=bar -c manager elif ! [ -z $CI ]; then oc patch -n openshift-gitops-operator subscription openshift-gitops-operator \ --type merge --patch '{"spec": {"config": {"env": [{"name": "ARGOCD_LABEL_SELECTOR", "value": "foo=bar"}]}}}' else oc patch -n openshift-operators subscription `subscription=gitops-operator && oc get subscription --all-namespaces | grep $subscription | head -1 | awk '{print $2}'` \ --type merge --patch '{"spec": {"config": {"env": [{"name": "ARGOCD_LABEL_SELECTOR", "value": "foo=bar"}]}}}' fi ] logger.go:42: 17:17:55 | 1-105_validate_label_selector/1-add-label-selector | subscription.operators.coreos.com/openshift-gitops-operator patched logger.go:42: 17:17:55 | 1-105_validate_label_selector/1-add-label-selector | running command: [sh -c sleep 120] logger.go:42: 17:19:55 | 1-105_validate_label_selector/1-add-label-selector | test step completed 1-add-label-selector logger.go:42: 17:19:55 | 1-105_validate_label_selector/2-create-ns | starting test step 2-create-ns logger.go:42: 17:19:55 | 1-105_validate_label_selector/2-create-ns | Namespace:/test-argocd created logger.go:42: 17:19:55 | 1-105_validate_label_selector/2-create-ns | ArgoCD:test-argocd/argocd created logger.go:42: 17:19:55 | 1-105_validate_label_selector/2-create-ns | ArgoCD:test-argocd/test1 created logger.go:42: 17:19:55 | 1-105_validate_label_selector/2-create-ns | test step completed 2-create-ns logger.go:42: 17:19:55 | 1-105_validate_label_selector/3-add-label | starting test step 3-add-label logger.go:42: 17:19:55 | 1-105_validate_label_selector/3-add-label | running command: [sh -c kubectl label argocd test1 foo=bar -n test-argocd ] logger.go:42: 17:19:56 | 1-105_validate_label_selector/3-add-label | argocd.argoproj.io/test1 labeled logger.go:42: 17:19:56 | 1-105_validate_label_selector/3-add-label | running command: [sh -c sleep 30] logger.go:42: 17:20:28 | 1-105_validate_label_selector/3-add-label | test step completed 3-add-label logger.go:42: 17:20:28 | 1-105_validate_label_selector/4-install | starting test step 4-install logger.go:42: 17:20:28 | 1-105_validate_label_selector/4-install | ArgoCD:test-argocd/test1 updated logger.go:42: 17:20:29 | 1-105_validate_label_selector/4-install | test step completed 4-install logger.go:42: 17:20:29 | 1-105_validate_label_selector/5-remove-label | starting test step 5-remove-label logger.go:42: 17:20:29 | 1-105_validate_label_selector/5-remove-label | running command: [sh -c kubectl label argocd test1 foo- -n test-argocd ] logger.go:42: 17:20:29 | 1-105_validate_label_selector/5-remove-label | argocd.argoproj.io/test1 unlabeled logger.go:42: 17:20:29 | 1-105_validate_label_selector/5-remove-label | running command: [sh -c sleep 30] logger.go:42: 17:20:59 | 1-105_validate_label_selector/5-remove-label | test step completed 5-remove-label logger.go:42: 17:20:59 | 1-105_validate_label_selector/6-install | starting test step 6-install logger.go:42: 17:20:59 | 1-105_validate_label_selector/6-install | ArgoCD:test-argocd/test1 updated logger.go:42: 17:20:59 | 1-105_validate_label_selector/6-install | test step completed 6-install logger.go:42: 17:20:59 | 1-105_validate_label_selector/7-remove-label-selector | starting test step 7-remove-label-selector logger.go:42: 17:20:59 | 1-105_validate_label_selector/7-remove-label-selector | running command: [sh -c if ! [ -z $NON_OLM ]; then oc set env deployment openshift-gitops-operator-controller-manager -n openshift-gitops-operator ARGOCD_LABEL_SELECTOR- -c manager elif ! [ -z $CI ]; then oc patch -n openshift-gitops-operator subscription openshift-gitops-operator \ --type json --patch '[{"op": "remove", "path": "/spec/config"}]' else oc patch -n openshift-operators subscription `subscription=gitops-operator && oc get subscription --all-namespaces | grep $subscription | head -1 | awk '{print $2}'` \ --type json --patch '[{"op": "remove", "path": "/spec/config"}]' fi ] logger.go:42: 17:21:00 | 1-105_validate_label_selector/7-remove-label-selector | subscription.operators.coreos.com/openshift-gitops-operator patched logger.go:42: 17:21:00 | 1-105_validate_label_selector/7-remove-label-selector | running command: [sh -c sleep 120] logger.go:42: 17:23:00 | 1-105_validate_label_selector/7-remove-label-selector | test step completed 7-remove-label-selector logger.go:42: 17:23:00 | 1-105_validate_label_selector/99-delete | starting test step 99-delete logger.go:42: 17:23:12 | 1-105_validate_label_selector/99-delete | test step completed 99-delete logger.go:42: 17:23:12 | 1-105_validate_label_selector | skipping kubernetes event logging logger.go:42: 17:23:12 | 1-105_validate_label_selector | Deleting namespace: kuttl-test-amazed-raccoon === CONT kuttl/harness/1-104_validate_prometheus_alert logger.go:42: 17:23:18 | 1-104_validate_prometheus_alert | Creating namespace: kuttl-test-lucky-vervet logger.go:42: 17:23:18 | 1-104_validate_prometheus_alert/1- | starting test step 1- logger.go:42: 17:23:18 | 1-104_validate_prometheus_alert/1- | test step completed 1- logger.go:42: 17:23:18 | 1-104_validate_prometheus_alert | skipping kubernetes event logging logger.go:42: 17:23:18 | 1-104_validate_prometheus_alert | Deleting namespace: kuttl-test-lucky-vervet === CONT kuttl/harness/1-086_validate_default_argocd_role logger.go:42: 17:23:24 | 1-086_validate_default_argocd_role | Creating namespace: kuttl-test-main-sheep logger.go:42: 17:23:24 | 1-086_validate_default_argocd_role/1- | starting test step 1- logger.go:42: 17:23:24 | 1-086_validate_default_argocd_role/1- | test step completed 1- logger.go:42: 17:23:24 | 1-086_validate_default_argocd_role/2-install | starting test step 2-install logger.go:42: 17:23:24 | 1-086_validate_default_argocd_role/2-install | Namespace:/test-1-086-custom created logger.go:42: 17:23:24 | 1-086_validate_default_argocd_role/2-install | Namespace:/test-1-086-custom2 created logger.go:42: 17:23:24 | 1-086_validate_default_argocd_role/2-install | Namespace:/test-1-086-custom3 created logger.go:42: 17:23:24 | 1-086_validate_default_argocd_role/2-install | ArgoCD:test-1-086-custom/argocd-default-policy created logger.go:42: 17:23:24 | 1-086_validate_default_argocd_role/2-install | ArgoCD:test-1-086-custom2/argocd-default-policy-empty created logger.go:42: 17:23:24 | 1-086_validate_default_argocd_role/2-install | ArgoCD:test-1-086-custom3/argocd-default-policy-admin created logger.go:42: 17:23:58 | 1-086_validate_default_argocd_role/2-install | test step completed 2-install logger.go:42: 17:23:58 | 1-086_validate_default_argocd_role | skipping kubernetes event logging logger.go:42: 17:23:58 | 1-086_validate_default_argocd_role | Deleting namespace: kuttl-test-main-sheep === CONT kuttl/harness/1-085_validate_dynamic_plugin_installation logger.go:42: 17:24:04 | 1-085_validate_dynamic_plugin_installation | Creating namespace: kuttl-test-crucial-dory logger.go:42: 17:24:04 | 1-085_validate_dynamic_plugin_installation/1- | starting test step 1- logger.go:42: 17:24:04 | 1-085_validate_dynamic_plugin_installation/1- | test step completed 1- logger.go:42: 17:24:04 | 1-085_validate_dynamic_plugin_installation/2-install-dynamic-plugin | starting test step 2-install-dynamic-plugin logger.go:42: 17:24:04 | 1-085_validate_dynamic_plugin_installation/2-install-dynamic-plugin | running command: [sh -c set -eo pipefail # Get CSV name and also OCP version. csv_name=$(oc get csv -n openshift-operators | awk '/openshift-gitops-operator/ {print $1}') ocp_version=$(oc version | awk '/Server Version/ {split($3,a,"-"); print a[1]}') # Patch the CSV to add the necessary env key:value for Dynamic Plugin oc patch csv "${csv_name}" -n openshift-operators \ --type='json' \ -p='[{ "op": "add", "path": "/spec/install/spec/deployments/0/spec/template/spec/containers/0/env/-", "value": { "name": "DYNAMIC_PLUGIN_START_OCP_VERSION", "value": "'${ocp_version}'" } }]' # Sleep 10 seconds, so the resources are launched before next assert step. sleep 5 exit 0 ] logger.go:42: 17:24:05 | 1-085_validate_dynamic_plugin_installation/2-install-dynamic-plugin | clusterserviceversion.operators.coreos.com/openshift-gitops-operator.v1.11.5 patched logger.go:42: 17:24:44 | 1-085_validate_dynamic_plugin_installation/2-install-dynamic-plugin | test step completed 2-install-dynamic-plugin logger.go:42: 17:24:44 | 1-085_validate_dynamic_plugin_installation | skipping kubernetes event logging logger.go:42: 17:24:44 | 1-085_validate_dynamic_plugin_installation | Deleting namespace: kuttl-test-crucial-dory === CONT kuttl/harness/1-084_validate_prune_templates logger.go:42: 17:24:50 | 1-084_validate_prune_templates | Creating namespace: kuttl-test-exotic-crab logger.go:42: 17:24:50 | 1-084_validate_prune_templates/1-create-ns-managed-by | starting test step 1-create-ns-managed-by logger.go:42: 17:24:50 | 1-084_validate_prune_templates/1-create-ns-managed-by | Namespace:/namespace-gitops-1672 created logger.go:42: 17:24:50 | 1-084_validate_prune_templates/1-create-ns-managed-by | test step completed 1-create-ns-managed-by logger.go:42: 17:24:50 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | starting test step 2-prune-duplicateGVK-resource logger.go:42: 17:24:50 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | running command: [sh -c set -eou pipefail DIR="$(pwd)" cleanup() { argocd logout "${api_server}" oc delete application app-kustomize -n openshift-gitops rm -rf $WORK_DIR } WORK_DIR=`mktemp -d -p "$DIR"` # check if tmp dir was created if [[ ! "$WORK_DIR" || ! -d "$WORK_DIR" ]]; then echo "Could not create temp dir" exit 1 fi trap cleanup INT TERM EXIT # Login to apiserver api_server=$(oc get routes -n openshift-gitops --field-selector metadata.name=openshift-gitops-server -o jsonpath="{.items[*]['spec.host']}") password=$(oc get secret openshift-gitops-cluster -n openshift-gitops -o jsonpath='{.data.admin\.password}' | base64 -d) output=$(argocd login $api_server --username admin --password $password --insecure) # ensure namespace exists oc get ns namespace-gitops-1672 2>/dev/null || { oc new-project namespace-gitops-1672 oc label namespace namespace-gitops-1672 argocd.argoproj.io/managed-by=openshift-gitops } # ensure template cleanup, if exists in namespace before we start tests oc delete template redis-template-gitops -n namespace-gitops-1672 --ignore-not-found=true # Adding duplicate GVK to check prune functionality against issue #GITOPS-1672 cat > $WORK_DIR/app-template.yaml << EOF apiVersion: template.openshift.io/v1 kind: Template metadata: name: redis-template-gitops annotations: description: "Description" iconClass: "icon-redis" tags: "database,nosql" objects: - apiVersion: v1 kind: Pod metadata: name: redis-master spec: containers: - env: - name: REDIS_PASSWORD value: xyz1234s image: dockerfile/redis name: master ports: - containerPort: 6379 protocol: TCP parameters: - description: Password used for Redis authentication from: '[A-Z0-9]{8}' generate: expression name: REDIS_PASSWORD labels: redis: master EOF cat > $WORK_DIR/app-template2.yaml << EOF apiVersion: template.openshift.io/v1 kind: Template metadata: name: redis-template-gitops2 annotations: description: "Description" iconClass: "icon-redis" tags: "database,nosql" objects: - apiVersion: v1 kind: Pod metadata: name: redis-master spec: containers: - env: - name: REDIS_PASSWORD value: xyz1234s image: dockerfile/redis name: master ports: - containerPort: 6379 protocol: TCP parameters: - description: Password used for Redis authentication from: '[A-Z0-9]{8}' generate: expression name: REDIS_PASSWORD labels: redis: master EOF # create application.yaml cat </dev/null; then echo "Application listing failed" exit 1 fi if ! argocd app sync app-kustomize --local $WORK_DIR --timeout 100 2>/dev/null; then echo "App didn't sync well with local flag" exit 1 fi # Now delete resource from git source and try to resync back rm -rf $WORK_DIR/app-template.yaml sleep 5 # Now sync application with prune and PruneLast options enabled if ! argocd app sync app-kustomize --local $WORK_DIR --prune --timeout 100 2>/dev/null; then echo "App didn't prune or synced well with local flag" exit 1 fi if oc get template redis-template-gitops -n namespace-gitops-1672 --no-headers 2>/dev/null; then echo "Templete is not pruned properly." exit 1 else echo "Test is successful, no templates found" exit 0 fi ] logger.go:42: 17:24:52 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | NAME STATUS AGE logger.go:42: 17:24:52 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | namespace-gitops-1672 Active 2s logger.go:42: 17:24:54 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | application.argoproj.io/app-kustomize created logger.go:42: 17:25:00 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | NAME CLUSTER NAMESPACE PROJECT STATUS HEALTH SYNCPOLICY CONDITIONS REPO PATH TARGET logger.go:42: 17:25:00 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | openshift-gitops/app-kustomize https://kubernetes.default.svc namespace-gitops-1672 default Unknown Healthy ComparisonError file:///kuttl-e2e/gitops-operator/tests/sequential/1-084_validate_prune_templates/tmp.d42FOLLI1q.git . HEAD logger.go:42: 17:25:00 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | TIMESTAMP GROUP KIND NAMESPACE NAME STATUS HEALTH HOOK MESSAGE logger.go:42: 17:25:01 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | 2024-05-27T17:25:01+00:00 template.openshift.io Template namespace-gitops-1672 redis-template-gitops Running Synced template.template.openshift.io/redis-template-gitops created logger.go:42: 17:25:01 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | 2024-05-27T17:25:01+00:00 template.openshift.io Template namespace-gitops-1672 redis-template-gitops2 Running Synced template.template.openshift.io/redis-template-gitops2 created logger.go:42: 17:25:01 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | 2024-05-27T17:25:01+00:00 template.openshift.io Template namespace-gitops-1672 redis-template-gitops Synced Synced template.template.openshift.io/redis-template-gitops created logger.go:42: 17:25:01 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | 2024-05-27T17:25:01+00:00 template.openshift.io Template namespace-gitops-1672 redis-template-gitops2 Synced Synced template.template.openshift.io/redis-template-gitops2 created logger.go:42: 17:25:01 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | logger.go:42: 17:25:01 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | Name: openshift-gitops/app-kustomize logger.go:42: 17:25:01 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | Project: default logger.go:42: 17:25:01 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | Server: https://kubernetes.default.svc logger.go:42: 17:25:01 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | Namespace: namespace-gitops-1672 logger.go:42: 17:25:01 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | URL: https://openshift-gitops-server-openshift-gitops.apps.psi-as1-414.ocp-gitops-qe.com/applications/app-kustomize logger.go:42: 17:25:01 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | Repo: file:///kuttl-e2e/gitops-operator/tests/sequential/1-084_validate_prune_templates/tmp.d42FOLLI1q.git logger.go:42: 17:25:01 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | Target: HEAD logger.go:42: 17:25:01 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | Path: . logger.go:42: 17:25:01 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | SyncWindow: Sync Allowed logger.go:42: 17:25:01 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | Sync Policy: logger.go:42: 17:25:01 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | Sync Status: Synced to HEAD logger.go:42: 17:25:01 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | Health Status: Healthy logger.go:42: 17:25:01 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | logger.go:42: 17:25:01 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | Operation: Sync logger.go:42: 17:25:01 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | Sync Revision: logger.go:42: 17:25:01 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | Phase: Succeeded logger.go:42: 17:25:01 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | Start: 2024-05-27 17:25:00 +0000 UTC logger.go:42: 17:25:01 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | Finished: 2024-05-27 17:25:01 +0000 UTC logger.go:42: 17:25:01 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | Duration: 1s logger.go:42: 17:25:01 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | Message: successfully synced (all tasks run) logger.go:42: 17:25:01 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | logger.go:42: 17:25:01 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | GROUP KIND NAMESPACE NAME STATUS HEALTH HOOK MESSAGE logger.go:42: 17:25:01 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | template.openshift.io Template namespace-gitops-1672 redis-template-gitops Synced template.template.openshift.io/redis-template-gitops created logger.go:42: 17:25:01 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | template.openshift.io Template namespace-gitops-1672 redis-template-gitops2 Synced template.template.openshift.io/redis-template-gitops2 created logger.go:42: 17:25:06 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | TIMESTAMP GROUP KIND NAMESPACE NAME STATUS HEALTH HOOK MESSAGE logger.go:42: 17:25:06 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | 2024-05-27T17:25:06+00:00 template.openshift.io Template namespace-gitops-1672 redis-template-gitops Synced logger.go:42: 17:25:06 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | 2024-05-27T17:25:06+00:00 template.openshift.io Template namespace-gitops-1672 redis-template-gitops2 Synced logger.go:42: 17:25:09 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | 2024-05-27T17:25:09+00:00 template.openshift.io Template namespace-gitops-1672 redis-template-gitops2 Synced template.template.openshift.io/redis-template-gitops2 unchanged logger.go:42: 17:25:09 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | 2024-05-27T17:25:09+00:00 template.openshift.io Template namespace-gitops-1672 redis-template-gitops Synced pruned logger.go:42: 17:25:09 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | 2024-05-27T17:25:09+00:00 template.openshift.io Template namespace-gitops-1672 redis-template-gitops OutOfSync Progressing pruned logger.go:42: 17:25:09 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | logger.go:42: 17:25:09 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | Name: openshift-gitops/app-kustomize logger.go:42: 17:25:09 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | Project: default logger.go:42: 17:25:09 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | Server: https://kubernetes.default.svc logger.go:42: 17:25:09 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | Namespace: namespace-gitops-1672 logger.go:42: 17:25:09 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | URL: https://openshift-gitops-server-openshift-gitops.apps.psi-as1-414.ocp-gitops-qe.com/applications/app-kustomize logger.go:42: 17:25:09 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | Repo: file:///kuttl-e2e/gitops-operator/tests/sequential/1-084_validate_prune_templates/tmp.d42FOLLI1q.git logger.go:42: 17:25:09 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | Target: HEAD logger.go:42: 17:25:09 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | Path: . logger.go:42: 17:25:09 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | SyncWindow: Sync Allowed logger.go:42: 17:25:09 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | Sync Policy: logger.go:42: 17:25:09 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | Sync Status: Synced to HEAD logger.go:42: 17:25:09 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | Health Status: Healthy logger.go:42: 17:25:09 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | logger.go:42: 17:25:09 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | Operation: Sync logger.go:42: 17:25:09 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | Sync Revision: logger.go:42: 17:25:09 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | Phase: Succeeded logger.go:42: 17:25:09 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | Start: 2024-05-27 17:25:06 +0000 UTC logger.go:42: 17:25:09 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | Finished: 2024-05-27 17:25:09 +0000 UTC logger.go:42: 17:25:09 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | Duration: 3s logger.go:42: 17:25:09 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | Message: successfully synced (all tasks run) logger.go:42: 17:25:09 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | logger.go:42: 17:25:09 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | GROUP KIND NAMESPACE NAME STATUS HEALTH HOOK MESSAGE logger.go:42: 17:25:09 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | template.openshift.io Template namespace-gitops-1672 redis-template-gitops2 Synced template.template.openshift.io/redis-template-gitops2 unchanged logger.go:42: 17:25:09 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | template.openshift.io Template namespace-gitops-1672 redis-template-gitops Succeeded Pruned pruned logger.go:42: 17:25:09 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | Test is successful, no templates found logger.go:42: 17:25:09 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | Logged out from 'openshift-gitops-server-openshift-gitops.apps.psi-as1-414.ocp-gitops-qe.com' logger.go:42: 17:25:10 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | application.argoproj.io "app-kustomize" deleted logger.go:42: 17:25:10 | 1-084_validate_prune_templates/2-prune-duplicateGVK-resource | test step completed 2-prune-duplicateGVK-resource logger.go:42: 17:25:10 | 1-084_validate_prune_templates/3- | starting test step 3- logger.go:42: 17:25:10 | 1-084_validate_prune_templates/3- | test step completed 3- logger.go:42: 17:25:10 | 1-084_validate_prune_templates/4-delete | starting test step 4-delete logger.go:42: 17:25:16 | 1-084_validate_prune_templates/4-delete | test step completed 4-delete logger.go:42: 17:25:16 | 1-084_validate_prune_templates | skipping kubernetes event logging logger.go:42: 17:25:16 | 1-084_validate_prune_templates | Deleting namespace: kuttl-test-exotic-crab === CONT kuttl/harness/1-083_validate_apps_in_any_namespace logger.go:42: 17:25:22 | 1-083_validate_apps_in_any_namespace | Ignoring errors.yaml as it does not match file name regexp: ^(\d+)-(?:[^\.]+)(?:\.yaml)?$ logger.go:42: 17:25:22 | 1-083_validate_apps_in_any_namespace | Creating namespace: kuttl-test-real-labrador logger.go:42: 17:25:22 | 1-083_validate_apps_in_any_namespace/1-create-ns-managed-by | starting test step 1-create-ns-managed-by logger.go:42: 17:25:22 | 1-083_validate_apps_in_any_namespace/1-create-ns-managed-by | Namespace:/test-1-24-custom created logger.go:42: 17:25:22 | 1-083_validate_apps_in_any_namespace/1-create-ns-managed-by | test step completed 1-create-ns-managed-by logger.go:42: 17:25:22 | 1-083_validate_apps_in_any_namespace/2-add-source-ns | starting test step 2-add-source-ns logger.go:42: 17:25:22 | 1-083_validate_apps_in_any_namespace/2-add-source-ns | ArgoCD:openshift-gitops/openshift-gitops updated logger.go:42: 17:25:22 | 1-083_validate_apps_in_any_namespace/2-add-source-ns | test step completed 2-add-source-ns logger.go:42: 17:25:22 | 1-083_validate_apps_in_any_namespace/3-delete | starting test step 3-delete logger.go:42: 17:25:28 | 1-083_validate_apps_in_any_namespace/3-delete | test step completed 3-delete logger.go:42: 17:25:28 | 1-083_validate_apps_in_any_namespace/4-change-source-namespaces | starting test step 4-change-source-namespaces logger.go:42: 17:25:28 | 1-083_validate_apps_in_any_namespace/4-change-source-namespaces | ArgoCD:openshift-gitops/openshift-gitops updated logger.go:42: 17:25:33 | 1-083_validate_apps_in_any_namespace/4-change-source-namespaces | test step completed 4-change-source-namespaces logger.go:42: 17:25:33 | 1-083_validate_apps_in_any_namespace/5-create-ns-and-add-source-ns | starting test step 5-create-ns-and-add-source-ns logger.go:42: 17:25:33 | 1-083_validate_apps_in_any_namespace/5-create-ns-and-add-source-ns | Namespace:/test-1-24-custom created logger.go:42: 17:25:33 | 1-083_validate_apps_in_any_namespace/5-create-ns-and-add-source-ns | ArgoCD:openshift-gitops/openshift-gitops updated logger.go:42: 17:26:05 | 1-083_validate_apps_in_any_namespace/5-create-ns-and-add-source-ns | test step completed 5-create-ns-and-add-source-ns logger.go:42: 17:26:05 | 1-083_validate_apps_in_any_namespace/6-add-managed-by | starting test step 6-add-managed-by logger.go:42: 17:26:05 | 1-083_validate_apps_in_any_namespace/6-add-managed-by | Namespace:/test-1-24-custom updated logger.go:42: 17:26:06 | 1-083_validate_apps_in_any_namespace/6-add-managed-by | test step completed 6-add-managed-by logger.go:42: 17:26:06 | 1-083_validate_apps_in_any_namespace/7-remove-managed-by | starting test step 7-remove-managed-by logger.go:42: 17:26:06 | 1-083_validate_apps_in_any_namespace/7-remove-managed-by | running command: [sh -c oc label ns test-1-24-custom argocd.argoproj.io/managed-by-] logger.go:42: 17:26:06 | 1-083_validate_apps_in_any_namespace/7-remove-managed-by | namespace/test-1-24-custom unlabeled logger.go:42: 17:26:06 | 1-083_validate_apps_in_any_namespace/7-remove-managed-by | running command: [sh -c oc rollout restart deployment.apps/openshift-gitops-server -n openshift-gitops] logger.go:42: 17:26:07 | 1-083_validate_apps_in_any_namespace/7-remove-managed-by | deployment.apps/openshift-gitops-server restarted logger.go:42: 17:26:07 | 1-083_validate_apps_in_any_namespace/7-remove-managed-by | running command: [sh -c oc rollout restart statefulset.apps/openshift-gitops-application-controller -n openshift-gitops] logger.go:42: 17:26:07 | 1-083_validate_apps_in_any_namespace/7-remove-managed-by | statefulset.apps/openshift-gitops-application-controller restarted logger.go:42: 17:26:07 | 1-083_validate_apps_in_any_namespace/7-remove-managed-by | running command: [sh -c sleep 5] logger.go:42: 17:26:38 | 1-083_validate_apps_in_any_namespace/7-remove-managed-by | test step completed 7-remove-managed-by logger.go:42: 17:26:38 | 1-083_validate_apps_in_any_namespace/8-change-source-namespaces | starting test step 8-change-source-namespaces logger.go:42: 17:26:38 | 1-083_validate_apps_in_any_namespace/8-change-source-namespaces | ArgoCD:openshift-gitops/openshift-gitops updated logger.go:42: 17:26:39 | 1-083_validate_apps_in_any_namespace/8-change-source-namespaces | test step completed 8-change-source-namespaces logger.go:42: 17:26:39 | 1-083_validate_apps_in_any_namespace/99-delete | starting test step 99-delete logger.go:42: 17:26:44 | 1-083_validate_apps_in_any_namespace/99-delete | test step completed 99-delete logger.go:42: 17:26:44 | 1-083_validate_apps_in_any_namespace | skipping kubernetes event logging logger.go:42: 17:26:44 | 1-083_validate_apps_in_any_namespace | Deleting namespace: kuttl-test-real-labrador === CONT kuttl/harness/1-056_validate_managed-by logger.go:42: 17:26:50 | 1-056_validate_managed-by | Creating namespace: kuttl-test-rapid-robin logger.go:42: 17:26:50 | 1-056_validate_managed-by/1-install | starting test step 1-install logger.go:42: 17:26:50 | 1-056_validate_managed-by/1-install | Namespace:/test-1-56-target created logger.go:42: 17:26:50 | 1-056_validate_managed-by/1-install | Namespace:/test-1-56-custom created logger.go:42: 17:26:50 | 1-056_validate_managed-by/1-install | ArgoCD:test-1-56-target/example-argocd created logger.go:42: 17:27:22 | 1-056_validate_managed-by/1-install | test step completed 1-install logger.go:42: 17:27:22 | 1-056_validate_managed-by/2-delete | starting test step 2-delete logger.go:42: 17:27:22 | 1-056_validate_managed-by/2-delete | test step completed 2-delete logger.go:42: 17:27:22 | 1-056_validate_managed-by/3-check | starting test step 3-check logger.go:42: 17:27:22 | 1-056_validate_managed-by/3-check | running command: [sh -c set -e label_value=$(oc get ns/test-1-56-custom -o go-template=$'{{index .metadata.labels "argocd.argoproj.io/managed-by"}}') echo "label value: ${label_value}" if [[ "${label_value}" == "test-1-56-target" ]]; then echo "managed-by label exists, set REMOVE_MANAGED_BY_LABEL_ON_ARGOCD_DELETION variable to delete the label" exit 0 fi exit 1 ] logger.go:42: 17:27:22 | 1-056_validate_managed-by/3-check | label value: test-1-56-target logger.go:42: 17:27:22 | 1-056_validate_managed-by/3-check | managed-by label exists, set REMOVE_MANAGED_BY_LABEL_ON_ARGOCD_DELETION variable to delete the label logger.go:42: 17:27:22 | 1-056_validate_managed-by/3-check | test step completed 3-check logger.go:42: 17:27:22 | 1-056_validate_managed-by/4-add_env | starting test step 4-add_env logger.go:42: 17:27:22 | 1-056_validate_managed-by/4-add_env | running command: [sh -c set -e oc patch -n openshift-operators subscription openshift-gitops-operator \ --type merge --patch '{"spec": {"config": {"env": [{"name": "REMOVE_MANAGED_BY_LABEL_ON_ARGOCD_DELETION", "value": "true"}]}}}' ] logger.go:42: 17:27:23 | 1-056_validate_managed-by/4-add_env | subscription.operators.coreos.com/openshift-gitops-operator patched logger.go:42: 17:27:23 | 1-056_validate_managed-by/4-add_env | test step completed 4-add_env logger.go:42: 17:27:23 | 1-056_validate_managed-by/5-check | starting test step 5-check logger.go:42: 17:27:23 | 1-056_validate_managed-by/5-check | running command: [sh -c set -e label_value=$(oc get ns/test-1-56-custom -o go-template=$'{{index .metadata.labels "argocd.argoproj.io/managed-by"}}') echo "label value: ${label_value}" if [[ "${label_value}" == "test-1-56-target" ]]; then echo "managed-by label exists, set REMOVE_MANAGED_BY_LABEL_ON_ARGOCD_DELETION variable to delete the label" exit 0 fi exit 1 ] logger.go:42: 17:27:23 | 1-056_validate_managed-by/5-check | label value: test-1-56-target logger.go:42: 17:27:23 | 1-056_validate_managed-by/5-check | managed-by label exists, set REMOVE_MANAGED_BY_LABEL_ON_ARGOCD_DELETION variable to delete the label logger.go:42: 17:27:23 | 1-056_validate_managed-by/5-check | test step completed 5-check logger.go:42: 17:27:23 | 1-056_validate_managed-by/6-install | starting test step 6-install logger.go:42: 17:27:23 | 1-056_validate_managed-by/6-install | Namespace:/test-1-56-target-2 created logger.go:42: 17:27:23 | 1-056_validate_managed-by/6-install | Namespace:/test-1-56-custom-2 created logger.go:42: 17:27:23 | 1-056_validate_managed-by/6-install | ArgoCD:test-1-56-target-2/example-argocd-2 created logger.go:42: 17:27:55 | 1-056_validate_managed-by/6-install | test step completed 6-install logger.go:42: 17:27:55 | 1-056_validate_managed-by/7-delete | starting test step 7-delete logger.go:42: 17:27:55 | 1-056_validate_managed-by/7-delete | test step completed 7-delete logger.go:42: 17:27:55 | 1-056_validate_managed-by/8-remove_env | starting test step 8-remove_env logger.go:42: 17:27:55 | 1-056_validate_managed-by/8-remove_env | running command: [sh -c oc patch -n openshift-operators subscription openshift-gitops-operator \ --type json --patch '[{"op": "remove", "path": "/spec/config"}]' ] logger.go:42: 17:27:56 | 1-056_validate_managed-by/8-remove_env | subscription.operators.coreos.com/openshift-gitops-operator patched logger.go:42: 17:27:56 | 1-056_validate_managed-by/8-remove_env | test step completed 8-remove_env logger.go:42: 17:27:56 | 1-056_validate_managed-by/99-delete | starting test step 99-delete logger.go:42: 17:28:02 | 1-056_validate_managed-by/99-delete | test step completed 99-delete logger.go:42: 17:28:02 | 1-056_validate_managed-by | skipping kubernetes event logging logger.go:42: 17:28:02 | 1-056_validate_managed-by | Deleting namespace: kuttl-test-rapid-robin === CONT kuttl/harness/1-071_validate_node_selectors logger.go:42: 17:28:08 | 1-071_validate_node_selectors | Creating namespace: kuttl-test-normal-pheasant logger.go:42: 17:28:08 | 1-071_validate_node_selectors/1- | starting test step 1- logger.go:42: 17:28:08 | 1-071_validate_node_selectors/1- | test step completed 1- logger.go:42: 17:28:08 | 1-071_validate_node_selectors/2-custom-node-selector | starting test step 2-custom-node-selector logger.go:42: 17:28:08 | 1-071_validate_node_selectors/2-custom-node-selector | running command: [sh -c oc patch gitopsservice cluster --type=merge --patch='{"spec": {"nodeSelector": {"key1": "value1"}}}' ] logger.go:42: 17:28:08 | 1-071_validate_node_selectors/2-custom-node-selector | gitopsservice.pipelines.openshift.io/cluster patched logger.go:42: 17:28:24 | 1-071_validate_node_selectors/2-custom-node-selector | test step completed 2-custom-node-selector logger.go:42: 17:28:24 | 1-071_validate_node_selectors/3-patch-run-on-infra | starting test step 3-patch-run-on-infra logger.go:42: 17:28:24 | 1-071_validate_node_selectors/3-patch-run-on-infra | running command: [sh -c oc patch gitopsservice cluster --type=merge --patch='{"spec": {"runOnInfra": true, "tolerations": [{"effect": "NoSchedule", "key": "infra", "value": "reserved"}]}}' ] logger.go:42: 17:28:24 | 1-071_validate_node_selectors/3-patch-run-on-infra | gitopsservice.pipelines.openshift.io/cluster patched logger.go:42: 17:28:26 | 1-071_validate_node_selectors/3-patch-run-on-infra | test step completed 3-patch-run-on-infra logger.go:42: 17:28:26 | 1-071_validate_node_selectors/4-change-back | starting test step 4-change-back logger.go:42: 17:28:26 | 1-071_validate_node_selectors/4-change-back | running command: [sh -c oc patch gitopsservice cluster --type=json --patch='[{"op": "remove", "path": "/spec/tolerations"}, {"op": "remove", "path": "/spec/runOnInfra"}, {"op": "remove", "path": "/spec/nodeSelector"}]' oc patch statefulset openshift-gitops-application-controller -n openshift-gitops -p '{"spec":{"replicas":0}}' ] logger.go:42: 17:28:26 | 1-071_validate_node_selectors/4-change-back | gitopsservice.pipelines.openshift.io/cluster patched logger.go:42: 17:28:26 | 1-071_validate_node_selectors/4-change-back | statefulset.apps/openshift-gitops-application-controller patched logger.go:42: 17:28:28 | 1-071_validate_node_selectors/4-change-back | test step completed 4-change-back logger.go:42: 17:28:28 | 1-071_validate_node_selectors | skipping kubernetes event logging logger.go:42: 17:28:28 | 1-071_validate_node_selectors | Deleting namespace: kuttl-test-normal-pheasant === CONT kuttl/harness/1-064_validate_tcp_reset_error logger.go:42: 17:28:33 | 1-064_validate_tcp_reset_error | Creating namespace: kuttl-test-bright-llama logger.go:42: 17:28:33 | 1-064_validate_tcp_reset_error/1- | starting test step 1- logger.go:42: 17:28:38 | 1-064_validate_tcp_reset_error/1- | test step completed 1- logger.go:42: 17:28:38 | 1-064_validate_tcp_reset_error/2-install | starting test step 2-install logger.go:42: 17:28:38 | 1-064_validate_tcp_reset_error/2-install | Application:openshift-gitops/1-27-argocd created logger.go:42: 17:29:15 | 1-064_validate_tcp_reset_error/2-install | test step completed 2-install logger.go:42: 17:29:15 | 1-064_validate_tcp_reset_error/3-create-app | starting test step 3-create-app logger.go:42: 17:29:15 | 1-064_validate_tcp_reset_error/3-create-app | Application:test-1-27-custom/guestbook created logger.go:42: 17:29:22 | 1-064_validate_tcp_reset_error/3-create-app | test step completed 3-create-app logger.go:42: 17:29:22 | 1-064_validate_tcp_reset_error/4-check-app-manifest | starting test step 4-check-app-manifest logger.go:42: 17:29:22 | 1-064_validate_tcp_reset_error/4-check-app-manifest | running command: [sh -c set -e cleanup() { argocd logout "${api_server}" unset api_server unset password } trap cleanup INT TERM EXIT # Get credentials api_server=$(oc get routes -n openshift-gitops --field-selector metadata.name=openshift-gitops-server -o jsonpath="{.items[*]['spec.host']}") password=$(oc get secret openshift-gitops-cluster -n openshift-gitops -o jsonpath='{.data.admin\.password}' | base64 -d) # Login into ArgoCD login=$(argocd login $api_server --username admin --password $password --insecure) if ! [[ "${login}" =~ "'admin:login' logged in successfully" ]]; then echo "ERROR: unable to login to ArgoCD remote api server" exit 1 fi # Execute 'argocd app manifest' and check the 'read tcp' error app_manifests=$(argocd app manifests 1-27-argocd --source git --revision HEAD) if [[ "${app_manifests}" =~ 'Original error: read tcp' ]]; then echo "ERROR: TCP reset error is present in this code" exit 2 fi exit 0 ] logger.go:42: 17:29:24 | 1-064_validate_tcp_reset_error/4-check-app-manifest | Logged out from 'openshift-gitops-server-openshift-gitops.apps.psi-as1-414.ocp-gitops-qe.com' logger.go:42: 17:29:24 | 1-064_validate_tcp_reset_error/4-check-app-manifest | test step completed 4-check-app-manifest logger.go:42: 17:29:24 | 1-064_validate_tcp_reset_error/99-delete | starting test step 99-delete logger.go:42: 17:29:36 | 1-064_validate_tcp_reset_error/99-delete | test step completed 99-delete logger.go:42: 17:29:36 | 1-064_validate_tcp_reset_error | skipping kubernetes event logging logger.go:42: 17:29:36 | 1-064_validate_tcp_reset_error | Deleting namespace: kuttl-test-bright-llama === CONT kuttl/harness/1-031_validate_toolchain logger.go:42: 17:29:42 | 1-031_validate_toolchain | Creating namespace: kuttl-test-loved-akita logger.go:42: 17:29:42 | 1-031_validate_toolchain/1-check | starting test step 1-check logger.go:42: 17:29:42 | 1-031_validate_toolchain/1-check | running command: [sh -c set -e set -o pipefail # These variables need to be maintained according to the component matrix: https://spaces.redhat.com/display/GITOPS/GitOps+Component+Matrix expected_kustomizeVersion='v5.2.1' expected_helmVersion='v3.13.2' expected_argocdVersion='v2.9.15' expected_dexVersion='v2.36.0' expected_redisVersion='6.2.7' gitops_server_pod=$(oc get -n openshift-gitops pods \ -o custom-columns=NAME:.metadata.name --no-headers | \ grep openshift-gitops-server | \ head -1 ) dex_pod=$(oc get -n openshift-gitops pods \ -o custom-columns=NAME:.metadata.name --no-headers | \ grep openshift-gitops-dex-server | \ head -1 ) redis_pod=$(oc get -n openshift-gitops pods \ -o custom-columns=NAME:.metadata.name --no-headers | \ grep openshift-gitops-redis | \ head -1 ) route=$(oc get route -n openshift-gitops \ -o custom-columns=NAME:.spec.host --no-headers | \ grep openshift-gitops-server | \ head -1 ) kustomizeVersion=$(oc -n openshift-gitops exec $gitops_server_pod \ -- kustomize version ) helmVersion=$(oc -n openshift-gitops exec $gitops_server_pod \ -- helm version | \ sed -e 's/version.BuildInfo//' -e 's/\"//g' | \ awk -F':' '{ print $2 }' | \ awk -F',' '{ print $1 }' ) argocdVersion=$(oc -n openshift-gitops exec $gitops_server_pod \ -- argocd version --short --server $route --insecure | \ grep 'argocd-server' | \ awk -F' ' '{ print $2 }' | \ sed 's/\+.*//' ) dexVersion=$(oc -n openshift-gitops exec $dex_pod -- dex version 2>&1 | \ grep '^Dex Version' | \ awk -F': ' '{ print $2 }' ) redisVersion=$(oc -n openshift-gitops exec $redis_pod -- \ redis-server -v | awk -F '=' '{ print $2 }' | cut -d' ' -f 1 ) if test "${kustomizeVersion}" != "${expected_kustomizeVersion}"; then echo "Kustomize version mismatch. Should be ${expected_kustomizeVersion}, is ${kustomizeVersion}" exit 1 fi if test "${helmVersion}" != "${expected_helmVersion}"; then echo "Helm version mismatch. Should be ${expected_helmVersion}, is ${helmVersion}" exit 1 fi if test "${argocdVersion}" != "${expected_argocdVersion}"; then echo "ArgoCD version mismatch. Should be ${expected_argocdVersion}, is ${argocdVersion}" exit 1 fi if test "${dexVersion}" != "${expected_dexVersion}"; then echo "Dex version mismatch. Should be ${expected_dexVersion}, is ${dexVersion}" exit 1 fi if test "${redisVersion}" != "${expected_redisVersion}"; then echo "Redis version mismatch. Should be ${expected_redisVersion}, is ${redisVersion}" exit 1 fi ] logger.go:42: 17:29:47 | 1-031_validate_toolchain/1-check | test step completed 1-check logger.go:42: 17:29:47 | 1-031_validate_toolchain | skipping kubernetes event logging logger.go:42: 17:29:47 | 1-031_validate_toolchain | Deleting namespace: kuttl-test-loved-akita === CONT kuttl/harness/1-035_validate_argocd_secret_repopulate logger.go:42: 17:29:52 | 1-035_validate_argocd_secret_repopulate | Creating namespace: kuttl-test-many-roughy logger.go:42: 17:29:53 | 1-035_validate_argocd_secret_repopulate/1- | starting test step 1- logger.go:42: 17:29:53 | 1-035_validate_argocd_secret_repopulate/1- | test step completed 1- logger.go:42: 17:29:53 | 1-035_validate_argocd_secret_repopulate/2-remove_secret_data | starting test step 2-remove_secret_data logger.go:42: 17:29:53 | 1-035_validate_argocd_secret_repopulate/2-remove_secret_data | running command: [sh -c oc patch secret/argocd-secret -p '{"data":null}' -n openshift-gitops ] logger.go:42: 17:29:53 | 1-035_validate_argocd_secret_repopulate/2-remove_secret_data | secret/argocd-secret patched logger.go:42: 17:29:53 | 1-035_validate_argocd_secret_repopulate/2-remove_secret_data | test step completed 2-remove_secret_data logger.go:42: 17:29:53 | 1-035_validate_argocd_secret_repopulate/3-check_secret_repopulate | starting test step 3-check_secret_repopulate logger.go:42: 17:29:53 | 1-035_validate_argocd_secret_repopulate/3-check_secret_repopulate | running command: [sh -c sleep 30 secret_data=$(oc get secret/argocd-secret -n openshift-gitops -o custom-columns=SECRET:.data --no-headers) if test "${secret_data}" = ""; then echo "argocd-secret was not repopulated" exit 1 fi exit 0 ] logger.go:42: 17:30:23 | 1-035_validate_argocd_secret_repopulate/3-check_secret_repopulate | test step completed 3-check_secret_repopulate logger.go:42: 17:30:23 | 1-035_validate_argocd_secret_repopulate/4-check_controller_pod_status | starting test step 4-check_controller_pod_status logger.go:42: 17:30:23 | 1-035_validate_argocd_secret_repopulate/4-check_controller_pod_status | running command: [sh -c oc rollout status deployment openshift-gitops-operator-controller-manager -n openshift-operators --timeout=1m rollout_status=$? if [ "${rollout_status}" -ne 0 ]; then echo "openshift-gitops-operator-controller-manager deployment was not successfully rolled out" exit 1 fi exit 0 ] logger.go:42: 17:30:24 | 1-035_validate_argocd_secret_repopulate/4-check_controller_pod_status | deployment "openshift-gitops-operator-controller-manager" successfully rolled out logger.go:42: 17:30:24 | 1-035_validate_argocd_secret_repopulate/4-check_controller_pod_status | test step completed 4-check_controller_pod_status logger.go:42: 17:30:24 | 1-035_validate_argocd_secret_repopulate/5-argocd_login | starting test step 5-argocd_login logger.go:42: 17:30:24 | 1-035_validate_argocd_secret_repopulate/5-argocd_login | running command: [sh -c set -eo pipefail api_server=$(oc get routes -n openshift-gitops --field-selector metadata.name=openshift-gitops-server -o jsonpath="{.items[*]['spec.host']}") password=$(oc get secret openshift-gitops-cluster -n openshift-gitops -o jsonpath='{.data.admin\.password}' | base64 -d) output=$(argocd login $api_server --username admin --password $password --insecure) if ! [[ "${output}" =~ "'admin:login' logged in successfully" ]]; then if [[ "${output}" == *"rpc error: code = Unknown desc = server.secretkey is missing" ]]; then echo "server.secretkey is missing" exit 1 fi fi exit 0 ] logger.go:42: 17:30:26 | 1-035_validate_argocd_secret_repopulate/5-argocd_login | test step completed 5-argocd_login logger.go:42: 17:30:26 | 1-035_validate_argocd_secret_repopulate | skipping kubernetes event logging logger.go:42: 17:30:26 | 1-035_validate_argocd_secret_repopulate | Deleting namespace: kuttl-test-many-roughy === CONT kuttl/harness/1-034_validate_custom_roles logger.go:42: 17:30:32 | 1-034_validate_custom_roles | Creating namespace: kuttl-test-tight-earwig logger.go:42: 17:30:32 | 1-034_validate_custom_roles/1-install | starting test step 1-install logger.go:42: 17:30:32 | 1-034_validate_custom_roles/1-install | Namespace:/test-1-034-custom created logger.go:42: 17:30:32 | 1-034_validate_custom_roles/1-install | ArgoCD:test-1-034-custom/argocd created logger.go:42: 17:30:32 | 1-034_validate_custom_roles/1-install | Namespace:/custom-role-namespace created logger.go:42: 17:30:32 | 1-034_validate_custom_roles/1-install | ClusterRole:/custom-argocd-role created logger.go:42: 17:31:03 | 1-034_validate_custom_roles/1-install | test step completed 1-install logger.go:42: 17:31:03 | 1-034_validate_custom_roles/2-patch-subscription | starting test step 2-patch-subscription logger.go:42: 17:31:03 | 1-034_validate_custom_roles/2-patch-subscription | running command: [sh -c oc patch -n openshift-operators subscription openshift-gitops-operator \ --type merge --patch '{"spec": {"config": {"env": [{"name": "CONTROLLER_CLUSTER_ROLE", "value": "custom-argocd-role"},{"name": "SERVER_CLUSTER_ROLE", "value": "custom-argocd-role"}]}}}' ] logger.go:42: 17:31:04 | 1-034_validate_custom_roles/2-patch-subscription | subscription.operators.coreos.com/openshift-gitops-operator patched logger.go:42: 17:31:04 | 1-034_validate_custom_roles/2-patch-subscription | running command: [sh -c sleep 10] logger.go:42: 17:31:14 | 1-034_validate_custom_roles/2-patch-subscription | test step completed 2-patch-subscription logger.go:42: 17:31:14 | 1-034_validate_custom_roles/3- | starting test step 3- logger.go:42: 17:31:33 | 1-034_validate_custom_roles/3- | test step completed 3- logger.go:42: 17:31:33 | 1-034_validate_custom_roles/4- | starting test step 4- logger.go:42: 17:31:33 | 1-034_validate_custom_roles/4- | test step completed 4- logger.go:42: 17:31:33 | 1-034_validate_custom_roles/5-delete | starting test step 5-delete logger.go:42: 17:31:39 | 1-034_validate_custom_roles/5-delete | test step completed 5-delete logger.go:42: 17:31:39 | 1-034_validate_custom_roles/6-revert-patch | starting test step 6-revert-patch logger.go:42: 17:31:39 | 1-034_validate_custom_roles/6-revert-patch | running command: [sh -c oc patch subscription/openshift-gitops-operator -n openshift-operators --type json --patch='[ { "op": "remove", "path": "/spec/config" } ]' ] logger.go:42: 17:31:39 | 1-034_validate_custom_roles/6-revert-patch | subscription.operators.coreos.com/openshift-gitops-operator patched logger.go:42: 17:31:39 | 1-034_validate_custom_roles/6-revert-patch | running command: [sh -c sleep 10] logger.go:42: 17:31:49 | 1-034_validate_custom_roles/6-revert-patch | test step completed 6-revert-patch logger.go:42: 17:31:49 | 1-034_validate_custom_roles | skipping kubernetes event logging logger.go:42: 17:31:49 | 1-034_validate_custom_roles | Deleting namespace: kuttl-test-tight-earwig === CONT kuttl/harness/1-020_validate_redis_ha_nonha logger.go:42: 17:31:55 | 1-020_validate_redis_ha_nonha | Creating namespace: kuttl-test-amazed-bull logger.go:42: 17:31:55 | 1-020_validate_redis_ha_nonha/1- | starting test step 1- logger.go:42: 17:31:55 | 1-020_validate_redis_ha_nonha/1- | test step completed 1- logger.go:42: 17:31:55 | 1-020_validate_redis_ha_nonha/2-enable-ha | starting test step 2-enable-ha logger.go:42: 17:31:55 | 1-020_validate_redis_ha_nonha/2-enable-ha | ArgoCD:openshift-gitops/openshift-gitops updated logger.go:42: 17:41:13 | 1-020_validate_redis_ha_nonha/2-enable-ha | test step completed 2-enable-ha logger.go:42: 17:41:13 | 1-020_validate_redis_ha_nonha/3-update-ha-resources | starting test step 3-update-ha-resources logger.go:42: 17:41:13 | 1-020_validate_redis_ha_nonha/3-update-ha-resources | ArgoCD:openshift-gitops/openshift-gitops updated logger.go:42: 17:41:14 | 1-020_validate_redis_ha_nonha/3-update-ha-resources | test step completed 3-update-ha-resources logger.go:42: 17:41:14 | 1-020_validate_redis_ha_nonha/4-disable-ha | starting test step 4-disable-ha logger.go:42: 17:41:14 | 1-020_validate_redis_ha_nonha/4-disable-ha | ArgoCD:openshift-gitops/openshift-gitops updated logger.go:42: 17:41:26 | 1-020_validate_redis_ha_nonha/4-disable-ha | test step completed 4-disable-ha logger.go:42: 17:41:26 | 1-020_validate_redis_ha_nonha | skipping kubernetes event logging logger.go:42: 17:41:26 | 1-020_validate_redis_ha_nonha | Deleting namespace: kuttl-test-amazed-bull === CONT kuttl/harness/1-006_validate_machine_config logger.go:42: 17:41:32 | 1-006_validate_machine_config | Creating namespace: kuttl-test-quality-catfish logger.go:42: 17:41:32 | 1-006_validate_machine_config/1-install | starting test step 1-install logger.go:42: 17:41:32 | 1-006_validate_machine_config/1-install | ArgoCD:openshift-gitops/openshift-gitops updated logger.go:42: 17:41:32 | 1-006_validate_machine_config/1-install | Application:openshift-gitops/validate-machine-config created logger.go:42: 17:41:45 | 1-006_validate_machine_config/1-install | test step completed 1-install logger.go:42: 17:41:45 | 1-006_validate_machine_config/2- | starting test step 2- logger.go:42: 17:41:45 | 1-006_validate_machine_config/2- | test step completed 2- logger.go:42: 17:41:45 | 1-006_validate_machine_config/3-scale-down-repo-server | starting test step 3-scale-down-repo-server logger.go:42: 17:41:46 | 1-006_validate_machine_config/3-scale-down-repo-server | ArgoCD:openshift-gitops/openshift-gitops updated logger.go:42: 17:41:47 | 1-006_validate_machine_config/3-scale-down-repo-server | test step completed 3-scale-down-repo-server logger.go:42: 17:41:47 | 1-006_validate_machine_config/99-delete | starting test step 99-delete logger.go:42: 17:41:47 | 1-006_validate_machine_config/99-delete | test step completed 99-delete logger.go:42: 17:41:47 | 1-006_validate_machine_config | skipping kubernetes event logging logger.go:42: 17:41:47 | 1-006_validate_machine_config | Deleting namespace: kuttl-test-quality-catfish === CONT kuttl/harness/1-018_validate_disable_default_instance logger.go:42: 17:41:52 | 1-018_validate_disable_default_instance | Ignoring errors.yaml as it does not match file name regexp: ^(\d+)-(?:[^\.]+)(?:\.yaml)?$ logger.go:42: 17:41:52 | 1-018_validate_disable_default_instance | Creating namespace: kuttl-test-smashing-robin logger.go:42: 17:41:52 | 1-018_validate_disable_default_instance/1- | starting test step 1- logger.go:42: 17:41:53 | 1-018_validate_disable_default_instance/1- | test step completed 1- logger.go:42: 17:41:53 | 1-018_validate_disable_default_instance/2-patch-subscription | starting test step 2-patch-subscription logger.go:42: 17:41:53 | 1-018_validate_disable_default_instance/2-patch-subscription | running command: [sh -c oc patch -n openshift-operators subscription openshift-gitops-operator \ --type merge --patch '{"spec": {"config": {"env": [{"name": "DISABLE_DEFAULT_ARGOCD_INSTANCE", "value": "true"}]}}}' ] logger.go:42: 17:41:53 | 1-018_validate_disable_default_instance/2-patch-subscription | subscription.operators.coreos.com/openshift-gitops-operator patched logger.go:42: 17:41:53 | 1-018_validate_disable_default_instance/2-patch-subscription | running command: [sh -c sleep 20] logger.go:42: 17:42:13 | 1-018_validate_disable_default_instance/2-patch-subscription | test step completed 2-patch-subscription logger.go:42: 17:42:13 | 1-018_validate_disable_default_instance/3-check | starting test step 3-check logger.go:42: 17:42:22 | 1-018_validate_disable_default_instance/3-check | test step completed 3-check logger.go:42: 17:42:22 | 1-018_validate_disable_default_instance/4-patch-subscription | starting test step 4-patch-subscription logger.go:42: 17:42:22 | 1-018_validate_disable_default_instance/4-patch-subscription | running command: [sh -c oc patch -n openshift-operators subscription openshift-gitops-operator \ --type json --patch '[{"op": "remove", "path": "/spec/config"}]' ] logger.go:42: 17:42:23 | 1-018_validate_disable_default_instance/4-patch-subscription | subscription.operators.coreos.com/openshift-gitops-operator patched logger.go:42: 17:43:23 | 1-018_validate_disable_default_instance/4-patch-subscription | test step completed 4-patch-subscription logger.go:42: 17:43:23 | 1-018_validate_disable_default_instance | skipping kubernetes event logging logger.go:42: 17:43:23 | 1-018_validate_disable_default_instance | Deleting namespace: kuttl-test-smashing-robin === CONT kuttl/harness/1-010_validate-ootb-manage-other-namespace logger.go:42: 17:43:28 | 1-010_validate-ootb-manage-other-namespace | Ignoring README.md as it does not match file name regexp: ^(\d+)-(?:[^\.]+)(?:\.yaml)?$ logger.go:42: 17:43:28 | 1-010_validate-ootb-manage-other-namespace | Ignoring errors.yaml as it does not match file name regexp: ^(\d+)-(?:[^\.]+)(?:\.yaml)?$ logger.go:42: 17:43:28 | 1-010_validate-ootb-manage-other-namespace | Creating namespace: kuttl-test-pet-whale logger.go:42: 17:43:28 | 1-010_validate-ootb-manage-other-namespace/1-install | starting test step 1-install logger.go:42: 17:43:29 | 1-010_validate-ootb-manage-other-namespace/1-install | Namespace:/test-1-10-custom created logger.go:42: 17:43:29 | 1-010_validate-ootb-manage-other-namespace/1-install | test step completed 1-install logger.go:42: 17:43:29 | 1-010_validate-ootb-manage-other-namespace/2- | starting test step 2- logger.go:42: 17:43:29 | 1-010_validate-ootb-manage-other-namespace/2- | test step completed 2- logger.go:42: 17:43:29 | 1-010_validate-ootb-manage-other-namespace/3-create-application | starting test step 3-create-application logger.go:42: 17:43:29 | 1-010_validate-ootb-manage-other-namespace/3-create-application | Application:openshift-gitops/test-1-10-custom created logger.go:42: 17:43:41 | 1-010_validate-ootb-manage-other-namespace/3-create-application | test step completed 3-create-application logger.go:42: 17:43:41 | 1-010_validate-ootb-manage-other-namespace/4-unlabel-namespace | starting test step 4-unlabel-namespace logger.go:42: 17:43:41 | 1-010_validate-ootb-manage-other-namespace/4-unlabel-namespace | running command: [sh -c kubectl label ns test-1-10-custom argocd.argoproj.io/managed-by-] logger.go:42: 17:43:41 | 1-010_validate-ootb-manage-other-namespace/4-unlabel-namespace | namespace/test-1-10-custom unlabeled logger.go:42: 17:43:41 | 1-010_validate-ootb-manage-other-namespace/4-unlabel-namespace | running command: [sh -c sleep 5] logger.go:42: 17:43:47 | 1-010_validate-ootb-manage-other-namespace/4-unlabel-namespace | test step completed 4-unlabel-namespace logger.go:42: 17:43:47 | 1-010_validate-ootb-manage-other-namespace/5-check-rbac | starting test step 5-check-rbac logger.go:42: 17:43:47 | 1-010_validate-ootb-manage-other-namespace/5-check-rbac | test step completed 5-check-rbac logger.go:42: 17:43:47 | 1-010_validate-ootb-manage-other-namespace/99-delete | starting test step 99-delete logger.go:42: 17:43:54 | 1-010_validate-ootb-manage-other-namespace/99-delete | test step completed 99-delete logger.go:42: 17:43:54 | 1-010_validate-ootb-manage-other-namespace | skipping kubernetes event logging logger.go:42: 17:43:54 | 1-010_validate-ootb-manage-other-namespace | Deleting namespace: kuttl-test-pet-whale === CONT kuttl/harness/1-027_validate_operand_from_git logger.go:42: 17:44:00 | 1-027_validate_operand_from_git | Creating namespace: kuttl-test-many-dogfish logger.go:42: 17:44:00 | 1-027_validate_operand_from_git/1- | starting test step 1- logger.go:42: 17:44:00 | 1-027_validate_operand_from_git/1- | test step completed 1- logger.go:42: 17:44:00 | 1-027_validate_operand_from_git/2-install | starting test step 2-install logger.go:42: 17:44:00 | 1-027_validate_operand_from_git/2-install | Application:openshift-gitops/1-27-argocd created logger.go:42: 17:44:33 | 1-027_validate_operand_from_git/2-install | test step completed 2-install logger.go:42: 17:44:33 | 1-027_validate_operand_from_git/3-create-app | starting test step 3-create-app logger.go:42: 17:44:33 | 1-027_validate_operand_from_git/3-create-app | Application:test-1-27-custom/guestbook created logger.go:42: 17:44:41 | 1-027_validate_operand_from_git/3-create-app | test step completed 3-create-app logger.go:42: 17:44:41 | 1-027_validate_operand_from_git/99-delete | starting test step 99-delete logger.go:42: 17:44:52 | 1-027_validate_operand_from_git/99-delete | test step completed 99-delete logger.go:42: 17:44:52 | 1-027_validate_operand_from_git | skipping kubernetes event logging logger.go:42: 17:44:52 | 1-027_validate_operand_from_git | Deleting namespace: kuttl-test-many-dogfish === CONT kuttl/harness/1-042_validate_status_host logger.go:42: 17:44:58 | 1-042_validate_status_host | Creating namespace: kuttl-test-famous-boa logger.go:42: 17:44:58 | 1-042_validate_status_host/1-install | starting test step 1-install logger.go:42: 17:44:58 | 1-042_validate_status_host/1-install | ArgoCD:kuttl-test-famous-boa/example-argocd created logger.go:42: 17:45:11 | 1-042_validate_status_host/1-install | test step completed 1-install logger.go:42: 17:45:11 | 1-042_validate_status_host/2-check_URL | starting test step 2-check_URL logger.go:42: 17:45:11 | 1-042_validate_status_host/2-check_URL | running command: [sh -c route_URL=$(oc get routes -o jsonpath="{.items[*]['spec.host']}" --field-selector metadata.name=example-argocd-server -n $NAMESPACE) status_URL=$(oc get argocd -o jsonpath="{.items[*]['status.host']}" -n $NAMESPACE) if ! [[ "${status_URL}" == "${route_URL}" ]]; then echo "Error: Route does not match" exit 1 fi exit 0 ] logger.go:42: 17:45:12 | 1-042_validate_status_host/2-check_URL | test step completed 2-check_URL logger.go:42: 17:45:12 | 1-042_validate_status_host/3-modify_route_URL | starting test step 3-modify_route_URL logger.go:42: 17:45:12 | 1-042_validate_status_host/3-modify_route_URL | running command: [sh -c oc patch route example-argocd-server -n $NAMESPACE --type='json' -p='[{"op": "replace", "path": "/spec/host", "value":"modified"}]' ] logger.go:42: 17:45:12 | 1-042_validate_status_host/3-modify_route_URL | route.route.openshift.io/example-argocd-server patched logger.go:42: 17:45:13 | 1-042_validate_status_host/3-modify_route_URL | test step completed 3-modify_route_URL logger.go:42: 17:45:13 | 1-042_validate_status_host/4-disable_route | starting test step 4-disable_route logger.go:42: 17:45:13 | 1-042_validate_status_host/4-disable_route | ArgoCD:kuttl-test-famous-boa/example-argocd updated logger.go:42: 17:45:13 | 1-042_validate_status_host/4-disable_route | test step completed 4-disable_route logger.go:42: 17:45:13 | 1-042_validate_status_host/5-check_URL_gone | starting test step 5-check_URL_gone logger.go:42: 17:45:13 | 1-042_validate_status_host/5-check_URL_gone | running command: [sh -c sleep 5 status_URL=$(oc get argocd -o jsonpath="{.items[*]['status.host']}" -n $NAMESPACE) echo "${status_URL}" if test "${status_URL}" != ""; then echo "Error: status.host should not be present in argocd" exit 1 fi exit 0 ] logger.go:42: 17:45:19 | 1-042_validate_status_host/5-check_URL_gone | logger.go:42: 17:45:19 | 1-042_validate_status_host/5-check_URL_gone | test step completed 5-check_URL_gone logger.go:42: 17:45:19 | 1-042_validate_status_host | skipping kubernetes event logging logger.go:42: 17:45:19 | 1-042_validate_status_host | Deleting namespace: kuttl-test-famous-boa === CONT kuttl/harness/1-050_validate_sso logger.go:42: 17:45:25 | 1-050_validate_sso | Creating namespace: kuttl-test-fitting-grackle logger.go:42: 17:45:25 | 1-050_validate_sso/1-install | starting test step 1-install logger.go:42: 17:45:25 | 1-050_validate_sso/1-install | ArgoCD:kuttl-test-fitting-grackle/argocd created logger.go:42: 17:45:56 | 1-050_validate_sso/1-install | test step completed 1-install logger.go:42: 17:45:56 | 1-050_validate_sso/2-remove-spec-sso | starting test step 2-remove-spec-sso logger.go:42: 17:45:56 | 1-050_validate_sso/2-remove-spec-sso | running command: [sh -c oc patch -n $NAMESPACE argocd/argocd --type='json' -p='[{"op": "remove", "path": "/spec/sso"}]' ] logger.go:42: 17:45:58 | 1-050_validate_sso/2-remove-spec-sso | argocd.argoproj.io/argocd patched logger.go:42: 17:45:58 | 1-050_validate_sso/2-remove-spec-sso | running command: [sh -c sleep 10] logger.go:42: 17:46:08 | 1-050_validate_sso/2-remove-spec-sso | test step completed 2-remove-spec-sso logger.go:42: 17:46:08 | 1-050_validate_sso/7-provider-keycloak-dex-spec | starting test step 7-provider-keycloak-dex-spec logger.go:42: 17:46:08 | 1-050_validate_sso/7-provider-keycloak-dex-spec | ArgoCD:kuttl-test-fitting-grackle/argocd updated logger.go:42: 17:46:08 | 1-050_validate_sso/7-provider-keycloak-dex-spec | test step completed 7-provider-keycloak-dex-spec logger.go:42: 17:46:08 | 1-050_validate_sso/8-remove-spec-dex | starting test step 8-remove-spec-dex logger.go:42: 17:46:08 | 1-050_validate_sso/8-remove-spec-dex | running command: [sh -c oc patch -n $NAMESPACE argocd/argocd --type='json' -p='[{"op": "remove", "path": "/spec/sso/dex"}]' ] logger.go:42: 17:46:08 | 1-050_validate_sso/8-remove-spec-dex | argocd.argoproj.io/argocd patched logger.go:42: 17:48:23 | 1-050_validate_sso/8-remove-spec-dex | test step completed 8-remove-spec-dex logger.go:42: 17:48:23 | 1-050_validate_sso | skipping kubernetes event logging logger.go:42: 17:48:23 | 1-050_validate_sso | Deleting namespace: kuttl-test-fitting-grackle === CONT kuttl/harness/1-026-validate_backend_service_permissions logger.go:42: 17:48:30 | 1-026-validate_backend_service_permissions | Creating namespace: kuttl-test-enough-mako logger.go:42: 17:48:30 | 1-026-validate_backend_service_permissions/1-check-backend-service | starting test step 1-check-backend-service logger.go:42: 17:48:30 | 1-026-validate_backend_service_permissions/1-check-backend-service | test step completed 1-check-backend-service logger.go:42: 17:48:30 | 1-026-validate_backend_service_permissions | skipping kubernetes event logging logger.go:42: 17:48:30 | 1-026-validate_backend_service_permissions | Deleting namespace: kuttl-test-enough-mako === CONT kuttl/harness/1-041_validate_argocd_sync_alert logger.go:42: 17:48:36 | 1-041_validate_argocd_sync_alert | Creating namespace: kuttl-test-fun-monster logger.go:42: 17:48:36 | 1-041_validate_argocd_sync_alert/1- | starting test step 1- logger.go:42: 17:48:36 | 1-041_validate_argocd_sync_alert/1- | test step completed 1- logger.go:42: 17:48:36 | 1-041_validate_argocd_sync_alert | skipping kubernetes event logging logger.go:42: 17:48:36 | 1-041_validate_argocd_sync_alert | Deleting namespace: kuttl-test-fun-monster === CONT kuttl/harness/1-004_validate_argocd_installation logger.go:42: 17:48:42 | 1-004_validate_argocd_installation | Creating namespace: kuttl-test-smashing-elk logger.go:42: 17:48:42 | 1-004_validate_argocd_installation/1-check-prereqs | starting test step 1-check-prereqs logger.go:42: 17:48:42 | 1-004_validate_argocd_installation/1-check-prereqs | test step completed 1-check-prereqs logger.go:42: 17:48:42 | 1-004_validate_argocd_installation/2-change-operand | starting test step 2-change-operand logger.go:42: 17:48:42 | 1-004_validate_argocd_installation/2-change-operand | ArgoCD:openshift-gitops/openshift-gitops updated logger.go:42: 17:48:42 | 1-004_validate_argocd_installation/2-change-operand | test step completed 2-change-operand logger.go:42: 17:48:42 | 1-004_validate_argocd_installation/3-wait | starting test step 3-wait logger.go:42: 17:48:42 | 1-004_validate_argocd_installation/3-wait | running command: [sh -c sleep 5] logger.go:42: 17:48:47 | 1-004_validate_argocd_installation/3-wait | test step completed 3-wait logger.go:42: 17:48:47 | 1-004_validate_argocd_installation/4- | starting test step 4- logger.go:42: 17:48:53 | 1-004_validate_argocd_installation/4- | test step completed 4- logger.go:42: 17:48:53 | 1-004_validate_argocd_installation | skipping kubernetes event logging logger.go:42: 17:48:53 | 1-004_validate_argocd_installation | Deleting namespace: kuttl-test-smashing-elk === CONT kuttl/harness/1-005_validate_metrics logger.go:42: 17:48:59 | 1-005_validate_metrics | Creating namespace: kuttl-test-complete-squirrel logger.go:42: 17:48:59 | 1-005_validate_metrics/1- | starting test step 1- logger.go:42: 17:48:59 | 1-005_validate_metrics/1- | test step completed 1- logger.go:42: 17:48:59 | 1-005_validate_metrics | skipping kubernetes event logging logger.go:42: 17:48:59 | 1-005_validate_metrics | Deleting namespace: kuttl-test-complete-squirrel === CONT kuttl/harness/1-002_validate_backend_service logger.go:42: 17:49:05 | 1-002_validate_backend_service | Creating namespace: kuttl-test-tight-barnacle logger.go:42: 17:49:05 | 1-002_validate_backend_service/1-check-backend-service | starting test step 1-check-backend-service logger.go:42: 17:49:05 | 1-002_validate_backend_service/1-check-backend-service | test step completed 1-check-backend-service logger.go:42: 17:49:05 | 1-002_validate_backend_service | skipping kubernetes event logging logger.go:42: 17:49:05 | 1-002_validate_backend_service | Deleting namespace: kuttl-test-tight-barnacle === CONT kuttl/harness/1-040_validate_quoted_RBAC_group_names logger.go:42: 17:49:11 | 1-040_validate_quoted_RBAC_group_names | Creating namespace: kuttl-test-master-bonefish logger.go:42: 17:49:11 | 1-040_validate_quoted_RBAC_group_names/1-login_argocd_api_server | starting test step 1-login_argocd_api_server logger.go:42: 17:49:11 | 1-040_validate_quoted_RBAC_group_names/1-login_argocd_api_server | running command: [sh -c api_server=$(oc get routes -n openshift-gitops --field-selector metadata.name=openshift-gitops-server -o jsonpath="{.items[*]['spec.host']}") password=$(oc get secret openshift-gitops-cluster -n openshift-gitops -o jsonpath='{.data.admin\.password}' | base64 -d) output=$(argocd login $api_server --username admin --password $password --insecure) if ! [[ "${output}" =~ "'admin:login' logged in successfully" ]]; then echo $output exit 1 fi exit 0 ] logger.go:42: 17:49:13 | 1-040_validate_quoted_RBAC_group_names/1-login_argocd_api_server | test step completed 1-login_argocd_api_server logger.go:42: 17:49:13 | 1-040_validate_quoted_RBAC_group_names/2-create_role | starting test step 2-create_role logger.go:42: 17:49:13 | 1-040_validate_quoted_RBAC_group_names/2-create_role | running command: [sh -c output=$(argocd proj role create default somerole) if ! [[ "$output" =~ "Role 'somerole' created" ]]; then echo "Error creating role" exit 1 fi exit 0 ] logger.go:42: 17:49:13 | 1-040_validate_quoted_RBAC_group_names/2-create_role | test step completed 2-create_role logger.go:42: 17:49:13 | 1-040_validate_quoted_RBAC_group_names/3-specify_group_names | starting test step 3-specify_group_names logger.go:42: 17:49:13 | 1-040_validate_quoted_RBAC_group_names/3-specify_group_names | running command: [sh -c output=$(argocd proj role add-group default somerole '"CN=foo,OU=bar,O=baz"') cleanup() { argocd proj role delete default somerole } trap cleanup INT TERM EXIT if ! [[ "${output}" =~ "added to role 'somerole'" ]]; then echo "Contains comma characters!" exit 1 fi ] logger.go:42: 17:49:14 | 1-040_validate_quoted_RBAC_group_names/3-specify_group_names | Role 'somerole' deleted logger.go:42: 17:49:14 | 1-040_validate_quoted_RBAC_group_names/3-specify_group_names | test step completed 3-specify_group_names logger.go:42: 17:49:14 | 1-040_validate_quoted_RBAC_group_names | skipping kubernetes event logging logger.go:42: 17:49:14 | 1-040_validate_quoted_RBAC_group_names | Deleting namespace: kuttl-test-master-bonefish === CONT kuttl/harness/1-028_validate_run_on_infra logger.go:42: 17:49:19 | 1-028_validate_run_on_infra | Ignoring errors.yaml as it does not match file name regexp: ^(\d+)-(?:[^\.]+)(?:\.yaml)?$ logger.go:42: 17:49:19 | 1-028_validate_run_on_infra | Creating namespace: kuttl-test-crucial-weevil logger.go:42: 17:49:19 | 1-028_validate_run_on_infra/1-install | starting test step 1-install logger.go:42: 17:49:19 | 1-028_validate_run_on_infra/1-install | running command: [sh -c oc patch gitopsservice cluster --type=merge --patch='{"spec": {"runOnInfra": true, "tolerations": [{"effect": "NoSchedule", "key": "infra", "value": "reserved"}]}}' ] logger.go:42: 17:49:20 | 1-028_validate_run_on_infra/1-install | gitopsservice.pipelines.openshift.io/cluster patched logger.go:42: 17:49:21 | 1-028_validate_run_on_infra/1-install | test step completed 1-install logger.go:42: 17:49:21 | 1-028_validate_run_on_infra/2-custom-argocd | starting test step 2-custom-argocd logger.go:42: 17:49:21 | 1-028_validate_run_on_infra/2-custom-argocd | ArgoCD:kuttl-test-crucial-weevil/argocd created logger.go:42: 17:49:54 | 1-028_validate_run_on_infra/2-custom-argocd | test step completed 2-custom-argocd logger.go:42: 17:49:54 | 1-028_validate_run_on_infra/3-change-back | starting test step 3-change-back logger.go:42: 17:49:54 | 1-028_validate_run_on_infra/3-change-back | running command: [sh -c oc patch gitopsservice cluster --type=json --patch='[{"op": "remove", "path": "/spec/tolerations"}, {"op": "remove", "path": "/spec/runOnInfra"}]' oc patch statefulset openshift-gitops-application-controller -n openshift-gitops -p '{"spec":{"replicas":0}}' ] logger.go:42: 17:49:54 | 1-028_validate_run_on_infra/3-change-back | gitopsservice.pipelines.openshift.io/cluster patched logger.go:42: 17:49:55 | 1-028_validate_run_on_infra/3-change-back | statefulset.apps/openshift-gitops-application-controller patched logger.go:42: 17:49:55 | 1-028_validate_run_on_infra/3-change-back | test step completed 3-change-back logger.go:42: 17:49:55 | 1-028_validate_run_on_infra/4-check | starting test step 4-check logger.go:42: 17:49:56 | 1-028_validate_run_on_infra/4-check | test step completed 4-check logger.go:42: 17:49:56 | 1-028_validate_run_on_infra | skipping kubernetes event logging logger.go:42: 17:49:56 | 1-028_validate_run_on_infra | Deleting namespace: kuttl-test-crucial-weevil === CONT kuttl harness.go:405: run tests finished harness.go:513: cleaning up harness.go:570: removing temp folder: "" --- PASS: kuttl (2004.17s) --- PASS: kuttl/harness (0.00s) --- PASS: kuttl/harness/1-001_validate_kam_service (7.25s) --- PASS: kuttl/harness/1-078_validate_default_argocd_consoleLink (68.79s) --- PASS: kuttl/harness/1-105_validate_label_selector (323.78s) --- PASS: kuttl/harness/1-104_validate_prometheus_alert (5.81s) --- PASS: kuttl/harness/1-086_validate_default_argocd_role (40.09s) --- PASS: kuttl/harness/1-085_validate_dynamic_plugin_installation (45.75s) --- PASS: kuttl/harness/1-084_validate_prune_templates (31.84s) --- PASS: kuttl/harness/1-083_validate_apps_in_any_namespace (88.73s) --- PASS: kuttl/harness/1-056_validate_managed-by (77.71s) --- PASS: kuttl/harness/1-071_validate_node_selectors (25.38s) --- PASS: kuttl/harness/1-064_validate_tcp_reset_error (68.64s) --- PASS: kuttl/harness/1-031_validate_toolchain (10.50s) --- PASS: kuttl/harness/1-035_validate_argocd_secret_repopulate (39.22s) --- PASS: kuttl/harness/1-034_validate_custom_roles (83.44s) --- PASS: kuttl/harness/1-020_validate_redis_ha_nonha (576.78s) --- PASS: kuttl/harness/1-006_validate_machine_config (20.52s) --- PASS: kuttl/harness/1-018_validate_disable_default_instance (95.93s) --- PASS: kuttl/harness/1-010_validate-ootb-manage-other-namespace (31.21s) --- PASS: kuttl/harness/1-027_validate_operand_from_git (58.67s) --- PASS: kuttl/harness/1-042_validate_status_host (26.35s) --- PASS: kuttl/harness/1-050_validate_sso (185.65s) --- PASS: kuttl/harness/1-026-validate_backend_service_permissions (5.97s) --- PASS: kuttl/harness/1-041_validate_argocd_sync_alert (5.74s) --- PASS: kuttl/harness/1-004_validate_argocd_installation (17.15s) --- PASS: kuttl/harness/1-005_validate_metrics (5.86s) --- PASS: kuttl/harness/1-002_validate_backend_service (5.76s) --- PASS: kuttl/harness/1-040_validate_quoted_RBAC_group_names (8.58s) --- PASS: kuttl/harness/1-028_validate_run_on_infra (42.87s) PASS ========================== ==== E2E TESTS FAILED ==== ========================== Copying results Deleted temp working directory /kuttl-e2e/gitops-operator/tmp.VORwkL34HR make: *** [Makefile:4: e2e-tests] Error 1 make: Leaving directory '/kuttl-e2e/gitops-operator' File has been uploaded to CI/kuttl-tests-1.11.5-4/240527-164752/sequential_2024.05.27-16.48.15.xml 🚀 File has been uploaded to CI/kuttl-tests-1.11.5-4/240527-164752/sequential_2024.05.27-16.48.15.log 🚀 File has been uploaded to CI/kuttl-tests-1.11.5-4/240527-164752/parallel_2024.05.27-16.48.15.xml 🚀 File has been uploaded to CI/kuttl-tests-1.11.5-4/240527-164752/parallel_2024.05.27-16.48.15.log 🚀 Updating artifacts path to results http://uploader.devtools-gitops--pipeline.svc.cluster.local:8080/CI/kuttl-tests-1.11.5-4/240527-164752/