pub struct StackSettings {
pub network: Option<NetworkSettings>,
pub domains: Option<DomainSettings>,
pub kubernetes: Option<KubernetesSettings>,
pub compute: Option<ComputeSettings>,
pub deployment_model: DeploymentModel,
pub updates: UpdatesMode,
pub telemetry: TelemetryMode,
pub heartbeats: HeartbeatsMode,
pub external_bindings: Option<ExternalBindings>,
}Expand description
User-customizable deployment settings specified at deploy time.
These settings are provided by the customer via CloudFormation parameters, Terraform attributes, CLI flags, or Helm values. They customize how the deployment runs and what capabilities are enabled.
Key distinction: StackSettings is user-customizable, while ManagementConfig is platform-derived (from the Manager’s ServiceAccount).
Fields§
§network: Option<NetworkSettings>Network configuration for the stack (VPC/VNet settings).
If None, an isolated VPC with NAT is auto-created when the stack has resources
that require networking (e.g., containers). Set explicitly to customize:
UseDefault for the provider’s default network (fast, dev/test only),
Create for an isolated VPC with managed NAT (production), or ByoVpc*
to reference an existing customer-managed VPC.
domains: Option<DomainSettings>Domain configuration (future).
kubernetes: Option<KubernetesSettings>Kubernetes runtime substrate configuration.
compute: Option<ComputeSettings>Deployment-time compute selections for Alien-managed compute pools.
This is where provider machine names such as EC2 instance types, GCE machine types, or Azure VM SKUs belong. Application source should declare portable requirements instead.
deployment_model: DeploymentModelDeployment model: push (Manager) or pull (Agent). Default: Push.
- Push: Manager drives updates. For cloud platforms, requires cross-account
credentials established during initial setup. For push-mode local
deployments (currently
alien dev), the manager has direct access — no bootstrap needed. - Pull: Agent in the target environment drives updates via polling. Required for Kubernetes and remote local deployments.
updates: UpdatesModeHow updates are delivered.
- auto: Updates deploy automatically (default)
- approval-required: Updates wait for explicit approval
telemetry: TelemetryModeHow telemetry (logs, metrics, traces) is handled.
- off: No telemetry permissions
- auto: Telemetry flows automatically (default)
- approval-required: Telemetry waits for explicit approval
heartbeats: HeartbeatsModeHow heartbeat health checks are handled.
- off: No heartbeat permissions
- on: Heartbeat enabled (default)
external_bindings: Option<ExternalBindings>External bindings for pre-existing infrastructure. Allows using existing resources (MinIO, Redis, shared Container Apps Environment, etc.) instead of having Alien provision them. Required for Kubernetes platform, optional for cloud platforms.
Trait Implementations§
Source§impl Clone for StackSettings
impl Clone for StackSettings
Source§fn clone(&self) -> StackSettings
fn clone(&self) -> StackSettings
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 StackSettings
impl Debug for StackSettings
Source§impl Default for StackSettings
impl Default for StackSettings
Source§fn default() -> StackSettings
fn default() -> StackSettings
Source§impl<'de> Deserialize<'de> for StackSettings
impl<'de> Deserialize<'de> for StackSettings
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>,
impl Eq for StackSettings
Source§impl PartialEq for StackSettings
impl PartialEq for StackSettings
Source§fn eq(&self, other: &StackSettings) -> bool
fn eq(&self, other: &StackSettings) -> bool
self and other values to be equal, and is used by ==.Source§impl Serialize for StackSettings
impl Serialize for StackSettings
impl StructuralPartialEq for StackSettings
Auto Trait Implementations§
impl Freeze for StackSettings
impl RefUnwindSafe for StackSettings
impl Send for StackSettings
impl Sync for StackSettings
impl Unpin for StackSettings
impl UnsafeUnpin for StackSettings
impl UnwindSafe for StackSettings
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<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.