| 2788 | } |
| 2789 | |
| 2790 | fn driver_status_from_summary( |
| 2791 | summary: &ContainerSummary, |
| 2792 | sandbox_name: &str, |
| 2793 | supervisor_connected: bool, |
| 2794 | ) -> DriverSandboxStatus { |
| 2795 | let state = summary.state.unwrap_or(ContainerSummaryStateEnum::EMPTY); |
| 2796 | let (ready, reason, message, deleting) = container_ready_condition(state, supervisor_connected); |
| 2797 | |
| 2798 | DriverSandboxStatus { |
| 2799 | sandbox_name: summary_container_name(summary).unwrap_or_else(|| sandbox_name.to_string()), |
| 2800 | instance_id: summary.id.clone().unwrap_or_default(), |
| 2801 | agent_fd: String::new(), |
| 2802 | sandbox_fd: String::new(), |
| 2803 | conditions: vec![DriverCondition { |
| 2804 | r#type: "Ready".to_string(), |
| 2805 | status: ready.to_string(), |
| 2806 | reason: reason.to_string(), |
| 2807 | message: message.to_string(), |
| 2808 | last_transition_time: String::new(), |
| 2809 | }], |
| 2810 | deleting, |
| 2811 | } |
| 2812 | } |
| 2813 | |
| 2814 | fn container_ready_condition( |
| 2815 | state: ContainerSummaryStateEnum, |