Skip to content

Commit

Permalink
Merge pull request #1852 from martin-mat/unify_skipped
Browse files Browse the repository at this point in the history
Unify reporting of skipped tests #878
  • Loading branch information
agentpoyo authored Jan 11, 2024
2 parents b63277c + cd89005 commit 64890e2
Show file tree
Hide file tree
Showing 5 changed files with 22 additions and 38 deletions.
36 changes: 12 additions & 24 deletions src/tasks/platform/observability.cr
Original file line number Diff line number Diff line change
Expand Up @@ -18,27 +18,24 @@ namespace "platform" do
task "kube_state_metrics", ["install_cluster_tools"] do |_, args|
task_start_time = Time.utc
testsuite_task = "kube_state_metrics"
emoji_kube_state_metrics="📶☠️"
Log.for(testsuite_task).info { "Starting test" }

unless check_poc(args)
Log.info { "skipping kube_state_metrics: not in poc mode" }
puts "SKIPPED: Kube State Metrics".colorize(:yellow)
upsert_skipped_task(testsuite_task, "⏭️ SKIPPED: Kube State Metrics not in poc mode #{emoji_kube_state_metrics}", task_start_time)
next
end
if args.named["offline"]?
Log.info { "skipping kube_state_metrics: in offline mode" }
puts "SKIPPED: Kube State Metrics".colorize(:yellow)
upsert_skipped_task(testsuite_task, "⏭️ SKIPPED: Kube State Metrics in offline mode #{emoji_kube_state_metrics}", task_start_time)
next
end
Log.info { "Running POC: kube_state_metrics" }
found = KernelIntrospection::K8s.find_first_process(CloudNativeIntrospection::STATE_METRICS_PROCESS)
Log.info { "Found Pod: #{found}" }

if found
emoji_kube_state_metrics="📶☠️"
upsert_passed_task(testsuite_task,"✔️ PASSED: Your platform is using the release for kube state metrics #{emoji_kube_state_metrics}", task_start_time)
else
emoji_kube_state_metrics="📶☠️"
upsert_failed_task(testsuite_task, "✖️ FAILED: Your platform does not have kube state metrics installed #{emoji_kube_state_metrics}", task_start_time)
end
end
Expand All @@ -47,27 +44,24 @@ namespace "platform" do
task "node_exporter", ["install_cluster_tools"] do |_, args|
task_start_time = Time.utc
testsuite_task = "node_exporter"
emoji_node_exporter="📶☠️"
Log.for(testsuite_task).info { "Starting test" }

unless check_poc(args)
Log.info { "skipping node_exporter: not in poc mode" }
puts "SKIPPED: Node Exporter".colorize(:yellow)
upsert_skipped_task(testsuite_task, "⏭️ SKIPPED: node exporter not in poc mode #{emoji_node_exporter}", task_start_time)
next
end

if args.named["offline"]?
Log.info { "skipping node_exporter: in offline mode" }
puts "SKIPPED: Node Exporter".colorize(:yellow)
upsert_skipped_task(testsuite_task, "⏭️ SKIPPED: node exporter in offline mode #{emoji_node_exporter}", task_start_time)
next
end
Log.info { "Running POC: node_exporter" }
found = KernelIntrospection::K8s.find_first_process(CloudNativeIntrospection::NODE_EXPORTER)
Log.info { "Found Process: #{found}" }
if found
emoji_node_exporter="📶☠️"
upsert_passed_task(testsuite_task,"✔️ PASSED: Your platform is using the node exporter #{emoji_node_exporter}", task_start_time)
else
emoji_node_exporter="📶☠️"
upsert_failed_task(testsuite_task, "✖️ FAILED: Your platform does not have the node exporter installed #{emoji_node_exporter}", task_start_time)
end
end
Expand All @@ -77,27 +71,24 @@ namespace "platform" do
task "prometheus_adapter", ["install_cluster_tools"] do |_, args|
task_start_time = Time.utc
testsuite_task = "prometheus_adapter"
emoji_prometheus_adapter="📶☠️"
Log.for(testsuite_task).info { "Starting test" }

unless check_poc(args)
Log.info { "skipping prometheus_adapter: not in poc mode" }
puts "SKIPPED: Prometheus Adapter".colorize(:yellow)
upsert_skipped_task(testsuite_task, "⏭️ SKIPPED: prometheus adapter not in poc mode #{emoji_prometheus_adapter}", task_start_time)
next
end
if args.named["offline"]?
Log.info { "skipping prometheus_adapter: in offline mode" }
puts "SKIPPED: Prometheus Adapter".colorize(:yellow)
upsert_skipped_task(testsuite_task, "⏭️ SKIPPED: prometheus adapter in offline mode #{emoji_prometheus_adapter}", task_start_time)
next
end
Log.info { "Running POC: prometheus_adapter" }
found = KernelIntrospection::K8s.find_first_process(CloudNativeIntrospection::PROMETHEUS_ADAPTER)
Log.info { "Found Process: #{found}" }

if found
emoji_prometheus_adapter="📶☠️"
upsert_passed_task(testsuite_task,"✔️ PASSED: Your platform is using the prometheus adapter #{emoji_prometheus_adapter}", task_start_time)
else
emoji_prometheus_adapter="📶☠️"
upsert_failed_task(testsuite_task, "✖️ FAILED: Your platform does not have the prometheus adapter installed #{emoji_prometheus_adapter}", task_start_time)
end
end
Expand All @@ -106,27 +97,24 @@ namespace "platform" do
task "metrics_server", ["install_cluster_tools"] do |_, args|
task_start_time = Time.utc
testsuite_task = "metrics_server"
emoji_metrics_server="📶☠️"
Log.for(testsuite_task).info { "Starting test" }

unless check_poc(args)
Log.info { "skipping metrics_server: not in poc mode" }
puts "SKIPPED: Metrics Server".colorize(:yellow)
upsert_skipped_task(testsuite_task, "⏭️ SKIPPED: Metrics server not in poc mode #{emoji_metrics_server}", task_start_time)
next
end
if args.named["offline"]?
Log.info { "skipping metrics_server: in offline mode" }
puts "SKIPPED: Metrics Server".colorize(:yellow)
upsert_skipped_task(testsuite_task, "⏭️ SKIPPED: Metrics server in offline mode #{emoji_metrics_server}", task_start_time)
next
end
Log.info { "Running POC: metrics_server" }
task_response = CNFManager::Task.task_runner(args, check_cnf_installed=false) do |args|

found = KernelIntrospection::K8s.find_first_process(CloudNativeIntrospection::METRICS_SERVER)
if found
emoji_metrics_server="📶☠️"
upsert_passed_task(testsuite_task, "✔️ PASSED: Your platform is using the metrics server #{emoji_metrics_server}", task_start_time)
else
emoji_metrics_server="📶☠️"
upsert_failed_task(testsuite_task, "✖️ FAILED: Your platform does not have the metrics server installed #{emoji_metrics_server}", task_start_time)
end
end
Expand Down
10 changes: 4 additions & 6 deletions src/tasks/platform/platform.cr
Original file line number Diff line number Diff line change
Expand Up @@ -93,11 +93,11 @@ task "clusterapi_enabled" do |_, args|
CNFManager::Task.task_runner(args, check_cnf_installed=false) do
task_start_time = Time.utc
testsuite_task = "clusterapi_enabled"
emoji_control=""
Log.for(testsuite_task).info { "Starting test" }

unless check_poc(args)
Log.info { "skipping clusterapi_enabled: not in poc mode" }
puts "SKIPPED: ClusterAPI Enabled".colorize(:yellow)
upsert_skipped_task(testsuite_task, "⏭️ SKIPPED: Cluster API not in poc mode #{emoji_control}", task_start_time)
next
end

Expand Down Expand Up @@ -138,12 +138,10 @@ task "clusterapi_enabled" do |_, args|
clusterapi_control_planes_json = proc_clusterapi_control_planes_json.call
Log.info { "clusterapi_control_planes_json: #{clusterapi_control_planes_json}" }

emoji_control=""

if clusterapi_namespaces_json["items"]? && clusterapi_namespaces_json["items"].as_a.size > 0 && clusterapi_control_planes_json["items"]? && clusterapi_control_planes_json["items"].as_a.size > 0
resp = upsert_passed_task(testsuite_task, "✔️ Cluster API is enabled #{emoji_control}", task_start_time)
resp = upsert_passed_task(testsuite_task, "✔️ PASSED: Cluster API is enabled #{emoji_control}", task_start_time)
else
resp = upsert_failed_task(testsuite_task, "✖️ Cluster API NOT enabled #{emoji_control}", task_start_time)
resp = upsert_failed_task(testsuite_task, "✖️ FAILED: Cluster API NOT enabled #{emoji_control}", task_start_time)
end

resp
Expand Down
5 changes: 2 additions & 3 deletions src/tasks/platform/resilience.cr
Original file line number Diff line number Diff line change
Expand Up @@ -16,11 +16,11 @@ namespace "platform" do
task "worker_reboot_recovery" do |_, args|
task_start_time = Time.utc
testsuite_task = "worker_reboot_recovery"
emoji_worker_reboot_recovery=""
Log.for(testsuite_task).info { "Starting test" }

unless check_destructive(args)
Log.info { "skipping node_failure: not in destructive mode" }
puts "SKIPPED: Node Failure".colorize(:yellow)
upsert_skipped_task(testsuite_task, "⏭️ SKIPPED: Node not in destructive mode #{emoji_worker_reboot_recovery}", task_start_time)
next
end
Log.info { "Running POC in destructive mode!" }
Expand Down Expand Up @@ -95,7 +95,6 @@ namespace "platform" do
sleep 1
end

emoji_worker_reboot_recovery=""
resp = upsert_passed_task(testsuite_task,"✔️ PASSED: Node came back online #{emoji_worker_reboot_recovery}", task_start_time)


Expand Down
2 changes: 1 addition & 1 deletion src/tasks/workload/compatibility.cr
Original file line number Diff line number Diff line change
Expand Up @@ -685,7 +685,7 @@ task "cni_compatible" do |_, args|
ENV["KUBECONFIG"]="#{kubeconfig_orig}"
end
else
upsert_skipped_task(testsuite_task, "️ SKIPPED: Docker not installed #{emoji_security}", task_start_time)
upsert_skipped_task(testsuite_task, "️ SKIPPED: Docker not installed #{emoji_security}", task_start_time)
end
end
end
7 changes: 3 additions & 4 deletions src/tasks/workload/configuration.cr
Original file line number Diff line number Diff line change
Expand Up @@ -461,7 +461,7 @@ task "secrets_used" do |_, args|
if task_response
resp = upsert_passed_task(testsuite_task, "✔️ ✨PASSED: Secrets defined and used #{emoji_probe}", task_start_time)
else
resp = upsert_skipped_task(testsuite_task, "⏭ ✨#{secrets_used_skipped_msg(emoji_probe)}", task_start_time)
resp = upsert_skipped_task(testsuite_task, "#{secrets_used_skipped_msg(emoji_probe)}", task_start_time)
end
resp
end
Expand Down Expand Up @@ -681,17 +681,16 @@ task "alpha_k8s_apis" do |_, args|
CNFManager::Task.task_runner(args) do |args, config|
task_start_time = Time.utc
testsuite_task = "alpha_k8s_apis"
emoji="⭕️🔍"
Log.for(testsuite_task).info { "Starting test" }

unless check_poc(args)
Log.info { "Skipping alpha_k8s_apis: not in poc mode" }
puts "⏭️ SKIPPED: alpha_k8s_apis".colorize(:yellow)
upsert_skipped_task(testsuite_task, "⏭️ SKIPPED: alpha_k8s_apis not in poc mode #{emoji}", task_start_time)
next
end

ensure_kubeconfig!
kubeconfig_orig = ENV["KUBECONFIG"]
emoji="⭕️🔍"

# No offline support for this task for now
if args.named["offline"]? && args.named["offline"]? != "false"
Expand Down

0 comments on commit 64890e2

Please sign in to comment.