pub struct Component {Show 15 fields
pub source: ComponentSource,
pub description: String,
pub variables: IndexMap<LowerSnakeId, String>,
pub environment: IndexMap<String, String>,
pub files: Vec<WasiFilesMount>,
pub exclude_files: Vec<String>,
pub allowed_http_hosts: Vec<String>,
pub allowed_outbound_hosts: Vec<String>,
pub key_value_stores: Vec<String>,
pub sqlite_databases: Vec<String>,
pub ai_models: Vec<KebabId>,
pub build: Option<ComponentBuildConfig>,
pub tool: IndexMap<String, Table>,
pub dependencies_inherit_configuration: bool,
pub dependencies: ComponentDependencies,
}
Expand description
Component definition
Fields§
§source: ComponentSource
source = ...
description: String
description = "Component description"
variables: IndexMap<LowerSnakeId, String>
variables = { name = "{{ app_var }}"}
environment: IndexMap<String, String>
environment = { VAR = "value" }
files: Vec<WasiFilesMount>
files = [...]
exclude_files: Vec<String>
exclude_files = ["secrets/*"]
allowed_http_hosts: Vec<String>
allowed_http_hosts = ["example.com"]
allowed_outbound_hosts: Vec<String>
allowed_outbound_hosts = ["redis://myredishost.com:6379"]
key_value_stores: Vec<String>
key_value_stores = ["default", "my-store"]
sqlite_databases: Vec<String>
sqlite_databases = ["default", "my-database"]
ai_models: Vec<KebabId>
ai_models = ["llama2-chat"]
build: Option<ComponentBuildConfig>
Build configuration
tool: IndexMap<String, Table>
Settings for custom tools or plugins. Spin ignores this field.
dependencies_inherit_configuration: bool
If true, allow dependencies to inherit configuration.
dependencies: ComponentDependencies
Component dependencies
Implementations§
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Component
impl<'de> Deserialize<'de> for Component
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>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl !Freeze for Component
impl RefUnwindSafe for Component
impl Send for Component
impl Sync for Component
impl Unpin for Component
impl UnwindSafe for Component
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§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>
Converts
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>
Converts
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