commit - 56353a840d3c0193dfb3b0f4b433668156a44b45
commit + 081c49d08e5da0bd73829b0278c754037cc034e6
blob - 27a3846d04bd7f1ecbc20b96792e43336afde4c2
blob + 642a800b6eaba03c8c9461394017e7a6e09938db
--- kopsd/src/handler.rs
+++ kopsd/src/handler.rs
expires_at,
};
- match self.state.aws_sessions.lock() {
- Ok(mut map) => {
- map.insert(req.name.clone(), session);
- info!("stored AWS session for profile '{}'", req.name);
- Response::LoginOk
- }
- Err(_) => Response::Error {
- message: "failed to lock aws_sessions map".into(),
- },
+ {
+ let mut map = match self.state.aws_sessions.lock() {
+ Ok(m) => m,
+ Err(_) => {
+ return Response::Error {
+ message: "failed to lock aws_sessions map".into(),
+ };
+ }
+ };
+
+ map.insert(req.name.clone(), session);
+ info!("stored AWS session for profile '{}'", req.name);
}
+
+ if let Err(err) = self.start_clusters_for_profile(&req.name).await {
+ return Response::Error {
+ message: format!(
+ "stored session but failed to start clusters for profile {}: {err}",
+ req.name
+ ),
+ };
+ }
+
+ Response::LoginOk
}
+ async fn start_clusters_for_profile(
+ &self,
+ _profile: &str,
+ ) -> anyhow::Result<()> {
+ Ok(())
+ }
+
async fn handle_env(&self, req: EnvRequest) -> Response {
let cluster = req
.cluster