saved mapped ports in state
This commit is contained in:
		
							parent
							
								
									7be5c1abd7
								
							
						
					
					
						commit
						b0990521f2
					
				
							
								
								
									
										1
									
								
								Cargo.lock
									
									
									
										generated
									
									
									
								
							
							
								
								
								
								
								
									
									
								
							
						
						
									
										1
									
								
								Cargo.lock
									
									
									
										generated
									
									
									
								
							| @ -316,6 +316,7 @@ dependencies = [ | |||||||
| [[package]] | [[package]] | ||||||
| name = "detee-shared" | name = "detee-shared" | ||||||
| version = "0.1.0" | version = "0.1.0" | ||||||
|  | source = "git+ssh://git@gitea.detee.cloud/noormohammedb/detee-shared#f4e1159efc1987a1ca6e079617719527875957bf" | ||||||
| dependencies = [ | dependencies = [ | ||||||
|  "base64", |  "base64", | ||||||
|  "prost", |  "prost", | ||||||
|  | |||||||
| @ -18,6 +18,7 @@ pub struct Container { | |||||||
|     pub status: String, |     pub status: String, | ||||||
|     pub admin: String, |     pub admin: String, | ||||||
|     pub container_resource: ResourceConfig, |     pub container_resource: ResourceConfig, | ||||||
|  |     pub mapped_ports: Vec<(u16, u16)>, | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| impl DaemonState { | impl DaemonState { | ||||||
| @ -33,7 +34,7 @@ impl DaemonState { | |||||||
|     ) -> Result<(), Box<dyn std::error::Error>> { |     ) -> Result<(), Box<dyn std::error::Error>> { | ||||||
|         let publishing_ports = req_data.resource.clone().unwrap().port; |         let publishing_ports = req_data.resource.clone().unwrap().port; | ||||||
| 
 | 
 | ||||||
|         deploy_enclave(&unarchive_dir, publishing_ports).await?; |         let mapped_ports = deploy_enclave(&unarchive_dir, publishing_ports).await?; | ||||||
| 
 | 
 | ||||||
|         let container = Container { |         let container = Container { | ||||||
|             id: "123".to_string(), |             id: "123".to_string(), | ||||||
| @ -42,6 +43,7 @@ impl DaemonState { | |||||||
|             status: "running".to_string(), |             status: "running".to_string(), | ||||||
|             admin: ip, |             admin: ip, | ||||||
|             container_resource: req_data.resource.unwrap(), |             container_resource: req_data.resource.unwrap(), | ||||||
|  |             mapped_ports, | ||||||
|         }; |         }; | ||||||
| 
 | 
 | ||||||
|         self.containers.push(container); |         self.containers.push(container); | ||||||
|  | |||||||
| @ -45,7 +45,7 @@ pub async fn deploy_enclave( | |||||||
|     // enclave_name: String,
 |     // enclave_name: String,
 | ||||||
|     publishing_ports: Vec<u32>, |     publishing_ports: Vec<u32>, | ||||||
|     // ...
 |     // ...
 | ||||||
| ) -> Result<(), Box<dyn std::error::Error>> { | ) -> Result<Vec<(u16, u16)>, Box<dyn std::error::Error>> { | ||||||
|     let port_map = prepare_port_map(publishing_ports).await; |     let port_map = prepare_port_map(publishing_ports).await; | ||||||
| 
 | 
 | ||||||
|     let port_maping_string = port_map |     let port_maping_string = port_map | ||||||
| @ -56,7 +56,9 @@ pub async fn deploy_enclave( | |||||||
| 
 | 
 | ||||||
|     println!("Deploying enclave: {:?}", enclave_path); |     println!("Deploying enclave: {:?}", enclave_path); | ||||||
|     let docker_deploy_str = format!( |     let docker_deploy_str = format!( | ||||||
|         "docker run -v {enclave_path}/enclave_packager:/enclave_packager --device /dev/sgx/enclave --device /dev/sgx/provision {port_maping_string} noormohammedb/occlum-enclave:v1"); |         r#"docker run -v {enclave_path}/enclave_packager:/enclave_packager --device /dev/sgx/enclave \ | ||||||
|  |         --device /dev/sgx/provision {port_maping_string} noormohammedb/occlum-enclave:v1"#
 | ||||||
|  |     ); | ||||||
| 
 | 
 | ||||||
|     println!("{}", &docker_deploy_str); |     println!("{}", &docker_deploy_str); | ||||||
| 
 | 
 | ||||||
| @ -65,7 +67,7 @@ pub async fn deploy_enclave( | |||||||
|         .arg(docker_deploy_str) |         .arg(docker_deploy_str) | ||||||
|         .spawn()?; |         .spawn()?; | ||||||
| 
 | 
 | ||||||
|     Ok(()) |     Ok(port_map) | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| pub async fn download_file(url: &str, file_path: &Path) -> Result<(), Box<dyn std::error::Error>> { | pub async fn download_file(url: &str, file_path: &Path) -> Result<(), Box<dyn std::error::Error>> { | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user