pub enum ExternalBinding {
Variant0(ExternalBindingVariant0),
Variant1(ExternalBindingVariant1),
Variant2(ExternalBindingVariant2),
Variant3(ExternalBindingVariant3),
Variant4(ExternalBindingVariant4),
Variant5 {
default_domain: BindingValueString,
environment_name: BindingValueString,
resource_group_name: BindingValueString,
resource_id: BindingValueString,
static_ip: Option<BindingValueString>,
type_: ExternalBindingVariant5Type,
},
Variant6(ExternalBindingVariant6),
Variant7 {
api_key: BindingValueString,
provider: String,
type_: ExternalBindingVariant7Type,
},
}Expand description
Represents a binding to pre-existing infrastructure.
The binding type must match the resource type it’s applied to. Validated at runtime by the executor.
JSON schema
{
"description": "Represents a binding to pre-existing infrastructure.\n\nThe binding type must match the resource type it's applied to.\nValidated at runtime by the executor.",
"oneOf": [
{
"description": "External storage binding (S3-compatible, GCS, Blob Storage)",
"allOf": [
{
"$ref": "#/components/schemas/StorageBinding"
},
{
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"storage"
]
}
}
}
]
},
{
"description": "External queue binding (Kafka, SQS, etc.)",
"allOf": [
{
"$ref": "#/components/schemas/QueueBinding"
},
{
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"queue"
]
}
}
}
]
},
{
"description": "External KV binding (Redis, etc.)",
"allOf": [
{
"$ref": "#/components/schemas/KvBinding"
},
{
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"kv"
]
}
}
}
]
},
{
"description": "External artifact registry binding (OCI registry)",
"allOf": [
{
"$ref": "#/components/schemas/ArtifactRegistryBinding"
},
{
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"artifact_registry"
]
}
}
}
]
},
{
"description": "External vault binding (HashiCorp Vault, etc.)",
"allOf": [
{
"$ref": "#/components/schemas/VaultBinding"
},
{
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"vault"
]
}
}
}
]
},
{
"description": "External Azure Container Apps Environment binding (pre-existing environment)",
"allOf": [
{
"$ref": "#/components/schemas/ContainerAppsEnvironmentBinding"
},
{
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"container_apps_environment"
]
}
}
}
]
},
{
"description": "External Postgres binding (operator-provided / BYO database)",
"allOf": [
{
"$ref": "#/components/schemas/PostgresBinding"
},
{
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"postgres"
]
}
}
}
]
},
{
"description": "External AI provider binding (BYO-key OpenAI/Anthropic, etc.)",
"allOf": [
{
"$ref": "#/components/schemas/ExternalAiBinding"
},
{
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"ai"
]
}
}
}
]
}
]
}Variants§
Variant0(ExternalBindingVariant0)
Variant1(ExternalBindingVariant1)
Variant2(ExternalBindingVariant2)
Variant3(ExternalBindingVariant3)
Variant4(ExternalBindingVariant4)
Variant5
Fields
§
default_domain: BindingValueString§
environment_name: BindingValueString§
resource_group_name: BindingValueString§
resource_id: BindingValueString§
static_ip: Option<BindingValueString>The static IP address of the environment (if applicable).
§
type_: ExternalBindingVariant5TypeVariant6(ExternalBindingVariant6)
Variant7
Trait Implementations§
Source§impl Clone for ExternalBinding
impl Clone for ExternalBinding
Source§impl Debug for ExternalBinding
impl Debug for ExternalBinding
Source§impl<'de> Deserialize<'de> for ExternalBinding
impl<'de> Deserialize<'de> for ExternalBinding
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
Source§impl From<&ExternalBinding> for ExternalBinding
impl From<&ExternalBinding> for ExternalBinding
Source§fn from(value: &ExternalBinding) -> Self
fn from(value: &ExternalBinding) -> Self
Converts to this type from the input type.
Source§impl From<ExternalBindingVariant0> for ExternalBinding
impl From<ExternalBindingVariant0> for ExternalBinding
Source§fn from(value: ExternalBindingVariant0) -> Self
fn from(value: ExternalBindingVariant0) -> Self
Converts to this type from the input type.
Source§impl From<ExternalBindingVariant1> for ExternalBinding
impl From<ExternalBindingVariant1> for ExternalBinding
Source§fn from(value: ExternalBindingVariant1) -> Self
fn from(value: ExternalBindingVariant1) -> Self
Converts to this type from the input type.
Source§impl From<ExternalBindingVariant2> for ExternalBinding
impl From<ExternalBindingVariant2> for ExternalBinding
Source§fn from(value: ExternalBindingVariant2) -> Self
fn from(value: ExternalBindingVariant2) -> Self
Converts to this type from the input type.
Source§impl From<ExternalBindingVariant3> for ExternalBinding
impl From<ExternalBindingVariant3> for ExternalBinding
Source§fn from(value: ExternalBindingVariant3) -> Self
fn from(value: ExternalBindingVariant3) -> Self
Converts to this type from the input type.
Source§impl From<ExternalBindingVariant4> for ExternalBinding
impl From<ExternalBindingVariant4> for ExternalBinding
Source§fn from(value: ExternalBindingVariant4) -> Self
fn from(value: ExternalBindingVariant4) -> Self
Converts to this type from the input type.
Source§impl From<ExternalBindingVariant6> for ExternalBinding
impl From<ExternalBindingVariant6> for ExternalBinding
Source§fn from(value: ExternalBindingVariant6) -> Self
fn from(value: ExternalBindingVariant6) -> Self
Converts to this type from the input type.
Auto Trait Implementations§
impl Forget for ExternalBinding
impl Freeze for ExternalBinding
impl RefUnwindSafe for ExternalBinding
impl Send for ExternalBinding
impl Sync for ExternalBinding
impl Unpin for ExternalBinding
impl UnsafeUnpin for ExternalBinding
impl UnwindSafe for ExternalBinding
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