Resource Connections
Resource Connections in StackGen enable seamless interactions between different infrastructure components. These connections help define dependencies, permissions, and data flows within the infrastructure.
Types of Connections
There are three main types of connections of Resources:
IAM Connections
Establish permission-based relationships. Example: Connecting a compute instance to an IAM Role for secure access to cloud services.
Trigger Connections
Enable event-driven interactions between resources. Example: Triggering a serverless function based on changes in a storage bucket.
Data Connections
Facilitate data exchange between applications and storage/database resources. Example*: Linking a web application to a PostgreSQL database for real-time data transactions.
How to Connect Resources
- Select the resource you want to connect within the Topology Canvas.
- Click the connection handle and drag it to the target resource.
- StackGen will automatically infer and suggest valid connections based on resource compatibility.
- Confirm the connection and configure any additional settings if required.
New Behaviour
- Inferred Resource Connections: StackGen now intelligently infers potential connections based on existing configurations, reducing manual effort.
- Automated Dependency Mapping: Automatically identifies and maps resource dependencies, enhancing infrastructure accuracy.
What's Supported and Not Supported
What's Supported
- Databases to Compute Instances (e.g., linking an RDS instance to an EC2 instance for secure database access using IAM authentication).
- Databases to Applications (e.g., Web applications to MySQL or PostgreSQL).
- Event triggers to Functions or Services (e.g., Storage bucket events triggering serverless functions).
- Networking resources (e.g., Subnets to VPCs, Load balancers to backend services).
- Service mesh integrations (e.g., Kubernetes pods communicating via Istio or Linkerd).
- Logging and monitoring connections (e.g., Compute resources sending logs to a monitoring service).
Not Supported
- Unsupported custom modules lacking defined connection parameters: If a custom module does not have explicitly defined outputs, such as endpoint URLs, IAM roles, or connection strings, StackGen cannot establish a valid connection to other resources. This means that any resource relying on these outputs for networking, authentication, or API calls will not be able to reference or interact with the custom module properly.
- Resources with conflicting security or compliance restrictions (e.g., policies preventing direct database connections).
- Cross-cloud provider connections without a compatible bridging mechanism (e.g., directly linking an AWS EC2 instance to a GCP Cloud SQL database).
- Resources without network reachability (e.g., private subnets without necessary routing or peering).
- External third-party APIs unless explicitly supported by StackGen.