pub struct DockerManager { /* private fields */ }Implementations§
Source§impl DockerManager
impl DockerManager
pub fn new( client: Arc<dyn DockerClient>, file_system: Arc<dyn FileSystemOperations>, ) -> Self
pub async fn stop_proxy(&self) -> Result<(), String>
pub async fn stop_and_remove_container( &self, container_name: &str, ) -> Result<(), String>
Sourcepub async fn run_task_container(
&self,
image: &str,
worktree_path: &Path,
instructions_file_path: Option<&PathBuf>,
agent: &dyn Agent,
is_interactive: bool,
_task_name: &str,
log_file_path: Option<&Path>,
) -> Result<(String, Option<TaskResult>), String>
pub async fn run_task_container( &self, image: &str, worktree_path: &Path, instructions_file_path: Option<&PathBuf>, agent: &dyn Agent, is_interactive: bool, _task_name: &str, log_file_path: Option<&Path>, ) -> Result<(String, Option<TaskResult>), String>
Run a task container with unified support for both interactive and non-interactive modes.
§Arguments
image- Docker image to useworktree_path- Path to the work directory to mountinstructions_file_path- Optional path to instructions fileagent- The agent to use for the taskis_interactive- Whether to run in interactive modetask_name- Name of the task for logging purposeslog_file_path- Optional path to save the full log file
§Returns
Ok((output, task_result))- The container output and optional task resultErr(String)- Error message if container execution fails
Auto Trait Implementations§
impl Freeze for DockerManager
impl !RefUnwindSafe for DockerManager
impl Send for DockerManager
impl Sync for DockerManager
impl Unpin for DockerManager
impl !UnwindSafe for DockerManager
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more