start using actix for interface
This commit is contained in:
27
src/controller/mod.rs
Normal file
27
src/controller/mod.rs
Normal file
@@ -0,0 +1,27 @@
|
||||
use bollard::Docker;
|
||||
use crate::deploy;
|
||||
|
||||
pub struct Controller {
|
||||
driver: Docker,
|
||||
network: String,
|
||||
}
|
||||
|
||||
impl Controller {
|
||||
pub async fn new(driver: Docker, network: String, range: String) -> Result<Self, bollard::errors::Error>{
|
||||
deploy::network::Network::new(driver.clone(), network.clone(), range).await?;
|
||||
Ok(Controller {
|
||||
driver: driver,
|
||||
network: network,
|
||||
})
|
||||
}
|
||||
|
||||
pub async fn create_container(&self, domain: String, ip: String) -> String {
|
||||
match deploy::container::Container::new(self.driver.clone(),
|
||||
domain,
|
||||
ip,
|
||||
self.network.clone()).await {
|
||||
Ok(c) => c.get_id(),
|
||||
Err(e) => "error creating container".to_string(),
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user