Struct WorkspaceConfig
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§
§impl Clone for WorkspaceConfig
impl Clone for WorkspaceConfig
§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 more§impl Debug for WorkspaceConfig
impl Debug for WorkspaceConfig
§impl Default for WorkspaceConfig
impl Default for WorkspaceConfig
§fn default() -> WorkspaceConfig
fn default() -> WorkspaceConfig
§impl<'de> Deserialize<'de> for WorkspaceConfig
impl<'de> Deserialize<'de> for WorkspaceConfig
§fn deserialize<__D>(
__deserializer: __D,
) -> Result<WorkspaceConfig, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<WorkspaceConfig, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
§impl PartialEq for WorkspaceConfig
impl PartialEq for WorkspaceConfig
§impl Serialize for WorkspaceConfig
impl Serialize for WorkspaceConfig
§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
impl Eq for WorkspaceConfig
impl StructuralPartialEq for WorkspaceConfig
Auto Trait Implementations§
impl Freeze for WorkspaceConfig
impl RefUnwindSafe for WorkspaceConfig
impl Send for WorkspaceConfig
impl Sync for WorkspaceConfig
impl Unpin for WorkspaceConfig
impl UnsafeUnpin for WorkspaceConfig
impl UnwindSafe for WorkspaceConfig
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more