MCPcopy Create free account
hub / github.com/Qovery/engine / run_analysis

Method run_analysis

lib-engine/src/cluster_analysis/task.rs:94–132  ·  view source on GitHub ↗
(&self)

Source from the content-addressed store, hash-verified

92 }
93
94 fn run_analysis(&self) -> Result<String, Box<EngineError>> {
95 let (cloud_provider, kubernetes) = self.request.to_cluster_analysis_kubernetes(
96 &self.info_context(),
97 self.request.event_details(),
98 self.logger.clone(),
99 )?;
100 let kubeconfig_path = kubernetes.kubeconfig_local_file_path();
101 let credentials_envs = cloud_provider
102 .credentials_environment_variables()
103 .into_iter()
104 .map(|(key, value)| (key.to_string(), value.to_string()))
105 .collect::<Vec<_>>();
106 let credentials_envs_ref = credentials_envs
107 .iter()
108 .map(|(key, value)| (key.as_str(), value.as_str()))
109 .collect::<Vec<_>>();
110
111 match &self.request.target_analysis {
112 ClusterAnalysisRequest::CostRecommendation(payload) => {
113 self.logger.log(EngineEvent::Info(
114 self.get_event_details(ClusterAnalysisStep::CostRecommendation),
115 EventMessage::new_from_safe("Running KRR cost recommendation analysis".to_string()),
116 ));
117 self.run_krr(payload, &kubeconfig_path, credentials_envs_ref.as_slice())
118 }
119 ClusterAnalysisRequest::DeprecatedApiCheck(payload) => {
120 self.logger.log(EngineEvent::Info(
121 self.get_event_details(ClusterAnalysisStep::DeprecatedApiCheck),
122 EventMessage::new_from_safe("Running Kubernetes deprecated API analysis".to_string()),
123 ));
124 self.run_deprecated_api_check(
125 payload,
126 &kubeconfig_path,
127 credentials_envs.as_slice(),
128 credentials_envs_ref.as_slice(),
129 )
130 }
131 }
132 }
133
134 fn run_krr(
135 &self,

Callers 1

runMethod · 0.80

Calls 11

run_krrMethod · 0.80
info_contextMethod · 0.45
event_detailsMethod · 0.45
cloneMethod · 0.45
as_strMethod · 0.45
logMethod · 0.45
get_event_detailsMethod · 0.45

Tested by

no test coverage detected