Skip to main content

Crate alien_core

Crate alien_core 

Source

Re-exports§

pub use permissions::*;
pub use events::*;
pub use app_events::*;
pub use bindings::*;
pub use presigned::*;
pub use commands_types::*;

Modules§

app_events
Application Events
bindings
Type-safe binding parameter definitions
commands_types
embedded_config
Embedded configuration support for alien-deploy-cli and alien-agent binaries.
events
Alien Events System
instance_catalog
Instance type catalog and selection algorithm for cloud compute infrastructure.
permissions
Defines core permission types and structures used across Alien Infra.
presigned
sync
Sync protocol types for agent ↔ manager communication.

Structs§

AgentStatus
Status of a single agent in the dev server
ArtifactRegistry
Represents an artifact registry for storing container images and other build artifacts. This is a high-level wrapper resource that provides a cloud-agnostic interface over AWS ECR, GCP Artifact Registry, and Azure Container Registry.
ArtifactRegistryBuilder
Use builder syntax to set the inputs and finish with build().
ArtifactRegistryConfig
Artifact registry configuration for pulling container images.
ArtifactRegistryOutputs
Outputs generated by a successfully provisioned ArtifactRegistry.
AwsClientConfig
AWS client configuration
AwsCustomCertificateConfig
AwsEnvironmentInfo
AWS-specific environment information
AwsImpersonationConfig
Configuration for AWS role impersonation
AwsManagementConfig
AWS management configuration extracted from stack settings
AwsServiceOverrides
Service endpoint overrides for testing AWS services
AwsWebIdentityConfig
Configuration for AWS Web Identity Token authentication
AzureClientConfig
Azure client configuration
AzureContainerAppsEnvironment
Represents an Azure Container Apps Environment for hosting container applications.
AzureContainerAppsEnvironmentBuilder
Use builder syntax to set the inputs and finish with build().
AzureContainerAppsEnvironmentOutputs
Outputs generated by a successfully provisioned Azure Container Apps Environment.
AzureCustomCertificateConfig
AzureEnvironmentInfo
Azure-specific environment information
AzureImpersonationConfig
Configuration for Azure managed identity impersonation
AzureManagementConfig
Azure management configuration extracted from stack settings
AzureResourceGroup
Represents an Azure Resource Group that acts as a logical container for Azure resources.
AzureResourceGroupBuilder
Use builder syntax to set the inputs and finish with build().
AzureResourceGroupOutputs
Outputs generated by a successfully provisioned Azure Resource Group.
AzureServiceBusNamespace
Represents an Azure Service Bus Namespace for hosting queues and topics.
AzureServiceBusNamespaceBuilder
Use builder syntax to set the inputs and finish with build().
AzureServiceBusNamespaceOutputs
Outputs generated by a successfully provisioned Azure Service Bus Namespace.
AzureServiceOverrides
Service endpoint overrides for testing Azure services
AzureStorageAccount
Represents an Azure Storage Account for blob, file, table, and queue storage.
AzureStorageAccountBuilder
Use builder syntax to set the inputs and finish with build().
AzureStorageAccountOutputs
Outputs generated by a successfully provisioned Azure Storage Account.
Build
Represents a build resource that executes bash scripts to build code. Builds are designed to be stateless and can be triggered on-demand to compile, test, or package application code.
BuildBuilder
Use builder syntax to set the inputs and finish with build().
BuildConfig
Configuration for starting a build.
BuildExecution
Information about a build execution.
BuildOutputs
Outputs generated by a successfully provisioned Build.
CapacityGroup
Capacity group definition.
CapacityGroupStatus
Status of a single capacity group within a ContainerCluster.
Container
Container resource for running long-running container workloads.
ContainerAutoscaling
Autoscaling configuration for stateless containers.
ContainerBuilder
Use builder syntax to set the inputs and finish with build().
ContainerCluster
ContainerCluster resource for running long-running container workloads.
ContainerClusterBuilder
Use builder syntax to set the inputs and finish with build().
ContainerClusterOutputs
Outputs generated by a successfully provisioned ContainerCluster.
ContainerGpuSpec
GPU specification for a container.
ContainerOutputs
Outputs generated by a successfully provisioned Container.
ContainerPort
Container port configuration.
CustomCertificateConfig
Platform-specific certificate references for custom domains.
CustomDomainConfig
Custom domain configuration for a single resource.
DeploymentConfig
Deployment configuration
DeploymentConfigBuilder
Use builder syntax to set the inputs and finish with build().
DeploymentState
Deployment state
DeploymentStateBuilder
Use builder syntax to set the inputs and finish with build().
DeploymentStepResult
Result of a deployment step
DevResourceInfo
Information about a deployed resource
DevStatus
Overall status of the dev server
DomainMetadata
Domain metadata for auto-managed public resources (no private keys).
DomainSettings
Domain configuration for the stack.
EnvironmentVariable
Environment variable for deployment
EnvironmentVariablesSnapshot
Snapshot of environment variables at a point in time
ExternalBindings
Map from resource ID to external binding.
Function
Represents a serverless function that executes code in response to triggers or direct invocations. Functions are the primary compute resource in serverless applications, designed to be stateless and ephemeral.
FunctionBuilder
Use builder syntax to set the inputs and finish with build().
FunctionOutputs
Outputs generated by a successfully provisioned Function.
GcpClientConfig
GCP client configuration
GcpCustomCertificateConfig
GcpEnvironmentInfo
GCP-specific environment information
GcpImpersonationConfig
Configuration for GCP service account impersonation
GcpManagementConfig
GCP management configuration extracted from stack settings
GcpServiceOverrides
Service endpoint overrides for testing GCP services
GpuSpec
GPU specification for a capacity group.
HealthCheck
HTTP health check configuration.
HorizonClusterConfig
Configuration for a single Horizon cluster.
HorizonConfig
Horizon configuration for container orchestration.
IdConfig
Configuration for ID generation
ImagePullCredentials
Image pull credentials for container registries
Kv
Represents a key-value storage resource that provides a minimal, platform-agnostic API compatible across DynamoDB, Firestore, Redis, and Azure Table Storage.
KvBuilder
Use builder syntax to set the inputs and finish with build().
KvOutputs
Outputs generated by a successfully provisioned KV store.
LifecycleRule
Defines a rule for managing the lifecycle of objects within a storage bucket.
LoadBalancerEndpoint
Load balancer endpoint information for DNS management. This is optional metadata used by the DNS controller to create domain mappings.
LocalEnvironmentInfo
Local platform environment information
MachineProfile
Machine resource profile for a capacity group.
MonitoringConfig
Configuration for monitoring and observability.
Network
Represents cloud-agnostic networking infrastructure (VPC, VNet, subnets, etc.).
NetworkBuilder
Use builder syntax to set the inputs and finish with build().
NetworkOutputs
Outputs generated by a successfully provisioned Network.
OtlpConfig
OTLP log export configuration for a deployment.
PersistentStorage
Persistent storage configuration for stateful containers.
Queue
Represents a message queue resource with minimal, portable semantics. Queue integrates with platform-native services (AWS SQS, GCP Pub/Sub, Azure Service Bus).
QueueBuilder
Use builder syntax to set the inputs and finish with build().
QueueOutputs
Outputs generated by a successfully provisioned Queue.
ReadinessProbe
Configuration for HTTP-based readiness probe. This probe is executed after function provisioning/update to verify the function is ready to serve traffic. Only works with functions that have Public ingress.
ReleaseInfo
Release metadata
RemoteStackManagement
Represents cross-account management access configuration for a stack deployed on AWS, GCP, or Azure platforms. This resource sets up the necessary IAM/RBAC configuration to allow another cloud account to manage the stack.
RemoteStackManagementBuilder
Use builder syntax to set the inputs and finish with build().
RemoteStackManagementOutputs
Resource outputs for RemoteStackManagement. Different platforms will provide different outputs based on their implementation.
ReplicaStatus
Status of a single container replica.
Resource
ResourceDomainInfo
Certificate and DNS metadata for a public resource.
ResourceEntry
ResourceOutputs
New Resource outputs wrapper that can hold any ResourceOutputsDefinition. This replaces the old ResourceOutputs enum to enable runtime extensibility.
ResourceRef
New ResourceRef that works with any resource type. This can eventually replace the enum-based ResourceRef for full extensibility.
ResourceSpec
Resource specification with min/desired values.
ResourceType
Type alias for resource type identifiers
RuntimeMetadata
Runtime metadata for deployment
ServiceAccount
Represents a non-human identity that can be assumed by compute services such as Lambda, Cloud Run, ECS, Container Apps, etc.
ServiceAccountBuilder
Use builder syntax to set the inputs and finish with build().
ServiceAccountOutputs
Outputs generated by a successfully provisioned ServiceAccount.
ServiceActivation
Represents a service activation that can be enabled on cloud platforms. For GCP: enables project services (e.g., iam.googleapis.com, compute.googleapis.com). For Azure: registers resource providers (e.g., Microsoft.DocumentDB, Microsoft.Storage).
ServiceActivationBuilder
Use builder syntax to set the inputs and finish with build().
ServiceActivationOutputs
Outputs generated by a successfully activated service.
Stack
A bag of resources, unaware of any cloud.
StackBuilder
Use builder syntax to set the inputs and finish with build().
StackResourceState
Represents the state of a single resource within the stack for a specific platform.
StackResourceStateBuilder
Use builder syntax to set the inputs and finish with build().
StackSettings
User-customizable deployment settings specified at deploy time.
StackState
Represents the collective state of all resources in a stack, including platform and pending actions.
Storage
Represents an object storage bucket.
StorageBuilder
Use builder syntax to set the inputs and finish with build().
StorageOutputs
Outputs generated by a successfully provisioned Storage bucket.
TemplateInputs
Deployment-time values that affect VM instance templates.
TestEnvironmentInfo
Test platform environment information (mock)
Vault
Represents a secure vault for storing secrets. This resource provides a platform-agnostic interface over cloud-native secret management services:
VaultBuilder
Use builder syntax to set the inputs and finish with build().
VaultOutputs
Outputs generated by a successfully provisioned Vault.

Enums§

AwsCredentials
Supported AWS authentication methods
AzureCredentials
Represents Azure authentication credentials
BinaryTarget
Target OS and architecture for compiled binaries.
BindingsMode
How bindings are delivered to the application
BuildStatus
Status of a build execution.
CertificateStatus
Certificate status in the certificate lifecycle
ClientConfig
Configuration for different cloud platform clients
ComputeBackend
Compute backend for Container and Function resources.
ComputeType
Compute type for build resources.
ContainerCode
Specifies the source of the container’s executable code.
ContainerStatus
Container status in Horizon.
DeploymentModel
Deployment model: how updates are delivered to the remote environment.
DeploymentStatus
Deployment status in the deployment lifecycle
DevStatusState
Overall dev server status
DnsRecordStatus
DNS record status in the DNS lifecycle
EnvironmentInfo
Platform-specific environment information
EnvironmentVariableType
Type of environment variable
ErrorData
Core error data exposed by the alien-core crate.
ExposeProtocol
Protocol for exposed ports.
ExternalBinding
Represents a binding to pre-existing infrastructure.
FunctionCode
Specifies the source of the function’s executable code. This can be a pre-built container image or source code that the system will build.
FunctionTrigger
Defines what triggers a function execution
GcpCredentials
Authentication options for talking to GCP APIs.
HeartbeatsMode
How heartbeat health checks are handled.
HttpMethod
HTTP method for readiness probe requests.
IdType
Defines different ID types with their configuration
ImpersonationConfig
Cloud-agnostic impersonation configuration
Ingress
Controls network accessibility of the function.
KubernetesClientConfig
Configuration mode for Kubernetes access
ManagementConfig
Management configuration for different cloud platforms.
NetworkSettings
Network configuration for the stack.
Platform
Represents the target cloud platform.
ResourceLifecycle
Describes the lifecycle of a resource within a stack, determining how it’s managed and deployed.
ResourceStatus
Represents the high-level status of a resource during its lifecycle.
SourceBinaryType
Types of source binaries used for package building
StackRef
Reference to a stack for management permissions
StackStatus
Represents the overall status of a stack based on its resource states.
TelemetryMode
How telemetry (logs, metrics, traces) is handled.
ToolchainConfig
Configuration for different programming language toolchains. Each toolchain provides type-safe build configuration and auto-detection capabilities.
UpdatesMode
How updates are delivered to the deployment.

Constants§

ALPHABET_LOWERCASE
ALPHABET_MIXED_CASE
VERSION

Traits§

ResourceDefinition
Trait that defines the interface for all resource types in the Alien system. This trait enables extensibility by allowing new resource types to be registered and managed alongside built-in resources.
ResourceOutputsDefinition
Trait that defines the interface for all resource output types in the Alien system. This trait enables extensibility by allowing new resource output types to be registered and managed alongside built-in resource outputs.

Functions§

generate_id_example
Generate a deterministic ID example for a given type
id_error_message
Generate an error message for invalid IDs
id_regex_pattern
Generate a regex pattern for validating IDs of a specific type
init_wasm_constructors
No-op on non-WASM targets
new_id
Generate a new ID for the specified type
validate_binding_type
Validates that an external binding type matches the resource type.

Type Aliases§

Result

Attribute Macros§

alien_event
A procedural macro that wraps a function with an AlienEvent scope.