pub struct WorkspaceConfig {
pub display_name: Option<String>,
pub sources: Vec<WorkspaceSourceSpec>,
pub providers: Vec<ProviderSpec>,
pub default_provider: Option<String>,
pub isolation: Option<IsolationConfig>,
pub local: RepoProviderConfig,
}Expand description
Backend-neutral workspace configuration accepted at the API boundary
(POST /api/workspaces, PUT /api/workspaces/{name}/config).
The rich fields (sources/providers/default_provider/isolation) drive a
k8s Workspace CR; the flattened RepoProviderConfig carries the
LocalFleet single-provider/env shape. Each backend projects out the
subset it uses, so one endpoint serves both: #[serde(flatten)] keeps
legacy local bodies ({provider, base_url, api_key_from_env, env})
deserializing unchanged, while k8s reads the named-provider list + Secret
references it needs.
Fields§
§display_name: Option<String>Human-friendly dashboard label (k8s displayName; local ignores it).
sources: Vec<WorkspaceSourceSpec>Git source checkouts (k8s only; local derives its sources from root).
providers: Vec<ProviderSpec>Named providers (k8s only; local uses the flattened single provider).
default_provider: Option<String>Provider name agents get when they don’t request one (k8s only).
isolation: Option<IsolationConfig>Default isolation for agents (k8s only).
local: RepoProviderConfigLocalFleet single-provider/env configuration. Flattened so the existing local request shape is unchanged.
Trait Implementations§
Source§impl Clone for WorkspaceConfig
impl Clone for WorkspaceConfig
Source§fn clone(&self) -> WorkspaceConfig
fn clone(&self) -> WorkspaceConfig
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for WorkspaceConfig
impl Debug for WorkspaceConfig
Source§impl Default for WorkspaceConfig
impl Default for WorkspaceConfig
Source§fn default() -> WorkspaceConfig
fn default() -> WorkspaceConfig
Source§impl<'de> Deserialize<'de> for WorkspaceConfig
impl<'de> Deserialize<'de> for WorkspaceConfig
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl PartialEq for WorkspaceConfig
impl PartialEq for WorkspaceConfig
Source§fn eq(&self, other: &WorkspaceConfig) -> bool
fn eq(&self, other: &WorkspaceConfig) -> bool
self and other values to be equal, and is used by ==.