Skip to main content

opal/
runner.rs

1use crate::model::JobSpec;
2use crate::pipeline::VolumeMount;
3use crate::ui::UiBridge;
4use std::path::Path;
5
6pub struct ExecuteContext<'a> {
7    pub host_workdir: &'a Path,
8    pub script_path: &'a Path,
9    pub log_path: &'a Path,
10    pub mounts: &'a [VolumeMount],
11    pub image: &'a str,
12    pub image_platform: Option<&'a str>,
13    pub image_user: Option<&'a str>,
14    pub image_entrypoint: &'a [String],
15    pub container_name: &'a str,
16    pub job: &'a JobSpec,
17    pub ui: Option<&'a UiBridge>,
18    pub env_vars: &'a [(String, String)],
19    pub network: Option<&'a str>,
20    pub preserve_runtime_objects: bool,
21    pub arch: Option<&'a str>,
22    pub privileged: bool,
23    pub cap_add: &'a [String],
24    pub cap_drop: &'a [String],
25}