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